תוכן עניינים:

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 שלבים
וִידֵאוֹ: David Godman - 2nd Buddha at the Gas Pump Interview 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 דוגמאות שאפשרות reposição automática de alimento para animais de estimação (חיית המחמד) e control automático de iluminação evitando, por motivos de viagem, os incovenientes de incomodar vizinhos para acos luzes e alimentar pet ou não ter com quem deixá-lo, e muitas vezes até o cancelamento da viagem.

או שימוש בחומרה Dragonboard 410C חומרה לינוקס לינארו מותקן ומקיף קישור ביניים

(placa, sensor de luminosidade, LED, relé e botão). אם יש לך אפשרות להפיק את הענן של הענן, הבא של Dweet.io, e assim, אפשרות לקונסולות מקומיות או ציוד מקומי או ייעודי להפקת חשבונות של יוניק e controlar o status do system remotamente.

Segue na figura anexa o diagrama em blocos da solução.

Os sensores e atuadores deste projeto serão capazes de:

א) מידע על luminosidade de um ambiente através do sensor de luminosidade (LDR) e controlar automaticamente o acionamento de uma lâmpada (led) dependendo do nível de luminosidade programado.

ב) 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: Lista Dos Materiais

Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
Lista Dos Materiais
  • · דרגוןבורד 410C
  • 1 x ביניים מקשרת
  • 1 x LED LED
  • · 1 x módulo Relé
  • · 1 x חיישן דה luminosidade (LDR)
  • · 1 x botão de pressão
  • 1 x USB teclado
  • · 1 x USB USB
  • · 1 x צג HDMI
  • · Conexão com אינטרנט

שלב 2: קונקסים

קונקסים
קונקסים

חיבור או חיישן של luminosidade ב ADC2 אנלוגיים אנרגיה;

Leitura da luminosidade (em Lumi) externa.

· מחבר או LED עם D1 דיגיטלי;

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

קונקטאר או Relé na saída D2 דיגיטלי;

Este Relé será responsável por acionar o dispositivo de reposição de alimento.

קונקטאר או Botão na saída דיגיטלי D3;

Este Botão será responsável pela mudança de estado do relé.

שלב 3: PROGRAMA - Instalação Do Python, Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard

Linguagem de programação utilizada foi o Python.

O próximo passo é a instalação do python, das bibliotecas adicionais, protocolo SPI e definição de pinos on Dragonboard, conforme as seguintes instruções:

Inicialmente abra o terminal e execute;

  • עדכון sudo apt-get
  • sudo apt-get upgrade
  • sudo apt-get dist-upgrade

עורך הטקסט

  • sudo apt-get install gedit
  • sudo apt-get להתקין python-pip

Biblioteca adicionais

  • sudo apt-get להתקין build-essential autoconf automake libtool-bin pkg-config python-dev
  • sudo reboot

LIBSOC

  • שיבוט git
  • cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c-with-board-configs
  • סודו לעשות
  • sudo עשה התקנה
  • sudo ldconfig/usr/local/lib
  • sudo reboot

96 לוחות

שיבוט git

· Antes de instalar essa biblioteca é needsá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 לרכוש מחרוזת pela LS_SHARE e substitua por LS_GPIO_SHARED;

  • Após prossiga com a instalação:
  • CD 96 לוחות GPIO/
  • sudo./autogen.sh
  • sudo./configure
  • סודו לעשות
  • sudo עשה התקנה
  • sudo ldconfig

SPIDEV

  • עבור acesso aos sensores analógico en utilizado o protocolo SPI. A instalação da biblioteca é explicada a seguir:
  • שיבוט git
  • תקליטור py-spidev
  • sudo python setup.py התקנה
  • sudo ldconfig
  • sudo reboot
  • אין צורך לכלול בארקודו sudo gedit /usr/local/etc/libsoc.conf a definity definição GPIO-CS = 18 e GPIO-12 = 18.

עבור פונקציות כמו POST e GET funcionem באתר dweet.io והכרחי להתקין "בקשות" מקראיות. O procedimento é mostrado abaixo:

בקשות להתקנת sudo pip

שלב 4: PROGRAMA - Código Fonte Principal E Dweet

תכנית - Código Fonte מנהלת E ציוץ
תכנית - Código Fonte מנהלת E ציוץ

