Índice:

TempControl: 9 etapas
TempControl: 9 etapas

Vídeo: TempControl: 9 etapas

Vídeo: TempControl: 9 etapas
Vídeo: Temp Control Fixed for AMD Ryzen 7000, AGESA 1.0.7.0 2024, Novembro
Anonim
TempControl
TempControl

TempControl é um projeto desenvolvido para coletar informações sobre a umidade e a temperatura do ar. Essas informações podem ser acessadas de qualquer Smartphone com o sistema operacional Android.

As informações fornecidas através de sensores instalados em uma placa Arduino e compartilhadas com uma placa DragonBoard. Uma vez que este passo seja concluído, a informação será enviada para uma API criada no Thingspeak e fornecerá a informação a ser consumida.

Um aplicativo Android foi desenvolvido como uma maneira de acessar informações da API e exibir no celular.

Aplicabilidade: o projeto pode ser aplicado em um ambiente onde há necessidade de monitoramento de temperatura e umidade e, com base nessas informações, é necessário tomar medidas como consequência das mudanças climáticas.

Etapa 1: Sobre TempControl

Sobre TempControl
Sobre TempControl
Sobre TempControl
Sobre TempControl

TempControl é um sistema para coletar informações sobre umidade e a temperatura, que você pode ser acessado utilizando smartphones Android.

Será coletada as informações de temperatura e umidade do ar não arduíno formulado para uma placa Dragonboard) e posteriormente consolidada para um webservice (segue a descrição abaixo).

Um aplicativo android básico será construído para exibir as informações coletadas dos sensores, o aplicativo irá consumir as informações do webservice e mostrar na tela do celular.

Etapa 2: Obtendo Informações

Obtendo Informações
Obtendo Informações

Para o projeto foi usado um sensor básico de umidade e temperatura chamado DHT11.

O sensor DHT11 é um sensor de temperatura e umidade, que permite a medição de 0 a 50 Celsius, e umidade na faixa de 20 a 90%. Não é um sensor extremamente rápido e preciso, por isso não é recomendado a utilização em ambientes de alto risco. Sua faixa de precisão para temperatura é de 2 graus, e de umidade, 5%.

Este sensor está ligado diretamente a uma placa Arduino Uno R3.

Após o arduino ler as informações de temperatura e umidade, esses dados são enviados pela porta serial, e posteriormente lida por outra placa, que neste projeto foi um Qualcomm DragonBoard 410C. A DragonBoard é responsável por enviar esses dados através de uma interface wireless para uma API criada no ThingSpeak.

Etapa 3: Algorítimo Arduíno

Algorítimo Arduíno
Algorítimo Arduíno
Algorítimo Arduíno
Algorítimo Arduíno

O programa representado na imagem desse passo, lê as informações do sensor, e apresenta essas informações no monitor serial do Arduino. A biblioteca para uso com o DHT11 pode ser encontrada no site:

Para compilar o código no Arduíno é necessário um software específico. Esse software é uma IDE que pode ser baixada no site oficial do Arduino:

Esse software é conduzido em um computador onde é feito uma programação, conhecida como sketch, na qual será feito upload para uma placa de prototipagem Arduino, através de uma comunicação serial. O sketch feito pelo projetista dirá à placa o que deve ser estabelecido durante o seu funcionamento.

Após a execução do programa, os dados contendo as informações de temperatura e umidade podem ser observados no monitor serial da IDE, conforme a imagem desse passo.

Código fonte do programa "Sensor de umidade e temperatura DHT11":

pastebin.com/5P5vwySZ

Etapa 4: Conexão Serial Arduino Com DragonBoard 410c

Conexão Serial Arduino Com DragonBoard 410c
Conexão Serial Arduino Com DragonBoard 410c
Conexão Serial Arduino Com DragonBoard 410c
Conexão Serial Arduino Com DragonBoard 410c
Conexão Serial Arduino Com DragonBoard 410c
Conexão Serial Arduino Com DragonBoard 410c

Três jumpers fazem a ligação entre o arduino e uma placa de dragão.

Um jumper liga dois pinos negativos das duas placas entre si.

A saída serial do arduino componentes são pinos 0 - RX e 1 - TX se ligam diretamente à porta UART0 da placa dragonboard. (O pino RX do arduino liga na outra ponta com um pino TX da Dragon Board, e o pino TX do arduino liga na outra ponta com um pino RX da Dragon Board).

