Բովանդակություն:

Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 քայլ
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 քայլ

Video: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 քայլ

Video: Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação: 7 քայլ
Video: Deutsch lernen im Beruf C1 - Hören & Verstehen 2024, Նոյեմբեր
Anonim
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação
Projeto SmartHome - Repositor De Alimento Para Pet + Controle De Iluminação

Այս ձեռնարկը ներկայացնում է մի շարք լուծումներ SmartHome- ի համար, որոնք թույլ են տալիս թույլատրել և օգտագործել ավտոմատիզմը կենդանիների համար (կենդանիներ) և վերահսկել ավտոմատ մեքենաների լուսավորող միջոցները, կամ motivos de viagem. pet ou não ter com quem deixá-lo, e muitas vezes até o cancellamento da viagem.

Օգտագործեք ապարատային Dragonboard 410C- ը և օգտագործեք linux linaro instalada և um kit Linker Mezzanine

(placa, sensor de luminosidade, LED, relé e botão): O Sistema possui a capacidade de se comunicar um servidor cloud, neste caso o Dweet.io, e assimilitar, an assimilitar an comunicaçãoo entre o o equipamento local e um aplicativo desenvolvido com Ionic, que realiza o o kontrolle and notificações da soluçoo տեսողական Smartiz թույլտվություն e controlar o status do sistema remotamente.

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

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

ա) Որպես լույսի լուսավորման տեղեկատվական միջավայրի և լուսավորության սենսորների (LDR) և լուսավորության ավտոմատ կառավարման կամ օպտիմալ կախվածության (լուսադիոդային) ազդանշանային ծրագրեր:

բ) 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 allowa 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
  • · 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 մոզա USB
  • · 1 x մոնիտոր HDMI
  • · Conexão com ինտերնետ

Քայլ 2: CONEXÕES

CONEXÕES
CONEXÕES

Լույսի լուսարձակի և ADC2 անալիզների սենսոր;

Leitura da luminosidade (em Lumi) externa.

· Conectar կամ 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 կամ Botão և saída թվային D3;

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

Քայլ 3. PROՐԱԳԻՐ - 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, conforme seguintes instruções:

Inicialmente abra o terminal e execute;

  • sudo apt-get թարմացում
  • sudo apt-get բարելավում
  • sudo apt-get dist-upgrade

Տեքստային խմբագիր

  • sudo apt-get տեղադրել gedit
  • sudo apt-get տեղադրել python-pip

Biblioteca adicionais

  • sudo apt-get տեղադրել կառուցել-անհրաժեշտ autoconf automake libtool-bin pkg-config python-dev
  • sudo վերագործարկում

LIBSOC

  • git կլոն
  • cd libsoc sudo autoreconf -i sudo./configure --enable-python = 2 --enableboard = dragonboard410c-board-configs- ով
  • sudo make
  • sudo make install
  • sudo ldconfig/usr/local/lib
  • sudo վերագործարկում

96 Տախտակ

git կլոն

· Antes de instalar essa biblioteca is needário verificar se a sua versão é compatível com a versão da LIBSOC previamente instalada. Ոչ arquivo /home/linaro/96 տախտակներGPIO/Archive/lib/gpio.conf ձեռք բերեք pela string LS_SHARE և փոխարինող LS_GPIO_SHARED;

  • Após prossiga com a instalação:
  • cd 96 Տախտակներ GPIO/
  • sudo./autogen.sh
  • sudo./ կոնֆիգուրացիա
  • sudo make
  • sudo make install
  • sudo ldconfig

ՍՊԻԴԵՎ

  • Para acesso aos sensores analógico é utilizado o protocolo SPI. A instalação da biblioteca é explicada a seguir:
  • git կլոն
  • cd py-spidev
  • sudo python setup.py տեղադրել
  • sudo ldconfig
  • sudo վերագործարկում
  • Será needário includir no arquivo sudo gedit /usr/local/etc/libsoc.conf a seguinte definição GPIO-CS = 18 e GPIO-12 = 18:

Նախկինում որպես զվարճանքներ ՓՈՍՏԵԼ ԵՎ ՁԵՌՆԵԼ գործառույթ com.com կայքից dweet.io անհրաժեշտ է տեղադրել գրադարանային «խնդրանքներ»: O procedimento é mostrado abaixo:

sudo pip տեղադրման հարցումներ

Քայլ 4. PROՐԱԳԻՐ - Código Fonte Principal E Dweet

PROՐԱԳԻՐ - Código Fonte Principal E Dweet
PROՐԱԳԻՐ - Código Fonte Principal E Dweet

