hello_mbot_senden_empfangen
Dies ist eine alte Version des Dokuments!
Hello mBot Senden/Empfangen
Dieses Beispiel zeigt, wie ein mBot per Infrarotsignal (IR) eine LED auf einem zweiten mBot steuern kann. Der Sender sendet alle 2 Sekunden das Signal „LED_ON“. Der Empfänger schaltet daraufhin die LED für 500 ms auf Rot und wartet anschließend 1 Sekunde, bevor er erneut ein Signal empfängt.
Einsatzmöglichkeiten:
- Grundlagen der IR-Kommunikation zwischen Robotern
- Steuerung von Aktionen basierend auf drahtlosen Signalen, z. B. für Spiele, Schwarmverhalten oder gruppengesteuertes Verhalten
Dieses Beispiel stellt nur die grundlegende Struktur zur Verfügung. Es ist noch keine wirkliche Kommunikation, da lediglich ein Roboter sendet und der andere empfängt.
Quellcode (engl. Sourcecode)
Listing 1:MinimalesProgramm-Sender.ino
#include <MeMCore.h>
MeIR irSender; // IR-Modul initialisieren
void setup() {
Serial.begin(9600);
}
void loop() {
irSender.sendString("LED_ON"); // Sendet das Signal "LED_ON"
delay(2000); // 2 Sekunden warten
}
Listing 1:MinimalesProgramm-Sender.ino
#include <MeMCore.h>
#include <MeMCore.h>
MeIR irReceiver; // IR-Modul initialisieren
MeRGBLed led(0, 2); // LED am Port 0 mit 2 LEDs
void setup() {
Serial.begin(9600);
}
void loop() {
if (irReceiver.decode()) { // Prüfen, ob ein IR-Signal empfangen wurde
String message = irReceiver.getString(); // Empfangene Nachricht abrufen
irReceiver.reset(); // Empfänger zurücksetzen
if (message == "LED_ON") {
led.setColor(0, 255, 0, 0); // Erste LED auf Rot setzen
led.setColor(1, 255, 0, 0); // Zweite LED auf Rot setzen
led.show();
delay(500); // LED für 500 ms anlassen
led.setColor(0, 0, 0, 0); // LEDs ausschalten
led.setColor(1, 0, 0, 0);
led.show();
delay(1000); // 1 Sekunde warten, bevor erneut ein Signal empfangen wird
}
}
}
Erklärungen zum Quellcode
hello_mbot_senden_empfangen.1738658523.txt.gz · Zuletzt geändert: von torsten.roehl