Há dois UARTS em série disponíveis no Dragonboard UART0 e UART1.

O UART0 possui como linhas padrão UART0 TX e UART0 RX, juntamente com os sinais de controle de fluxo UART0 CTS e UART0 RTS.

- Pino 5 - UART0 TX

- Pino 7 - UART0 RX

- Pino 3 - UART0 CTS

- Pino 9 - UART0 RTS

O UART1 inclui apenas como linhas UART1 TX e UART1 RX.

- Pino 11 - UART1 TX

- Pino 13 - UART1 RX

Etapa 5: Preparando O Ambiente De Desenvolvimento DragonBoard

Preparando O Ambiente De Desenvolvimento DragonBoard
Preparando O Ambiente De Desenvolvimento DragonBoard

Para implementar o programa na dragonboard é necessária a instalação de alguns softwares:

• Windows 10 (pode ser máquina virtual com rede em Bridge)

• Comunidade Microsoft Visual Studio 2017

www.visualstudio.com

• Windows IoTCoreDashboard

go.microsoft.com/fwlink/?LinkID=708576

• Cliente Windows IoTRemote

www.microsoft.com/pt-br/store/p/windows-io…

• Modelo de IoTProject do Windows para Visual Studio

go.microsoft.com/fwlink/?linkid=847472

PDF com instruções para preparação o ambiente para implementação, e criação de um projeto Windows IOT:

bit.ly/2yIrG5t

Etapa 6: Implementando O Código Fonte Na Dragonboard

Implementando O Código Fonte Na Dragonboard
Implementando O Código Fonte Na Dragonboard
Implementando O Código Fonte Na Dragonboard
Implementando O Código Fonte Na Dragonboard

Código fonte para dragonbord:

github.com/Joabcks/BackgroundApplication4

Basicamente, o programa irá ler as informações que estão sendo recebidas na porta serial do dragonboard e irá armazenar os dados lidos em uma STRING variável chamada rxBuffer. Esses dados serão enviados para uma API sem conteúdo de requisições

Um ponto bastante importante é que o campo "SerialPort. BaudRate = 9600;" representa a taxa de transmissão de dados, e esse valor deve ser idêntico ao programado no Arduíno.

Passo 7: Fornecendo As Informações

Fornecendo As Informações
Fornecendo As Informações

A informação é necessária por uma API hospedada no ThingSpeak e alimentada pela placa Dragon.

ThingSpeak é um serviço que oferece uma infraestrutura de web e um protocolo de comunicação baseado em http para envio e recebimento de dados gerados em Arduino ou qualquer outro dispositivo com recursos para comunicação em rede. Pode-se dizer que qualquer dispositivo com conectividade para um serviço de Internet http e capaz de realizar GET e POST pode se comunicar com o ThingSpeak.

Esta API mantém uma política de limpeza de mensagens antigas, tornando as informações acessadas sempre atualizadas.

Site oficial ThingSpeak:

thingspeak.com/

Neste projeto uma API recebe uma string com os dados do sensor de umidade e temperatura

- field1 corresponde a informação de temperatura e umidade

Exemplo para enviar informações para api - ESCRITA

GET -

Exemplo para dar um get nas informações da api - LEITURA

GET -

Etapa 8: Mostrando As Informações

Mostrando como informações
Mostrando como informações

Aplicativo Códido Fonte Projeto Android:

github.com/feliperamoscarvalho/ControledeT…

O app android consome basicamente as informações da API do ThingSpeak e imprime na tela do celular.

Etapa 9: Considerações Finais

Considerações Finais
Considerações Finais

Os componentes para desenvolver este projeto foram:

1 - Qualcomm DragonBoard 410C (R $ 599, 90)

1 - Arduino Uno Rev3 (R $ 44, 90)

1 - Sensor de umidade e temperatura DHT11 (R $ 12, 90)

1 - Jumpers

Componentes do projeto:

JOAB FERREIRA - [email protected]

FELIPE - [email protected]

PABLO - [email protected]

PEDRO - [email protected]

FLAVIO - [email protected]

Referências:

www.arduino.cc/en/Main/Software

docs.microsoft.com/en-us/windows/iot-core/…

www.arduinoecia.com.br/2013/05/sensor-de-um…

www.mathworks.com/help/thingspeak/?requestedDomain=www.mathworks.com

Recomendado: