Orodha ya maudhui:

Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: Hatua 7
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: Hatua 7

Video: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: Hatua 7

Video: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: Hatua 7
Video: Faça um alimentador automático para cachorros #ManualMaker Aula 12, Vídeo 2 2024, Juni
Anonim
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação

Mafunzo haya ni programu ya SmartHome inayoruhusu ruhusa ya reposição automática de alimento for animais de estimação (pet) na controle automático de iluminação evitando, por motivos de viagem, os incovenientes de incomodar vizinhos for acender luzes e alimentar o pet, pet ou não ter com quem deixá-lo, na muitas vezes até o cancelamento da viagem.

Onda programu yako kwa vifaa vya Joka la 410C kwa kutumia vifaa vya linux na vifaa vya kuunganisha Kiunganishi cha Mezzanine

(placa, sensor de luminosidade, LED, relé e botão). O sistema possui a capacidade de se comunicar com um servidor cloud, neste caso o Dweet.io, e assim, possibilitar a comunicação entre o equipamento local e um aplicativo desenvolvido com Ionic, que realiza o controle and notificações da solução Smart Home, idhini ya kutazama hali ya kudhibiti o sistema remotamente.

Segue na figura anexa o diagrama em blocos da solução.

Os sensores e atuadores deste projeto serão capazes de:

a) Ler kama maelezo ya mwangaza yanayotokana na vifaa vya kufanya sensorer ya luminosidade (LDR) na kudhibiti moja kwa moja o acionamento de uma lâmpada (led) dependendo do nível de luminosidade programado.

b) Reposição de alimento is realizada quando o pet pressiona uma base colocada sobre um botão, que ao ser pressionado muda o estado de um relé. Mudança de estado do relé libera um dispoitivo que permita a reposição de alimento para o pet.

Hatua ya 1: Lista Dos Materiais

Orodha ya Dos Materiais
Orodha ya Dos Materiais
Orodha ya Dos Materiais
Orodha ya Dos Materiais
Orodha ya Dos Materiais
Orodha ya Dos Materiais
  • · Joka 410C
  • 1 x Kiunganishi Mezzanine
  • 1 x módulo LED
  • · 1 x módulo Relé
  • · 1 x sensor de luminosidade (LDR)
  • · 1 x botão de vyombo vya habari
  • 1 x teclado USB
  • · 1 x USB USB
  • · 1 x kufuatilia HDMI
  • · Conexão com mtandao

Hatua ya 2: CONEXÕES

MAFANIKIO
MAFANIKIO

Conectar o sensor de luminosidade na entrada analógica ADC2;

Leitura da luminosidade (em Lumi) nje.

· Conectar o LED na saída digital D1;

Esta saída será utilizada para simular a luz para iluminação

Conectar o Relé na saída dijiti D2;

Este Relé será Respável por acionar o dispositivo de reposição de alimento.

Conectar o Botão na saída dijiti D3;

Hizi Botão será Responsible pela mudança de estado do relé.

Hatua ya 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard

Lugha ya lugha inayotumiwa na chatu.

O próximo passo é a instalação do chatu, das bibliotecas adicionais, protocolo SPI e definição de pinos na Dragonboard, inayofanana kama kanuni zinazofundishwa:

Utekelezaji wa sheria na utekelezaji;

  • Sudo apt-pata sasisho
  • sasisho la kupata apt
  • sudo apt-kupata dist-kuboresha

Mhariri wa maandishi

  • Sudo apt-get kufunga gedit
  • Sudo apt-get kufunga python-pip

Biblioteca adicionais

  • Sudo apt-get install autoconf automake muhimu libtool-bin pkg-config python-dev
  • Sudo reboot

LIBSOC

  • clone ya git
  • cd libsoc sudo autoreconf -i sudo./configure -enable-python = 2 -enableboard = dragonboard410c -na-bodi-usanidi
  • Sudo kufanya
  • Sudo kufanya kufunga
  • Sudo ldconfig / usr / mitaa / lib
  • Sudo reboot

96Bodi

clone ya git

