FC110 – V00/00.00.00 vom 25.03.2009
Bei der Verarbeitung von Werten, egal ob es sich um Anlagewerte, Digitalwerte oder auch von Anwenderprogrammen erstelle Zahlenwerte handelt, kommen häufig schwankende Werte vor, die sich für die weitere Verarbeitung im Programm negativ auf den Prozess auswirken. Diese schwankenden Werten entsprechen häufig nicht den realen, physikalischen Werten, die zwar rein rechnerisch korrekt sind,oder laut Sensor so sein sollten, doch nicht wirklich so sein können. Das kann an den Abtastzeiten liegen, oder bei Analogwerten durch Störsignale auf die Messleitungen zurückzuführen sein. Als Beispiel sind Öfen zu nennen, die mehrere Tonnen vom Produkt enthalten, so daß die Temperatur sich nicht innerhalb von 1 Sekunde um +/-10 Grad ändern kann. Ein anderes Beispiel ist die Drehzahlerfassung von Motoren, die selten eine Beschleunigung/Verzögerung von 10 U/ms haben.
Um für den Prozess, oder zur Auswertung brauchbare Werte zur Verfügung zu stellen, kann der Durchschnittswert ermittelt werden, damit nach X-Wert bzw. über X-Zeit, die Warteänderungen angemessen konstant gehalten werden können. Dazu haben wir den FC110 entwickelt, der die minimale Funktionalität enthält, um diese in Ihre SPS-Programme einzubinden.
Allgemeines
Für den FC110 wird noch ein Datenbaustein benötigt, in dem die Daten von dem FC-Programm zwischen gespeichert werden,sowie die Werte für die Durchschnittsberechnung. Die Anzahl der Werte für die Ermittelung des Durchschnittswerts werden im DB110 im ARRAY angegeben. Da die Anzahl je nach Anwendung von 2 bis 1000 Werten oder höher liegen kann, wurde das SPS-Programm auf Zykluszeit optimiert. So werden nicht alle benötigten im Programmzyklus zusammengerechnet, sondern durch das addieren/subtrahieren vom aktuellen bzw. herausfallenden Gesamtwert berücksichtigt. Weiter sind die Werte als Rundlaufspeicher organisiert, wodurch das schieben der Werte entfällt. Mit diesen Programmbausteinen können zwei verschiedene Datentypen ( DINT oder Real), verarbeitet werden. Dies hat den Vorteil, das nicht mehrere FC-Baustein entwickelt werden müssen für diese Datentypen,wodurch sich die Anzahl der FC-Bausteine reduziert.
Beschaltung INPUT
Die folgende Aufstellung gibt einen Überblick der Beschaltung:
db_dat DB-Block DB mit den Daten für den FC sowie das Zwischenspeichern der Werte
bii_1_reset BOOL 1=Reset, alle Daten im DB werden auf Null gesetzt
bii_1_dat_uebern BOOL 1=Wert wird übernommen, neuer Durchschnittswert wird ermittelt<7p>
dii_wert_akt DINT Wert für Durchschnittswert -Berechnung (wenn L#0 = dann wird der Real-Wert verwendet)
rei_wert_akt Real Wert für Durchschnittswert Berechnung
(wenn 0.0 = dann wird der DINT-Wert verwendet)
FC-Beschaltung OUTPUT
In der folgenden Aufstellung gibt es einen Überblick der Beschaltung:
bio_1_ausf_akt BOOL 1=Funktion wird ausgeführt, keine Störung erkannt
dio_durchschn DINT ermittelter Durchschnittswert
(wenn ‘rei_wert_akt ‘ = 0.0 )
reo_durchschn Real ermittelter Durchschnittswert
(wenn ‘ dii_wert_akt ‘ = L#0 )
Beschreibung zu der Beschaltung
Zu der Beschaltung des FC-Bausteins folgen weitere Informationen:
db_dat / DB-Block
Der FC-Baustein muss zur Ausführung Werte zwischenspeichern. Dazu gehört die Datensatznummer zum laden/speichern der Werte, sowie der Gesamtwert/Durchschnittswert der Datentypen DINT/Real.
bii_1_reset / BOOL
Wenn an den FC-Eingang ein VKE1 anliegt, wird der komplette DB-Baustein zurückgesetzt, in dem alle Bytes auf Null gesetzt werden. Eine Durchschnittsberechnung wird nicht ausgeführt.
bii_1_dat_uebern / BOOL
Wenn an diesem Eingang ein VKE1 anliegt, wird der aktuelle Wert zur Durchschnittsberechnung verwendet, die dann auch ausgeführt wird, in dem die entsprechenden Werte DB ein-/ausgetragen werden.
dii_wert_akt / DINT
Übergabe des Werts für Durchschnittswert-Berechnung. Sollte der Wert Null sein, so wird der Real-Wert für die Durchschnittsberechnung verwendet. Einer der Datentypen (DINT/Real) muss den Wert Null enthalten, damit der SPS-Programmbaustein korrekt ausgeführt werden kann.
rei_wert_akt / Real
Übergabe des Werts für Durchschnittswert-Berechnung. Sollte der Wert Null sein, so wird der DINT-Wert für die Durchschnittsberechnung verwendet. Einer der Datentypen (DINT/Real) muss den Wert Null enthalten, damit der SPS-Programmbaustein korrekt ausgeführt werden kann.
bio_1_ausf_akt / BOOL
Wenn der angegebene Datenbaustein zu wenig Bytes enthält, so daß der notwendige Datenkopf inklusive einem Wert nicht vorhanden ist, kann keine Durchschnittsberechnung ausgeführt werden. Sollte der DB-Baustein die notwendige Größe haben, werden die Berechnungen ausgeführt, und eine VKE1 wird ausgegeben.
dio_durchschn / DINT
Berechneter Durchschnittswert, wenn ‘rei_wert_akt ‘ = 0.0 entsprach.
reo_durchschn / Real ermittelter Durchschnittswert
Berechneter Durchschnittswert, wenn ‘dio_wert_akt ‘ = L#0 entsprach.



