thkais hat geschrieben:Moin,
das Robo-Interface nutzt - genauso wie die I/O-Extension und der LT-Controller - *keinen* virtuellen COM-Port über USB sondern einen eigenen Treiber.
O.K., beim alten Robo-Interface habe ich das noch nicht nachgeprüft, vom Aufbau sah es mir aber ziemlich nach einem Chip aus - wäre da aber egal, da das Robo-Interface auch einen RS232-Eingang hat, also jederzeit per USB-Serielkabel angesprochen werden kann, also auf jeden Fall mit einem virtuellen-Com-Port lauffähig ist.
Der Robo TX nutzt definitiv eine USB-Serielwandlung - einfach mal unter Windows die Treibereigenschaften anschauen, da steht unter Treiberdetails "usbser.sys". Der "Treiber" ist nur die .inf, welche die normale, bei Windows mitgelieferte usbser.sys für das Gerät läd und den Namen im Gerätemanager setzt.
USB-Vendor-ID und Geräte-ID sagen erstmal nichts über das Protokoll aus, es kann dahinter auch ein Standard USB-Seriellkonverter stehen. Übrigens auch bei Arduinos, der Leonardo ist im ATmega32u4 eine USB-Schnittstelle integriert, welche sich softwareseitig sowohl als Serielle USB-Schnittstelle, aber auch als HID-Device nutzen lässt. Ob es ein physikalisch getrennter Konverter oder eine Softwareemulation eines solchen Chips im eigentlichen Controller ist, ändert nichts daran, dass die Schnittstelle extern per USB-Serielltreiber ansprechbar ist. Zumindest beim hier angesprochenen TX-Controller ist es definitiv so, dass windowsseitig die usbser.sys verwendet wird - und damit auch unter Linux ein entsprechender äquivatenter Treiber verfügbar ist.
Meine Ergänzung um die RS485 hatte sich mit der Antwort überschnitten, ich war erst gedanklich nur bei der Verbindung zur Robo I/O. War etwas unglücklich flasch formuliert und nicht vollständig überarbeitet.
Für die Nutzung von i2c muss man nicht SMD löten (allenfals die Steckleisten an den Arduino mini, aber man kann auch einen nano nehmen, an dem eine USB-Seriell-Schnittstelle und die Leisten schon dran sind) - die Preise sind für fertige Breakout-Bords, die Stiftleisten bzw. Anschlussklemmen haben. Sie werden eben nur nicht als als teures Aufsteckboard, sondern eben zum Verbinden mit Dupond-Kabeln geliefert.
Aber eben, weil selbst dass nichts für jeden ist, meine ich, dass Fischertechnik in den TXT eine Möglichkeit vorsehen sollte, dass man per USB andere Interfaces wie eine Extension ansprechen kann. USB würde ich inzwischen auch nicht mehr als fischertechnikfremd einstufen, seitdem Fischertechnik beim TXT für alle möglichen Sensorfunktionen in eine USB-Cam verwendet.
Dass USB räumlich nicht ideal ist, ist klar - deshalb auch mein Wunsch nach einem eigenen USB-hub in einem Fischertechnik Gehäuse.
Was die Akkus angeht: 7 NimH Babyzellen in zwei alte, miteinander verbundene Babyzellenhalter. Am günstigen bekommt man die Zellen aus Racings-Packs für ca. 13€ aus China (6 Zellen je Racing-Pack). Da kann man dann 5000 mAh nutzen. Ist natürlich sprerriger und hat mehr Gewicht. Alternativ geht ggf. auch LiIon oder LiPo, man braucht wegen des doch sehr starken und schnellen Spannungsabfalls aber einen Drop-DownConverter mit geringem Energieverlust. Außerdem ein spezielles Ladegerät fürs Load-Balancing. Man darf nicht auf die Akkus für Fahradbeleuchtung reinfallen - 8,4V liefern die nur 9 Minuten lang, dann gehts rapide auf ca. 7V runter. Man müsste die Zellen anders anordnen, und 12,6 V Spitzensannung haben - was ein Lowdrop DC-DC-Konverter erfordert.
Bezüglich der Größe müsstest Du den 3D-Controller mit den ansonsten benötigten 2 Extensions vergleichen - 4 Schrittmotoren * 4 Ausgänge = 16 Ausgänge, die geschaltet werden. Da ist der Fischertechnik 3-d-Controller echt kompakt, vor allem, da die Schrittmotoren eine höhere Leistung erfordern.
i2c-Selbstbauextensions mit gleicher Ausgangsleistung wie die orgiginalen Controller passen zusammen mit einem Arduino Mini in eine 60*60*30 Teilebox. Allerdings hat man nur 6 PWM-Ausgänge, zwei wären nur an/aus (wobei: eigentlich reichen auch 4* PWM für 4 Motoren, wenn je Motor nur ein Anschluss PWM-moduliert wird, um die Geschwindigkeit zu regeln - man müsste die Ansteuerung nur so machen, dass bei umgekehrter Laufrichtung der Wert des PWM-Anschlusses invertiert wird). Will man (für Schrittmotoren) eine höhere Ausgangsleistung, so wird es aber eng in der Teilebox, da braucht man eine je Schrittmotor.
Wie gesagt, alles steck-, schraub und ggf. quetschbar, ganz ohne Löten, wenn man möchte. Etwas Bohren/Sägen im Deckel der Teilebox, für die Anschlüsse, ist das Aufwändigste. Etwas Heißkleber oder Epoxydharz zum Fixieren der Platinen. Das Warten auf die Teile aus China das langwierigste. Meine Arduino Minis sind noch auf dem Weg...
Nichtsdestotrotz: In die Firmware des TXT gehört das Ansprechen älterer Kontroller, um sie ohne Bastelarbeit als Extension nutzen zu können.