PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : howto: RP6 und Lego NXT koppeln



gicking
17.10.2013, 22:45
hallo,

kürzlich habe ich mir einen RP6v2 zugelegt, und mein Junior hatte bereits einen Lego NXT. Eher zufällig stolperte ich dann darüber, dass der NXT mit seinen "smart" Sensoren über I2C kommuniziert. Daraufhin habe ich gleich mal die beiden gekoppelt. Das Ergebnis ist ein Lego-Kran auf einem RP6, der per TV-Fernbedienung gesteuert wird. Unter http://www.cream-tea.de/NXT_RP6_connect.zip findet ihr die Beschreibung, RP6-Software, und die NXT-G Programme. Viel Spaß beim Spielen...

Gruß, Georg

Dirk
18.10.2013, 14:59
Hallo Georg,

eine tolle und sauber dokumentierte Arbeit!
Kommt natürlich als Link in den RN-Wissen Programmierungs-Artikel zum RP6.

Frage: Kann der NXT eigentlich auch I2C-Slave sein?
Ich kenne mich damit nicht gut aus ...
Dann könnte man ja auch Lego vom RP6 aus als I2C-Master steuern ...

gicking
18.10.2013, 17:18
Hallo Dirk,

unter NXT-G ist der NXT meines Wissens immer I2C Master. Bei Robot-C bin ich mir nicht sicher.

Aber Du kannst dennoch den RP6 die Kontrolle übernehmen lassen. Der NXT fragt dann alle z.B. 10ms an, ob er was tun soll. Meistens ist die Antwort "nein", aber manchmal käme eben ein Kommando mit Parametern zurück. Der Einfachheit halber nimmst Du eine feste Framelänge, die zum längsten Parametersatz passt. Das generiert zwar mehr Kommunikation, vereinfacht aber das NXT-G Programm sehr. Ich hoffe, ich habe mich klar genug ausgedrückt...?

Gruß, Georg