Sensoren sind die Sinnesorgane elektronischer Systeme. Wir nutzen unsere Haut zum Fühlen, unsere Augen zum Sehen, unsere Ohren zum Hören, unsere Zunge zum Schmecken und unsere Nase zum Riechen. Im Picobrix sind bereits viele Sinnesorgane (Sensoren) vorhanden. Es können auch neue hinzugefügt werden. Mithilfe von Feuchtigkeits-, Temperatur-, Licht- und vielen weiteren Sensoren können Sie mit der Umgebung interagieren. Picobricks können die Umgebungstemperatur messen, ohne dass eine andere Umgebungskomponente erforderlich ist.
Die Umgebungstemperatur wird in Gewächshäusern, Inkubatoren, in Umgebungen zum Transport von Medikamenten und kurzzeitig in Situationen verwendet, in denen die Temperaturänderung ständig überwacht werden muss. Wenn Sie in Ihren Projekten eine Operation zur Temperaturänderung durchführen möchten, sollten Sie wissen, wie man die Umgebungstemperatur misst. In diesem Projekt bereiten Sie ein Thermometer mit Picobricks vor, das die Umgebungstemperatur anzeigt OLED-Bildschirm.
Projektvideo
Details und Algorithmus
Picobricks verfügt über ein DHT11-Modul. Dieses Modul kann die Temperatur und Luftfeuchtigkeit in der Umgebung erfassen und Daten an den Mikrocontroller senden. In diesem Projekt werden wir die notwendigen Codes schreiben, um die vom Temperatur- und Feuchtigkeitssensor DHT11 gemessenen Temperaturwerte auf dem OLED-Bildschirm auszudrucken.
Komponenten
1X PicoBricks
Schaltplan
Sie können die Module von Picobricks ohne Verkabelung programmieren und betreiben. Wenn Sie die Module getrennt von der Platine verwenden möchten, sollten Sie die Modulverbindungen mit Grove-Kabeln herstellen.
MicroBlocks-Codes der PicoBricks
Sie können auf die Microblocks-Codes des Projekts zugreifen, indem Sie das Bild auf die Registerkarte „Microblocks Run“ ziehen oder auf klicken Taste
MicroPython-Codes der PicoBricks
Vom Maschinenimport Pin, I2C, ADC # zum Zugriff auf die Hardware-Picobricks
aus picobricks importieren SSD1306_I2C, DHT11 #oled-Bibliothek
utime #time-Bibliothek importieren
#um auf die Hardware-Picobricks zuzugreifen
BREITE=128
HÖHE=64
#definieren Sie das Gewicht und die Höhe der Picobricks
sda=machine.Pin(4)
scl=machine.Pin(5)
#Wir definieren SDA- und SCL-Pins für die Kommunikation zwischen Pfaden
i2c=machine.I2C(0, sda=sda, scl=scl, freq=2000000)#Bestimmen Sie die Frequenzwerte
oled=SSD1306_I2C(128, 64, i2c)
pico_temp=DHT11(Pin(11))
current_time=utime.time()
während True:
if(utime.time() - current_time > 2):
current_time = utime.time()
pico_temp.measure()
oled.fill(0)#clear OLED
oled.show()
Temperatur=pico_temp.temperature
Luftfeuchtigkeit=pico_temp.humidity
oled.text("Temperature: ",15,10)#print "Temperature:" auf der OLED bei x=15 y=10
oled.text(str(int(temperatur)),55,20)
oled.text("Luftfeuchtigkeit: ", 15,40)
oled.text(str(int(Luftfeuchtigkeit)),55,50)
oled.show()#show auf OLED
utime.sleep(0.5)#warte eine halbe Sekunde
Arduino C-Codes der PicoBricks
#enthalten
#enthalten
#include „ACROBOTIC_SSD1306.h“
#define DHTPIN 11
#define DHTTYPE DHT11
//definiere die Bibliothek
DHT dht(DHTPIN, DHTTYPE);
Schwimmertemperatur;
//Definieren Sie die Temperatur verifizierbar
void setup() {
// DHT-Sensor und Oled-Bildschirm definieren
Serial.begin(115200);
dht.begin();
Wire.begin();
oled.init();
oled.clearDisplay();
}
void loop() {
Temperatur = dht.readTemperature();
Serial.print("Temp: ");
Serial.println(temperatur);
oled.setTextXY(3,1);
oled.putString("Temperatur: ");
//drucke „Temperature:“ auf dem OLED bei x=3 y=1
oled.setTextXY(4,3);
oled.putString(String(temperatur));
//Drucke den Wert vom Temperatursensor auf dem OLED-Bildschirm bei x=4 y=3
Serial.println(temperatur);
Verzögerung(100);
}
GitHub-Projektseite