Második, modul-kombinációkat bemutató leírásunkban az Arduino Sensor Kit hőmérséklet és páratartalom mérő szenzorát és az OLED modult fogjuk együtt használni. Így lehetőség lesz a mért értékeket nem csak soros monitoron megjeleníteni, hanem a helyi kijelzőn is.

Hőmérséklet és páratartalom mérő – OLED modul

 

 

 

 

 

Az Arduino Sensor Kit „Temperature and Humidity” modulja digitális formátumban szolgáltatja a környezet hőmérséklet és páratartalom értékeit. (D3). A szenzort kombinálhatjuk a készlet OLED moduljával, így például mini időjárás állomás, vagy egy lakás klímavezérlőjének működését modellezhetjük.

– a DHT11 érzékelő alapprogramja:

 //#define DHTPIN 3 
#include "Arduino_SensorKit.h"
 
void setup() {
  Serial.begin(9600);
  Environment.begin();
}
 
void loop() {
  
  Serial.print("Temperature = ");
  Serial.print(Environment.readTemperature()); //print temperature
  Serial.println(" C");
  Serial.print("Humidity = ");
  Serial.print(Environment.readHumidity()); //print humidity
  Serial.println(" %");
  delay(2000);
  
}

A program a D3-as digitális csatornán olvassa be a szenzor aktuális értékét, és a readTemperature illetve a readHunidity paranccsal olvassa ki a hőmérséklet és páratartalom értékeket. A mért adatokat az Eszközök > Soros monitor menüpont segítségével tudjuk ellenőrizni.

– az OLED kijelző alapprogramja:

#include "Arduino_SensorKit.h"
 
void setup() {
  Oled.begin();
  Oled.setFlipMode(false); // Sets the rotation of the screen
}
 
void loop() {
  int random_value = analogRead(A0);   //read value from A0
 
  Oled.setFont(u8x8_font_chroma48medium8_r); 
  Oled.setCursor(0, 43);    // Set the Coordinates 
  Oled.print("Sensor Kit");   
  //Oled.refreshDisplay();    // Update the Display 
  delay(1000);
}

Az „Oled.begin” parancs indítja a kijelzőt, a setFlipMode pedig beállítja a kiírás tájolását. A setFont parancs beállítja az alkalmazott betűtípust, a setCursor pedig azt, hogy a kiírás hol jelenjen meg a kijelzőn.

– bővített program

A két program kombinációja:

 #include "Arduino_SensorKit.h"
 
void setup() {
  Serial.begin(9600);
  Environment.begin();
  Oled.begin();
  Oled.setFlipMode(false);
}
 
void loop() {
  
  Serial.print("Temperature = ");
  Serial.print(Environment.readTemperature()); //print temperature
  Serial.println(" C");
  Serial.print("Humidity = ");
  Serial.print(Environment.readHumidity()); //print humidity
  Serial.println(" %");
  Oled.setFont(u8x8_font_chroma48medium8_r); 
  Oled.setCursor(0, 10);    // Set the Coordinates 
  Oled.print("Temp:");   
  Oled.print(Environment.readTemperature()); 
  Oled.setCursor(0, 30);    // Set the Coordinates 
  Oled.print("Hum:");   
  Oled.print(Environment.readHumidity()); 
  Oled.refreshDisplay();    // Update the Display 
  delay(2000);
  
}

A programban szereplő paraméterek alapján a mért adatok egymás alatt, a (0, 10), illetve a (0, 30) pozíciókban jelennek meg.

A program futásának eredménye a soros monitoron:

illetve az OLED kijelzőn:

A cikkben felhasznált anyagok forrása: https://sensorkit.arduino.cc/

A fentiekben bemutatott Arduino Sensor Kit megvásárolható a MálnaPC Webshopjában!