ዝርዝር ሁኔታ:

Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 ደረጃዎች
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 ደረጃዎች

ቪዲዮ: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 ደረጃዎች

ቪዲዮ: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 ደረጃዎች
ቪዲዮ: Faça um alimentador automático para cachorros #ManualMaker Aula 12, Vídeo 2 2024, ህዳር
Anonim
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação

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: ሊስታ ዶስ ማቲሪያይስ

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
  • · 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

CONEXÕES
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

አፕሊቲቪዮ - Desenvolvimento E Operação
አፕሊቲቪዮ - 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.

የሚመከር: