Hallo Leute, ich bin gerade bei der Planung meines nächsten Roboters. Es soll ein Schwarmroboter werden nach diesem hier: http://www.swarmrobot.org Nun haperst bei der Kommunikation zwischen den Robotern. Sie solle über IR-Leds und IR-Transistoren miteinander kommunizieren können. Diese IR-Leds sind an digitale Pin und die IR-Transistoren sind an den ADC des Atmega Controllers angeschlossen. Über diesen digitalen Pins soll nun ein binäres oder hexadezimales Signal generiert und an einem Roboter gesendet werden der das Signal über den IR-Transistor und ADC ausliest/auswertet. Leider bin ich ein bisschen planlos wie isch das Programm mäßig bewerkstelligen soll. Gleichzeitig werden die besagten IR-Led/Transistor noch als Distanzsensor verwendet. Also werde zwei Funktionen über die selben Bauteile implementiert. Zurzeit verwende ich ein Arduino Due Board zum austeste der Schaltung und programmiere diesen über die Arduino Entwicklungsumgebung. Später werde ich ein eigens geplantes und zur Produktion freigegebenes Roboter Mainboard verwenden und diesen mittels AVR GCC programmieren(mit dem ich leider keine grossen Erfahrungen bisher gesammelt habe). So wie ich das jetzt einschätze wird das nicht so einfach gehen wie ich mir das gedacht habe. Könnte mir jemand von euch einen tipp gebe wie ich diese kleine Problem angehen kann? Danke vielmals im voraus und grüsse Fabio
Fabio schrieb: > Sie solle über IR-Leds und IR-Transistoren miteinander kommunizieren > können. Die erste Frage wäre, welche Datenrate auf der Übertragungsstrecke anfällt. Falls das nur "Kleinkram" ist, könnte man alternativ auch fertige Fernbedienungsempfänger verwenden, die einem erheblichen Elektronikaufwand im Frontend abnehmen, da sowohl die Abtrennung von Falschlicht als auch die automatische Verstärkungsregelung als Hardware implementiert sind.
Ich kann jetzt nur schreiben, wie ICH das lösen würde. Ich würde das Thema Kommunikation vom restlichen Robot-Gehirn physisch und logisch trennen, d.h. aus Sicht deines Haupt-Arduino sollte es nur eine serielle Schnittstelle geben, über die Kommandos hereinkommen oder zurückfließen. Die IR-Übertragung würde ich mit einem anderen extra-MC (z.B. Arduino Nano oder Pico) machen. Es gibt reichlichst Libraries zum Senden und Empfangen z.B. von RC5-codierten Signalen. Das dezentralisierte Konzept würde auch aus meiner Sicht Vorteile bei der Entwicklung bringen. Man kann z.B. während der Softwareentwicklung vorübergehend Sender und Empänger direkt verbinden, man kann später nmühelos auf andere Technologien umstellen (Funk, WLAN, GSM, Induktion, Ultraschall ...) usw.
Sind das die 11 + 11 Swarmrobots die eine Fußballmannschaft bilden ?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.