Estação de medição de temperatura Open-Source com Arduino e IoT - Configuração

medição de temperatura

Este artigo é o primeiro de uma série de três artigos que mostra como construir uma estação de medição de temperatura utilizando Arduino e IoT open source. Ou seja, qualquer um poderá reproduzir este artigo e contribuir para a medição de temperatura em diferentes pontos do Brasil (e, quem sabe, planeta).

 

Para comunicação com internet, será utilizado um módulo Wi-Fi ESP8266 ESP-01, o qual utilizará MQTT. Esta série foi feita por mim e por Douglas Salin Zuqueto.

 

A série de artigos que está sendo escrita aborda os seguintes assuntos:

 

Esta série foi desenvolvida com o  hardware oferecido pelo loja FILIPEFLOP, a qual foi fundamental para o desenvolvimento deste projeto, pois sem o auxílio do hardware, o projeto se tornaria inviável.

 

logo FILIPEFLOP

 

 

Motivação

 

A Internet das Coisas (IoT, em inglês) veio para ficar. Utilizando conceitos de IoT, pode-se criar sistemas interligados via web, não importando assim em nada a localização geográfica das partes. Chegamos à era em que sistemas comunicam-se entre si para oferecer a nós, seres humanos, uma melhor (e maior) experiência de uso. 

 

Motivados pelas dimensões que a IoT podem nos proporcionar, eu e o Douglas Salin Zuqueto resolvemos construir uma estação de medição de temperatura utilizando conceitos de IoT. Ou seja, através da Internet, será possível obter a temperatura de um determinado local quase que instantaneamente, também o faremos de modo Open-Source, ou seja, qualquer um tem a liberdade de reproduzir o projeto. Assim, agregando mais valor a ele. Como foi citado, todo projeto é construído de forma livre, portanto, quanto mais pessoas reproduzirem o projeto, mais locais do planeta terão suas temperaturas monitoradas. Com isso, uma rede coloborativa de estações de medição se formará.

 

 

Hardware utilizado para medição de temperatura

 

O projeto utiliza os seguintes componentes de hardware:

 

 

Diagrama em blocos do sistema

 

O diagrama em blocos do sistema pode ser visto abaixo:

 

Diagrama em blocos do sistema de medição de temperatura IoT
Figura 1 - Diagrama em blocos do sistema de medição de temperatura IoT

 

Conforme é mostrado no diagrama, toda a interação das estações de medição de temperatura e seus destinos finais (computadores, tablets e/ou smartphones) é feita puramente via Internet. Logo, qualquer local do planeta pode ter sua temperatura monitorada e disponibilizada no sistema sem problemas.

 

 

Circuito esquemático

 

O circuito esquemático do projeto pode ser visto na figura 2:

  

Medição de temperatura: circuito esquemático
Figura 2 - circuito esquemático

 

 

Leitura da temperatura

 

O primeiro passo para o desenvolvimento do projeto é realizar a leitura da temperatura obtida pelo sensor DHT-22. Primeiramente, é necessário baixar e instalar a biblioteca de comunicação do Arduino com o sensor DHT-22. Para isso, acesse este GitHub e siga as suas instruções.

 

Uma vez baixada e instalada a biblioteca, pode-se fazer um software básico no Arduino para ler o valor da temperatura e exibir no Serial Monitor (presente em qualquer IDE do Arduino). 

 

 

 

Resultados

 

Como citado no tópico anterior, pode-se observar  o valor lido através do Serial Monitor. Portanto, veja na imagem abaixo um conjunto de leituras efetuadas.

 

Serial Monitor (medição de temperatura)
Figura 3 - Serial Monitor (leitor de temperatura)

 

 

Configuração da comunicação serial com módulo Wi-Fi

 

A Comunicação Serial do Arduino com o Módulo Wi-Fi não é nada complicado. Para quem já desenvolveu projetos envolvendo placas arduino com módulos Bluetooth, é praticamente a mesma coisa. 

 

Observe o Sketch anterior e veja que já está sendo recuperado e impresso o valor da temperatura no monitor serial. Para que se possa enviar o valor da temperatura via serial para o módulo ESP8266 e, simultaneamente, ter mensagens de debug no monitor serial, teremos que fazer uma pequena modificação no código anterior. Observe o código abaixo.

 

 