או מנהל המערכת של python está nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções needsárias for acesso ao dweet portal (nuvem). Os dois arquivos devem estar na mesma pasta executor o programa.

עבור מנהל או dweet השתמשו בתכונה הבאה: 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 do sensor de luminosidade para a 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 é 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 (módulo Led) e é apresentado na tela a mensagem "Luz: acesa". Quando o nível de luminosidade for 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 par desligado ou de desligado para ligado, e essa mudança de estado do relé aciona um dispositivo, que permitt 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. אנו יכולים להעריך את הערך של הסטטוס השונה ואת לחצן הענן

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

dweet.dweet_by_name (name = "projeto_val", data = {"rele": 0, "Luminosidade": value, "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 principal smartHome_valerio_M6.py e o codigo fonte dweet.py

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

שלב 5: ציוץ אתר Configuração Do

ציוץ אתר Configuração Do
ציוץ אתר Configuração Do
ציוץ אתר Configuração Do
ציוץ אתר Configuração Do

O próximo passo é acessar o serviço da nuvem.

אברר לא יכול להבחין באתר Dweet.io לחץ על "הפעל" ותוכל ללחוץ על POST (/dweet/for/{thing})

Criar uma {thing} digitando no campo thing: projeto_val

שימו לב: דבר criada deve ser a mesma presente no programa do código fonte python, no caso, projeto_val.

תוכן ההצגה תואם את האפשרות "נסה את זה!":

{

"Rele": 0, "Luminosidade": 550, "לוז": 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 ding campo: projeto_val (obs: mesma {thing} criada no POST).

לחץ עליהם "נסה את זה!"

גוף תגובת ה- em עם "תוכן" teremos a informação recebida:

{

"Rele": 0, "Luminosidade": 550, "לוז": 0, }

Veja detalhes 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.

Isto feito e com o programa em python rodando na 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 לחץ עליהם "נסה את זה". לאחר מכן קבל ציוץ ויזואליזציות כמו אינפורמציות של "rele", "Luminosidade" ו- "Luz" לחיצה על "נסה את זה".

שלב 6: APLICATIVO - Instação Do Ionic

O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o מסגרת יונית.

Antes de desenvolver או אפליקציה עבור הטלפון החכם, מדויק להתקנה או יונית ללא מחשב נייד. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:

  • הכניסה לאתר: https://nodejs.org/en/ e faça או הורדה להורדה
  • 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

Instale o Ionic com os comandos abaixo através do prompt de comandos (cmd):

npm להתקין –g cordova ionic

npm להתקין –g cordova

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

יונית -v

שלב 7: APLICATIVO - Desenvolvimento E Operação

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

Apresentamos o desenvolvimento do aplicativo com of framework Ionic, que irá se comunicar com o dweet.io e assim, também, ler e alterar as information on ocorrem on dragon board.

Primeiramente foi criado um aplicativo em branco digitando o seguinte comando no prompt do windows (cmd):

ion_start smart_home_valerio_M6 ריק (השתמש ב- nome do projeto)

אם אתה יכול להשתמש ב- IDE Visual Studio Code אתה יכול להשתמש בפסטה או באפליקציית em branco (smart_home_valerio_M6) ופורמט אחר:

  • home.html (src/pages/home) parte visual do aplicativo
  • home.ts (src/pages/home) לממש את התכונה funcões do código e alterações das propriedades da tela
  • app.module.ts (src/app)

אין home.html e home.ts - פורמט אלטרנטיבי תואם צורך בפרוייקט עבור comunicar -se de forma adequada com o dweet.io

אין app.modules.ts - שינויים עבור היתר comunicação

Em sguida foi nødvendário criar um arquivo para a comunicação com o dweet. אברנדו לא מבקש שום תוכנת Visual Studio aberto e digitando:

ציוץ ספק יצרן יונית

Uma vez criado esse arquivo, que facilita 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 כמידע על ציוץ. (לקבל)
  • com a criação de um método para fazer o set das variações (פוסט)
  • criação de uma variável = baseURL עבור הגדרת que está usando או dweet como provor

Finalizadas alterações o aplicativo smart_home_valerio_M6 está pronto e segue em anexo completeo com todos os arquivos.

Agora para abrir או aplicativo basta digitar no mesmo prompt לעשות קוד Visual Studio או comando para abrir o aplicativo:

משרתים יונית

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 - informa se a luz está apagada ou acesa.

מוּמלָץ: