Bewegungssynchrone Aktionen mit ABB

  • Hallo zusammen,
    ich mache mir gerade Gedanken zu einer Programmstruktur für Abb-Robis.
    Anwendungen wären primär PickandPlace, wobei meine Fragen sich hauptsächlich auf die Realisierung eines geordneten Rückzugs beziehen.
    Grundgedanke für den Rückzug ist ein Positionszeiger, über den ich die aktive Bewegung mitzähle und anschliessend meine Grundstellungsfahrt verwalten kann.
    Durch meine Kuka-erfahrungen bin ich anscheinend etwas verwöhnt was den Punkt "Bewegungssynchrone Aktionen ausführen" angeht.
    Konkrekt suche ich eine Lösung zum Bewegungssynchronen zählen/ändern einer Variable.
    Habe dazu bereits Handbücher/Forum durchsucht und einige Sachen im Robstudio getestet, aber irgendwie ist das alles nochnicht zufriedenstellend.


    Momentan sieht die ganze Sache so aus:


    Alle Bewegungen werden als TriggJ/L angelegt, Funktion ist soweit i.O, nun zu den Fragen:


    - Kann ich mit einem Trigger/MoveSync direkt eine num Variable beschreiben oder muss ich den Umweg über einen /GO gehen?
    - Wie kann man mehrere Aktionen auf einer Bahn ausführen? (Idee geht inrichtung TriggInt)
    - Unterscheid zwischen TriggIO/TriggEquip? Laut Doku: TriggIO bei folgendem Genauhalt, Equip bei Überschleifen?
    - Beeinflusst das definieren eines, bzw. hunderter Trigger(TriggIO,-Equip,-Int) das Roboterverhalten? In der Simulation sind dort große Leistungs-Unterschiede sichtbar.
    - gibt es evtl eine elegantere Lösung/Addon's? (Hatte was von "Homeposrunning" gelesen, ist wohl "meiner" Variante recht ähnlich)



    Danke an alle, die es bis hierhin geschafft haben, würde mich sehr über Hilfe/Tipps freuen ;)

  • ANZEIGE
  • Hallo roboclet,


    es gibt von ABB bereits zwei Produkte die sich um den HomeRun des Roboters kümmern,


      • "Homepos Running" und

      • "RobotWare MachineTending" dass zusätzlich eine graphische Benutzeroberfläche und weitere Funktionen beinhaltet.


    http://new.abb.com/products/ro…/roboware-machine-tending


    Zum Thema Homerun wurden hier bereits einige Threads gepostet.


    Der folgende enthält auch das Handbuch zu Homepos-Runing:
    http://www.roboterforum.de/rob…bb/5488/msg24722#msg24722


    Mfg
    Micky

    Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind. (Albert Einstein)

  • Danke für deine Antwort,
    ja zu dem Thema Rückzug ist relativ viel zufinden, den Großteil davon habe ich auch gelesen. :)
    Viel bezog sich ja auf die RW5.0, hatte gehofft, dass mit 6.0 evtl irgendwas nützliches hinzugefügt wurde.
    Bezüglich "HomeposRunning" und "MashineTending" werde ich wohl Kontakt mit Abb aufnehmen müssen, wirklich detaillierte Informationen finde ich auf deren Website leider nicht.
    Allerdings würde ich lieber ohne Zusatzsoftware auskommen, gerade wenn sie einen zu dem abb-Programmierstandart zwingen.
    Die Abb's haben ohne Zweifel eine Menge an interessanten Funktionen mit denen sich auch andere Varianten von Grundstellungsfahrten realisieren lassen würden, z.B. getdatasearch
    Umso verwunderlicher ist es für mich, dass so eine vermeintlich einfache Sache wie das bewegungssynchrone schreiben einer Variable nur begrenzt, bzw. sehr aufwendig möglich ist.
    Zuletzt habe ich eine Variante mit TriggInt getestet, dies ermöglicht mir zwar das zählen der Schritt_Nr und zusätzliches schreiben von Ausgängen und Variablen aber man muss sich zusätzlich was einfallen lassen für die Fälle in den Interrupts abgeschaltet werden. Zusätzlich haben alle Trigg-Befehle den unschönen Nebeneffekt, dass die verwendeten Punkte nicht mehr im Robstudio zusehen sind.
    Wie lösen denn andere diese Problematik? Es ist doch wohl kaum jeder Abb-Roboter mit MashineTending ausgerüstet?

  • Hallo,
    hier die allgemeine Lösung die glaub so in der einen oder anderen Art benutzt wird.


    Im Programm soeht das dann später so aus:


    Code
    SMove\J,999,pGrundstellung,v200,z100,tGreifer1;
                SMove\J,960,pPruefpos_VP1,v200,z100,tGreifer1;
                SMove\J,961,pPruefpos_VP2,v200,z100,tGreifer1;


    Und im grundstellungsfahren dann einfach den gruppenausgang abfragen und abhängig davon den Roboter rausfahren lassen.

  • Guten Morgen!
    Also wir beschreiben beim Erreichen der Position eine Zeichenkette (Beispiel: strAktPos:= 10VP) für die aktuelle Position.
    Im weiteren Programmablauf wird dann der weitere Verfahrweg "zusammengebastelt".
    Beispiel:
    MoveToPos "20VP";
    -> MoveToPos (eigene Routine) erstellt jetzt aus der aktuellen Position (10VP) und der Zielposition (20VP) den nächsten Routinennamen (mv_10VP_20VP).
    In deinem Fall würde sich mit der Eingabe MoveToPos "Home" und der aktuellen Position eine wunderbare Rückzugsstrategie erstellen lassen.
    Gruß von
    Buschmann

Hilfe und Support für ABB Roboter Programmierung, Konfiguration, Inbetriebnahme finden Sie hier im ABB Roboter Forum. ABB Rapid Programmierung ist einfach, die Roboterforum Community hilft sehr gerne.

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