Sisällysluettelo:

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

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

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

Este -opetusohjelma SmartHome simples que permite a reposição automateica de alimento para animais de estimação (pet) e control automático de iluminação evitando, por motivos de viagem, os incovenientes de incodar vizinhos para acender luzes de gastronomia pet ou não ter com quem deixá-lo, e muitas vezes até o cancellamento da viagem.

Oheinen käyttö tai laitteisto Dragonboard 410C -versio linux linaro -asennus ja Link Kit Mezzanine -sarja

(alue, valoanturi, LED, relé ja botão). O -järjestelmä on saatavana ja se on kommunikaattoripalvelun pilvipalvelu, neste caso tai Dweet.io, e assim, mahdollisuus kommunikaatioon tai laitteisto paikalliseen sähköiseen sovellukseen, joka on tarkoitettu käytettäväksi Ionic, que realiza o control and notificações da solução Smart Home, allowindo visual e -valvonta tai järjestelmän etäkäytön tila.

Segue nafura anexa tai 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) and control de automated or 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é. Mudança de estado do relé libera um dispoitivo que permita a reposição de alimento para or pet.

Vaihe 1: Lista Dos Materiais

Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
  • · Dragonboard 410C
  • 1 x Linker Mezzanine
  • 1 x LED -valo
  • · 1 x modulo Relé
  • · 1 x valonheittimen tunnistin (LDR)
  • · 1 x botão de pressão
  • 1 x teclado USB
  • · 1 x mose USB
  • · 1 x HDMI -näyttö
  • · Conexão on Internet

Vaihe 2: CONEXÕES

CONEXÕES
CONEXÕES

Conectar tai anturi, joka valaisee ADC2: n;

Leitura da luminosidade (em Lumi) externa.

· Conectar tai LED -digitaalinen D1;

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

Conectar tai Relé na saída digital D2;

Este Relé sera responseavel for acionar or dispositivo de reposição de alimento.

Conectar tai Botão ja digitaalinen D3;

Este Botão vastaa vastaaviin peleihin mudança de estado do relé.

Vaihe 3: OHJELMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard

Ohjelmointikieli Pythonin ohjelmalle.

Jos haluat käyttää pythonia, asenna bibliografia, ilmoita SPI -protokolla ja määrittele Dragonboard, määritä seosohjeiksi:

Oikeudellinen abra o päätelaite e suorittaa;

  • sudo apt-get päivitys
  • sudo apt-get päivitys
  • sudo apt-get dist-upgrade

Tekstin toimittaja

  • 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 uudelleenkäynnistys

LIBSOC

  • git -klooni
  • cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c --with-board-configs
  • sudo tehdä
  • sudo tehdä asennus
  • sudo ldconfig/usr/local/lib
  • sudo uudelleenkäynnistys

96 Hallitusta

git -klooni

· Antes de instalar essa biblioteca é needsário verificar se a sua versão é compatível com a versão da LIBSOC previamente install. No arquivo /home/linaro/96boardsGPIO/Archive/lib/gpio.conf hanki pelattava merkkijono LS_SHARE e substitua por LS_GPIO_SHARED;

  • Após prossiga com a installation:
  • cd 96BoardsGPIO/
  • sudo./autogen.sh
  • sudo./configure
  • sudo tehdä
  • sudo tehdä asennus
  • sudo ldconfig

SPIDEV

  • Para acesso aos sensores analógico and use use or protocolo SPI. Asennettu biblioteca ja selitys seoksesta:
  • git -klooni
  • cd py-spidev
  • sudo python setup.py install
  • sudo ldconfig
  • sudo uudelleenkäynnistys
  • Tarpeen mukaan lukien ei arquivo sudo gedit /usr/local/etc/libsoc.conf ja määritelmä GPIO-CS = 18 e GPIO-12 = 18.

Para que as funções POST e GET funcionem com o site dweet.io é välttämättömyys asentamalla biblioteca "pyynnöt". Menettely ja Mostrado abaixo:

sudo pip -asennuspyynnöt

Vaihe 4: OHJELMA - Código Fonte Principal E Dweet

OHJELMA - Código Fonte Principal E Dweet
OHJELMA - Código Fonte Principal E Dweet

O código fonte pääasiallinen em python estome nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções välttämättömyys para acesso ao portal dweet (nuvem). Os dois arquivos devem estar na mesma pasta executar or program.

Suorita suoritus tai dweet hyödyntää seuraavaa komentoa: sudo/home/linaro/…/dweet.py

Suorita ohjelma tai ohjelma, jonka pääohjelma käyttää seuraavaa komentoa: sudo python/home/linaro/…/smartHome_valerio_M6.py

Toimintojen perusohjelmisto toimii