· Antes de instalar essa biblioteca ni muhimu kwa kutambuliwa kama sua versão na compível com a versão da LIBSOC previamente instalada. Hakuna arquivo / nyumbani /linaro/96boardsGPIO/Archive/lib/gpio.conf kununua kamba ya LS_SHARE na badala ya LS_GPIO_SHARED;

  • Após prossiga com a instalação:
  • cd 96BodiGPIO /
  • sudo./autogen.sh
  • sudo./configure
  • Sudo kufanya
  • Sudo kufanya kufunga
  • Sudo ldconfig

SpideV

  • Para acesso aos sensores analógico é utilizado o protocolo SPI. A instalação da biblioteca é explicada a seguir:
  • clone ya git
  • cd py-spidev
  • Sudo python setup.py kufunga
  • Sudo ldconfig
  • Sudo reboot
  • Será needário incluir no arquivo sudo gedit /usr/local/etc/libsoc.conf a seguinte definição GPIO-CS = 18 na GPIO-12 = 18.

Kama sehemu ya kufurahisha POST na kupata tovuti ya dweet.io ni lazima usakinishe "maombi" ya biblioteca. Utaratibu ni wengi zaidi:

maombi ya kufunga bomba

Hatua ya 4: PROGRAMA - Mkuu wa Código Fonte E Dweet

PROGRAMA - Código Fonte Mkuu wa E Dweet
PROGRAMA - Código Fonte Mkuu wa E Dweet

O código fonte mkuu em python está nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções needárias para acesso ao portal dweet (nuvem). Os dois arquivos devem estar na mesma pasta executar o programama.

Para executar o dweet use your seguinte comando: Sudo / home / linaro /… / dweet.py

Para executar o programa fonte principal use it seguinte comando: sudo python / home / linaro /… / smartHome_valerio_M6.py

O funcionamento kufanya programu basicamente inajumuisha

1) Importação de bibliotecas adicionais, kuagiza gpio, GPIO na Dweet de bibliotecas adicionais.

Vitambulisho vya utaftaji wa habari na vivutio vya bandari ya maoni ya watu, ni pamoja na ufafanuzi wa função ndani / nje ya heshima.

Configuração da leitura de SPI do sensor de luminosidade kwa kuingia ADC2.

2) def kusomaLDR (gpio)

Realiza leitura do sensor de luminosidade na valor de leitura é apresentado na tela como "Valor do LDR: xxx"

3) if_name _ == '_ kuu_':

Na primeira parte o valor de luminosidade ni compado com um valor de referência (watu 500), na idadi kubwa ya luminosidade kwa ajili ya orodha ya watu (500) luz do ambiente se acende (milo iliongozwa) ni 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), tafadhali wasiliana na watu wengine kwa sababu hiyo watafanya kazi kwa njia hiyo., que ruhusu reposição de alimento.

O valor do estado do botão é colocado na variável button_value na ni apresentada na tela como "Botao: x", onde x é o valor do estado. Ainda são mostrados na tela or valor da variável status and Cloud button

Comunicação com a nuvem é feita através kufanya comando:

dweet.dweet_by_name (name = "projeto_val", data = {"rele": 0, "Luminosidade": thamani, "Luz": luz_status})

enviando as informações de estado do rele, a leitura do sensor de sensibilidade na se Luz está acesa ou apagada.

Seguem anexo o código fonte mkuu smartHome_valerio_M6.py na o codigo fonte dweet.py

O próximo passo is criar no site dweet.io: um post for permitir o acionamento ou desacionamento do relé remotamente e um get for verificar na nuvem as informações do sistema.

Hatua ya 5: Sanidi Utaftaji wa Tovuti

Configuração Do Site Dweet
Configuração Do Site Dweet
Configuração Do Site Dweet
Configuração Do Site Dweet

O próximo passo é acessar o serviço da nuvem.

Abrir no seu navegador o site Dweet.io clicar na aba "Cheza" na inajulikana kama POST (/ dweet / for / {thing})

Criar uma {thing} digitando no campo thing: projeto_val

Kumbuka: Kitu kinachoweza kutumiwa kama ujumbe wa sasa haufanyi programu yoyote ya chatu, hakuna caso, projeto_val.

Preencha o campo content conformeindicado abaixo na em seguida clique em "Ijaribu!":

{

"Rele": 0, "Luminosidade": 550, "Luzi": 0, }

