Isi kandungan:
- Langkah 1: Lista Dos Materiais
- Langkah 2: SAMBUTAN
- Langkah 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
- Langkah 4: PROGRAMA - Código Fonte Principal E Dweet
- Langkah 5: Configuração Do Dweet Laman web
- Langkah 6: APLICATIVO - Instação Do Ionic
- Langkah 7: APLICATIVO - Desenvolvimento E Operação
Video: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 Langkah
2024 Pengarang: John Day | [email protected]. Diubah suai terakhir: 2024-01-30 11:11
Tutorial tutorial apresenta uma solução SmartHome simples que permite 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 incomodar vizinhos para acender luzes e aliment haiwan kesayangan, pesanan anda, pembatalan dan pembatalan.
O projeto utiliza o hardware Dragonboard 410C com versão linux linaro instalada e um kit Linker 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 e notificações da solução Rumah pintar e kawalan atau status melakukan sistema remotamente.
Segue na figura anexa o diagrama em blocos da solução.
Os sensores e atuadores deste projeto serão capazes de:
a) Sesuai dengan maklumat luminosidade de um ambiente através do sensor de luminosidade (LDR) e controlar automamente o acionamento de uma lâmpada (led) dependendo do nível de luminosidade programado.
b) Reposiçao de alimento realizada quando o pet pressiona uma base colocada sobre um botão, que ao ser pressionado muda o estado de um relé. Sebuah mudança de estado do relé libera um dispoitivo que permita a reposição de alimento para o pet.
Langkah 1: Lista Dos Materiais
- · Dragonboard 410C
- 1 x Mezanin Linker
- 1 x LED módulo
- · 1 x médulo Relé
- · 1 x sensor de luminosidade (LDR)
- · 1 x botão de pressão
- 1 x teclado USB
- · 1 x USB USB
- · 1 x monitor HDMI
- · Conexão com internet
Langkah 2: SAMBUTAN
Conectar o sensor de luminosidade na entrada analógica ADC2;
Leitura da luminosidade (em Lumi) externa.
· Conectar o LED na sada digital D1;
Esta saída será utilizada para simular a luz para iluminação
Conectar o Relé na saída digital 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é.
Langkah 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
Linguagem de programação utilizada juga o Python.
O próximo passo adalah instalação do python, das bibliotecas adicionais, protocolo SPI e definição de pinos na Dragonboard, sesuai sebagai instrumen seguintes:
Initialmente abra o terminal dan melaksanakan;
- sudo apt-get kemas kini
- sudo apt-get peningkatan
- sudo apt-get dist-upgrade
Editor de texto
- sudo apt-get install gedit
- sudo apt-get install python-pip
Biblioteca adicionais
- sudo apt-get install autoconf automate build-essential libtool-bin pkg-config python-dev
- rebo sudo
LIBSOC
- klon git
- cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c --dengan papan-konfigurasi
- sudo buat
- sudo buat pasang
- sudo ldconfig / usr / local / lib
- rebo sudo
96 Papan
git klon
· Antes de instalar essa biblioteca é αναγκαasrio verificar se a sua versão compat compível com a versão da LIBSOC previamente instalada. Tiada arquivo /home/linaro/96boardsGPIO/Archive/lib/gpio.conf mendapatkan pela string LS_SHARE e substitua por LS_GPIO_SHARED;
- Apos prossiga com sebuah instalação:
- cd 96 PapanGPIO /
- sudo./autogen.sh
- sudo./konfigurasi
- sudo buat
- sudo buat pasang
- sudo ldconfig
SPIDEV
- Para acesso aos sensores analógico é utilizado o protocolo SPI. Instalação da biblioteca adalah explicada a seguir:
- git klon
- cd py-spidev
- sudo python setup.py pasang
- sudo ldconfig
- rebo sudo
- Será requá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 di laman web dweet.io adalah mustário instalar biblioteca "permintaan". O prosedimento is mostrado abaixo:
permintaan pemasangan sudo pip
Langkah 4: PROGRAMA - Código Fonte Principal E Dweet
O código fonte prinsipal em python está nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém sebagai funções requárias para acesso ao portal dweet (nuvem). Os dois arquivos devem estar na mesma pasta pelaksana atau programa.
Para pelaksana o dweet menggunakan o seguinte comando: sudo / home / linaro /… / dweet.py
Para pelaksana o programa fonte Principal menggunakan o seguinte comando: sudo python / home / linaro /… / smartHome_valerio_M6.py
O funcionamento do software basicamente terdiri
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 respivos pinos.
Configuração da leitura de SPI do sensor de luminosidade untuk entrada ADC2.
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) if_name _ == '_ main_':
Na primeira parte o valor de luminosidade é perbandinganado 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 untuk 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 relé aciona um dispositivo, que membenarkan 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 dan butang Awan
Satu comunicação com a nuvem é feita através do comando:
dweet.dweet_by_name (name = "projeto_val", data = {"rele": 0, "Luminosidade": nilai, "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 prinsipal pintarHome_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 na nuvem sebagai maklumat mengenai sistema.
Langkah 5: Configuração Do Dweet Laman web
O próximo passo é acessar o serviço da nuvem.
Abrir no seu navegador o site Dweet.io clicar na aba "Play" e em seguida clicar em POST (/ dweet / for / {thing})
Criar uma {thing} digitando no campo thing: projeto_val
Pemerhatian: Satu perkara yang tidak dapat dilakukan tanpa programa melakukan código fonte python, no caso, projeto_val.
Preencha o campo content compleindicado abaixo e em seguida clique em "Cubalah!":
{
"Rele": 0, "Luminosidade": 550, "Luz": 0, }
Veja mengeluarkan nas figuras acima.
A verificação dos dados recebidos pelo dweet é feita pelo DAPATKAN.
Clicar em GET / get / terkini / dweets / untuk / {perkara}
Digite no campo thing: projeto_val (obs: mesma {thing} criada no POST).
Clique em "Cubalah!"
Em Response Body em "content" teremos a informação recebida:
{
"Rele": 0, "Luminosidade": 550, "Luz": 0, }
Veja mengeluarkan 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.
Istilah feito e com programa em python rodando na placa board dragon, é 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 clicando em "Cubalah". Na página DAPATKAN pemanasan visual visual sebagai maklumat atualizadas "rele", "Luminosidade" e "Luz" clicando em "Cubalah".
Langkah 6: APLICATIVO - Instação Do Ionic
O aplicativo juga desenvolvido em uma plataforma híbrida utilizando o Kerangka Ionik.
Antes de desenvolver o aplicativo para o smartphone, tepatnya instalar o Ionic no computador pessoal. Os passos para a instalação e verificação se a mesma juga bem-sucedida é mostrado abaixo:
- Tidak ada laman web: https://nodejs.org/en/ e faça o muat turun da versão mais terkini LTS do Node
- Pemasangan o Node no seu computador pesoal
- Envie os comandos do prompt de comandos (cmd) para verificar se a instalação dan feita com sucesso:
simpul -v
npm -v
Instal o Ionic com os comandos abaixo através melakukan prompt de comandos (cmd):
memasang npm –g cordova ionic
pasang npm –g cordova
Verifique se o Ionic juga instalado com sucesso usando o comando abaixo:
ionik -v
Langkah 7: 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 alterar as informações que ocorrem na dragon board.
Primeiramente foi criado um aplicativo em branco digitando o seguinte comando no prompt do windows (cmd):
permulaan pintar ion_home_valerio_M6 kosong (gunakan o nome do projeto)
Em seguida através da IDE Visual Studio Code juga telah mengikuti 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 e alterações das propriedades da tela
- app.module.ts (src / aplikasi)
No home.html e home.ts - foram alterações mematuhi syarat yang diperlukan untuk melakukan projeto para comunicar-se de formaukupada com o dweet.io
Tiada app.modules.ts - modificações para permitir comunicação
Em sguida juga memerlukan criar um arquivo para comunicação com o dweet. Abrindo um prompt tanpa prioprio Visual Studio aberto e digitando:
Dweet pembekal ionik
Uma vez criado esse arquivo, que سهولتita a comunicação melalui post e via get do aplicativo, o código dweet.ts foi alterado:
- com a criação de um método para buscar sebagai maklumat yang dweet. (dapatkan)
- 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 proofor
Finalizadas alterações o aplicativo smart_home_valerio_M6 está pronto e segue em anexo completeo com todos os arquivos.
Agora para abrir o aplicativo basta digitar no mesmo prompt do Visual Studio Code o comando para abrir o aplicativo:
hidangan ionik
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 - maklumat mengenai luz está apagada ou acesa.
Disyorkan:
Controle De Gás E Poeira Com O NodeMCU: 5 Langkah
Controle De Gás E Poeira Com O NodeMCU: Este foi um trabalho para medir n í veis de poeira e g á s num dado ambiente, e compartilhar estes dados nas nuvens e em seu selular, incluindo disparar um e-mail de alerta caso os valores lidos sejam thinkados altos
Sistema Pêndulo + Hélice: Controle De Posição: 5 Langkah
Sistema Pêndulo + Hélice: Controle De Posição: Este experimento juga desenvolvido como trabalho prático daiplinlina " Eletrônica Industrial " tiada perdana semester 2018, pelos alunos Eduardo Coelho e Rodrigo Sousa, do curso de engenharia Aeroespacial na Universidade Federal de Minas G