ዝርዝር ሁኔታ:
- ደረጃ 1: ሊስታ ዶስ ማቲሪያይስ
- ደረጃ 2: CONEXÕES
- ደረጃ 3 - መርሃ ግብር - Instalação Do Python ፣ Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
- ደረጃ 4: መርሃ ግብር - ኮዲጎ ፎንቴ ዋና ኢ ኢ ጣፋጭ
- ደረጃ 5 Configuração የጣቢያ ጣፋጭ ያድርጉ
- ደረጃ 6: APLICATIVO - Instação Do Ionic
- ደረጃ 7 - አፕሊቲቪዮ - Desenvolvimento E Operação
ቪዲዮ: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:32
Este tutorial apresenta uma solução SmartHome simples que permite a reposição automática de alimento para animais de estimação (የቤት እንስሳ) pet ou não ter com quem deixá-lo, e muitas vezes até o ካንሰላሜንቶ ዳ ቪያሜም።
O projeto utiliza o hardware Dragonboard 410C com versão linux linaro instalada e um kit Linker Mezzanine
(ፕላካ ፣ ዳሳሽ ዲ luminosidade ፣ LED ፣ relé e botão)። ኦፕሬቲቭ ኦፕሬቲንግ ካፕዴዴዴ ዴ ሴሜ ኮሙኒኬር ኮም ሰርቪዶር ደመና ፣ neste caso o Dweet.io ፣ e assimililitar, comunicação entre o equipamento local e um aplicativo desenvolvido com Ionic, que realiza o controle e notificações da solução Smart Home, permitindo e controlar o status do sistema remotamente.
በዚህ ረገድ በምስጢር ወይም በዲያግራም እንደ ኢም ብሎኮስ ዳ solução.
ኦስ ሴንሰርስ እና አተራዶስ ዴስት ፕሮጄቶ ሰአኦ የሚከተሉትን ያጠቃልላል
ሀ) እንደ መረጃው እንደ ደሚኖሲዳዴ ዴ ኤም አምቢየንቲ አቴሬስ አነፍናፊ ዲ luminosidade (LDR) እና controlar automaticamente o acionamento de uma lâmpada (led) dependendo do nível de luminosidade programado.
ለ) ሀ reposição de alimento é realizada quando o pet pressiona uma base colocada sobre um botão, que ao ser pressionado muda o estado de um relé. A mudança de estado do relé libera um dispoitivo que permita a reposição de alimento para o የቤት እንስሳ።
ደረጃ 1: ሊስታ ዶስ ማቲሪያይስ
- · Dragonboard 410C
- 1 x Linker Mezzanine
- 1 x ሞዱሎ LED
- · 1 x módulo Relé
- · 1 x sensor de luminosidade (LDR)
- · 1 x botão de pressão
- 1 x teclado ዩኤስቢ
- · 1 x mose USB
- · 1 x ማሳያ ኤችዲኤምአይ
- · Conexão com በይነመረብ
ደረጃ 2: CONEXÕES
Conectar o sensor de luminosidade and entrada analógica ADC2;
Leitura da luminosidade (em Lumi) ውጫዊ።
· Conectar o LED እና saída digital D1;
Esta saída será utilizada para simular a luz para iluminação
Conectar o Relé na saída ዲጂታል D2;
Este Relé será responsável por acionar o dispositivo de reposição de alimento.
Conectar o Botão na saída digital D3;
Este Botão será responsável pela mudança de estado do relé.
ደረጃ 3 - መርሃ ግብር - Instalação Do Python ፣ Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
አንድ የቋንቋ ቋንቋ በፕሮግራማção utilizada foi o Python።
እንደ ፓይዘን ፣ ዳስ ቢብሊዮቴካስ አድሲዮናስ ፣ ፕሮቶኮሎ SPI እና definição de pinos እና Dragonboard ፣ እንደ seguintes መመሪያዎች ያስተናግዳል።
የሥራ አስፈፃሚ ሥራ አስፈፃሚ;
- sudo apt-get ዝማኔ
- sudo apt-get ማሻሻል
- sudo apt-get dist-upgrade
አርታኢ ዲ ቴክቶ
- sudo apt-get install gedit
- sudo apt-get install Python-pip ን ይጫኑ
Biblioteca adicionais
- sudo apt-get install ግንባታ-አስፈላጊ ራስ-ሰር አውቶማቲክ libtool-bin pkg-config Python-dev
- sudo ዳግም አስነሳ
LIBSOC
- git clone
- cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c-በቦርድ-ውቅሮች
- sudo ማድረግ
- sudo አድርግ ጫን
- sudo ldconfig/usr/local/lib
- sudo ዳግም አስነሳ
96 መከለያዎች
git clone
· Antes de instalar essa biblioteca é necessário verificar se a sua versão é compatível com a versão da LIBSOC previamente instalada. ምንም arquivo /home/linaro/96boardsGPIO/Archive/lib/gpio.conf የፔላ ሕብረቁምፊ LS_SHARE እና ተተኪው በ LS_GPIO_SHARED ግዥ;
- አፖስ prossiga com a instalação:
- ሲዲ 96 ቦርዶች ጂፒኦ/
- sudo./autogen.sh
- sudo./ አዋቅር
- sudo ማድረግ
- sudo አድርግ ጫን
- sudo ldconfig
ስፓይድ
- Para acesso aos sensores analógico é utilizado o protocolo SPI. በ instalação da biblioteca é explicada a seguir:
- git clone
- ሲዲ ፒ- spidev
- sudo python setup.py ጫን
- sudo ldconfig
- sudo ዳግም አስነሳ
- Seria necessário incluir no arquivo sudo gedit /usr/local/etc/libsoc.conf a seguinte definição GPIO-CS = 18 e GPIO-12 = 18.
Para que as funções POST e GET funcionem com o site dweet.io é needário instalar a biblioteca “request”. እርስዎ ቅደም ተከተሎች እና በጣም ብዙው አባይxo -
የ sudo pip ጭነት ጥያቄዎች
ደረጃ 4: መርሃ ግብር - ኮዲጎ ፎንቴ ዋና ኢ ኢ ጣፋጭ
O código fonte principal em python está nomeado como smartHome_valerio_M6.py። O código fonte dweet.py contém as funções necessárias para acesso ao portal dweet (nuvem)። ኦስ dois arquivos devem estar na mesma pasta executar o programa.
Para executar o dweet o seguinte comando: sudo/home/linaro/…/dweet.py
ለፕሮግራም ወይም ለፕሮግራም ቅርጸ -ቁምፊ ዋና አስተማሪው ሰጊንቴ ኮማንዶን ይጠቀማል -sudo Python/home/linaro/…/smartHome_valerio_M6.py
ለሶፍትዌር መሰረታዊ መርሆችን ያጠናቅቁ
1) Importação de bibliotecas adicionais, importar gpio, GPIO e Dweet de bibliotecas adicionais።
Identificacação dos sensores e atuadores nas portas onde são conectados, bem como, definir a função in/out dos respectivos pinos.
Configuração da leitura de SPI አነፍናፊ ዲ luminosidade para a entrada ADC2.
2) def readLDR (gpio)
Realiza a leitura do sensor de luminosidade e olor de leitura é apresentado and tela como «Valor do LDR: xxx»
3) ስም_ _ == '_ main_':
ና ፕሪሞራ በሎሚኖሲዳዴ ኢ ኮምፓራዶ com um valor de referência (neste caso 500) ፣ quando o nível de luminosidade for menor que a referência (500) a luz do ambiente se acende (módulo Led) e é apresentado na tela a mensagem "ሉዝ አሴሳ"
ኑማ ሰጉንዳ በከፊል አአ acionar o botão de pressão (simula pet pressionando o botão subindo em uma base colocada sobre esse botão), o relé mudará de estado de ligado para desligado ou de desligado para ligado, e essa mudança de estado do relé aciona um dispositivo, que permite a reposição de alimento.
ኦ ጎበዝ ዶ / ር ቦታኦ ኤ ኮኮካዶ እና variável button_value e é apresentada እና tela como "Botao: x", onde x é o valor do estado. Ainda são mostrados na tela o valor da variável status e የደመና አዝራር
አንድ ኮሙኒካçኦ com a nuvem é feita através do comando:
dweet.dweet_by_name (ስም = "projeto_val" ፣ data = {"rele": 0, "Luminosidade": value, "Luz": luz_status})
enviando እንደ informações de estado do rele, a leitura do sensor de sensibilidade e se Luz está acesa ou apagada.
Seguem anexo o código fonte principal smartHome_valerio_M6.py e o codigo fonte dweet.py
O próximo passo é criar no site dweet.io: um post para permitir o acionamento ou desacionamento do relé remotamente e um get para verificar and nuvem as informações do systemma.
ደረጃ 5 Configuração የጣቢያ ጣፋጭ ያድርጉ
O próximo passo é acessar o serviço da nuvem.
አብሪር ምንም አይደለም navegador o ጣቢያ Dweet.io ጠቅታ እና አባ “አጫውት” e seguida clicar em POST (/dweet/for/{thing})
Criar uma {thing} digitando no campo thing: projeto_val
ምልከታዎች - አንድ ነገር ክሪዳ ዴቭ ሰር ሜስማ ምንም ፕሮግራም አያደርግም በኮዲጎ ፎንቶን ፓይዘን ፣ ምንም caso ፣ projeto_val የለም።
የፕሬቻ ወይም የካምፖ ይዘት conformeindicado abaixo እና em seguida clique em “ይሞክሩት!”:
{
“መልቀቅ”: 0 ፣
“ሉሚኖሲዳዴ”: 550 ፣
“ሉዝ”: 0 ፣
}
ቬጃ ናስ ምስሎችን አኪማ ያጠፋል።
አንድ verificação dos dados recebidos pelo dweet é feita pelo GET.
Clicar em GET/get/latest/dweets/for/{thing}
ምንም የካምፖ ነገር ዲጂት አያድርጉ - projeto_val (obs: mesma {ነገር} criada no POST)።
ጠቅ ያድርጉ em “ይሞክሩት!”
የኢሜል ምላሽ አካል “ይዘት” teremos a informação recebida:
{
“መልቀቅ”: 0 ፣
“ሉሚኖሲዳዴ”: 550 ፣
“ሉዝ”: 0 ፣
}
ቬጃ ናስ ምስሎችን አኪማ ያጠፋል።
O exposto acima trata-se dos métodos "post" e "get", respectivamente, utilizados para passar valores de uma página para outra em um site dinâmico.
Isto feito e com o programa em python rodando and placa dragon board, é possível alterar o estado do "rele" remotamente alterando seus valores de "0" para "1" ou de "1" para "0" através página POST do dweet e ጠቅ ያድርጉ em “ይሞክሩት”። እና መረጃዎቹ እንደ “መልቀቅ” ፣ “ሉሚኖሲዳዴ” እና “ሉዝ” ጠቅ አድርገው “ሞክሩት” እንዳሉት ሁሉ ደስ የሚል são visualizadas ን ያድርጉ።
ደረጃ 6: APLICATIVO - Instação Do Ionic
ኦ aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic frame.
Antes de desenvolver o aplicativo para o smartphone, é preciso instalar o Ionic no computador pessoal. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:
- ጣቢያ የለም - https://nodejs.org/en/ e faça o download da versão mais recente LTS do Node
- Instale o Node no seu computador pessoal
- Envie os comandos do prompt de comandos (cmd) para verificar se a instalação foi feita com sucesso:
መስቀለኛ መንገድ -v
npm -v
በ Ionic com os comandos abaixo através do prompt de comandos (cmd):
npm ጫን –g cordova ionic
npm ጫን –g ኮርዶቫ
ኢዮኒክ ፎይ ኢንስታላዶ ኮም ሱሴሶ ኡሶዶ ወይም ኮማንዶ አባይxo ፦
ionic -v
ደረጃ 7 - አፕሊቲቪዮ - Desenvolvimento E Operação
Apresentamos o desenvolvimento do aplicativo com o frame Ionic, que irá se comunicar com o dweet.io e assim, também, ler e alterar as informações que ocorrem na ዘንዶ ቦርድ.
ዋናዎቹ መስኮቶች (ሲኤምዲ) በፍጥነት አይሰሩም።
ionic start smart_home_valerio_M6 ባዶ (ተጠቀም ፕሮጄቶ ይጠቀሙ)
እንደ አይዲአይ የእይታ ስቱዲዮ ኮድ ፎር አበርታ እና ፓስታ ኮንቴንዶ ወይም አፕሊኬቲቮ ኢ ብራኖ (smart_home_valerio_M6) e foram alterados os seguintes arquivos:
- home.html (src/pages/home) ከፊል እይታ do aplicativo
- home.ts (src/pages/home) realiza as funções do código e alterações das propriedades da tela
- app.module.ts (src/መተግበሪያ)
ምንም ቤት የለም። html e home.ts
ምንም app.modules.ts - modificações para permitir comunicação
Em sguida foi necessário criar um arquivo para a comunicação com o dweet. አብሪንዶ ኤም ጥያቄ የለም ምንም የእይታ ስቱዲዮ አበርቶ ኢ ዲጂታንዶ ፦
ionic ማመንጫ አቅራቢ ጣፋጭ
Uma vez criado esse arquivo, que facilita a comunicação በ post e via get aplicativo, o código dweet.ts foi alterado:
- com a criação de um método para buscar መረጃዎችን ሲያጣፍጡ። (አግኝ)
- com a criação de um método para fazer o set das variações (ልጥፍ)
- criação de uma variável = baseURL para definir que está usando o dweet como proveor
Finalizadas alterações o aplicativo smart_home_valerio_M6 está pronto e segue em anexo completo com todos os arquivos.
አጎራ ፓራ አብሪር ወይም አፕሊካቶቮ ባስታ ዲጂታር ምንም የእይታ ስቱዲዮ ኮድ ወይም ኮማንዶ ፓራ አብርር ወይም አፕሊካቮ
ionic ማገልገል
ኦ aplicativo será aberto no seu navegador (visual na figura acima) e estará pronto para comunicar-se (ler e atualizar os dados) com a nuvem sweet, que posteriormente acessa a dragonboard para atualização dos status dos sensores e atuadores.
- Pet Alimentação - Muda estado do relé, que aciona o dispositivo de alimentação do የቤት እንስሳት።
- Luminosidade - Mostra o valor de luminosidade.
- ሉዝ - informa se a luz está apagada ou acesa.
የሚመከር:
Controle De Gás E Poeira Com O NodeMCU: 5 ደረጃዎች
ኮንትሮል ዴ ጋስ ኢ ፖኢራ ኮም ኦ ኖድኤምሲዩ-Este foi um trabalho para medir n í veis de poeira e g á s num dado ambiente, e compartilhar estes dados nas nuvens e em seu celular, incluindo disparar um e-mail de alerta caso os valores lidos sejam አስዶራዶስ አልቶስ