TIA Strategie Betriebsarten

Pico1184

Level-2
Beiträge
332
Reaktionspunkte
9
Zuviel Werbung?
-> Hier kostenlos registrieren
Guten Abend,

ich weiss nicht ob dieses Thema schon so behandelt wurde, möchte es aber dennoch hier ansprechen.

Mache mir im Moment Gedanken über die Strategie der Betriebsartenanwahl und ob diese verbesserungswürdig ist.

Unsere Standardsoftware beinhaltet eine größere Anzahl an Bausteinen.
Kurz erklärt sind diese so konzipiert, dass alles auf die kleinste Komponente aufgebrochen ist (Bausteine für Zylinder, Antriebe etc. aus welchen dann wieder komplette Anlagenteile "zusammengebaut" werden und der Ablauf dann über einzelne Schrittketten ausprogrammiert ist)

Für die Betriebsarten gibt es einen FB der die entsprechenden Daten in einer globalen Struktur (über UDT definiert) aufbereitet.
Jeder dieser kleinsten Komponenten (Zylinder, Antriebs FBs) erhält dann die Betriebsarten Struktur über einen ANY an der IN/OUT Schnittstelle welcher die Daten auf eine Temp. Struktur im Baustein kopiert.
Über diese temporären Betriebsartendaten werden dann je nach Anwahl die Freigaben gesetzt.
Die Schrittketten kennen die Betriebsarten nicht.

Wäre es nicht besser einen Baustein zu erstellen welcher die Betriebsarten auswertet und je nach Status direkt die einzelnen Freigaben an die Bausteine weiterleitet?

z.B.

Code:
 case #status OF
        "Hand":  Querschieber.IN_BO_Enable := true;
                      Achse.IN_BO_Enable := false;
                      Band.IN_BO_Enable := true;
     "Einricht":  Querschieber.IN_BO_Enable := true;
                      Achse.IN_BO_Enable := false;
                      Band.IN_BO_Enable := true;

Kein Baustein würde dann die Betriebsarten kennen und nur über sein Enable arbeiten.

Wie wird das bei euch gelöst? Was meint ihr?

Grüße Pico
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Bedingte Mehrfachzuweisungen sind pfui. Hatten wir hier kürzlich wieder 'ne Grundsatzdiskussion...

Harald

Was ja aber nichts an der grundsätzlichen Idee ändert:

Eine Vorauswahl der verfügbaren Komponenten anhand der gewählten Betriebsart.

Hat durchaus seinen Charme ... man könnte die Frage andersrum stellen: was ist der Grund für die aktuelle Lösung?

Was mir einfällt: aktuell wird bei BA- Wechsel die Möglichkeit gewahrt, die zugehörigen Aktoren sicher abzuschalten. Man läuft nicht Gefahr einen undefinierten Zustand zu produzieren. Kann das der neue Ansatz auch?

Wenn Du Dich dann entschieden hast sollte auch Haralds Einwand beachtet werden.
 
Zuletzt bearbeitet:
Ich verstehe das Konzept nicht und es will mir auch nicht einleuchten was damit bezweckt werden soll.
Die Anlage besteht ja nicht aus mehr oder weniger Aktoren nur weil sich die Betriebsart ändert.

Von daher schließe ich mich der Frage von vierlagig voll und ganz an: "was ist der Grund für die aktuelle Lösung?"


Unabhängig davon, finde ich den Aufbau mit der Case Verzeigung umständlich da man bei jedem neuen Aktor für jede Betriebsart je eine Zeile einfügen muss. Ich setze auch für Zylinder, E-Achsen, usw. Bausteine ein diese werden an einer Stelle aufgerufen und mit den Parametern versorgt die sie benötigen. Also welche Eingänge und Ausgänge wann die Freigabe vorhanden ist um welchen Typ von Aktor es sich handelt usw. Aus der Schrittkette wird dann nur noch der Befehl (Grundstellung/Arbeitstellung/An/Aus/usw.) abgesetzt und der Status abgefragt.

Ich würde es halt an der einen Stelle mittels Freigabe oder Modus Umschaltung lösen und _nicht_ an einer anderen Stelle jeden Aktor nochmals für jede Betriebsart umschalten. Meine Beweggründe sind hier aber eher meine Faulheit ;o)
 
Bedingte Mehrfachzuweisungen sind pfui. Hatten wir hier kürzlich wieder 'ne Grundsatzdiskussion...


Ist ja auch richtig, aber diese Case Anweisung mit Fallunterscheidung der Betriebsarten ist ja durchaus so machbar, hier sehe ich ja genau welcher Teil der Anweisung abgearbeitet wird. Das sehe ich in diesem Fall nicht so schlimm wie z.B. Ausgänge mehrfach zu beschreiben.

Richtig ist natürlich dass hier für jeden Aktor neue Zeilen eingefügt werden müssen, auch nicht so toll.....


was ist der Grund für die aktuelle Lösung?


Na ja man dachte sich halt dass jede Komponente "wissen" muss welche Betriebsart aktiv ist und entsprechend darauf reagieren kann.


