Mitsubishi Melfa RV-2FB-D

  • Guten Tag,


    ich versuche gerade den Roboter in die Echtzeitsteuerung zu integrieren, dazu nutze ich das Beispielprogramm aus der Bedienungsanleitung. Dieses ist jedoch für Visual Studio 5 und ich nutze Visual Studio 19. Den gegebenen Code habe ich soweit umgeändert, so dass ich keine Fehler mehr habe.

    Allerdings ist das ausführen jetzt nicht möglich, da die Visual Studio Datei nicht gefunden wird.


    Hat damit schon jemand Erfahrungen oder kann mir bei der Lösung des Problems helfen ?


    Danke im Voraus

  • ANZEIGE
  • Hallo,


    ich habe das Beispiel schon ewig nicht mehr verwendet, ist ja auch mittlerweile ziemlich alt. Die Echtzeitsteuerung funktioniert aber immer noch so, mittlerweile mit 3,55 ms Takt.


    Es sollte doch aber möglich sein in Visual Studio mit einem leeren C++ Konsolenprojekt anzufangen und den Code einzufügen.


    Ich bin mir nicht sicher, was du mit "die Visual Studio Datein nicht gefunden" meinst.


    Grüße

    Urmel

  • Hallo Urmel,


    es hat super geklappt.

    Eine weitere Frage: Funktioniert die Echtzeitsteuerung nur über den Mxt Befehl oder geht die Verbindung rein über die Visual Studio Konsole?


    Mit freundlichen Grüßen


    peter33

  • Hallo,


    schön, dass es jetzt geht.


    Im Prinzip kannst du dir das so vorstellen, dass da zwei Programme parallel laufen. Eins auf dem PC und eins auf dem Roboter. Die PC Seite kann eigentlich alles sein, wo C++ läuft, auch Linux.


    Der Mxt Befehl ist dann im Roboterprogramm ein Platzhalter dafür, dass an dieser Stelle des Roboterprogramms der PC die Bewegung übernimmt. Nach Ende der Echtzeitbewegung geht das Roboterprogramm dann in die nächste Zeile.


    Das Beispiel zeigt halt nur das Prinzip der Funktion des Mxt Befehls. Als Grundlage für eine echte Anwendung ist es eher nicht gedacht.


    In der Praxis gibt es wohl zwei Ansätze:


    Man kann nur mit einem minimalem Roboterprogramm arbeiten, so wie im Beispiel. Das ist dann quasi nur ein verpackter Mxt Befehl. Aber auch da kommt man in die Situation, dass man das Roboterprogramm starten, stoppen oder auf Fehler prüfen will. Da muss man also auch noch ausbauen.


    Der komplexere Ansatz geht mit dem Roboter ein wenig so um, wie ein Server mit einem Client. Das Melfa Basic Programm wird vom PC generiert, auf den Roboter geladen und überwacht. Da kommen dann alle drei Netzwerkschnittstellen der Robotersteuerung zusammen (R3-Protokoll zur Steuerung und Download, Kommunikation über Print / Input im Melfa Basic und Mxt für Bewegungen).


    Grüße


    Urmel

  • Hallo Urmel,


    danke für die Erklärung. Ich habe leider immer noch die Problematik, dass ich keine Daten auf dem Computer vom Roboter empfangen kann.


    Aktuell habe ich folgende Einstellungen:

    IP Roboter: 192.168.0.1

    IP Computer: 192.168.0.2


    OPT11: Server IP:192.168.0.2 Port: 10001 Protocol: No COM1: RS232 (RT Toolbox)

    OPT13: Client IP:192.168.0.2 Port: 10003 Protocol:Datalink COM3:OPT13 (Kommunikation)


    Fehlen noch Einstellungen? Diese sind laut Beschreibung so richtig.


    Dann habe ich ein kleines Programm geschrieben:

    Open "COM3:" AS #1

    Mov P1

    Print #1, P_Curr

    Mov iHome

    Close #1


    Es wird jedoch nicht ausgegeben.

    Ich versuche schon die ganze Zeit den Fehler zu finden, eigentlich ist alles so eingestellt wie in der Beschreibung.


    Zur Erklärung: Ich will einfach erstmal nur Echtzeit Daten zu meinem Computer schicken und im zweiten Schritt eventuell Daten zurück.


    Mit freundlichen Grüßen und danke für deine Geduld


    Peter33

  • Hallo Peter,


    also auf TCP-Client habe ich noch nie einen Roboter eingestellt. Das bedeutet ja, dass auf dem PC ein Serverprogramm bereit zur Verbindungsaufnahme sein muss, wenn der Roboter die Verbindung aufbauen will. Da weiß ich schon mal nicht genau, wann der das macht. Diese Einstellung würde ich eher nehmen, wenn der Roboter sich z.B. mit einem über Ethernet verbunden Sensor, der immer da ist und gemeinsam mit dem Roboter eingeschaltet wird, verbinden soll.


    Das alte Visual Basic 5 Beispiel für die Data Link Kommunikation benutzt auch den Roboter als Server. Ein neueres Beispiel habe ich auch noch nicht gesehen. Die Bilder im Handbuch sehen immer noch aus, wie bei dem VB5 Beispiel für die Ethernetkarte für die RV-...A Roboter.


    Grüße


    Urmel

  • Hallo Urmel,


    dann werde ich das nochmal auf Server umstellen und dann weiter schauen.


    Aber die Ausgabe über Print müsste doch dann auch ohne das Visual Studio Programm funktionieren?


    Mit freundlichen Grüßen


    peter33

  • Irgend ein Programm muss schon auf der anderen Seite sein.


    Und mit der Echtzeitsteuerung hat das jetzt eigentlich gar nichts mehr zu tu. Allerdings kann man es damit kombinieren, wie oben schon geschrieben.


    Die Ausgabe wird auch nicht so sein wie erwartet, weil das das Print schon während des Mov P1 ausgeführt wird.

  • Hallo Urmel,


    ich habe jetzt aktuell erstmal die Daten mit dem Print-Befehl und dem Telnet-Protokoll auslesen können.

    Nun möchte ich z.B. mittels Input #1 einen anderen Punkt vorgeben. Ich kann aber leider keine Daten mittels Telnet übermitteln.


    Jetzt meine Frage:

    Hast du einen Tipp, wie ich einen neuen Punkt mittels Input schreiben kann?


    Mit freundlichen Grüßen


    peter 33

  • Hallo,


    ich bin mir nicht sicher, ob Telnet das gleiche macht, wie ein normales TCP-Socket.


    Ein Terminalprogramm sendet die Daten möglicherweise zeichenweise, während du tippst. Das mag der Roboter nicht so, er kommuniziert normalerweise zeilenweise.


    Ansonsten, wenn Print funktioniert, würde auch sowas über Input funktionieren:

    Code
    Input #1,P1
    Mov P1

    Grüße

    Urmel

  • Hallo Urmel,


    ja das habe ich gerade festgestellt. Das man hier nur Zeichenweise einlesen kann. Also werde ich mich wohl an die TCP-Socket Programmierung geben müssen.


    Danke


    Mit freundlichen Grüßen


    Peter

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