Arduino nano con bluetooth HC-05+BMP180+DHT11 wireless weather station su smartphone android


    


In questo progetto colleghiamo la nostra semplice weather station fatta con arduino nano un sensore di temperatura dht11 ed un sensore di pressione atmosferica BMP180 al modulo bluetooth HC05,in modo da poter visualizzare sul nostro smartphone i dati relativi alle letture dei sensori.Il modulo HC05 ci permette di comunicare in modo semplice ed economico con dispositivi dotati di bluetooth come tablet ,pc o smartphone,ed è possibile utilizzarlo sia come master che come slave.Utilizzandolo con uno smartphone occorre scaricare un app (ce ne sono tantissime)nel mio caso ho utilizzato BLUESERIAL BETA,ma va benissimo anche BLUETOOTH TERMINAL HC-05,entrambe scaricabili da google play.Una volta avviata l'app vedrete il modulo hc05 nella lista dei dispositivi  (se non è presente, dovrete collegarvici prima dalle impostazioni del bluetooth, la password di default è 1234).Fatto questo passiamo allo schema di montaggio .

ATTENZIONE VERIFICATE SEMPRE I PIN DEI VOSTRI COMPONENTI CHE POTREBBERO DIFFERIRE DA QUELLI RIPORTATI NELLO SCHEMA.

IMPORTANTE RICORDATEVI DI SCOLLEGARE IL MODULO HC-05 PRIMA DI CARICARE OGNI SKETCH PER NON INCORRERE IN ERRORI.


CONNESSIONI:
Modulo HC05 
RXD=al pin TX di arduino cavo blu
  TXD=al pin RX di arduino cavo giallo
GND=al pin GND di arduino cavo nero
VCC=al pin 5V di arduino cavo rosso
  

DHT11
VCC=al pin 5V di arduino cavo rosso
OUT=al pin 2 di arduino cavo viola
GND=al pin GND di arduino cavo nero

BMP180
VCC=al pin 5V di arduino cavo rosso
GND=al pin GND di arduino cavo nero
SCL=al pin A5 di arduino cavo verde 
SDA=al pin A4 di arduino cavo bianco

IL CODICE:




//includo le librerie
#include <Adafruit_BMP085.h>
#include <DHT.h>

#define DHTTYPE DHT11   // DHT 11 
#define DHTPIN 2// Set DHT pin:

//creo un nome al sensore barometrico
Adafruit_BMP085 BMP180;

// Initialize DHT sensor for normal 16mhz Arduino:
DHT dht = DHT(DHTPIN, DHTTYPE);

void setup()
{
  // Setup sensor:
  dht.begin();
  BMP180.begin();

  //inizializzo la seriale
  Serial.begin(9600);

}

void loop()

{ delay(3000);

  // Read the humidity in %:
  float h = dht.readHumidity();
  // Read the temperature as Celsius:
  float t = dht.readTemperature();
  // Read the temperature as Fahrenheit:
  float f = dht.readTemperature(true);

  // Compute heat index in Fahrenheit (default):
  float hif = dht.computeHeatIndex(f, h);
  // Compute heat index in Celsius:
  float hic = dht.computeHeatIndex(t, h, false);

  //scrivo sul seriale
  Serial.println("*****************");
  Serial.println("lettura dati");

 //pressione atmosferica
  Serial.print("Pressione atmosferica = ");
  Serial.print(BMP180.readPressure());
  Serial.println(" Pa (Pascal)");

  //altitudine
  Serial.print("Altitudine = ");
  Serial.print(BMP180.readAltitude());
  Serial.println(" metri");

  //pressione atmosferica dal livello del mare
  Serial.print("Pressione dal livello del mare (calcolata) = ");
  Serial.print(BMP180.readSealevelPressure());
  Serial.println(" Pa");

  //altitudine reale
  Serial.print("Altitudine reale = ");
  Serial.print(BMP180.readAltitude(101500));
  Serial.println(" metri");

 //Temperatura e umidità
  Serial.print(F("Umidità: "));
  Serial.print(h);
  Serial.println(F(" %"));
  Serial.print("Temperatura: " );
  Serial.print(t);
  Serial.println(F(" °C"));

}
Ora con l'app blueserial collegatevi al modulo e godetevi le letture dei sensori.

Post popolari in questo blog

Arduino nano+Mq135+display oled 0.96" ssd1306 128x64

Arduino weather station wireless con NRF24L01+PA+LNA+dht11+bmp180+mq135+HC-05 con doppio display oled 0,96" arduino nano+mega

Arduino+DHT11+BMP180+Oled display i2c sh1106 con schermate che si alternano

Modulo di contatto

Nome

Email *

Messaggio *