Tartalomjegyzék:
- 1. lépés: Lista Dos Materiais
- 2. lépés: CONEXÕES
- 3. lépés: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
- 4. lépés: PROGRAMA - Código Fonte Principal E Dweet
- 5. lépés: Configuração Do Site Dweet
- 6. lépés: APLICATIVO - Instação Do Ionic
- 7. lépés: APLICATIVO - Desenvolvimento E Operação
Videó: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 lépés
2024 Szerző: John Day | [email protected]. Utoljára módosítva: 2024-01-30 09:42
Este tutorial apresenta uma solução SmartHome simples que permite a reposição automática de alimento para animais de estimação (pet) e controle automático de iluminação evitando, por motivos de viagem, os incovenientes de incodar vizinhos para acender luze pet gast, alimentar pet ou não ter com quem deixá-lo, e muitas vezes até o cancellamento da viagem.
Használja a hardvert Dragonboard 410C hardverrel, vagy telepítse a Linuxot, és telepítse a Linker Mezzanine
(tér, fényérzékelő, LED, relé és bot). O rendszerben van a kapacitás és a kommunikáció a com servidor felhőben, neste caso vagy a Dweet.io, e assim, lehetõség a comunicação entre -re, vagy a helyi e um aplicativo desenvolvido com Ionic, que realiza o controle e notificações da solução Smart Home engedélye e vezérlés vagy állapot a rendszer távoli.
Segítség a figura anexa vagy diagrama em blocos da solução.
Os sensores e atuadores deste projeto serão capazes de:
a) Ler as information of luminosidade de um ambiente através do sensor de luminosidade (LDR) e control automate amente o acionamento de uma lâmpada (led) dependendo do nível de luminosidade programado.
b) A 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 pet.
1. lépés: Lista Dos Materiais
- · Dragonboard 410C
- 1 x Linker Mezzanine
- 1 x mód LED
- · 1 x módulo Relé
- · 1 x fényérzékelő (LDR)
- · 1 x botão de pressão
- 1 x teclado USB
- · 1 x mose USB
- · 1 x HDMI monitor
- · Conexão az interneten
2. lépés: CONEXÕES
Conectar vagy sensor de luminosidade na entrada analógica ADC2;
Leitura da luminosidade (em Lumi) externa.
· Conectar vagy LED digitális D1;
Esta saída será utilizada para simular a luz para iluminação
Conectar vagy Relé na saída digital D2;
Este Relé sera responseável por acionar o dispositivo de reposição de alimento.
Conectar vagy Botão digitális D3;
Este Botão válaszol a játékos mudança de estado do relé.
3. lépés: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
A programnyão de programção utilizada foi o Python.
O próximo passo é a installação do python, das bibliotecas adicionais, protokoll SPI e definição de pinos na Dragonboard, conforme as seguintes instruções:
Inicialmente abra o terminal e execute;
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get dist-upgrade
Texto szerkesztő
- sudo apt-get install gedit
- sudo apt-get install python-pip
Biblioteca adicionais
- sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev
- sudo újraindítás
LIBSOC
- git klón
- cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c --with-board-configs
- sudo make
- sudo make install
- sudo ldconfig/usr/local/lib
- sudo újraindítás
96 Táblák
git klón
· Antes de instalar essa biblioteca é needsário verificar se a sua versão é compatível com a versão da LIBSOC previamente instalada. No arquivo /home/linaro/96boardsGPIO/Archive/lib/gpio.conf beszerzi pela string LS_SHARE e substitua por LS_GPIO_SHARED;
- Após prossiga com a telepítés:
- cd 96BoardsGPIO/
- sudo./autogen.sh
- sudo./configure
- sudo make
- sudo make install
- sudo ldconfig
SPIDEV
- Para acesso aos sensores analógico utilizado o protokoll SPI. A biblioteca telepítése és explicada a keverék:
- git klón
- cd py-spidev
- sudo python setup.py install
- sudo ldconfig
- sudo újraindítás
- Szükséges, hogy ne legyen arquivo sudo gedit /usr/local/etc/libsoc.conf a keverék definíciója GPIO-CS = 18 e GPIO-12 = 18.
Para que as funções POST e GET funcionem com o site dweet.io é requiredário instalar a biblioteca “kér”. O procedimento é mostrado abaixo:
sudo pip telepítési kérések
4. lépés: PROGRAMA - Código Fonte Principal E Dweet
O código fonte princip em em python está nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções needsárias para acesso ao portal dweet (nuvem). Os dois arquivos devem estar na mesma pasta executar o program.
A végrehajtáshoz vagy a dweethez használja a következő parancsot: sudo/home/linaro/…/dweet.py
A végrehajtás vagy a program fonte fő felhasználása a következő parancsokkal: sudo python/home/linaro/…/smartHome_valerio_M6.py
O funcionamento do software basicamente consiste
1) Importação de bibliotecas adicionais, importar gpio, GPIO e Dweet de bibliotecas adicionais.
Identificacação dos sensores e atuadores nas portas on one conectados, bem como, define a função in/out dos respectivos pinos.
Az SPI fényérzékelő konfigurálása az ADC2 belépő fényérzékelőhöz.
2) def readLDR (gpio)
Realiza a leitura do sensor de luminosidade e o valor de leitura é apresentado na tela como "Valor do LDR: xxx"
3) ha_név _ == '_ fő_':
Na primeira parte o valor de luminosidade é comparado 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 "Luz: acesa". Quando o nível de luminosidade for maior que o definido a luz se apaga (módulo led) sendo apresentada a mensagem "Luz: apagada".
Numa segunda parte ao 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 relivo aciona um, que permite a reposição de alimento.
O valor do estado do botão é colocado na variável button_value e é apresentada na tela como "Botao: x", on x é o valor do estado. A são mostrados na tela o valor da variável status e Cloud button
A comunicação com a nuvem é feita através do comando:
dweet.dweet_by_name (név = "projeto_val", data = {"rele": 0, "Luminosidade": érték, "Luz": luz_status})
enviando as informationções de estado do rele, a leitura do sensor de sensibilidade e se Luz está acesa ou apagada.
Seguem anexo o código fonte fő smartHome_valerio_M6.py e o codigo fonte dweet.py
O próximo passo é criar no site dweet.io: um post para engedélye vagy acionamento ou desacionamento do relé remotamente e um get para verificar na nuvem as informationções do system.
5. lépés: Configuração Do Site Dweet
O próximo passo é acessar o serviço da nuvem.
Abrir no seu navegador or site Dweet.io clickar aba "Play" and em seguida clickar em POST (/dweet/for/{thing})
Criar uma {thing} digitando no campo dolog: projeto_val
Megjegyzés: A thing criada deve ser a mesma presente no program do código fonte python, no caso, projeto_val.
A videók és a campo tartalmának megnyilvánulása a következőképpen: „Próbáld ki!”:
{
„Rele”: 0, „Luminosidade”: 550, "Luz": 0, }
Veja detalhes nas figuras acima.
A verificação dos dados recebidos pelo dweet é feita pelo GET.
Clicar em GET/get/latest/dweets/for/{thing}
Digite no campo dolog: projeto_val (obs: mesma {dolog} criada no POST).
Kattints a "Próbáld ki!"
Em Response Body "tartalom" teremos a informaceão recebida:
{
„Rele”: 0, „Luminosidade”: 550, "Luz": 0, }
Veja detalhes nas figuras acima.
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 program em python rodando na placa dragon board, e possível alterar or estado do "rele" remotamente alterando seus valores de "0" para "1" ou de "1" para "0" através página POST do dweet e kattintson a "Próbálja ki" gombra. Mostantól GET do dweet são visualizadas as information atualizadas do "rele", "Luminosidade" és "Luz" click to "Try it out".
6. lépés: APLICATIVO - Instação Do Ionic
O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic Framework.
Ingyenes Az okostelefonok alkalmazásához vagy alkalmazásához, telepítve van, vagy az Ionic nincs számítógépes pessoal. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:
- Webhely beírása: https://nodejs.org/en/ e faça o download da versão mais recente LTS do Node
- Telepítse vagy csomópont nélküli számítógépes pessoal
- Envie os comandos do prompt de comandos (cmd) para verificar se a instalação foi feita com sucesso:
csomópont -v
npm -v
Telepítse az Ionic com os comandos abaixo através do prompt de comandos parancsot (cmd):
npm install –g cordova ionic
npm install –g cordova
Verifique se o Ionic foi instalado com sucesso usando o comando abaixo:
ionos -v
7. lépés: APLICATIVO - 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 informationções que ocorrem na dragon board.
Elsődleges fontosságú, hogy kövesse az alkalmazást, ha nem szeretne digitális ablakokat (cmd):
ionos indítás smart_home_valerio_M6 blank (use o nome do projeto)
Em seguida através da IDE Visual Studio Code for aberta a pasta contendo o aplicativo em branco (smart_home_valerio_M6) e foram alterados os seguintes arquivos:
- home.html (src/pages/home) parte visual do aplicativo
- home.ts (src/pages/home) realiza as funções do código and alterações das propriedades da tela
- app.module.ts (src/app)
No home.html e home.ts - foram alterações conforme needidade do projeto para comunicar -se de forma sobata com o dweet.io
No app.modules.ts - modificações para allowir comunicação
Em sguida foi needário criar um arquivo para a comunicação com o dweet. Abrindo um prompt no próprio Visual Studio aberto e digitando:
ionos generátor szolgáltató dweet
Uma vez criado esse arquivo, que facilitita a comunicação via post e via get do aplicativo, o código dweet.ts foi alterado:
- com a criação de um método para buscar as informações do dweet. (kap)
- com a criação de um método para fazer o set das variações (post)
- criação de uma variável = baseURL para definir que está usando o dweet como provenor
Finalizadas alterações o aplicativo smart_home_valerio_M6 est pronto and segue em anexo complete to com todos os arquivos.
Agora para abrir o aplicativo basta digitar no mesmo prompt do Visual Studio Code or comando para abrir o aplicativo:
ionos tálalás
O aplicativo será aberto no seu navegador (visual na figura acima) e estará pronto para comunicar-se (ler e atualizar os dados) com a nuvem dweet, 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 pet.
- Luminosidade - Mostra o valor de luminosidade.
- Luz - informa se a luz está apagada ou acesa.
Ajánlott:
Controle De Gás E Poeira Com O NodeMCU: 5 lépés
Controle De Gás E Poeira Com O NodeMCU: Este foi um trabalho para medir n í faj 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 Regardrados altos
Sistema Pêndulo + Hélice: Controle De Posição: 5 lépés
Sistema Pêndulo + Hélice: Controle De Posição: Este experimentimento foi desenvolvido como trabalho prático da disciplina " Eletrônica Industrial " nincs premier félév 2018