Daten vom EV3 zu NXT schicken über Spezialkabel

Atmel, PIC, VEX, Fischertechnik

Moderator: Moderatoren

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 6. Apr 2015 11:41

Hallo!

Durch die Diskussion über den Arduino bin ich doch noch auf etwas gekommen, das vielleicht gehen könnte:
Wenn man nur eine unidirektionale Verbindung vom EV3 zum NXT haben will (um z.B. die Motoren fernzusteuern), dann könnte man ja mal folgendes versuchen:
UART-Ausgang vom EV3 (Pin 6) auf die A-Leitung des im NXT-Port 4 eingebauten ST485 legen.
Auf die B-Leitung legt man fix 2V oder so (Spannungsteiler basteln).

Richtig programmiert müsste der NXT dann die Daten vom EV3 empfangen können.
Ich glaube sogar, dass es nicht einmal so schwer ist auch mit der EV3-Standardfirmware Daten über den UART rauszuschicken (empfangen wäre sicher ein ganz anderes Thema).

Weiß jetzt nicht, wie nützlich so eine Einbahnstraße für Daten wirklich wäre, aber ein lustiges Experiment wäre es auf jeden Fall.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 6. Apr 2015 14:05

ich will dich ja nicht bremsen, aber wenn Motoren gesteuert werden sollen, bräuchte man eigentlich schon auch eine Rückmeldung über ihre Encoderwerte.
Und wenn man schon 1 Sensorport verbraucht für die Verbindung der Bricks, dann müsste man auch Sensoren abfragen können (Drucktaster als Bitmask, analoge Werte getoggelt).

Das Protokoll für I2C zwischen NXT und Arduino (6 Motoren, 6 Encoderwerte, 8 Sensor-Integer, 16 Touch-Bits) verwende ich ja bereits in meinem Arduino-Multiplexer!
Dabei musste ich mit 14 Bytes auskommen, wovon 3 für Transmission Control verwendet werden.
Wenn der EV3 32 Bytes Bandbreite hat, ginge das sogar noch komfortabler.

Anschließend dann per UART (RS485) zum NXT ist ja wieder deutlich schneller als momentan I2C zum NXT.
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 6. Apr 2015 14:26

Ist schon klar, dass dieses Experiment nur eingeschränkten allgemeinen Nutzen hat. Aber vielleicht fehlen halt für manche Anwendungen grade mal nur ein paar Motoren, die der NXT schön ansteuern könnte. Vielleicht ein Kran-Auto mit Extrafunktionen oder sowas. Diese Extras könnte der NXT auf Kommandos des EV3 bedienen - das ginge auch ohne Feedback wahrscheinlich ganz.
Ich bin da jetzt gedanklich immer noch bei einfachen Low/No-Cost-Lösungen.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 6. Apr 2015 14:34

die Kosten wären nicht höher, denn du brauchst ja eh
1. I2C von EV3 zum Arduino Nano (einfach 2x 47k-83k Pullups)
2. UART vom Nano zum NXT (über MAX485)

der einzige Unterschied wäre das Protokoll:
1. alle Control-Daten und Requests über den Nano zum NXT,
2. alle Response-Daten vom NXT über den Nano wieder zurück zum EV3

Das ganze als Handshake, dabei langsame Requests vom EV3 (warten bis NXT-Mailbox offen ist == NXT ist bereit zum Empfang),
und deutlich schnellere Bereitstellung der Daten samt Refresh seitens des NXT (und erst wenn sie abgeholt wurden, wieder offene Mailbox).
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 6. Apr 2015 14:39

Nein, nein. Du hast mich noch nicht verstanden. Diese Idee braucht überhaupt keinen Arduino. Nur ein paar Widerstände richtig zwischen EV3 und NXT.
Der Rest wäre Programmierung.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 6. Apr 2015 14:40

ach so, also direkte Verbindung!
So wie du's schon gemacht hast, oder über echtes I2C ? (würde mich wundern, wenn das ginge bei 2 Bitbang Masters... :-/ )
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 6. Apr 2015 18:54

Ein bisschen so schief hingezaubert halt:
EV3 schickt über seinen UART los und NXT empfängt mit einer nicht standardkonformen RS485-Schaltung. In diese eine Richtung könnte es klappen.

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 6. Apr 2015 19:04

Hätte gegen die vorige Lösung halt eine höhere Geschwindigkeit. Anstatt ca 100 bit / s eben etwas mehr. Die prinzipiellen Einschränkungen bleiben gleich.
Es kann sein, dass ich den UART am EV3 gar nicht über die Defaultgeschwindigkeit raufdrehen kann (weil ich ja keine Kommandos hinschicken kann), und das wären gerade mal 2400 Baud. Aber Immer noch 20 mal schneller als mein voriger Hack.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 6. Apr 2015 19:34

immerhin, gar nicht schlecht! 8-)
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 7. Apr 2015 19:33

Tja, ich hab's jetzt probiert, und es geht nicht.
Die Firmware lässt mich einfach keine Daten am UART hinausschicken, solange das Konfigurationsprotokoll mit dem Sensor nicht abgeschlossen ist. Und klarerweise kann ich kein Protokoll durchführen, wenn ich nichts zum EV3 schicken kann.
Sobald ein Sensor erkannt und eingerichtet ist, kann man dem nämlich sehr wohl ein paar zusätzliche Daten schicken. Aber das ist eben für meinen Zweck der direkten EV3-NXT-Verbindung nicht ausreichend.
Fazit: Die einzige Lösung, die mir bisher ohne dazwischengeschalteten Prozessor gelungen ist, war gerade mal dieses Spezialkabel mit dem hingezauberten Signal-Puls. Ist aber echt nur für ganz spezielle Anwendungen.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 7. Apr 2015 19:37

...oder I2C...mit Slave... 8-)
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 7. Apr 2015 19:41

Verstehe ich jetzt nicht. Ich glaube nicht, dass der NXT irgendwie ein I2C-Slave sein kann, oder?

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 7. Apr 2015 19:42

nein, der NXT nicht :D
Gruß,
HaWe
±·≠≈²³αβγδε∂ζλμνπξφωΔΦ≡ΠΣΨΩ∫√∀∃∈∉∧∨¬⊂⊄∩∪∅∞®
NXT NXC SCHACHROBOTER: https://www.youtube.com/watch?v=Cv-yzuebC7E

Benutzeravatar
c0pperdragon
Schreibt viel
Schreibt viel
Beiträge: 231
Registriert: 9. Feb 2015 00:29

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon c0pperdragon » 7. Apr 2015 19:44

Ja, ja. Wenn du die Arduino-Lösung meinst, die geht klarerweise. Aber ich wollte ja was anderes versuchen.

Benutzeravatar
HaWe
Administrator
Administrator
Beiträge: 5402
Registriert: 11. Jan 2006 21:01
Wohnort: ein kleiner Planet in der Nähe von Beteigeuze

Re: Daten vom EV3 zu NXT schicken über Spezialkabel

Beitragvon HaWe » 7. Apr 2015 19:48

:mrgreen:


Zurück zu „allgemeine / Nicht-Lego-Robotik und Elektronik“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 11 Gäste

Lego Mindstorms EV3, NXT und RCX Forum : Haftungsauschluss