جدول المحتويات:

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

إستي البرنامج التعليمي apresenta uma solução SmartHome simples que permite a reposição automática de alimento para animais de estimação (pet) e console automático de iluminação evitando، por motivos de viagem، os incovenientes de incomodar vizinhos pet ou não ter com quem deixá-lo، e muitas vezes até o cancellamento da viagem.

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 Posui a capacidade de se comunicar com um servidor cloud، neste caso o Dweet.io، e assim، optibilitar a comunicação entre o equipamento local e um aplicativo desenvolvido com Ionic، que realiza o control e notificações da solução visual home، allowindo ه السيطرة على حالة o القيام بالنظام البعيد.

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

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

أ) Ler as informações de luminosidade de um ambiente através do sensor de luminosidade (LDR) e controlar automaticamente o acionamento de uma lâmpada (led).

ب) تقرير عن الغذاء والبيع للحيوانات الأليفة. 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
  • دراجون بورد 410 ج
  • 1 × رابط الميزانين
  • 1 × مودولو ليد
  • · 1 x مودولو ريليه
  • · 1 × جهاز استشعار لومينوسيداد (LDR)
  • · 1 × بوتاو دي بريساو
  • 1 x teclado USB
  • 1 × موس USB
  • · 1 × مراقب HDMI
  • · Conexão كوم الإنترنت

الخطوة 2: CONEXÕES

CONEXÕES
CONEXÕES

Conectar o sensor de luminosidade na entrada analógica ADC2؛

Leitura da luminosidade (em Lumi) externa.

· Conectar o LED na saída 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 by acionar o detitivo de reposição de alimento.

Conectar o Botão na saída digital D3 ؛

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

الخطوة 3: البرنامج - Instalação Do Python، Bibliotecas Adicionais E Definição Dos Pinos Na Dragonboard

A 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 na Dragonboard، المطابقة كتعليمات:

تنفيذ العبارات النهائية ؛

  • sudo apt-get update
  • sudo apt-get ترقية
  • sudo apt-get dist-Upgrade

محرر دي تيكستو

  • sudo apt-get install gedit
  • sudo apt-get install python-pip

مكتبة adicionais

  • sudo apt-get install build-basic autoconf automake libtool-bin pkg-config python-dev
  • sudo إعادة التشغيل

LIBSOC

  • استنساخ بوابة
  • cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c - with-board-configs
  • sudo
  • sudo جعل التثبيت
  • sudo ldconfig / usr / local / lib
  • sudo إعادة التشغيل

96 المجالس

استنساخ بوابة

· ما قبل تركيب المكتبة وإلزامها بالتحقق من الأمر نفسه مقابل التوافق مع مكتبة LIBSOC previamente instalada. لا يوجد arquivo /home/linaro/96boardsGPIO/Archive/lib/gpio.conf procure pela string LS_SHARE e بديلاً عن LS_GPIO_SHARED ؛

  • Após prossiga com a instalação:
  • القرص المضغوط 96 اللوحات
  • sudo./autogen.sh
  • sudo./ تكوين
  • sudo
  • sudo جعل التثبيت
  • سودو لدكونفيغ

سبيدف

  • الوصول إلى أجهزة الاستشعار التناظرية واستخدام البروتوكول SPI. A instalação da biblioteca é explicada a seguir:
  • استنساخ بوابة
  • cd py-spidev
  • sudo python setup.py install
  • سودو لدكونفيغ
  • sudo إعادة التشغيل
  • تسلسل ضروري بما في ذلك لا arquivo sudo gedit /usr/local/etc/libsoc.conf a seguinte definição GPIO-CS = 18 e GPIO-12 = 18.

Para que as funcões POST e GET funcionem com o site dweet.io é implário instalar a biblioteca "طلبات". O الإجراءات é Mostrado Abaixo:

طلبات تثبيت sudo pip

الخطوة 4: البرنامج - Código Fonte الرئيسي E Dweet

البرنامج - Código Fonte الرئيسي E Dweet
البرنامج - Código Fonte الرئيسي E Dweet

O código fonte main em python está nomeado como smartHome_valerio_M6.py. O código fonte dweet.py contém as funções ضروريًا للوصول إلى بوابة dweet (nuvem). Os dois arquivos devem estar na mesma pasta ex programa.

تنفيذي أو dweet استخدم o seguinte comando: sudo / home / linaro /… / dweet.py

يستخدم البرنامج الرئيسي بنمط تنفيذي o seguinte comando: 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، select 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 لـ 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 ، 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

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

dweet.dweet_by_name (name = "projeto_val" ، البيانات = {"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 main 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 ou desacionamento do relé remotamente e um get verificar na nuvem as informações do sistema.

الخطوة 5: Configuração Do Site Dweet

Configuração هل الموقع Dweet
Configuração هل الموقع Dweet
Configuração هل الموقع Dweet
Configuração هل الموقع Dweet

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

Obs: شيء مبتكر يقدمه لا يوجد برنامج código fonte python ، no caso ، projeto_val.

المحتوى المتوافق مع المحتوى المسبق للعربة والجودة ، انقر فوق الزر "جربه!":

{

"rele": 0 ،

"لومينوسيداد": 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 / {شيء}

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

زقزقة "جربها!"

نص استجابة Em "محتوى" teremos a informação recebida:

{

"rele": 0 ،

"لومينوسيداد": 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، é posí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 "جربها". يمكنك القيام بتغريد são visualizadas كما تفعل informações atualizadas "rele" و "Luminosidade" e "Luz" clicando em "جربها".

الخطوة 6: APLICATIVO - Instação Do Ionic

O aplicativo foi desenvolvido em uma plataforma híbrida استخدام إطار أيوني.

أنتي ديسنفولفر أو تطبيقات الهاتف الذكي ، على وجه التحديد تثبيت أيوني لا حاسوب. كلمات المرور الخاصة بالتثبيت والتحقق من قِبل mesma foi bem-sucedida é mostrado abaixo

  • Entre no site: https://nodejs.org/en/ e faça o download da versão mais recente LTS do Node
  • تثبيت عقدة لا الكمبيوتر
  • Envie os comandos do موجه الأوامر (cmd) للمطالعة بالتحقق من instalação foi feita com sucesso:

عقدة الخامس

npm -v

Instale o Ionic com os comandos abaixo através do موجه الأوامر (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

تقديم معلومات عن إطار العمل 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 quick do windows (cmd):

البداية الأيونية smart_home_valerio_M6 فارغة (استخدم o nome do projeto)

Em seguida através da IDE Visual Studio Code foi aberta a 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 / app)

No home.html e home.ts - Foram alterações Complet Requidade do projeto para comunicar-se de forma adequada com o dweet.io

لا يوجد app.modules.ts - تعديل على تصريح comunicação

احرص على أن تكون بحاجة إلى مساعدة من أي وقت مضى إلى إرسال بريد إلكتروني. Abrindo um موجه بدون عرض Visual Studio aberto e digitando:

توليد الأيونية dweet مزود

Uma vez criado esse arquivo، que simple 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. (احصل على)
  • com a criação de um método para fazer o set das variações (post)
  • criação de uma variável = baseURL للفقرة التعريفات التي تم إنشاؤها

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 موجه فعل 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.

  • الحيوانات الأليفة Alimentação - Muda estado do relé، que aciona o detitivo de alimentação do pet.
  • لومينوسيداد - موسترا أو فالور دي لومينوسيداد.
  • Luz - informa se a luz está apagada ou acesa.

موصى به: