LoRa Packet Forwarder JSON Daten
25.12.2024
Elektronik | Funk | Software
Der Technik-Blog
Für dieses Projekt gibt es auch ein Video auf Youtube: Infrarot Signale einer Fernbedienung decodieren mit dem Arduino und einem IR-Receiver
Infrarot ist eine optische Übertragung, die heute noch vielfach in Fernsteuerungen und Fernbedienungen verwendet wird. Bevor Bluetooth auf den Markt kam, war ein Infrarot Modul in vielen Smartphones, PDAs und Notebooks verbaut. Eine Infrarot Datenübertragung (IRDA) wird heutzutage im privaten Bereich kaum noch verwendet.
Am Spektrum befindet sich Infrarot zwischen Mikrowellen (über 100 THz) und den sichtbaren licht (unter 790 Thz). Grundsätzlich ist Infrarot für das menschliche Auge nicht sichtbar. Da sich das exakte IR-Licht, was für Datenübertragungen verwendet wird, im Bereich des "nahen Infrarots" befindet, ist es für eine Kamera oft sichtbar. Sehr starke Infrarot-LEDs, wie sie z.B. in Überwachungskameras vorkommen, können vom menschlichen Auge oft als ein schwaches rotes licht wahrgenommen werden.
Der Sensor benötigt neben der Stromversorgung nur eine Leitung für die Datenübertragung. Diese Leitung muss am Arduino auf einen digitalen I/O Pin angeschlossen werden. In unserem Beispielcode wird der PIN 7 verwendet. Der Empfänger gibt standardmäßig ein HIGH aus und wechselt dann beim Empfang von Infrarotsignalen zwischen HIGH und LOW. Der Empfänger demodulieret das Lichtsignal und gibt es dann, so wie es eigentlich vom Sender ausgesendet wird, 1:1 in binär an den Mikrocontroller weiter.
Grundsätzlich würde man für den Sensor keine Bibliothek benötigen, wenn man z.B. die empfangen Zustände (HIGH und LOW) in ein Array speichert. Dies könnte man dann in hexadezimal ausgeben. Allerdings muss man dann im Code auch eine Funktion schreiben, die den Anfang und das Ende vom Signal erkennt und richtig abspeichert. Da gerade das nicht so einfach, vor allem für Anfänger ist, haben wir uns dann doch für eine Library entschieden, die uns das erspart. Der Beispielcode in Verbindung mit der Library ist nun in der Lage, das Signal zu decodieren und als hexadezimal und binär im Serial Monitor auszugeben. Das nachfolgende Bild zeigt ein Rohsignal, wie es vom IR-Receiver an das Arduino Board weitergegeben wird.
//More information at: https://www.aeq-web.com #include <IRremote.h> const int RECV_PIN = 7; IRrecv irrecv(RECV_PIN); decode_results results; void setup(){ Serial.begin(9600); irrecv.enableIRIn(); } void loop(){ if (irrecv.decode(&results)){ Serial.print(" HEX: "); Serial.print(results.value, HEX); Serial.print(" BIN: "); Serial.println(results.value, BIN); irrecv.resume(); } }
PT1000 Sensoren können nicht direkt analog mit einem Mikrocontroller gemessen werden. Wie baut man einen Messwandler mit dem LM358 für den PT1000 und Arduino?
WeiterlesenDer PT100 ist ein sehr präziser industrieller Temperatursensor. In diesem Artikel geht es um den Bau eines Messverstärkers zum Einlesen eines PT100 am Arduino
WeiterlesenAEQ-WEB © 2015-2024 All Right Reserved