Veja no Sketch acima que usamos a biblioteca SoftwareSerial. Essa biblioteca nos permite usar portas digitais do Arduino para criar outra comunicação serial em paralelo (emulada por software) à comunicação serial nativa da placa Arduino. Neste caso foi usado as portas 2 (RX) e 3 (TX) com velocidade de 9600 bauds.

 

Poderíamos ter usado os pinos 0 e 1 referente à comunicação serial nativa sem problema algum, mas com o auxílio da biblioteca usada podemos visualizar no monitor serial a temperatura lida (através da comunicação serial nativa) e, ao mesmo tempo, enviar a temperatura via serial (usando a biblioteca) para o ESP8266. Caso fosses usados os pinos 0 e 1, não teria como fazer esse debug no monitor serial. 

 

Na segunda parte do artigo será abordada a programação do módulo ESP8266 para receber a temperatura enviada pelo Arduino, além de ser abordada a conexão do módulo com a rede Wi-Fi e também a conexão e o envio dos dados para o Broker MQTT.

 

 

Referências

 

Outros artigos da série

Estação de medição de temperatura Open-Source com Arduino e IoT - Comunicação >>
NEWSLETTER

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Obrigado! Sua inscrição foi um sucesso.

Ops, algo deu errado. Por favor tente novamente.

Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Pedro Bertoleti
Sou engenheiro eletricista formado pela Faculdade de Engenharia de Guaratinguetá (FEG - UNESP) e trabalho com Android embarcado em Campinas-SP. Curioso e viciado em tecnologia, sempre busco me aprimorar na área de sistemas embarcados (modalidades bare-metal, RTOS, Linux embarcado e Android embarcado). Para mais informações, acesse minha página no Facebook:https://www.facebook.com/pbertoleti

11
Deixe um comentário

avatar
 
8 Comment threads
3 Thread replies
0 Followers
 
Most reacted comment
Hottest comment thread
9 Comment authors
Pedro Otávio Mariano PeruceloDiegophfbertoletiÉder Paulo PereiraEder Andrade Recent comment authors
  Notificações  
recentes antigos mais votados
Notificar
Pedro Otávio Mariano Perucelo
Visitante
Pedro Otávio

Teria como utilizar este protocolo MQTT com um m ódulo Ethernet w5100?

Diego
Visitante
Diego

teria alguma forma de implantar serviço snmp ? para enviar resultados e alarmes. serviço de sms ou call ?

rogerio peixoto
Visitante
rogerio peixoto

Prezados, sou iniciante no mundo Arduíno e um dos fatores do projeto que
preciso desenvolver envolver medição de temperatura corporal de
pequenos animais. Sabendo que a fiação entre os sensores e o
microcontrolador será roída por eles (além do risco de choque elétrico
ao spécimen) gostaria de saber dos Srs se conhecem algum sensor que
possa medir a temperatura a curta distância, sem que precise estar
fixado ao corpo do animal (que ficará em uma pequena gaiola). Desde já
agradeço pelas dicas/orientações.

Lindomar Schulze
Visitante
Lindomar Schulze

estou montando uma estação meteorologica com arduino e o esp8266 e os sensores dht22, ldr, bmp180, biruta, anemometro, pluviometro, sensor de raios uv, sensores de poeira e fumaça e o rtc, esta comunicação vai suportar este volume todos de dados?

Éder Paulo Pereira
Visitante
Eder

Ansioso pelos próximos, muito massa.

Eder Andrade
Visitante
Eder

Mandou bem!

phfbertoleti
Visitante
phfbertoleti

Valeu Eder! Logo virão as duas partes seguintes. Ficará massa!

Tiago Michel Silva Nunes
Visitante
Tiago Nunes

Parabéns pelo Artigo!

phfbertoleti
Visitante
phfbertoleti

Obrigado Tiago!

Igor Borges Tavares
Visitante
Igor Borges

Artigo show Pedrão, você é o rei do IoT!

phfbertoleti
Visitante
phfbertoleti

Hahaha, valeu Igor!