1) Importação de bibliotecas adicionais, importar gpio, GPIO e Dweet de bibliotecas adicionais.

Tunnisteiden tunnistaminen ja atuadores nas portas on one conectados, bem como, define a função in/out dos respectivos pinos.

Konfiguraatio, jossa SPI -anturi on valonheitin ADC2: lle.

2) def readLDR (gpio)

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

3) jos _nimi _ == '_ main_':

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 (modeulo Led) e é apresentado na tela a mensagem Luz: acesa.

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, ja essa mudança de estado do relivo aciona um, que permite a reposição de alimento.

O valor do estado do botão é colocado with įvairável button_value e é apresentada na tela como "Botao: x", on x é o valor do estado. Ainda são mostrados na tela o valor da variável status e Cloud button

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

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

enviando as 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 pääasiallinen smartHome_valerio_M6.py e o codigo fonte dweet.py

O próximo passo é criar no site dweet.io: um post para engedélye tai acionamento ou desacionamento do relé remotamente e um get para verificar na nuvem as informações do system.

Vaihe 5: Configuração Do Site Dweet

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 or serviço da nuvem.

Abrir no seu navegador or site Dweet.io click or aba "Play" and the sekoida clickar em POST (/dweet/for/{thing})

Criar uma {thing} digitando no campo thing: projeto_val

Huomautus: A thing criada deve ser a mesma presente no program do código fonte python, no caso, projeto_val.

Preencha o campo content conformeindicado abaixo e em seguida clique em "Kokeile!":

{

"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 -asia: projeto_val (obs: mesma {thing} criada no POST).

Klikkaa "Kokeile!"

Em Response Body "sisältö" teremos a informação recebida:

{

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

Veja detalhes nas figuras acima.

Jos haluat ilmoittaa "post" ja "get", kunnioittaa, hyödyntää passar valores de uma página para outra em um site dinâmico.

Jos haluat käyttää tätä ohjelmaa, python rodando ja placon dragon board, voit halutessasi vaihtoehtoisesti tai tehdä "rele" remotamente alterando seus valores de "0" para "1" oru "1" para "0" através página POST do dweet e klikkaa "Kokeile". Napsauta GET do dweet são visualizadas as informaziões atualizadas do "rele", "Luminosidade" ja "Luz" napsauttamalla "Try it out".

Vaihe 6: APLICATIVO - Instação Do Ionic

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

Anten de desenvolver tai sovellukset älypuhelimelle, asennuksen edellyttämä tai Ionic no computador pessoal. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:

  • Avaa sivusto: https://nodejs.org/en/ e faça tai download da versão mais recente LTS do Node
  • Asenna tai solmu ilman seurantaa
  • Envie os comandos do prompt de comandos (cmd) varificar se a install of foi feita com success:

solmu -v

npm -v

Asenna tai Ionic com os comandos abaixo através do prompt de comandos (cmd):

npm install –g cordova ionic

npm asentaa –g cordova

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

ioninen -v

Vaihe 7: APLICATIVO - Desenvolvimento E Operação

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

Esitys tai desenvolvimento do aplicativo com o runko Ionic, que irá se comunicar com o dweet.io e assim, também, ler e alterar in informationções que ocorrem na dragon board.

Pääasiallinen käyttöoikeus sovelluksiin, joissa ei ole digitaalisia numeroita tai oheisia komentoja, ei kehotteita ikkunoihin (cmd):

ionic start smart_home_valerio_M6 tyhjä (käytä o nome do projeto)

IDE Visual Studio -koodin sekoitus, jossa on pastaa ja sovellusta (apu ja sovellus) (smart_home_valerio_M6) ja alterados os seguintes arquivos:

  • home.html (src/pages/home) parte visual do aplicativo
  • home.ts (src/pages/home) realize as funções do código and alterações das propriedades da tela
  • app.module.ts (src/sovellus)

No home.html e home.ts - foram alterações conforme needidade do projeto para comunicar -se de forma sopiisa com o dweet.io

Ei 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:

ioninen tuottaa tarjoaja dweet

Uma vez criado esse arquivo, que helpita a comunicação via post e via get do aplicativo, or código dweet.ts foi alterado:

  • com a criação de um método para buscar as information as dweet. (saada)
  • 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 estoto pronto and segue em anexo complete to com doos os arquivos.

Agora para abrir o aplicativo basta digitar no mesmo prompt to Visual Studio Code or comando para abrir o aplicativo:

ioninen palvelee

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 and a dragonboard para atualização dos status dos sensores e atuadores.

  • Pet Alimentação - Muda estado do relé, que aciona or dispositivo de alimentação do pet.
  • Luminosidade - Mostra o valor de luminosidade.
  • Luz - informaatio a luz está apagada ou acesa.

Suositeltava: