Grafisches ROBO Pro Coding

Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software
Computing using original ft hard- and software
Forumsregeln
Bitte beachte die Forumsregeln!
Antworten
perlt
Beiträge: 4
Registriert: 08 Aug 2026, 15:41

Grafisches ROBO Pro Coding

Beitrag von perlt » 08 Aug 2026, 16:22

Ich möchte die einfache grafische Programmierung des 4 Wheel Roboters im Tutorial ROBOTICS Hightech nachvollziehen. Bis zum Funktionstest bin ich gekommen. Das funktioniert. Der nächste Schritt ist die Programmierung der einzelnen 4 Motoren. Den ersten Motor habe ich entsprechend der Anweisung in das grafische Menu eingefügt. Die erste Unstimmigkeit besteht darin, dass das Programmierelement bei mir die Bezeichnung
TXT_E2_M1
trägt, während im Tutorial
TXT_M_M1
steht
Ich habe keine Chance, meine Bezeichnung zu ändern.
Nun sollte ein Teststart diesen Motor entsprechend den Parametern laufen lassen. Es kommt aber ein Fehler

Exception: Extension for index 1 does not exist

und das Programm bricht ab.
Wo liegt der Fehler?
Sollte man direkt über ein geschriebenes Python Programm die machen?

Benutzeravatar
calliope
Beiträge: 199
Registriert: 11 Mär 2025, 12:02

Re: Grafisches ROBO Pro Coding

Beitrag von calliope » 08 Aug 2026, 16:47

Geh in Controllerkonfiguration und stelle oben Mode auf Master. Bei dir steht wahrscheinlich Ext2 drin.
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects

Benutzeravatar
fishfriend
Beiträge: 2587
Registriert: 26 Nov 2010, 11:45

Re: Grafisches ROBO Pro Coding

Beitrag von fishfriend » 08 Aug 2026, 16:54

Hallo...
Ich vermute mal, dass in der Controllerkonfiguration was falsch ist.
-E- ist normalerweise ein Eingang, zumindest war das früher so.
Ich kann deinen Fehler aber nicht nachvollziehen.

Zeig mal ein Bild der Controllerkonfiguration.

Das Problem für mich ist, dass es drei verschiedene Möglichkeiten gibt, einen Motor an den TXT 4.0 anzuschließen.
1. über Ausgang Output O1 Motor kann nur ein eine Richtung drehen.
2. Motor über Motor, normalerweise einfacher Motor M der in beide Richtungen drehen kann
3. Motor über Encodermotor. Motor M dreht in beide Richtungen und man hat einen schnellen Zähler "Schrittzähler/Counter"C1 für diesen Motor .

Da ist kein E.
Mit freundlichen Grüßen
Holger

:-) ja, ja Master und Extension...
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

perlt
Beiträge: 4
Registriert: 08 Aug 2026, 15:41

Re: Grafisches ROBO Pro Coding

Beitrag von perlt » 08 Aug 2026, 17:22

Selbst gelöst. Es war 8m9ein Problem der Controller Konfiguration

perlt
Beiträge: 4
Registriert: 08 Aug 2026, 15:41

Re: Grafisches ROBO Pro Coding

Beitrag von perlt » 09 Aug 2026, 11:18

Vielen Dank für die Hinweise! Es lag tatsächlich an einer falschen Controller Konfiguration. Ich habe zwar einige Erfahrung in der Programmierung, aber keine mit der praktischen Verschaltung der zu steuernden Elementen mit einem Controller. Da ist mir der Fehler mit Master und Extension unterlaufen, ohne dass ich ihn erst bemerkte. Erst nach einer längeren Suche im Netz bin ich auf die Idee gekommen, dass da etwas schief gelaufen war. Nun läuft der Roboter so, wie geplant! Schön, dass da eine Reaktion von Euch kam!

perlt
Beiträge: 4
Registriert: 08 Aug 2026, 15:41

Re: Grafisches ROBO Pro Coding

Beitrag von perlt » 09 Aug 2026, 11:22

Eine andere Frage:
diese grafische Programmierung ist für mich relativ ungewohnt und damit auch irgendwie umständlich. Ich würde lieber auf die Standardprogrammierung mit Python zurückgreifen. Wo gibt es da Beispiele zum Herunterladen?

Benutzeravatar
fishfriend
Beiträge: 2587
Registriert: 26 Nov 2010, 11:45

Re: Grafisches ROBO Pro Coding

Beitrag von fishfriend » 09 Aug 2026, 18:04

Hallo...
Ehrlich gesagt, kaum bis keine.
Ich würde ein Grundgerüst von Robo Pro Coding machen lassen und dann weitermachen.
Es gibt in der ft STEM Suite die Möglichkeit in Python was zu machen. Ich gebe zu ich hab nur kurz reingeschaut.
Ich hatte auch schon mal vor alle Infos dazu zu sammeln, bin aber noch nicht dazu gekommen.
Man kann in Robo Pro Programmen eigene Pythonblöcke einfügen. Das ist aber vermutlich für dich unbefriedigend.

Das was ich vermisse sind Infos über die Libs. Funktionen, Variablen usw.
Ich kenne zumindes keine davon.

Es gibt teilweise Infos in manchen Beispielen von ft selbst. Beispiele Uhrzeit, Dateinamen, wo auf das OS zugegriffen wird.
Die Uhrzeit hat inzwischen einen eigenene Block bekommen.
I2C hat so 2 Jahre gedauert bis ich es zum laufen bekommen habe und hat nur mit Hilfe von ft funktioniert.
Nun sind aber einige Beispiele dazu online.

