Module "Global" verfügbar machen

  • Hallo,


    ich habe folgendes Problem an einem unserer Roboter mit IRC5 Steuerung:


    Es gibt an dieser Anlage mehrere Programme für verschiedene Abarten. Der Greifer des Roboters, bleibt aber bei allen Abarten der gleiche, somit brauche ich ein und dieselbe Routine z.B. Greifer Öffnen in mehreren Programmen.
    Bisher habe ich es so gelößt, dass ich in meiner ******.pgf Datei folgendes Stehen habe:


    <Module>Teilespezifisch.mod</Module>
    <Module>../GlobaleModule/Greifer.mod</Module>


    Das funktioniert soweit auch, bis zu dem Punkt, an dem ich das Programm speichere. Dann wird meine Greifer.mod in den Programmordner kopiert und die *******.pgf automatisch geändert:


    <Module>Teilespezifisch.mod</Module>
    <Module>Greifer.mod</Module>


    Also nicht eine Wirklich brauchbare Lösung...


    Jetzt habe ich versucht in meiner Controller.cfg die Module, die ich benötige mit Automatic Loading of Modules einzubinden. Habe dazu die Verfügbarkeit auf "All Tasks" gestellt und neu gestartet.


    Beim Starten erhalte ich dann die Fehlermeldung "Task PSC_CBC konnte nicht starten", versuche ich dann beim Umschalten auf Automatik den PZ auf Main zu setzen, wird mir gemeldet, dass die Steuerung dies nicht zulässt.


    Ich bin mir ziemlich sicher, dass ich nur an einer ganz kleinen Stelle irgendetwas eintragen muss nur komme ich nicht darauf was und wo. Kann mir hier jemand Helfen oder mir sagen, wie ich ein Modul für alle anderen evtl. später einmal geladenen Programme zur Verfügung stelle? mit dem User.sys, welches ja von Anfang an mit eingebunden wird klappt es ja schliesslich auch.


    Habe auch schon versucht direkt den Task T_Rob1 in der Controller.cfg einzustellen und Shared zu aktivieren, aber alles mit dem gleichen "Erfolg".


    Danke schon einmal im vorraus

  • ANZEIGE
  • ich arbeite eigentlich nie mit *.pgf dateien (programm Module)
    Progarmme ist halt eine zusammenfassung aller Programmmodule.
    Du kannst ja aus dein Greifer.mod auch eine greifer.sys machen dann sollte dein problem ja auch geklärt sein.


    wenn ich sowas habe dann "lade" "speichere" und "lösche" ich einzelne Module
    Da gibt es eigentlich keine Problem damit.
    Module die immer benötigt werden sind auch halt immer verfügbar.


    PSC_CBC ist ein Signal vom EPS Controller was das hier damit zu tun hat????

  • Hallo Robiman,


    wenn Du das Greifermodul als Systemmodul definierst, wird dieses beim Speichern des Programm nicht mit gesichert. Desweiteren wird es auch nicht beim Laden des Programms überschrieben.


    Lediglich beim Erzeugen eines Backups bzw. beim expliziten Speichern des Moduls wird dieses gesichert.


    Um ein Systemmodul zu deklarieren musst Du lediglich den Modulkopf erweitern:

    Code
    MODULE Greifer(SYSMODULE)


    Des Weiteren kannst Du auch verschiedene Zugriffsmethoden definieren:

    Code
    MODULE Greifer(SYSMODULE, NOSTEPIN, VIEWONLY)


    Die Beschreibung des Zugriffschutz kannst den den Handbüchern zu RAPID entnehmen.


    Gruß
    Micky

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

  • Danke erstmal für die Antworten.


    Ich habe es jetzt mit den Systemmodulen gelößt, also:


    MODULE ***** (SYSMODULE)
    Programm Code
    ENDMODULE


    und diese dann als *.sys gespeichert.
    Trotzdem gut zu wissen, dass Systemmodule beim laden nicht überschrieben werden, das werde ich zumindest im Hinterkopf behalten.


    Soweit ist das jetzt erstmal die Lösung für mein Problem.


    :danke:

  • Hi,
    also global nutzbare Routinen solltest du immer als *.sys anlegen, habe so nie Probleme bekommen wie deine genannten und du kannst diese Routinen auch als NOVIEW setzen und niemand fuscht auf rasch darin rum! Es gibt noch diverse weitere Para's siehe Dok!

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