Problem mit RoboPro Stop

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
fishfriend
Beiträge: 1808
Registriert: 26 Nov 2010, 11:45

Problem mit RoboPro Stop

Beitrag von fishfriend » 10 Feb 2017, 10:05

Hallo...
Ich bin mir nicht sicher und es ist evtl. eine Frage ob das in allen Versionen von RoboPro so ist, aber
kann es sein das, wenn man ein über den "Stopp Button" beendet kein Stopp Befehl an die Motoren
(vermutlich auch O-Ausgänge) des Interfaces gesendet wird?

Wenn dem so ist, wie wird dann der Motor angehalten? Geht das über Timeout oder einen Watchdog vom Interface?
Vermutlich geht es nicht über den Staus, da ja noch eine Verbindung zumindest zum USB Treiber
besteht.

Hintergrund ist der Arduino TX-Light, der schaltet nicht ab wenn man auf Stopp drückt.
der schaltet erst ab wenn man den Interface Test einschaltet,
wo die Geschwindigkeit der Motorausgänge auf Null steht.

Somit gehe ich davon aus das kein Stoppbefehl
gesendet wird und nun stell ich mir die Frage wie und wo das im Interface rein muss
oder ob da ein Programmierfehler drin ist.
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

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

Re: Problem mit RoboPro Stop

Beitrag von fishfriend » 14 Feb 2017, 16:12

Hallo...
Kleine Erweiterung meines Problems...
Ich glaube das es allmählich ein Fall für den RoboPro Entwickler ist.
Es ist nicht nur der Stopp-Button sondern auch der Programm-Stopp-Befehl.
Es ist eigentlich verwunderlich das es noch niemandem anderen aufgefallen ist, denn eigentlich betrifft es alle
Eigenbauten die mit RoboPro betrieben werden.

Ich vermute mal wenn man einen Slave selber baut wird dieser evtl. vom Master mit abgeschaltet.
Ich würde mir zumindest eine solche Funktion von RoboPro aus wünschen.
Also das von RoboPro aktiv abgeschaltet wird.
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Benutzeravatar
MasterOfGizmo
Beiträge: 2720
Registriert: 30 Nov 2014, 07:44

Re: Problem mit RoboPro Stop

Beitrag von MasterOfGizmo » 14 Feb 2017, 18:39

Es ist eine Eigenschaft des TXT bzw jedes FT-INTERFACES, dass es alle Ausgänge abschaltet, wenn eine gewisse Zeit keine Kommunikation stattgefunden hat, weil z.B. RoboPro gestoppt wurde. Wenn Dein Arduino das nicht macht, dann ist das dessen Fehler.
Arduino für fischertechnik: ftDuino http://ftduino.de, ftDuino32 http://ftduino.de/32

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

Re: Problem mit RoboPro Stop

Beitrag von fishfriend » 17 Feb 2017, 09:10

Hallo...

@ elektrolutz
ja die beiden meine Ich

@ MasterOfGizmo
Ja, die Abschaltung kommt vom Interface, aber eigentlich sollte sie auch von RoboPro kommen.

Im Grunde ist ein Stopp über den Button Werkzeugleiste oder Stopp im Programm kein richtiges Stopp sondern ein Abschalten der Kommunikation zwischen
RoboPro und dem Interface, was dazu führt das wohl nach einem Timeout die Ausgänge abgeschaltet werden. Im Grunde als wenn man das USB Kabel rauszieht.
Das Arduino Programm wertet nur die Befehle aus - und die Stopp-Befehle (die ich erwartet hatte) kommen nicht.
Das ist, sagen wir es mal so, nicht sooo "elegant" bei RoboPro gelöst.

Ich gebe zu das das Ganze Projekt für mich schwieriger wird als ich dachte. Ich bin mir nicht sicher wo ich den Time Out bei mir einbauen soll, da ja beim
Unterbrechen der Kommunikation scheinbar der Status der Verbindung "OK" ist. (PC(FTDI?)Treiber --- Interface)
Die Abfrage der (RoboPro) Kommandos scheitert, weil ja gar keine kommen.
Ich werde wohl versuchen im Hauptprogramm die TicketId auszuwerten (was wohl nicht gehen wird weil die Haupt-Schleife viel zu oft durchlaufen wird (so 10000:1) und dann erst die Flanke kommen würde)
oder einen eigenen Watchdog (irgend wo) reinbasteln ...

Übrigens stoppt der Robotest bei ersten Aufruf die Motoren, also es wird das als Befehl übertragen, was er anzeigt. Erst danach zeigt er das an was das Programm vorgibt.
(Also damit stoppe ich momentan die Motoren, wenn ich das Programm abbreche)

Ich lasse mir vom RoboPro Interface Test, über die Counter einfach die Werte einiger übertragener Variablen anzeigen. Evtl. komme ich ja noch dahinter...
Ich und meine etwas angestaubten C++ Kenntnisse ... Naja
Momentan ist das ehr wie Try and Error.
Das ist jetzt die einzige Sache wo ich sagen muss das das vor der Veröffentlichung von 1.0 laufen muss.
Gruß
H. Howey
ft Riesenräder PDF: ftcommunity.de/knowhow/bauanleitungen
TX-Light: Arduino und ftduino mit RoboPro

Antworten