O código fonte principal em python está nomeado como smartHome_valerio_M6.py: Դիտեք dweet.py կոնտեյտը, քանի որ անհրաժեշտ է օգտագործել dweet պորտալի հասանելիությունը (նոր): Os dois arquivos devem estar na mesma pasta performar o programa.

Օգտագործեք կամ օգտագործեք հետևյալ տարբերակները ՝ sudo/home/linaro/…/dweet.py

Հիմնական ծրագրի հիմնական գործիքի օգտագործման համար օգտագործեք հետևյալը. Sudo python/home/linaro/…/smartHome_valerio_M6.py

Softwareրագրային ապահովման հիմնական գործառույթը բաղկացած է

1) Մատչելի գրադարան, ներմուծում 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)

Իրականացնել լույսի սենսոր և լուսավորություն, որը թույլ է տալիս ներկայանալ և օգտագործել «Valor do LDR: xxx»

3) if_name _ == '_ main_':

Na primira 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 petionando o botão subindo em uma base colocada sobre esse botão), o relé mudará de estado de ligado para desligado կամ des desligado para ligado, essa mudança de estado do relé aciona um disponion, 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 կոճակը

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 codigo fonte dweet.py

O próximo passo é criar no site dweet.io: um post para թույլտվության կամ մեր թույլտվության դեպքում մենք կարող ենք ստանալ հեռակա կարգով և ստանալ նոր տեղեկատվություն ՝ որպես համակարգ:

Քայլ 5. Կազմաձևեք կայքի քաղցրավենիք

Configuração Do Site Dweet
Configuração Do Site Dweet
Configuração Do Site Dweet
Configuração Do Site Dweet

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

Abrir no seu navegador o site Dweet.io կտտացրեք «Խաղալ» և մենք ընտրում ենք POST- ը (/dweet/for/{thing})

Criar uma {thing} digitando no campo thing: projeto_val

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

Preencha o campo content conformeindicado abaixo e em seguida clique em "Փորձիր այն!":

{

«Թողարկում» ՝ 0, «Լումինոսիդադե» ՝ 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:

{

«Թողարկում» ՝ 0, «Լումինոսիդադե» ՝ 550, «Լուզ» ՝ 0, }

Veja detalhes nas figuras acima:

O exposto acima trata-se dos métodos "post" e "get", respectivamente, utilisados 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 կտտացրեք «Փորձիր»: Մուտքագրեք ձեր պատկերացումներն այնպես, ինչպես տեղեկատվական փոխանցումները կատարում են «արձակել», «Luminosidade» և «Luz» կտտացրեք «Փորձեք»:

Քայլ 6. APLICATIVO - Instação Do Ionic

O aplicativo foi desenvolvido em uma plataforma híbrida utilizando o Ionic շրջանակը:

Սմարթֆոնի, ինչպես նաև տեղադրման ճշգրիտ գործիքներ ՝ իոնային և համակարգչային հնարքների համար: Os passos para a instalação e verificação se a mesma foi bem-sucedida é mostrado abaixo:

  • Կայք մի մուտք գործեք.
  • Տեղադրեք 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

Տեղադրեք o Ionic com os comandos abaixo através do prompt de comandos (cmd):

npm install –g cordova իոնիկ

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- ում, որն արդեն իսկ ներկայացնում է կոմունիկացիան, ինչպես նաև dweet.io- ն, ինչպես նաև տեղեկացնել, թե ինչպիսի տեղեկություն է տալիս մեր վիշապի տախտակը:

Primeiramente foi criado um aplicativo em branco digitando կամ seguinte comando առանց հուշման պատուհանների (սմ):

ionic start 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) և 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/հավելված)

No home.

Չկա app.modules.ts - modificações para allowir comunicação

Em sguida foi needário criar um arquivo para a comunicação com o dweet: Rրուցեք մեզ անհապաղ Visual Studio- ն թվային եղանակով.

ionic generate մատակարարի քաղցրավենիք

Uma vez criado esse arquivo, որը հեշտացնում է հաղորդակցումը փոստով և e get get aplicativo- ով, o ciddi 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 (գրառում)
  • 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 completeo com todos os arquivos.

Agora para abrir o aplicativo basta digitar no mesmo prompt do Visual Studio Code- ի կամ հրամանի համար կարճ կամ aplicativo:

իոնական ծառայություն

O aplicativo será aberto no seu navegador (visual na figura acima) և 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.

Խորհուրդ ենք տալիս: