Positionsdaten von externer Steuerung erhalten und abfahren (DirLoader?)

  • Hallo zusammen


    Ich programmiere seit einiger Zeit auf einer KR C2 Steuerung rum und das funktioniert schon ganz gut.


    Nun möchte ich von einem externen PC ein Programm (z.B. src und dat File) erstellen (dynamisch, aufgrund von User Input) und dieses dann automatisch an den Roboter senden und abspielen. Ein src/dat File kann ich bereits generieren und z.B. per Windows-Freigabe und Batch-Datei auf den Roboter kopieren. Wie kann ich es dann dort aber in den RAM laden, also sozusagen ins KUKA HMI kopieren? Geht dies nur mit der Software "KUKA DirLoader" resp. manuell übers HMI? Es sollte möglichst einfach gehen und ich habe die Software DirLoader nicht und auch kein Budget dazu. Ich kann mir noch folgende Alternativen vorstellen:


    1) Mit so einem Makro-Programm wie z.B: "Mouse Recorder" auf der KR C2 (Windows XP) die Maus- und Tastaturbewegungen zum kopieren eines Files von der HD in die KUKA HMI per Batch-Datei abspielen. Nachteil hierbei ist sicher die Fehleranfälligkeit. Z.B. hab ich bemerkt dass das HMI manchmal einfriert, wenn der PC zu fest mit der Abarbeitung des eigentlichen Roboterprogramms beschäftigt ist.


    2) Eine fortlaufende Übergabe von Positionsdaten per Profibus realisieren: Ich übertrage kein src/dat File sondern habe ein File welches sich laufend neue Positionswerte, die angefahren werden sollen, über Profibus einliest und abarbeitet. Diese sollen aus einer Art Stapel abgearbeitet werden. Nachteil hier ist sicher der Programmieraufwand für diese Kommunikation resp. Abarbeitung von "Jobs" die von Profibus kommen.


    Gibt es weitere Möglichkeiten, hat jemand eine Idee? Ich programmiere im Moment auf KR C2 und möchte u.U. das oben genannte auch auf KR C1 implementieren. Wird dies viel schwieriger weil die Steuerung da viel älter ist?


    Vielen Dank für die Hilfe!

  • Schritt für Schritt zum Roboterprofi!
  • Hallo,
    zuerst gleich mal einen Hinweis. Auf keinen Fall Roboterverzeicnisse (KRC/ ) im Netzwerk freigeben. Über die Windowsebene zur Laufzeit darauf rumwerkeln ist generell keine gute Idee. Scheinbar arbeitet man über die KUKA HMI in genau diesem Verzeichnis, aber so einfach ist es nicht. Änderungen auf HMI Ebene werden sowohl im Arbeitsspeicher des Echtzeitbetriebssystems als auch auf der Festplatte vorgenommen. Ändert man auf der Festplatte direkt, besteht die Gefahr von Dateninkonsistenz mit allen nur denkbaren Folgen!
    Irgendwelche, von KUKA nicht freigebene, Fremd-Software einzusetzen, ist auch nicht sicher und Sicherheit geht nun mal vor.
    Ergo ist der Ansatz, die Positionsdaten über den Bus zu "funken", der richtige.
    Grüße

    never touch a running system

  • Ich würde die Profibus Kommunikation nutzen und dann folgendes machen:


    1. In einer Dat-Datei genug Positionen (Tipp nimm ein Array) anlegen um deine Positionen aufnehmen zu können
    2. Am Anfang vom Programm alle Positionen via Profibus anfordern und in die passenden Positionen im Dat-File kopieren
    3. Das Programm ganz normal laufen lassen mit den Positionen - nun kannst Du alle Schweinereien wie Überschleifen, Spline, etc nutzen.


    Grüße


    Marcel

  • Man könnte evtl. auch die serielle Schnittstelle anstatt des Profibus verwenden. Da gibt es aber je nach Baujahr der KRC2 evtl. Probleme, da die ser. Schnittstelle nicht mehr verfügbar ist. Bei der KRC1 ist das kein Problem.
    Auf der KRC4 gibt es das dann gar nicht mehr, da kann man ASCII-Dateien generieren und einlesen.


    [size=1]Edit: wegen Bemerkung zu KRC4[/size]

    Einmal editiert, zuletzt von Hermann ()

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