Worldzone

  • Moin, Moin
    Ich habe ein Problem mit einer Worldzone.


    Bei einem ABB Roboter ist das Signal „ Im Störbereich“ über eine Worldzone realisiert.
    Dummerweise funktioniert diese Worldzone nach Restore eines Backups nicht mehr.
    Ich muss erst die Aktivierungsroutine ablaufen lassen.
    Zwar meckert dabei der Roboter das er die Zonen angeblich schon kennt, aber erst danach funzt es.


    PROC AktiviereStatWZ()
    ! * EREIGNISROUTINE *
    ! * Weltzone Aufnahme *
    WZBoxDef \Inside,shAufnahme,posAufnahme1,posAufnahme2;
    WZDOSet \Stat,wzAufnahme\Inside,shAufnahme,doTCPAufnahme,1;
    ! * Weltzone Ablage *
    WZBoxDef \Inside,shAblage,posAblage1,posAblage2;
    WZDOSet \Stat,wzAblage\Inside,shAblage,doTCPAblage,1;
    ! * Weltzone Hubtür *
    WZBoxDef \Inside,shHubtuer,posHubtuer1,posHubtuer2;
    WZDOSet \Stat,wzHubtuer\Inside,shHubtuer,doStoerbereich,1;
    ! * Weltzone Homeposition *
    WZHomeJointDef\Inside, shHome, jposHome, delta_pos;
    WZDOSet\Stat, wzhome\Inside, shHome, doRobInHome, 1;
    !WZSphDef \Inside,shHome,posHome,100;
    !WZDOSet \Stat,wzHome\Inside,shHome,doRobInHome,1;
    ENDPROC


    Diese Routine ist als Event mit „Power on“ verknüpft, also eigentlich so wie es sein sollte.


    Dummerweise legt der Robbi das Teil direkt auf einer Drehstation ab und die SPS schreibt mit dem „ Im Störbereich“ Signal und „Greifer auf“ die Werkstückdaten auf den Werkstückträger.
    Das bedeutet die Drehstation dreht obwohl der Robbi noch gar nicht weg ist und es gibt Datensalat in der SPS. :wallbash: :wallbash: :wallbash:
    In dieser Anlage gibt es 5 Roboter , die im Prinzip alle gleich Programmiert sind.
    Das Problem habe ich nur an dem Einen.


    Der Robbi ist ein:
    >>PRODUCTS_ID:
    ROBOTWARE_5.06.0158 RobotWare 5.06.0000
    IRB 7600
    DeviceNet Master/Slave Single
    Profibus DP Master/Slave
    RW World Zones
    RW Fixed Position Events
    RW Path Recovery
    RW Collision Detection
    RW PC Interface/Backup
    RW File and Serial Channel Handling
    RW Logical Cross Connection
    RW Analog Signal Interrupt
    RW Multitasking
    Service Info System
    Calib. Pendelum RAPID


    Gruß
    Högi

    Zwei Dinge sind unendlich,das Universum und die menschliche Dummheit. Aber bei dem Universum bin ich mir noch nicht ganz sicher, !!!!<br />Albert Einstein

  • ANZEIGE
  • Hi,
    ich nehme an das Du die relevanten Systemparameter geprüft und verglichen hast mit den anderen Robotern Deiner Anlage.
    Nun würde ich den Roboter neu booten. Solltes Du es auch schon getan haben dann kann ich Dir nicht wirklich weiterhelfen was den Roboter als System angeht.
    Andererseit würde ich beim Start Deiner Anlage, sollte so etwas wie eine Initialisierung geben evtl, diese betreffenden Sachen abfragen. So mach ich das bei Stationären Weltzonen. Du annst aber auch eine Temporäre Weltzone benutzen. Diese aktivierne bevor Du mit dem Roboter in den Bereich hineinfährts. Vorrausgesetzt dieses Signal ist nur wichtig für die Kommunikation.
    Weiter würde ich zum drehen Deiner Station ein eeinsaktives Signal benutzen. Sprich das Signal muss "high" sein wenn der Roboter sich ausserhalb der Station befindet. Somit wäres Du ebenfalls geschützt vor unkontrollierten Bewegungen Deiner Drehstation. Weiter würde ich mich nicht nur auf die beiden Signale Greifer Auf und in Bereich verlassen. Würde dies noch detailierter machen um das Du mit der SPS ganz sichr bist das der Roboter das in Produktion wirklich selbsständig abgelegt hat.


    Hoffe Dir etwas gehoöfen zu haben.


    robotic74

    Wer nichts macht, macht keine Fehler!

    Wer keine Fehler macht, kann nichts daraus lernen!

    Wer nichts lernen kann, kann sich nicht weiterentwickeln!

    Wer sich nicht entwickelt, geht unter!

  • Hallo Högi,


    sind denn die Softwareversionen aller Roboter gleich oder sind die anderen neuer?
    Wenn Du nach dem Restore den Robbi nochmal neu startest, funktioniert es dann oder musst Du zwingend die Initialisierungsroutine von Hand aufrufen?


    Ich hatte schon mal das Phänomen, dass nach der Initialisierung das WZ-Signal nicht kam, obwohl der Robbi auf Position stand. Dann hab ich ihne kurz von Hand bewegt und dann gings. Könnte es bei Dir ein ähnliches Phänomen sein?


    Gruß
    Stromer

  • Hallo robotic74, Hallo Stromer


    Die Idee die Störbereichssignale zu drehen ist schon einmal sehr gut.
    Muss das nur noch dem SPS Programmierer verkaufen, aber ich denke das geht klar. :gutidee:


    Also die Softwareversionen sind alle ungefähr gleich alt.
    Ob es funktioniert wenn ich nach Restore einen Warmstart mache ,weiß ich nicht. Habe ich ehrlich gesagt nicht probiert :pfeif:


    Den Roboter in Hand verfahren hat nichts gebracht.
    Musste den Robbi ja nach dem Crash von Hand freifahren.
    Bin dann auch extra ein paar Mal hin und hergefahren, weil ich nicht glauben konnte das das WZ Signal nicht kommt.
    War aber definitiv so.
    Musste den Mechaniker mit einigen Litern Kaffe bestechen damit er den Greifer wieder gerade biegt. :bawling:


    Ich werde die Kiste neu booten und mal sehen was dabei herauskommt.
    Die Anlage produziert in drei Schichten, deshalb komme ich erst am Wochenende dazu.


    Gruß
    Helge :merci:

    Zwei Dinge sind unendlich,das Universum und die menschliche Dummheit. Aber bei dem Universum bin ich mir noch nicht ganz sicher, !!!!<br />Albert Einstein

  • Ah da fällt mir noch was ein.
    Bei Weltzonen muss Du nicht nur die Initialisierung dieser Weltzonen durchlaufen sonder müssen auch die Motoren einmal in Reglung gewesen sein. Hatte das auch bei der S4c+. Hier wurden bei Power_On auch Weltzonen eingerichtet wurden aber nie ausgegeben erst nach dem der Roboter in Reglung durch die Motoren war.


    robotic74

    Wer nichts macht, macht keine Fehler!

    Wer keine Fehler macht, kann nichts daraus lernen!

    Wer nichts lernen kann, kann sich nicht weiterentwickeln!

    Wer sich nicht entwickelt, geht unter!

  • Hallo,


    ich habe eine Frage zu dem geiches Thema.


    Ich habe mit IRC 5 diesn Beispiel ausprobiert.


    in myHome Pos steht ca 70.-20.0.60.20.0
    gleiche Position habe ich dann in einen Pinkt Home_position geteacht.


    Die Insruction habe ich unter events mit power on verknüpft.
    Dann habe ich phome in eine Routine eingefügt wo ich den anfahren kann.
    Mein Problem ist, wenn ich der Roboter gestartet ist dann ist mein ausgang gesetzt


    Ich habe beteits mit outside ausprobiert. geht auch nicht Ausgang ist ständig gesetzt

  • Hallo mKilber,


    Du solltest Deine Positionswerte für die Homeposition nicht in der Konstanten "Delta_Pos" verwenden, sondern innerhalb der Konstanten "home_pos", denn Du überwachst die Homeposition [1,1,1,1,1,1] und läßt dabei riesige Abweichungen zu, z.B. 70 Grad in der ersten Achse.


    Normalerweise gibt man in der Deltapos die zulässige Abweichung bezogen auf die Homepos an.


    Anbei das Besipiel aus dem Referenzhandbuch:



    Gruß
    Micky

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

  • Hallo Högi


    Ich hatte bei einer Anlage IRC5 damals RW5.07 und einen IRB4400/L30 das Problem damit
    die Weltzonen beim starten ab und zu nicht richtig von der Steuerung intialisiert wurden und
    die Signale nicht gesetzt wurden wenn der Roboter sich in den jeweiligen Weltzonen befand
    Das kam bei 20 warmstarts einmal vor. Seitdem dann ABB wegen eines anderen Problems die
    RW 5.10 aufgespielt haben ist dieses Problem nicht mehr aufgetreten. Da ich beides Programmiere
    gestalte ich den Handshake zwischen Roboter und SPS ein wenig aufwendiger es sind mehr Signale
    die du brauchst und es macht mehr Arbeit ist aber denke ich besser die Schrittketten
    der SPS und das Roboterprogramm synchron zu halten. sieht dann beim einfahren in eine Station zum
    Teil ablegen circa so aus..


    SetDo doVorStation; !Signal setzen dammit Roboter vor Station steht
    WaitUntil diFreigStatRein; !auf Freigabe von SPS zum einfahren warten
    Reset doVorStation;
    Bewegungsroutine abc;
    SetDo doTeilAbgelegt; !Signal setzen damit Roboter Teil abgelegt hat
    WaitUntil diFreigRaus; !Wenn SPS alles verarbeitet hat z.B. um Teil zu halten mit Vakuum oder Spannern
    Reset doTeilAbgelegt;
    Bewegungsroutine xyz;


    ...
    ...


    Die Weltzonen benutze ich auch, aber nicht für den Handshake sondern meistens um generelle
    Freigaben für die SPS zu erteilen oder zu entziehen. Wenn z.B. der Roboter in einer Weltzone
    einer Wendestation steht um ein Teil abzulegen, sperre ich dann evtl. gefährliche Bewegungen
    in der SPS um Schäden zu vermeiden.


    mfg Daniel

  • Hallo SPSDaniel,
    so in der Art habe ich es letztendlich auch gemacht.
    Seitdem ist Ruhe.
    Die Anlage war sowieso völlig vermurkst.
    Eigentlich eine komplette Katastrophe!!!!
    Es gab keine Grundstellungsfahrt, die Taktzeit war jenseits von Gut und Böse und die Robbis bretterten sporadisch durch die geschlossenen Ladeluken!!! :wallbash:


    Den Job hatten wir von einer Firma "geerbt" die mitten im Projekt Pleite gegangen war.
    Da die Anlage schon in drei Schichten produzierte , konnte ich leider nicht die komplette Software so gestalten wie ich das gerne gehabt hätte.
    Dafür gab es weder Zeit noch Geld.
    Die Software war einfach noch nicht fertig und hätte so nie Inbetrieb gehen dürfen.


    Ich konnte da eigentlich immer nur an den Symtomen herumdoktern und versuchen das Beste daraus zu machen.


    Wenn ich da an die Grundstellungsfahrt denke wird mir ganz anders.
    Da bin ich wirklich ins Schwitzen gekommen! :denk:



    Scheint aber geklappt zu haben!!!!! :ylsuper:


    Gruß
    Högi

    Zwei Dinge sind unendlich,das Universum und die menschliche Dummheit. Aber bei dem Universum bin ich mir noch nicht ganz sicher, !!!!<br />Albert Einstein

    Einmal editiert, zuletzt von högi ()

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