| Freiheit für die Mobile RobotsAm Beispiel des Hindernis-Robots des aktuellen Kastens "Mobile Robot Set" 93 292 (das ist der linke auf dem Bild) soll gezeigt werden, welche Möglichkeiten es gibt, den Robot ohne lästige USB-Strippe durch die Gegend fahren zu lassen. ROBO Pro : Download zum Betrieb im ROBO InterfaceDas Programm ist in der Beispielsammlung von ROBO Pro enthalten. Also : in Robo Pro laden, Download-Button drücken, Robot läuft. Gezeigt ist hier das Main, es kommen noch 7 weitere Unterprogramme dazu. Geht einfach und prächtig, es gibt aber keine Einfluß-Möglichkeit auf das laufenden Programm im ROBO Interface. Ablaufen tut hier das compilierte ROBO Pro Programm im Renesas Microprocessor des ROBO Interfaces. ROBO Pro : Kommunikation über das RF DatalinkROBO Pro Programm wie oben. An den Rechner wird anstelle des ROBO Interfaces das ROBO RF Datalink an USB angeschlossen. Die USB-Strippe am ROBO Interface wird abgezogen, Akku bleibt. Button Online-Modus drücken. Läuft genauso schön wie im Download-Betrieb. Man kann das Programm z.B. um Anzeigemöglichkeiten oder zusätzliche Steuerungsmöglichkeiten erweitern (Bedienfeld ROBO Pro). Das Programm läuft auf dem PC ab, dabei wird natürlich die Firmware des ROBO Interfaces genutzt. Nachteil : Es kostet (das ROBO RF Datalink). vbaFish : Kommunikation über das RF DatalinkWenn man das graphische Programmieren nicht so recht mag, geht's auch mit dem textuellen Programmieren z.B. mit vbaFish40.
Das Programm wurde in enger Anlehnung an die ROBO Pro Lösung erstellt und leistet das gleiche wie die ROBO Pro RF Datalink Lösung. Mit einer anderen Programmiersprache gehts genauso gut. Programmierer habe eine (gesunde?) Sammlung von Vorurteilen für ihr Handwerkszeug. Renesas C : Download zum Betrieb im ROBO InterfaceDas ROBO Interface enthält den Microprozessor M16C/20-24 von Renesas und zusätzlich umfangreiche fischertechnik Firmware zum Betrieb der speziellen ROBO Interface Hardware. Wenn man es denn ganz genau wissen will kann man den Prozessor selber in Renesas C programmieren und das Programm dann über das fischertechnik Program FtLoader in das ROBO Interface laden :
Datei Hindernis1.C Das Programm entspricht im Aufbau der vbaFish40-Lösung. Das Warten auf Impulse am Antriebsrad (WaitForChanges) wurde aber durch eine Pause (FtDelay, Firmware-Funktion) ersetzt (Grund : Faulheit). Anstelle der FishFace-Methoden wurde hier mit der TransferArea (sTrans) der Firmware gearbeitet, die TransferArea wird in 10 ms Intervallen von der Firmware upgedatet. sTrans.M_Main erlaubt z.B. den Zugriff auf die Motorausgänge des Interfaces (alle gleichzeitig). Unterprogramm Vorwarts : sTrans.M_Main = 0x05; (binär 0101) setzt M1 und M2 auf links (FullSpeed, siehe sTrans.MPWM_Main), M3 und M4 werden abgeschaltet. sTrans.E_Main & 0x04 maskiert die I-Ausgänge des Interfaces, ungleich 0 : I3 ist gesetzt. Die Installation der Renesas Software (IDE und Compiler) läuft wie üblich, detaillierte Beschreibung (fischertechnik/Knobloch) in FtComp.ZIP : Renesas-Install.pdf. Die Renesas IDE benötigt und erzeugt einen unheimlichen Wust von Dateien. Bei diesem kleinen Projekt mit einer EXE (die hier HEX heißt) von ca. 500 Byte sind das 28 Dateien und Ordner. Wenn man dann FtComp.ZIP : FtCComp.PDF (fischertechnik/Knobloch), Seiten 14 - 22 konsultiert ist das aber durchaus beherrschbar. Wenn man diesem Dateienwust noch zwei weitere hinzufügt, bekommt man eine Lösung in der die Zugriffe auf die TransferArea in Unterprogrammen gekapselt sind, vielleicht versöhnt man sich dann langsam doch mit der IDE und schimpft nur noch auf die Testmöglichkeiten. Schwieriger wird es, wenn man mehr machen will, als der simple Zugriff auf die TransferArea hergibt, da sollte man dann die paar hundert (oder tausend) Seiten der Renesas Dokumentation zu Rate ziehen. ConclusionEs gibt mehrere gleichwertige Möglichkeiten einen Standard Mobile Robot kabelunabhängig zu Betreiben. Jeder sollte da nach seinen Vorlieben entscheiden. Meist dürfte es darauf hinauslaufen, bei den bisherigen Gewohnheiten zu bleiben. Bei textuellen Sprachen gibt es dann allerdings der Einsatz eines RF Datalink erforderlich. Für einen Kenner von Microprozessoren und der C-Programmierung ist auch ein - für Außenstehende - recht schwieriges Angebot wie das Renesas C / TransferArea eher eine Herausforderung und ein Vergnügen. Will man deutlich von den Vorgaben der Bauanleitung abweichen und z.B. Bauteile anschließen, ist Renesas C die einzige Alternative. Für einen "Neuen" kann das eine harte Durststrecke mit sich bringen. DownloadDas vbaFish40 Programm und das Renesas C Projekt sind in RoboMobil.ZIP enthalten. Stand : 16.02.2006 |