Beiträge von Not-Aus

    Zitat von ABB Support

    Es ist leider nicht vorgesehen Roboter und Linearachse durch EGM zu betreiben.

    Leider ist das Betreiben einer zusätzlichen Linearachse nicht möglich. Ich hatte das ursprünglich auch im Handbuch gelesen, dachte aber, dass das ggf. nicht mehr aktuell ist, weil in dem offiziellen Beispiel des abb_robot_driver package auch ein Yuumi mit 2x7 Achsen per EGM gesteuert werden kann.

    Hallo zusammen,


    mein Ziel ist es eine Linearachse mit dem darauf montiertem IRB 4600 (IRC5, Robotware 6) über die EGM Schnittstelle via ROS anzusteuern. Auf der Steuerung sind das StateMachine Add-Inn 1.1 und die damit automatisch erstellten EMG RAPID Programme installiert.


    Mir ist es möglich die Joint Velocity aller 6 Roboterachsen über ROS festzulegen. Leider bewegt sich die Linearachse nicht, es erscheint allerdings auch keine Fehlermeldung (weder auf dem Teach Pendant noch in ROS). Die Linearachse lässt sich manuell joggen und ist beim Start der Steuerung automatisch aktiv.


    Über ROS lassen sich mithilfe der topic /rws/state zwei mechanische EInheiten identifizieren (Roboter und Linearachse).

    Code
    mechanical_units: 
    - 
       name: "M7DM1"
       activated: True
    - 
       name: "ROB_1"
       activated: True

    Die topic /egm/joint_states ermöglicht das Auslesen aller Joint Positionen und Geschwindigkeiten inklusive die der Linearachse. Dies funktioniert alles problemlos und in Echtzeit per EGM auch während der Bewegung. Der ROS controller nimmt ein Array mit 7 Einträgen als Input für eine Geschwindigkeitsvorgabe (Joint Group Velocity). Mithilfe der ersten 6 Einträge kann ich die Roboterachsen manipulieren, der 7. Eintrag gilt der Linearachse.


    Ich habe mich da an das offizielle Beispiel von ABB für einen 6-Achs Industrieroboter mit einem EGM Channel gehalten.

    Den entsprechenden ROS controller starte ich bei erfolgreich laufender EGM Verbindung mit

    Code
    rosservice call /egm/controller_manager/switch_controller "start_controllers: [joint_group_velocity_controller]
    stop_controllers: ['']
    strictness: 1
    start_asap: false
    timeout: 0.0"

    Die Vorgabe der Geschwindigkeiten erfolgt über folgende topic (hier sind alle Geschwindigkeiten 0)

    Code
    rostopic pub /egm/joint_group_velocity_controller/command std_msgs/Float64MultiArray "data: [0,0,0,0,0,0,0]"

    Hat wer eine Ahnung, an welchen Einstellungen ich ggf. rumspielen kann, um auch eine Steuerung der Linearachse zu ermöglichen? Screenshots der aktuellen EInstellungen usw. kann ich gerne morgen bei Bedarf nachreichen.


    Reicht ein EGM Channel für diese Aufgabe aus oder muss ich ggf. doch zwei nutzen. Ich verstehe das Konzept aktuell so, dass eine mechanische Gruppe mit zwei mechanischen Einheiten vorliegt. Das wird aktuell auch per ROS inklusive aller 7 vorliegenden Achsen erkannt. Dementsprechend müsste meiner Meinung nach ein EGM Channel ausreichen.

    Bei dem Versuch 2 Channel zu nutzen (einen für den Roboter, einen für die Linearachse) bekomme ich folgende Fehlermeldung im ROS Terminal.

    Code
    ROS parameters contain more than one EGM channel, but the MultiMove option seems to be missing in the robot controller system

    Es kann sein, dass ich das auch so herum gemacht habe. Wenn du das aktuell aktive Projekt des virtuellen Controllers in WorkVisual öffnen kannst, dann sollte es auch möglich sein das Projekt zu ändern und diese Änderungen dann zu übernehmen.

    Normale Konfiguration soweit ich mich erinnern kann. Roboter Typ und KSS der Steuerung auswählen, dann auf die OfficeLite Steuerung übertragen. Die Verbindung wurde mir angezeigt bzw. wurde beim Suchen direkt gefunden. In OfficeLite muss dann manuell noch das Update bestätigt werden. Nach dem nächsten Neustart passte dann alles.


    Ich habe WorkVisual, SimPro und die OfficeLite VM auf dem gleichen Rechner genutzt.

    Problem war tatsächlich die automatisch von SimPro erstellte Roboterkonfiguration. Der KUKA Support konnte den Fehler auch nicht finden(eigentlich sollte das funktionieren).
    Habe danach eine Roboterkonfiguration über WorkVisual erstellt (auf dem gleichen Rechner) und in die virtuelle Steuerung geladen. Das hat problemlos geklappt.


    Anbei ein Screenshot der ConfigXML.xml (C:\KRC\ROBOTER\Config\System\Common\ConfigXML.xml)


    Dort finde ich <Environment EnvPath="OfficeLite/"/>


    In keiner anderen Einstellung ist "Cabinet" oder "Office" zu finden. Deshalb habe ich aktuell noch nichts editiert.

    Hallo zusammen,


    ich möchte das virtuellen smartPAD in OfficeLite mit einem simulierten Roboter in SimPro verknüpfen.


    Dazu ist auf meinem Windows 10 Rechner KUKA.Sim Pro 3.1.1 sowie als VM der VMware Workstation 15 Player als Version 15.1.0 build-13591040 mit OfficeLite nach Anleitung installiert.

    Mein bisheriges Vorgehen ist wie folgt.

    1. SimPro öffnen
    2. VM starten
    3. SimPro: Roboter (KR 120 R3900 ultra K) in Simulationsumgebung ziehen
    4. SimPro: Roboter auswählen -> Programm -> VRC -> Verbinden
    5. SimPro: Name des Computers der VM eingeben
    6. SimPro: Konfiguration für VRC und Starten auswählen (KRC4-KR120R3900K_ULTRA-FLOOR)
    7. VM: Office Lite öffnet automatisch ... Verbindung wird hergestellt ... virtuelles smartPAD erscheint mit folgenden Quittier- und Zustandsmeldungen (Screenshots im Anhang):


      • KSS00069: Maschinennamen der Roboterantriebe inkonsistent (Verursacher: 0)
      • KSS00179: Konfiguration des Bremsentest ist inkonsistent (Verursacher: KS)
      • KSS03304: Bremstestkonfiguration richtig stellen! (Verursacher: 0)
    8. SimPro: Programm für das VRC auswählen (My_Project\my_job = vier vorher mit SimPro eingeteachte und exportierte Punkte, die mit PTP abgefahren werden)
    9. VM: Zustimm.-Taste auf grün stellen, T1-Modus
    10. VM: Play-Taste drücken, folgende Hinweismeldung erscheint (Screenshot im Anhang)


      • KSS01376: Aktive Kommandos verriegelt


    Bei meiner Recherche habe ich nur folgenden Beitrag gefunden: RE: HILFE: Roboter nach hochfahren mit abweichenden Maschinendaten?! [Gelöst]


    "bitte gehe mal in die Hilfe und lasse Dir die Roboterseriennummer anzeigen. Steht da eine "0" so läuft der Antriebsbus nicht und die MADA <> Robotertyp ist eine logische Folgemeldung."


    Dort geht es allerdings um einen realen und nicht simulierten Roboter. In der Info zum Roboter im virtuellen smartPAD ist die Seriennummer 0 hinterlegt (Screenshots im Anhang). Ich habe auch im virtuellen smartPAD die Option "Dateien neu einlesen" in Kombination mit einem manuellen Herunterfahren versucht (ohne abweichendes Ergebnis).



    Meine Frage ist nun, wie ich die aktiven Kommandos entriegeln kann bzw. ob eine Nutzung von OfficeLite ohne reales Backup eines Roboter überhaupt möglich ist (wegen Seriennummer usw.)