Nachdem Alice und Bob jetzt wissen wer wer ist, können sie jetzt eine Botschaft übertragen.
Die Übertragung funktioniert mit den IR-Sensoren der Bobs: die IR-LEDs senden und die schwarzen Phototransistoren empfangen.
Die IR-Sensoren reagieren empfindlich auf verschiedene Lichtarten. Zuviel Tageslicht, Glühlampen-Licht oder LED-Licht kann die Sensorik stören!
Als ersten Schritt programmieren wir das Senden:
Alice soll mit der IR-LED eine Zahl senden. Das machen wir mit der Funktion
bob3.transmitMessage(message);
Die Funktion kann eine beliebige Zahl zwischen 0 und 255 senden. Diese Zahl nennen wir ab jetzt Message.
In der loop-Funktion unterscheiden wir, auf welchem Roboter das Programm gerade ausgeführt wird:
Falls wir Alice sind, rufen wir in der loop()
-Funktion die Funktion loop_alice()
auf.
Falls wir Bob sind, rufen wir die Funktion loop_bob()
auf.
Alice soll jetzt mal irgendeine Zahl, zum Beispiel die 42, senden.
Damit wir sehen können, dass etwas passiert (IR-Licht ist unsichtbar!), schalten wir während der Übertragung die weissen Bauch-LEDs ein...
Um die Zahl 42 zu senden, schreiben wir: bob3.transmitMessage(42);
Schreibe den Programmcode für Alice in die Funktion loop_alice()
:
- Bauch-LEDs einschalten
- die neue Funktion
bob3.transmitMessage(42)
aufrufen - Bauch-LEDs ausschalten
- 5000 ms (= 5 Sekunden) warten
Alice Bauch-LEDs sollten jetzt immer wieder kurz aufblitzen!