FB&DB / FC, um fehlendes Sensorsignal zu ersetzen

cwg-dude

Level-1
Beiträge
6
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Mahlzeit!

Ich habe die Aufgabe, einen FB mit DB oder ne FC zu schreiben, die ein fehlendes Sensorsignal in einem Programmablauf ersetzen kann.

Die ganze Sache zielt ab auf Erhöhung der Anlagenverfügbarkeit.

Dabei soll ein Sensorsignal, das temporär oder im schlimmsten Fall auch dauerhaft nicht ansteht, den og. Baustein öffnen. Und dieser soll dann entscheiden, ob das fehlende Signal (meinetwegen ein Signal, dass die richtige Werkstückposition zum Pressen angibt) übergangen werden kann und der Ablauf mittels des Bausteinausgangs "Weiter" weitergeschaltet werden soll. Oder ob die Sache dann zu heikel wird für Bediener und Anlage, und ein Service erfolgen sollte.

Dabei soll dem Baustein übergeben werden:
- welcher Sensor nicht ging
- welche Überwachungszeit abgelaufen ist, in der der Sensor hätte kommen sollen
- eine Bestätigung aus dem weiteren Programmverlauf, die den Baustein wieder schließt

Der Baustein soll dann entsprechend HALT oder WEITER sagen, und eine Meldung in den DB schreiben.

Desweiteren soll eine Gefährdungsanalyse eingehen, die wir aber erstmal außen vor lassen.

Ich habe hier eine kleine Steuerung aufgebaut aus
CPU 317F-2 PN/DP und ein paar Sensoren.

Aus denen habe ich erstmal einen Ablauf geschrieben. Was schon schwer genug ist, denn hier kann sich nix bewegen. Man muss sich alles vorstellen.

Nun fehlt mir aber die entscheidende Idee. Ich finde irgendwie keinen Zugang.

Wie soll ich mit einem nicht vorhandenen Signal zuverlässig einen Baustein aufrufen?

Und wie könnte man den Baustein so gestalten, dass er universell einsetzbar wird. Sprich in irgendein Programm, irgendeiner Anlage ohne große Anpassung an diese.


Hatte nur einen Einführungskurs an der Uni...

Ich bin dankbar für jede Inspiration.
 
Also, ich würd den Baustein nicht bedingt sondern zyklisch aufrufen, das zu überwachende Signal als IN verarbeiten und den WEITER-Ausgang entweder über den korrekten Zustand des Signals oder über deine alternativen Bedingungen ansteuern. Der WEITER-Ausgang ersetzt dann im restlichen Programm das originale Sensorsignal.

Grüße von HaDi
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Eine nicht vorhandene Information zu Ersetzen erhöht wahrscheinlich eher nicht die Anlagen-Verfügbarkeit ...

Ansonsten wäre mein Ansatz hier ein Time-Out.
Dem Ini (gleich welche Funktion) geht ja immer ein Ausgang vorraus, der etwas bewegt. Mit dem Ausgang startest du einen Timer (zur Überwachung). Ist der Ini in der von dir dafür vorgesehenen Zeit da, ist alles OK. Kommt er und geht wieder (wird überfahren) gibst du eine Fehler-Meldung aus. Kommt er nach Ablauf von Zeit 1 aber vor Ablauf von Zeit 2 gibst du eine Warn-Meldung aus. Kommt er gar nicht (auch nicht nach Zeit 2), so meldfest du eine Störung und stoppst die Anlage (ggf.).

Vielleicht hilft dir das ja als Ansatz ...

Gruß
LL
 
Danke euch beiden erstmal, ich werde mal schauen, ob daraus was machen kann.

Wie rufe ich denn einen Baustein zyklisch auf?

Finde dazu nix in meiner Befehlsübersicht
 
Zurück
Oben