Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

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
Benutzeravatar
Rito
Beiträge: 167
Registriert: 20 Aug 2013, 22:44

Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

Beitrag von Rito » 07 Dez 2022, 14:08

Hallo,
Ich habe mich schon sehr lange nicht mehr hier blicken lassen, doch so gegen Weihnachten bin ich am überlegen, ob ich mich selbst mit dem neuen TXT4 beschenke.

Daher wollte ich nachfragen ob man mit dieser neuen „stapelbaren“ Programmierung die gleichen Möglichkeiten hat, wie beim alten RoboPro. Mir sieht diese neue Programmiersprache irgendwie nicht flexibel genug aus. Aber vielleicht täusche ich mich. Also meine Frage: Ist der Funktionsumfang der neuen Software dem alten RoboPro mindestens ebenbürtig?

Danke schon mal im Voraus für eure Antworten

Cody
Beiträge: 17
Registriert: 24 Apr 2021, 03:25

Re: Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

Beitrag von Cody » 07 Dez 2022, 14:31

Hallo Rito,

RoboPro ist definitiv leistungsfähiger als Blocky. Das soll aber nicht heißen, dass man mit Blocky keine komplexeren Steuerungen realisieren kann.
Wenn du mehr Flexibilität brauchst, dann musst du beim TXT4.0 auf eine textbasierte Programmierung mit Python oder C/C++ ausweichen. Damit hast du dann aber mehr Leistung/Möglichkeiten, als der alte TXT bietet.

Gruß,
Cody

Benutzeravatar
Rito
Beiträge: 167
Registriert: 20 Aug 2013, 22:44

Re: Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

Beitrag von Rito » 07 Dez 2022, 14:48

Ah, ok, das dachte ich mir schon.
Und zum Thema Python, gibt es Quellen oder Hilfen wie man den TXT mit Python anspricht? Oder ist das nur etwas für die Profis unter den Programmierern?

Cody
Beiträge: 17
Registriert: 24 Apr 2021, 03:25

Re: Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

Beitrag von Cody » 07 Dez 2022, 15:15

Nein, nur für die Profis ist es definitiv nicht. Aber ich glaube, eine offizielle Dokumentation der Pythonschnittstelle gibt es bislang nicht, aber das kann ja noch kommen. Notfalls werde ich mich in den nächsten Wochen mal daransetzten.
Allerdings ist Blocky ja ein Python-Generator, und du kannst dir natürlich den generierten Pythoncode anschauen und daraus ableiten, wie die Schnittstelle funktioniert.

vleeuwen
Beiträge: 1560
Registriert: 31 Okt 2010, 22:23
Wohnort: Enschede (NL)
Kontaktdaten:

Re: Robo Pro für TXT2 und TXT4 - gleiche Möglichkeiten?

Beitrag von vleeuwen » 07 Dez 2022, 17:17

Blockly is a text generator and is limited to a limited subset of Python's capabilities.
The classic RoboPro (TXT) cannot be compared to Blockly; it is a full-fledged 4th generation language that allows the end user not to deal with low level things of a 3G language such as: Python, C++. RoboPro classic allows the end user to work with sensors and actuators at a higher abstraction level.
Both the TXT and the TXT4.0 can also be programmed directly in Python and C++. The C++ accompanying the TXT is quite well documented.
Because the end user of the TXT can also work with root access, it offers additional options to adjust the settings of, for example, the MQTT broker and the web server or to work with CIvetWeb. There is currently no root access available for the TXT4.0.
A somewhat complex program in Blockly quickly becomes unreadable and difficult to maintain. Just look at the available example program "factory-HBW".
In RoboPro coding, the possibilities to work directly with Python are limited. I myself use MS-Visual Studio code (VScode)(free) as a development environment for remote development of programs.
VScode provides both syntactic and semantic support and the code editor provides well-arranged code, including remote debugging.
In principle, remote C++ programs could also be developed with VScode, but the tool chain on the TXT4.0 does not seem to support this very well.
The REST APIs on the TXT4.0 are nice, but the REST API mechanism is too slow to develop closed loops at a reasonable speed (comparable to the TXT).
RoboPro classic was extensible using the SLI element; an analogue mechanism is currently still lacking in RoboPro coding.
=====================Google translate======================================================
Blockly ist ein Textgenerator und auf eine begrenzte Teilmenge der Fähigkeiten von Python beschränkt.
Der klassische RoboPro (TXT) ist nicht mit Blockly zu vergleichen; Es ist eine vollwertige Sprache der 4. Generation, die es dem Endbenutzer ermöglicht, sich nicht mit Dingen auf niedriger Ebene einer 3G-Sprache zu befassen, wie z. B.: Python, C++. RoboPro classic ermöglicht dem Endbenutzer, mit Sensoren und Aktoren auf einer höheren Abstraktionsebene zu arbeiten.
Sowohl der TXT als auch der TXT4.0 können auch direkt in Python und C++ programmiert werden. Das dem TXT beiliegende C++ ist recht gut dokumentiert.
Da der Endbenutzer des TXT auch mit Root-Zugriff arbeiten kann, bietet es zusätzliche Optionen, um die Einstellungen beispielsweise des MQTT-Brokers und des Webservers anzupassen oder mit CIvetWeb zu arbeiten. Für den TXT4.0 ist derzeit kein Root-Zugriff verfügbar.
Ein etwas komplexes Programm in Blockly wird schnell unlesbar und schwer zu warten. Schauen Sie sich einfach das verfügbare Beispielprogramm „factory-HBW“ an.
Bei der RoboPro-Codierung sind die Möglichkeiten, direkt mit Python zu arbeiten, begrenzt. Ich selbst verwende MS-Visual Studio Code (VScode) (kostenlos) als Entwicklungsumgebung für die Remote-Entwicklung von Programmen.
VScode bietet sowohl syntaktische als auch semantische Unterstützung und der Code-Editor bietet übersichtlichen Code, einschließlich Remote-Debugging.
Prinzipiell könnten auch entfernte C++-Programme mit VScode entwickelt werden, aber die Toolkette auf dem TXT4.0 scheint dies nicht sehr gut zu unterstützen.
Die REST-APIs auf dem TXT4.0 sind nett, aber der REST-API-Mechanismus ist zu langsam, um geschlossene Schleifen mit angemessener Geschwindigkeit zu entwickeln (vergleichbar mit dem TXT).
RoboPro Classic war mit dem SLI-Element erweiterbar; ein analoger Mechanismus fehlt derzeit noch in der RoboPro-Codierung.
software enigineer/teacher/advisor
Google translate
http://tescaweb.nl/Carel/?p=713

Antworten