Aber muss sie das wirklich? Das schafft doch Abhängigkeiten der Komponenten FB vom Betriebsarten FB.
Ich möchte gerne diese Abhängigkeiten vermeiden! Es würde doch reichen von ausen zu sagen ob aktiv oder inaktiv sein muss....


Was mir einfällt: aktuell wird bei BA- Wechsel die Möglichkeit gewahrt, die zugehörigen Aktoren sicher abzuschalten. Man läuft nicht Gefahr einen undefinierten Zustand zu produzieren. Kann das der neue Ansatz auch?


Na ja das Enable wird ja abhängig von der Betriebsart gesetzt. Was soll daher dagegen sprechen?


Mich würde mal interessieren wie andere das in ihren entsprechenden Standards machen?
Wie implementiert ihr Betriebsarten in wiederverwendbaren Bausteinen und wie integriert ihr das in eure Software?


Grüße Pico
 
Zuletzt bearbeitet:
...
Na ja das Enable wird ja abhängig von der Betriebsart gesetzt. Was soll daher dagegen sprechen?
...
Wenn ich einen Aktor in der Betriebsart X verfahre und dann in die Betriebsart Y wechsele in der dieser Aktor nicht mehr verfahren werden darf, dann kann der ja genau in der Stellung stehen die mir in dieser Betriebsart nicht gefällt. Dann müsste man ja z.B. auch noch unterscheiden das der Zylinder in der Betriebsart Y z.B. In Grundstellung fahren aber nicht in Arbeitsstellung verfahren darf usw...


...
Mich würde mal interessieren wie andere das in ihren entsprechenden Standards machen?
Wie implementiert ihr Betriebsarten in wiederverwendbaren Bausteinen und wie integriert ihr das in eure Software?
...

Welche Betriebsart meinst Du eigentlich? Geht es um den Ablauf der Maschine oder um die Betriebsart aus Sicht der Sicherheit oder beides vereint?

Betriebsart im Bezuug auf den Ablauf _nicht_ aus der Sicht der Sicherheit:
Bei uns sind den Aktoren die Betriebsart recht egal die machen das was ihnen gesagt wird und melden das Ergebnis zurück.
Die Betriebsarten sind aber auch recht überschaubar es gibt die Handebene, den Automatikablauf, die Grundstellungsfahrt und einen Sonderbetrieb (z.B. CG Messung usw.). Der Automatikablauf und die Grundstellungsfahrt so wie der Sonderbetrieb (der nur selten überhaupt vorgesehen ist) sind mit Schrittketten ausgeführt und haben alle zwei Stufen: angewählt und gestartet. Die Automatik und der Sonderbetrieb können nur angewählt werden wenn die Kiste auch in Grundstellung steht. Hand und Grundstellungsfahrt können jederzeit angewählt werden die Grundstellungsfahrt hat allerdings auch die beiden Stufen (angewählt und gestartet).

So nun zu dem leidigen Thema "Betriebsarten" aus Sicht der Sicherheit:
Auch hier müssen die Schrittketten ja wissen wie die Betriebsart ist. Da es ja albern wirkt wenn die Automatik einen Aktor verfahren will der gerade nicht zulässig ist weil die Schutztür überbrückt ist oder ähnliches.
Achsen die in sicherer reduzierter Geschwindigkeit unterwegs sind oder Zylinder die mit reduziertem Druck verfahren werden aus dem SPS-Programm genauso angesteuert wie sonst auch. Wenn diese nicht verfahren dürfen also z.B. Greifer darf nicht öffnen oder schließen wird dies 1. über die Sicherheit und 2. mit einem Freigabe Bit direkt am Aktorenbaustein verhindert, dies sind bei uns aber absolute Ausnahmen und wir versuchen dies Klimmzüge zu vermeiden.
 
Welche Betriebsart meinst Du eigentlich? Geht es um den Ablauf der Maschine oder um die Betriebsart aus Sicht der Sicherheit oder beides vereint?

Es geht mir um beides vereint. Die Safety muss in die Betriebsarten integriert sein oder besser gesagt die Betriebsarten müssen die Safety Signale kennen.

Der Automatikablauf und die Grundstellungsfahrt so wie der Sonderbetrieb (der nur selten überhaupt vorgesehen ist) sind mit Schrittketten ausgeführt und haben alle zwei Stufen: angewählt und gestartet.

dann habt ihr mehrere Schrittketten? Jeweils für jede Betriebsart? Hier besteht dann aber wieder eine direkte Abhängigkeit der Betriebsarten zu den Schrittketten, gut komplett umgehen lässt sich das natürlich nicht.
Anscheinend gibt es die TOP Lösung die ich suche einfach nicht......
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Es gibt halt ganz viele verschiedene Maschinen und Anlagen und kein Allheilmittel.

Ja bei uns ist die Automatikkette eine andere als die Grundstellungsfahrt(kette). Der Handbetrieb ist ohne Kette gelöst. Im Bezug auf die Safety Betriebsart wie "Einrichten" kommt das auf die normale Betriebsart oben drauf bzw. verhindert einige. Es kommt halt darauf an für was man die Safety Betriebsarten benötigt (nur Teachen, echter Automatikablauf nur langsam usw.)
 
Zurück
Oben