Beispiele hab ich häufig erst in Robo Pro Coding gemacht und dann den Pythoncode analysiert.
Man kann den ganzen Pythoncode auch in ein eigenes Pythonprojekt kopieren. Es gibt dann manchmal ein paar Einstellungen mehr an denen man drehen kann :-)

Was man wissen sollte ist, dass -alle- Variablen global sind. Es spielt keine Rolle ob nun in einem Robo Pro Coding Block oder in dem Pythonblock genutzt werden.
Es gibt auch einige Beispiele von ft selbst, wo nur Python genutzt wird.
Mit freundlichen Grüßen
Holger
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
calliope
Beiträge: 199
Registriert: 11 Mär 2025, 12:02

Re: Grafisches ROBO Pro Coding

Beitrag von calliope » 10 Aug 2026, 13:20

perlt hat geschrieben:
09 Aug 2026, 11:22
Eine andere Frage:
diese grafische Programmierung ist für mich relativ ungewohnt und damit auch irgendwie umständlich. Ich würde lieber auf die Standardprogrammierung mit Python zurückgreifen. Wo gibt es da Beispiele zum Herunterladen?
Ich kam neu zu fischertechnik, als es ROBO Pro Coding und die 3 aktuellen Controller schon gab. Ich brauchte Jahre, um die aktuellen von den alten Controllern zu unterscheiden und die aktuelle von der alten Software zu unterscheiden. Der Grund ist, dass die alle fast genau gleich heißen.

Dann erwartete ich Hilfe vom Forum:
Alles rund um TX(T) und RoboPro, mit ft-Hard- und Software Computing using original ft hard- and software
Ich musste erst mal begreifen, dass alles war in der Überschrift steht veraltet ist und das Forum Archiv oder Museum heißen müsste.
aktuell ist: TXT 4.0 / alt ist: TXT TX und viel mehr
aktuell ist: ROBO Pro Coding / alt ist: ROBO Pro und alles was im Software Archiv erwähnt ist: https://www.fischertechnik.de/de-de/app ... controller

Im Forum steht viel - was mir nichts nutzt, weil ich auf dem aktuellen Stand bin.
Das wollte ich mal erwähnen, um anderen, die sich einen aktuellen Baukasten kaufen, die Irrtümer zu ersparen.

Jetzt zum aktuellen ROBO Pro Coding:
Ohne die Blöcke käme ich damit nicht klar. Es ist möglich in den Projekteinstellungen Ansicht auf 'Python-Programmierung' zu stellen. Dann sind die Blöcke verschwunden. Dann kannst du im Texteditor Python schreiben. Ohne Intellisense und ohne Syntaxprüfung. Du musst dann aber die Namen und Syntax der Controller Objekte kennen z.B. um Eingänge und Ausgänge zu steuern. Ich glaube das hat noch niemand gemacht.

Wenn du fertige Beispiele suchst: Jedes Beispiel mit Blöcken lässt sich so in (editierbares) Python konvertieren.
Wenn du nur den Python Code sehen willst, den die Blöcke gemacht haben, den rechten Teil vom Fenster einblenden. Dort steht der komplette Code drin. Ist dort aber nicht zu ändern. Aber man kann verstehen warum manches anders als erwartet funktioniert. Z.B. Index bei Listen in Blöcken ab 1 im Code ab 0.

Bei Util gibt es den Block Python-Code. Dort kannst du eigenes Python rein schreiben und den Block an jeder Stelle zwischen anderen Blöcken einfügen.
Du musst nur die Funktionen als Blöcke anlegen und kannst den kompletten Inhalt in den Python-Code Block schreiben.

Das einzige was nicht geht, ist Python-Code außerhalb von Funktionen (Blöcken). Also eigene Funktionen ohne Block oder globalen Variablen Werte zuweisen. Das Feature habe ich mir schon gewünscht.

Wenn man verschiedene Controller hat, kann man in Projektkonfiguration einfach konvertieren zwischen:
  • TXT 4.0 Controller
  • RX Controller
  • BT Smart Controller
Dann entsteht für den RX Controller ein teilweise anderer Python Code (async). Für den BT Smart Controller werden die Blöcke auch konvertiert, sofern vorhanden. Da wird aber kein Code angezeigt, weil der kein Python verwendet.

ROBO Pro Coding speichert also einen Pseudocode in den Blöcken und erzeugt je nach Projektkonfiguration verschiedenen Programmcode.
Das funktioniert fehlerfrei, ich habe es mehrfach getestet und bin beeindruckt.

Es ist also kein Problem mit Blöcken nach Bedarf so viel Python zu programmieren wie gewünscht.
TXT 4.0 ist ein Linux PC und mit Python zwischen den Blöcken ist alles möglich, was keine Blöcke hat: Dateisystem, I²C, USB, Internet Protokolle, Echtzeituhr, ... und auch Linux-Prozesse aus Python 'fernsteuern'.

User können ihre Projekte im fischertechnik GitLab veröffentlichen. Die findet man in ROBO Pro Coding unter Laden. Das Token leer lassen und auf der nächsten Seite einen Suchbegriff eingeben. Meine Projekte über den Link unten.
I²C für Calliope, TXT 4.0 und RX Controller.
https://git.fischertechnik-cloud.com/users/i2c/projects

Antworten