Veja huzuia nas figuras acima.

Hati ya kupokelewa ya dawati inayotumiwa ni kupata GET.

Clicar em GET / get / latest / dweets / ya / {kitu}

Digite no campo kitu: projeto_val (obs: mesma {thing} criada no POST).

Clique em "Jaribu!"

Mwili wa Mwitikio wa Em "yaliyomo" hutengeneza maelezo ya kupokea:

{

"Rele": 0, "Luminosidade": 550, "Luzi": 0, }

Veja huzuia 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.

Njia nyingine ya kuandaa programu ya chatu, na nafasi ya bodi ya joka, inaweza kuwa "mabadiliko" ya kumbukumbu ya "0" para "1" ou de "1" para "0" através página POST do dweet e clicando em "Jaribu". Kwa habari zaidi Pata picha tamu za picha kama vile habari za "kufanya", "Luminosidade" na "Luz" clicando em "Jaribu".

Hatua ya 6: APLICATIVO - Instação Do Ionic

O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o mfumo wa Ionic.

Antes de desenvolver o aplicativo kwa smartphone, ni sawa na usanikishaji wa Ionic no computador pessoal. Os passos for a instalação e verificação se a mesma for the bem-sucedida in the mostrado abaixo:

  • Entre no site: https://nodejs.org/en/ e faça o download to versis 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:

node -v

npm -v

Insta o Ionic com os comandos abaixo através do prompt de comandos (cmd):

npm kufunga -g cordova ionic

npm kufunga -g cordova

Verifique se o Ionic foi instalado com sucesso usando o comando abaixo:

ionic -v

Hatua ya 7: APLICATIVO - Desenvolvimento E Operação

APLICATIVO - Desenvolvimento E Operação
APLICATIVO - Desenvolvimento E Operação

Apresentamos o desenvolvimento do aplicativo com o framework Ionic, que irá se comunicar com o dweet.io e assim, também, ler e changear as informações que ocorrem na joka bodi.

Primeiramente foi criado um aplicativo em branco digitando o seguinte comando no prompt do windows (cmd):

anza ionic smart_home_valerio_M6 tupu (tumia projeto)

Tunataka kuona IDE ya Studio ya Kutazama ya Studio inayothibitisha taswira ya pasta inayoweza kutumiwa na branco (smart_home_valerio_M6) kwa njia ya mabadiliko:

  • home.html (src / kurasa / nyumbani) parte visual do aplicativo
  • home.ts (src / kurasa / nyumbani) realiza as funções do código e alterações das propriedades da tela
  • programu.module.ts (src / programu)

Hakuna home.html na home.ts - foram alterações conforme needidade do projeto para comunicar-se de forma adequada com o dweet.io

Hakuna programu.modules.ts - modificações para permitir comunicação

Em sguida foi needário criar um arquivo para a comunicação com o dweet. Studio ya Haraka haifanyi kazi kwa Studio ya Visual na idara hii:

ionic huzalisha dweet

Kama wewe ni lazima tueleze maoni, ni rahisi kutumia njia ya mawasiliano kupitia chapisho kupitia kupata aplicativo, au dweet.ts yako ya mabadiliko:

  • com a criação de um método para buscar as informações do dweet. (pata)
  • com a criação de um método para fazer o set das variações (chapisho)
  • criação de uma variável = baseURL kwa ufafanuzi wa maana ya usando au dhibitisho la deto

Finalizadas alterações o aplicativo smart_home_valerio_M6 ni moja ya kanuni na sehemu ambazo zinaweza kukamilika kwa njia zote.

Agora para abrir o aplicativo basta digital no mesmo prompt do Visual Studio Code au njia moja ya kufanya hivyo:

kutumikia ionic

O aplicativo será aberto no seu navegador (visual na figura acima) na esta pronto para comunicar-se (ler e atualizar os dados) com a nuvem dweet, que posteriormente acessa a dragonboard for atualização dos status dos sensores e atuadores.

  • Pet Alimentação - Muda hautumiki, ni kwa nini unaweza kupata mnyama.
  • Luminosidade - Mostra o valor de luminosidade.
  • Luz - informa se a luz está apagada ou acesa.

Ilipendekeza: