Sisukord:
- Samm: Lista Dos Materiais
- 2. samm: CONEXÕES
- Samm 3: PROGRAMM - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
- 4. samm: PROGRAMM - Código Fonte Principal E Dweet
- Samm: seadistage saidi Dweet
- 6. samm: APLICATIVO - Instação Do Ionic
- Samm 7: APLICATIVO - Desenvolvimento E Operação
Video: Projeto SmartHome - hoidla De Alimento Para Pet + Controle De Iluminação: 7 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
Este tutorial ette SmartHome simples que permite a reposição automateica de alimento para animais de estimação (pet) e controle automático de illuminaçã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.
Kasutage tarkvara või riistvara Dragonboard 410C versiooni linux, installige see ja Link Link Mezzanine
(plats, valgusdiood, LED, reljeef ja botão). O süsteem on võimeline pakkuma kommunikatsioonikomplekti teenusepilve, seda ei saa teha või Dweet.io, e assim, on võimalik ühenduse ja sisekujunduse seade, mis on varustatud kohaliku e um aplicativo desenvolvido com Ionic, que realization or control and not notações da solução Smart Home, lubab visualiseerida e -kontrolli või oleku süsteemide kaugjuhtimine.
Segue an figura anexa või diagrama em blocos da solução.
Os sensores e atuadores deste projeto serão capazes de:
a) Ler asinformation de luminosidade de um ambiente através do sensor de luminosidade (LDR) e controlar automaticamente 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 or pet.
Samm: Lista Dos Materiais
- · Dragonboard 410C
- 1 x Linker Mezzanine
- 1 x režiimis LED
- · 1 x režiim Relé
- · 1 x valgustuse andur (LDR)
- · 1 x botão de pressão
- 1 x teclado USB
- · 1 x mose USB
- · 1 x HDMI -monitor
- · Conexão Interneti kaudu
2. samm: CONEXÕES
ADC2 analüütilise koonuse või valgusdioodi andur;
Leitura da luminosidade (em Lumi) externa.
· Conectar või LED koos digitaalse D1 -ga;
Esta saída será utilizada para simular a luz para iluminação
Conectar või Relé na saída digital D2;
Este Relé sera response for acionar or dispositivo de reposição de alimento.
Conectar või Botão ja digitaalne D3;
Este Botão vastab vastustele, mis on seotud mudança de estado do relé.
Samm 3: PROGRAMM - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard
Programmikeele kasutamine Pythonis.
Kui kasutate pythonit, lisateavet bibliograafia kohta, protokolli SPI ja määratlete Dragonboardi, kinnitage järgmiste juhistega:
Inicialmente abra o terminal e execute;
- sudo apt-get update
- sudo apt-get upgrade
- sudo apt-get dist-upgrade
Teksti toimetaja
- 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 taaskäivitamine
LIBSOC
- git kloon
- cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c-koos-board-configs
- sudo teha
- sudo make install
- sudo ldconfig/usr/local/lib
- sudo taaskäivitamine
96 Lauad
git kloon
· 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 hankige mängust string LS_SHARE e substitua por LS_GPIO_SHARED;
- Após prossiga com and install:
- cd 96BoardsGPIO/
- sudo./autogen.sh
- sudo./configure
- sudo teha
- sudo make install
- sudo ldconfig
SPIDEV
- Para acesso aos sensores analógico ja utilizado või protokoll SPI. Biblioteekide paigaldamise ja selgituste segu:
- git kloon
- cd py-spidev
- sudo python setup.py install
- sudo ldconfig
- sudo taaskäivitamine
- Vajadus ei sisalda arquivo sudo gedit /usr/local/etc/libsoc.conf ja segu määratluse GPIO-CS = 18 e GPIO-12 = 18.
Para que as funções POST e GET funcionem com o site dweet.io é requiredário instalar a biblioteca “request”. O protseduuri ja kõige parema abaixo:
sudo pip installipäringud
4. samm: PROGRAMM - Código Fonte Principal E Dweet
O código fonte peamine em python on nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções needsárias para acesso ao portal dweet (nuvem). Os dois arquivos devem estar na mesma pasta executar o program.
Rakenduse või dweet kasutamiseks kasutage järgmist segu: sudo/home/linaro/…/dweet.py
Rakenduse käivitamiseks või programmi kasutamiseks peate kasutama järgmist segu: sudo python/home/linaro/…/smartHome_valerio_M6.py
Olemasoleva tarkvara põhiomadused on olemas
1) Importige biblioteka reklaamid, importar gpio, GPIO ja Dweet de bibliotecas adicionais.
Identificacação dos sensores e atuadores nas portas on one conectados, bem como, definir a função in/out dos respectivos pinos.
Konfiguratsioonisüsteem SPI do sensor de luminosidade parameeter ADC2.
2) def readLDR (gpio)
Realise a leitura do sensor de luminosidade e o valor de leitura é apresentado na tela como "Valor do LDR: xxx"
3) kui _nimi _ == '_ peamine_':
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 (meetodulo Led) e esitus ja teater ja mensagem "Luz: acesa". Quando o nível de luminosidade for maior que o definido a luz se apaga (meetodulo 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, 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 variá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": väärtus, "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 peamine smartHome_valerio_M6.py e o codigo fonte dweet.py
O próximo passo é criar no site dweet.io: um post para loader või acionamento ou desacionamento do relé remotamente e um get para verificar na nuvem as informationções do system.
Samm: seadistage saidi Dweet
O próximo passo é acessar või serviço da nuvem.
Abrir no seu navegador or site Dweet.io click or aba "Play" and em seguida clickar em POST (/dweet/for/{thing})
Criar uma {thing} digitando no campo asi: projeto_val
Märkus: A thing criada deve ser a mesma presente no programa do código fonte python, no caso, projeto_val.
Preencha või campo sisu kinnitatakse abaixo ja segu klõpsuga "Proovi järele!":
{
"Vabastamine": 0, "Luminosidaad": 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 asi: projeto_val (obs: mesma {asi} criada no POST).
Klõpsake nuppu "Proovige järele!"
Em Response Body "sisu" teremos a informaceã recebida:
{
"Vabastamine": 0, "Luminosidaad": 550, "Luz": 0, }
Veja detalhes nas figuras acima.
O exposto acima trata-se dos métodos "post" e "get", austusavaldus, utilizados para passar valores de uma página para outra em um site dinâmico.
Kui soovite, et see programm oleks python rodando ja placon dragon board, siis teistsugune või estado do "rele" remotamente alterando seus valores de "0" para "1" ou de "1" para "0" através página POST do dweet e klõpsake nuppu "Proovige järele". Nautige GET do dweet são visualizadas as information in atualizadas do "rele", "Luminosidade" ja "Luz" click to "Try it out".
6. samm: APLICATIVO - Instação Do Ionic
O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic Framework.
Rakenduse desenvolver või nutitelefoni rakendus, installeerimise täpsus või Ionic ilma arvutita pessoal. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:
- Saidi avamine: https://nodejs.org/en/ e faça või allalaadimine versiooni LTS do Node kohta
- Installige või sõlme pole arvutipessoali
- Envie os comandos do prompt de comandos (cmd) para verificar se a instalação foi feita com success:
sõlm -v
npm -v
Installige või ühendage ioonikomandod abaixo através do prompt de comandos (cmd):
npm install - g cordova ionic
npm install - g cordova
Kontrollige Ionic foi instalado com sucesso usando o comando abaixo:
iooniline -v
Samm 7: APLICATIVO - Desenvolvimento E Operação
Esitlus või desenvolvimento do aplicativo com o Framework Ionic, que irá se comunicar com o dweet.io e assim, também, ler e alterar as information as que ocorrem na dragon board.
Esialgne rakendus, mis sisaldab rakendusi, mida kasutatakse digitaalsete numbrite jaoks ja mis ei hõlma Windowsi viipeid (cmd):
ioonkäivitus smart_home_valerio_M6 tühi (kasutage o nome do projeto)
See segu IDE Visual Studio Code jaoks on saadaval pasta valmistamiseks ja rakendamiseks (smart_home_valerio_M6) ja fookus 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/rakendus)
No home.html e home.ts - foram alterações conforme needidade do projeto para comunicar -se de forma adekvaatne com o dweet.io
No 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:
ioonse genereerimise pakkuja dweet
Uma vez criado esse arquivo, que facilitita 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çes do dweet. (saada)
- com a criação de um método para fazer o set das variações (postitus)
- 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 and segue em anexo complete to com todos os arquivos.
Agora para abrir või aplicativo basta digitar no mesmo prompt to Visual Studio Code või comando para abrir or aplicativo:
ioonne serveerimine
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.
- Lemmikloom Alimentação - Muda estado do relé, que aciona or dispositivo de alimentação do pet.
- Luminosidade - Mostra o valor de luminosidade.
- Luz - inform se a luz está apagada ou acesa.
Soovitan:
Süsteem Pêndulo + Hélice: Controle De Posição: 5 sammu
Süsteem Pêndulo + Hélice: Controle De Posição: Este experimento foi desenvolvido como trabalho prático da disciplina " Eletrônica Industrial " no prime semestre de 2018, pelos alunos Eduardo Coelho and Rodrigo Sousa, do curso de engenharia Aeroespacial na Universidade Federal de Minas G