Съдържание:

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 assessmentção (pet) e controle automático de iluminação evitando, por motivos de viagem, os incovenientes de incomodar vizinhos para acender luces pet ou não ter com quem deixá-lo, e muitas vezes até o Cancelamento da viagem.

O използване на проекти или хардуер Dragonboard 410C com версия на linaro linaro инсталация и комплект за комплект Linker Mezzanine

(плака, сензор за осветяване, LED, relé e botão). От системата можете да използвате капацитет за комуникационния облак на сървъра в облака, който не е подходящ за Dweet.io, e асим, възможност за комуникационно въвеждане за оборудване на местно ниво и за прилагане на десенволвидо за Ionic, което осъществява контрола и нотификациите за разрешаване на интелигентен дом, разрешаващ визуализация Контрол за състоянието на системата за дистанционно управление.

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

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

а) По -малко като информация за осветителни тела от амбиентни атрави за сензора за осветяване (LDR) и контролно автоматизирано действие за действие на умната лампа (LED) зависи от нивото на програмата за осветяване.

б) 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: Списък на материалите

List Dos Materiais
List Dos Materiais
Списък Dos Materiais
Списък Dos Materiais
List Dos Materiais
List Dos Materiais
  • · Dragonboard 410C
  • 1 x Мецанин на Linker
  • 1 x модулен LED
  • · 1 x módulo Relé
  • · 1 x сензор за осветяване (LDR)
  • · 1 x botão de pressão
  • 1 x teclado USB
  • · 1 x mose USB
  • · 1 x HDMI монитор
  • · Conexão com интернет

Стъпка 2: КОНЕКСИ

КОНСЕКСИ
КОНСЕКСИ

Съединител или сензор за осветяване на входа на аналоговата ADC2;

Leitura da luminosidade (em Lumi) външна.

· Конектор или LED на цифров 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 цифров 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

Езиков език за програмиране, използващ Python.

O próximo passo é a instalação do python, das bibliotecas adicionais, protocolo SPI и дефиниране на пино на Dragonboard, съобразено като seguintes instruções:

Inicialmente abra o terminal e execute;

  • sudo apt-get update
  • 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 build-съществен autoconf automake libtool-bin pkg-config python-dev
  • sudo рестартиране

LIBSOC

  • git clone
  • cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c --with-board-configs
  • sudo make
  • sudo make install
  • sudo ldconfig/usr/local/lib
  • sudo рестартиране

96 дъски

git clone

· Antes de instalar essa biblioteca é needá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;

  • Após prossiga com a instalação:
  • cd 96 дъски GPIO/
  • sudo./autogen.sh
  • sudo./configure
  • sudo make
  • sudo make install
  • sudo ldconfig

СПИДЕВ

  • Para acesso aos sensores analógico é utilizado или protocolo SPI. Instalação da biblioteca é exlicada a seguir:
  • git clone
  • cd py-spidev
  • sudo python setup.py install
  • sudo ldconfig
  • sudo рестартиране
  • Será neophodário включва без 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 и GET funcionem com на сайта dweet.io е необходимо инсталиране на библиотека „заявки“. O processdimento é mostrado abaixo:

искания за инсталиране на sudo pip

Стъпка 4: ПРОГРАМА - Código Fonte Директор E Dweet

ПРОГРАМА - Código Fonte Директор E Dweet
ПРОГРАМА - Código Fonte Директор E Dweet

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 needárias para acesso ao portal dweet (nuvem). Os dois arquivos devem estar на месма паста изпълнител o програма.

За изпълнение или за използване на dweet използвайте командата на suguinte: sudo/home/linaro/…/dweet.py

За изпълнението на програмата на основния принцип използвайте или конфигурирайте командо: sudo python/home/linaro/…/smartHome_valerio_M6.py

O функционалността на софтуерните основи се състои

1) Importação de bibliotecas adicionais, importar gpio, GPIO и 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 сензор за осветяване на светлината за входен ADC2.

2) def readLDR (gpio)

Изпълнение на сензор за осветяване на светлината или на доблест на лейтера на апресенто на тела 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 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.

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. Представяме ви най -доброто на тялото или доблестта, за да промените състоянието и бутона за облак

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

dweet.dweet_by_name (name = "projeto_val", data = {"rele": 0, "Luminosidade": стойност, "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 para allowir o acionamento или desacionamento do relé remotamente e um get para verificar na nuvem as informações to system.

Стъпка 5: Конфигурирайте Dweet на сайта

Конфигурация На сайта Dweet
Конфигурация На сайта Dweet
Конфигурация На сайта Dweet
Конфигурация На сайта Dweet

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

Abrir no seu navegador на сайта Dweet.io клик на аба "Възпроизвеждане" e em seguida clicar em POST (/dweet/for/{thing})

Criar uma {thing} digitando no campo thing: projeto_val

Obs: A thing criada deve ser a mesma presente no program do código fonte python, no caso, projeto_val.

Preencha o campo content conformeindicado abaixo e em seguida clique em „Опитайте!“:

{

„Rele“: 0, „Luminosidade“: 550, „Луз“: 0, }

Veja detalhes nas figuras acima.

A verificação dos dados recebidos pelo dweet é feita pelo GET.

Кликнете върху GET/get/latest/dweets/for/{thing}

Digite no campo thing: projeto_val (obs: mesma {thing} criada no POST).

Кликнете върху „Изпробвайте!“

Em Response Body em "content" 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 program 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 clicando em "Опитайте го". На страницата ПОЛУЧАВАЙТЕ сладки визуализации като информация за актуализация на "реле", "Luminosidade" и "Luz" кликнете върху "Опитайте го".

Стъпка 6: APLICATIVO - Instação Do Ionic

O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic framework.

Предварително десенволвер за приложение за смартфон, прецизно инсталирано за Ionic без изчислителна мощност. Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:

  • Влезте без сайт: https://nodejs.org/en/ e faça или изтеглете да изтеглите версията на LTS до Node
  • Инсталирайте или възел не се изчислява песоално
  • Envie os comandos do prompt de comandos (cmd) para verificar se a instalação foi feita com sucesso:

възел -v

npm -v

Инсталирайте o Ionic com os comandos abaixo através do prompt de comandos (cmd):

npm install –g cordova ionic

npm install –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 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):

йонно стартиране smart_home_valerio_M6 празно (използвайте o nome do projeto)

Em seguida através da IDE Visual Studio Code for aberta a pasta contendo o aplicativo em branco (smart_home_valerio_M6) e foram alterados os seguintes arquivos:

  • home.html (src/pages/home) визуална част за приложение
  • home.ts (src/pages/home) се реализира като funções do código e alterações das propriedades da tela
  • app.module.ts (src/app)

No home.html e home.ts - foram alterações conforme needidade do projeto para comunicar -se de forma adequada com o dweet.io

Няма app.modules.ts - модификации за разрешаване на комуникация

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:

ionic генерира dweet на доставчика

Uma vez criado esse arquivo, que facilita a comunicação чрез 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 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.

Agora para abrir o aplicativo basta digitar no mesmo prompt do Visual Studio Code o 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 - информация се a luz está apagada ou acesa.

Препоръчано: