fbpixel
Etiquetas: , , , ,
0
(0)

Um ramo interessante da robótica é acrescentar inteligência aos objectos do quotidiano. Este domínio é designado por domótica para as casas e IoT (Internet of Things) para os objectos ligados. Um dos principais objectivos da domótica é monitorizar o que está a acontecer numa casa ou apartamento para que se possa responder adequadamente. Neste primeiro projeto de domótica, vamos monitorizar a temperatura de uma divisão e enviar as medições para uma aplicação de smartphone. É um projeto simples em que utilizamos a comunicação série com o módulo Bluetooth, um sensor de temperatura e uma aplicação para Smartphone criada com o App Inventor 2.

Hardware

  • Smartphone
  • Arduino UNO
  • Bateria de 5V
  • Sensor de temperatura LM35
  • Módulo Bluetooth HC-06

Esquema elétrico

home temperature measurement schematics

N.B.: O módulo representado no esquema é o módulo HC-05, mas os pinos têm as mesmas funções que no HC-06.

Code

Na especificação técnica do sensor LM35, encontramos a faixa de medição de temperatura e a regra de conversão entre temperatura e tensão. Uma vez medida a tensão de saída do sensor e convertida em temperatura, estes dados são enviados para o Smartphone via Bluetooth. Para enviar vários dados através da porta série, uma técnica consiste em concatenar os dados numa cadeia de caracteres com um separador predefinido (“x”) para facilitar a recuperação dos dados.

#include <SoftwareSerial.h>                          
SoftwareSerial HC06(2,3); 

// Constants
#define DELAY 1000 // Delay between two measurements in ms

// Parameters
const int sensorPin = A0; // Pin connected to sensor

// Variables
float voltage, temperature;

void setup(void) {
  Serial.begin(9600);
  HC06.begin(9600);
}

void loop(void) {
  voltage= analogRead(sensorPin) * (5.0 / 1023.0); // Convert digital value to voltage
  temperature=100*voltage; // conversion from V to °C
  
  Serial.print("Sensor reading = ");
  Serial.println(temperature); // the temperature reading

  // Send voltage and temperature value to app
  HC06.print(voltage);
  HC06.print("x");
  HC06.print(temperature);
  
  delay(DELAY);  
}

App de mesure de température

Criamos uma aplicação simples no sítio Web App Inventor 2. Os dados do sensor (tensão e temperatura) são enviados sob a forma de uma String para uma aplicação Android. Para obter as informações contidas na cadeia de caracteres, é necessário separar o texto com o separador predefinido “x”. Obtemos então uma lista de dois elementos que contém os dois dados que podemos apresentar nas zonas de texto da aplicação.

android app inventor 2 for home measurement
app inventor 2 home measurement scratch

O módulo Bluetooth deve estar registado na lista de dispositivos Bluetooth do seu telefone. O módulo Bluetooth HC-05 ou HC-06 deve ser emparelhado com o telemóvel pelo menos uma vez antes de utilizar a aplicação.

Pode descarregar o projeto aia aqui.

Se desejar obter mais informações sobre este projeto ou se achar que falta alguma coisa, deixe um comentário ou contacte-nos.

Source

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

As you found this post useful...

Follow us on social media!

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?