Satura rādītājs:
- 1. darbība: Lista Dos Materiais
- 2. darbība: CONEXÕES
- Step 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
- 4. solis: PROGRAMMA - Código Fonte Principal E Dweet
- 5. darbība. Configuração Do Site Dweet
- 6. darbība: APLICATIVO - Instação Do Ionic
- 7. darbība: APLICATIVO - Desenvolvimento E Operação
Video: Projeto SmartHome - mājdzīvnieku glabātava un mājdzīvnieku glabātava + Iluminācijas kontrole: 7 soļi
2024 Autors: John Day | [email protected]. Pēdējoreiz modificēts: 2024-01-30 10:57
Iepriekšējā apmācība, kas paredzēta SmartHome simples que permite a reposição automática 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 alimentar pet ou não ter com quem deixá-lo, e muitas vezes até oancelamento da viagem.
Projeto izmantošana vai aparatūra Dragonboard 410C, izmantojot Linux, instalējot un komplektējot Linker Mezzanine
(laukums, gaismas diodes sensors, LED, relé e botão). O sistēma ir aprīkota ar kompaktu, kas nodrošina komunicēšanu, izmantojot servidor mākoni, nesaistīts kazino vai Dweet.io, e assim, iespējams, a comunicação entre o equipamento local e um aplicativo desenvolvido com Ionic, que realiza o controle e notificações da solução Smart Home, allowindoiz e kontrole vai statuss, kas nodrošina sistēmas remotamente.
Segue na figura anexa vai 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é. A mudança de estado do relé libera um dispoitivo que permita a reposição de alimento para o pet.
1. darbība: Lista Dos Materiais
- · Dragonboard 410C
- 1 x Linker Mezzanine
- 1 x LED gaismas diode
- · 1 x režīma Relé
- · 1 x gaismas diodes sensors (LDR)
- · 1 x botão de pressão
- 1 x teclado USB
- · 1 x mose USB
- · 1 x HDMI monitors
- · Conexão com internetā
2. darbība: CONEXÕES
Konektārs vai gaismas devēja sensors un analīzes ADC2;
Leitura da luminosidade (em Lumi) externa.
· Conectar vai LED ar digitālo D1;
Esta saída será utilizada para simular a luz para iluminação
Conectar vai Relé na saída digital D2;
Este Relé será responseável por acionar o dispositivo de reposição de alimento.
Conectar vai Botão ar ciparu D3;
Este Botão atbild atbildi uz pela mudança de estado do relé.
Step 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
Linguagem de programção utilizada foi o Python.
O próximo passo un instalācija python, das bibliotecas adicionais, protokols SPI un definīcijas Dragonboard, apstipriniet kā sekojošas instrukcijas:
Inicialmente abra o terminal e execute;
- sudo apt-get update
- sudo apt-get jauninājums
- sudo apt-get dist-upgrade
Tekstu redaktors
- sudo apt-get install gedit
- sudo apt-get instalēt python-pip
Biblioteca adicionais
- sudo apt-get install build-essential autoconf automake libtool-bin pkg-config python-dev
- sudo atsāknēšana
LIBSOC
- git klons
- cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c-ar-board-configs
- sudo padarīt
- sudo veikt instalēšanu
- sudo ldconfig/usr/local/lib
- sudo atsāknēšana
96Boards
git klons
· 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 procure pela string LS_SHARE e substitua por LS_GPIO_SHARED;
- Após prossiga com un instalācija:
- cd 96BoardsGPIO/
- sudo./autogen.sh
- sudo./configure
- sudo padarīt
- sudo veikt instalēšanu
- sudo ldconfig
SPIDEV
- Para acesso aos sensores analógico use and use protocolo SPI. Bibliotēkas instalācija un izskaidrojums:
- git klons
- cd py-spidev
- sudo python setup.py instalēt
- sudo ldconfig
- sudo atsāknēšana
- Nepieciešams iekļaut arquivo sudo gedit /usr/local/etc/libsoc.conf un definīcijas definīciju GPIO-CS = 18 un GPIO-12 = 18.
Para que as funções POST e GET funcionem com o site dweet.io é nepieciešamība instalar a biblioteca “pieprasījumi”. O procedūra un mostrado abaixo:
sudo pip instalēšanas pieprasījumi
4. solis: PROGRAMMA - Código Fonte Principal E Dweet
O código fonte galvenais 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 program.
Lai izpildītu vai izmantotu dweet, izmantojiet sekojošo komandu: sudo/home/linaro/…/dweet.py
Lai izpildītu programmu vai programmas galveno, izmantojiet sekojošo komandu: sudo python/home/linaro/…/smartHome_valerio_M6.py
Operētājsistēmas pamatfunkciju funkcionalitāte
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.
SPI leģitratūras konfigurācija ADC2 apgaismojuma sensoram.
2) def readLDR (gpio)
Realizējiet leitura do sensor de luminosidade e o valor de leitura é apresentado na tela como "Valor do LDR: xxx"
3) ja _vārds _ == '_ 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 (metodulo Led) e é apresentado na tela a mensagem "Luz: acesa". Quando o nível de luminosidade for maior que o definido a luz se apaga (metodulo 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 relé 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", onde 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 (name = "projeto_val", data = {"rele": 0, "Luminosidade": vērtība, "Luz": luz_status})
enviando as informações de estado do rele, leitura do sensor de sensibilidade e se Luz está acesa ou apagada.
Seguem anexo o código fonte galvenais smartHome_valerio_M6.py e o codigo fonte dweet.py
O próximo passo é criar no site dweet.io: um post para engedélye vai acionamento ou desacionamento do relé remotamente e um get para verificar na nuvem as informationções do system.
5. darbība. 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 lieta: projeto_val
Obs: A thing criada deve ser a mesma presente no program do código fonte python, no caso, projeto_val.
Iepazīstieties ar campo saturu, apstiprinot abaixo un emidaida clique em "Izmēģiniet!":
{
“Rel”: 0, "Luminosidade": 550, "Luz": 0, }
Veja detalhes nas figuras acima.
A verificação dos dados recebidos pelo dweet é feita pelo GET.
Noklikšķiniet uz GET/get/latest/dweets/for/{thing}
Digite no campo lieta: projeto_val (obs: mesma {lieta} criada no POST).
Noklikšķiniet uz "Izmēģiniet!"
Em Response Body em "content" teremos a informação recebida:
{
“Rel”: 0, "Luminosidade": 550, "Luz": 0, }
Veja detalhes nas figuras acima.
O exposto acima trata-se dos metétos "post" e "get", respektīvi, utilizados para passar valores de uma página para outra em um site dinâmico.
Ja vēlaties uzzināt, vai tā ir programma, python rodando un placon dragon board, vai arī citi vai estado do "rele" remotamente alterando seus valores de "0" para "1" ou de "1" para "0" através página POST do dweet e noklikšķiniet uz "Izmēģiniet". Noklikšķiniet šeit, lai iegūtu visaptverošas vizualizācijas, kā informāciju atualizadas do "rele", "Luminosidade" un "Luz" noklikšķinot uz "Try it out".
6. darbība: APLICATIVO - Instação Do Ionic
O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic Framework.
Atbalsta viedtālrunis vai lietojumprogramma viedtālrunim, uzstādot iepriekš vai instalējot jonu bez datora. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:
- Ievadiet vietni: https://nodejs.org/en/ e faça o download da versão mais recente LTS do Node
- Instalējiet vai Node no seu computador pessoal
- Envie os comandos do prompt de comandos (cmd), lai pārbaudītu un instalētu, veicot tālāk norādītās darbības:
mezgls -v
npm -v
Instalējiet vai pievienojiet jonu kompozīcijas abaixo através do prompt de comandos (cmd):
npm instalēt –g cordova ionic
npm instalēt –g cordova
Pārbaudiet, vai Ionic foi instalado com sucesso usando o comando abaixo:
jonu -v
7. darbība: 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.
Sākotnējā opcija criado um aplicativo em branco digitando o seguinte comando no prompt do do windows (cmd):
jonu starts smart_home_valerio_M6 tukšs (izmantojiet o nome do projeto)
Atklājiet IDE Visual Studio kodu, lai uzzinātu, vai tas ir pastas, vai kā to lietot (smart_home_valerio_M6), kā arī par izmaiņām 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/lietotne)
No home.html e home.ts - foram alterações conforme needidade do projeto para comunicar -se de forma adekvata com o dweet.io
Nav app.modules.ts - modificações para allowir comunicação
Em sguida foi needário criar um arquivo para a comunicação com o dweet. Skatiet tūlītēju paziņojumu par Visual Studio un pēc tam:
jonu ģenerēt sniedzējs 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. (gūt)
- com a criação de um método para fazer o set das variações (ziņa)
- 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 e segue em anexo completeto com todos os arquivos.
Agora para abrir o aplicativo basta digitar no mesmo prompt do Visual Studio Code vai comando para abrir vai aplicativo:
jonu kalpošana
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.
- Mājdzīvnieks 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.