Positionsdaten einlesen in Cosirop


  • Wir wissen gar nicht ob es überhaupt möglich ist seriell Positionsdaten zu senden sodass der Roboter dann auch da hingeht.


    Ja, das geht, ich habe es zwar seit Jahren nicht mehr gemacht, heute geht das alles über Ethernet, aber es geht.


    Gut, fangen wir mal ganz einfach an. Habt ihr ein Programm mit dem ihr Zeilen an den Roboter senden und empfangen könnt, vielleicht ein Terminalprogramm oder bekommt ihr das in einer beliebigen PC-Programmiersprache hin ?


    Schickt mit Cosirop ein Roboterprogramm auf die Steuerung, das so aussieht:


    10 OPEN "COM1:" AS #1
    20 PRINT #1,P_CURR
    30 CLOSE
    40 GOTO 40
    50 END


    Startet euer PC-Programm, so dass es Daten empfängt. Dann startet das Roboterprogramm mit der Start Taste.


    Erhält euer PC-Programm Daten ?


    Das Roboterprogramm muss über die Tasten gestoppt werden. Stellt die Anzeige so, dass man den Programmnamen sieht, drückt dann Stop und dann Reset. Es sollte dann weder bei Start noch bei Stopp eine LED leuchten.


    Wenn ihr das so zum Laufen gebracht habt, ändert das Roboterprogramm so:


    10 OPEN "COM1:" AS #1
    20 INPUT #1,P1
    30 PRINT #1,P1
    40 CLOSE
    50 GOTO 50
    60 END


    Der Roboter sollte euch die Position, die ihr schickt, zurückliefern.


    Wenn das klappt, könnt ihr das Print durch ein Mov ersetzen. Und langsam und vorsichtig versuchen auf Positionen zu fahren.

    Einmal editiert, zuletzt von Urmel ()

  • ANZEIGE
  • Vielen dank erst mal für den letzten post. Wir haben das Programm benutzt, aber es gibt ein Problem wenn wir von dem Controller die Positionsdaten (PRINT #1,P_CURR) zu unserem Laptop senden (seriell nach USB) kriegen wir auf dem serial port monitor die folgenden codes (Datei angehängt).


    Wir denken das das melfa basic IV language ist. Dass heißt was wir dem Controller senden müssen ist nicht PRN(5.0,-56.0,0.0,77.0,-54.0,12.0) sondern irgendwas anderes. Könnte das sein?


    Grüße

  • Hm,


    tut mir leid, aber diese Zeichen kann ich nicht als etwas identifizieren, das so ein Roboter normalerweise sendet. :huh: :denk:


    Es können eigentlich nur zwei Sachen kommen:


    1. Zeilen die von Print gesendet werden.


    2. Antworten auf R3-Protokoll-Befehle, wie Cosirop sie sendet. Das sind auch normale Textzeilen, die immer mit "QoK" oder "QeR" beginnen.


    Grüße


    Urmel

  • Im Anhang mal ein Beispiel.


    Wenn man diese Zeile sendet, mit einem CR dahinter, sollte der Roboter mit einer langen Textzeile antworten, in der allerlei Informationen zum Roboter stehen.


    [Edit]
    Ach ja, wenn man diese Zeile gesendet hat, sollte man ein 1;1;CLOSE hinterherschicken, sonst gibts danach Ärger mit Cosirop.

  • Nein,


    das ist nur ein Terminalprogramm, das wir hier intern für den Service verwenden.


    Mit welchem Programm ihr das sendet ist völlig egal. Nur sollte, wenn man 1;1;OPEN=USERTOOL<CR> sendet, eine Zeile zurückkommen, die so ähnlich aussieht, wie die auf dem Screenshot.


    Da sollte u.a. das Robotermodell (im Bild RP-1AH, bei euch RV-...), die Betriebssystemversion (hier Ver. K9) und der Text "Copyright Mitsubishi Electric" drinstehen.


    Wenn das auch nicht kommt, dann macht ihr etwas grundlegend falsch, wenn Cosirop funktioniert aber wohl eher auf der PC-Seite.

  • Wir haben jetzt raus gefunden das Cosirop mit dem Mitsubishi Protokoll sendet. Man kann entweder in ASCII oder mit dem Mitsubishi Protokoll senden. Cosirop sendet mit dem Mitsubishi Protokoll. Wir senden aber mit NI Vision Builder in ASCII. Dass heißt wir müssen ein Parameter ändern. Wir wissen aber nicht wie das Parameter heißt. Weiß jemand wie welcher Parameter das ist? Wir wissen wie wir Parameter ändern können.


    Grüsse

  • Bei Robotern in Werkseinstellung ist das Mitsubishi Protokoll auch ASCII. Ich habe noch mit keinem gearbeitet, bei dem das nicht ging.


    In der Dokumentation ist auch eine Binärversion beschrieben, von der ich bisher nur wusste, dass sie von der Teachbox verwendet wird.


    [Edit]
    Wenn es für die Umstellung einen Parameter gibt, habe ich ihn noch nie benutzt. Ich könnte mir vorstellen, dass das der CPRC232 ist. Eventuell steht der bei euch auf 1. Normalerweise ist er auf 0.


    Cosirop müsst ihr dann auch noch umstellen, da kenne ich mich aber nicht aus.



    Und wenn ihr vernünftig mit dem Roboter arbeiten wollt, leistet euch eine Ethernetkarte. :zwink:

    Einmal editiert, zuletzt von Urmel ()

Erstelle ein Benutzerkonto oder melde dich an um zu kommentieren

Du musst ein Benutzerkonto haben um einen Kommentar hinterlassen zu können

Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Geht einfach!
Neues Benutzerkonto erstellen
Anmelden
Du hast bereits ein Benutzerkonto? Melde dich hier an.
Jetzt anmelden