13.02.2007 09:25 | |
Beigetreten: 24.04.2006 Letzter Bes: 18.11.2024 Beiträge: 8770 Bewertung: (1171) |
Hallo Peter, Vielleicht hilft diesem link: http://support.automation.siemens.com/WW/view/de/19345299 MfG Wizard |
20.02.2007 07:47 | |
Beiträge: 33 Bewertung: (11) |
Hallo CTService, ich hatte mal in einem Projekt ein ähnliches Problem, allerdings mit max. 10 INT-Messwerten. Ich habe die Quelle des Bausteins angehängt, vielleicht hilft dir das etwas weiter. Das Grundprinzip lässt sich leicht auf Realzahlen abändern: Prinzip: - Alle Messwerte werden in einem DB gespeichert (im FB imInstanz-DB) - wenn ein neuer Messwert hinzukommt, werden die alten nach hinten geschoben (Schieberegister). Der älteste Messwert fällt dadurch weg - Alle Messwerte im DB werden addiert und anschließend durch die Anzahl geteilt Das Schieberegister und das Addieren müsstest du bei 96 Stück evtl. mit einer Schleife realisieren. Gruß Therapeut DateianhangFB304.zip (679 Downloads) |
02.03.2007 11:41 | |
Beiträge: 5 Bewertung: (0) |
Moin Moin Thomas, vielen Dank für den Baustein......hat weinbranntfrei funktioniert MfG Peter |
07.03.2007 09:01 | |
Beigetreten: 06.03.2006 Letzter Bes: 13.09.2024 Beiträge: 369 Bewertung: (101) |
Hallo Peter, ich muss aber doch noch mal Werbung für SCL machen Habe ein kleines Programm in SCL geschrieben. Da Dein Programm anscheinend hinsichtlich der Anzahl der Werte recht flexibel sein muss, ist die Anzahl der zur Mittelwerbildung verwendeten Werte parametrierbar. Der Ablauf beginnt mit Reset = true und der Angabe der Anzahl der Werte zur Initialisierung. Mit jedem Aufruf mit Reset = false wird dann ein neuer Wert hinzugefügt, falls die maximale Anzahl überschritten ist, der älteste gelöscht - und der Mittelwert gebildet. Der Anhang enthält die exportierte SCL-Quelle Mittelwert.SCL, lesbar mit Texteditor und ein S7-Projekt mit 2 Bausteinordnern: Mit SCL-Quellen wie das Programm generiert wurde und nur die Bausteine, um den AWL-Code zu betrachten oder die Bausteine ohne SCL zu verwenden. Die eine SCL-Quelle enthält sowohl den FB1111 und dessen Instanz-DB 1111als auch den OB1, wobei das Programm über E0.0 (Reset) und E0.1 (neuer Wert) gesteuert wird. EW2 enthält die Anzahl der Werte für E0.0 = true, EW10 enthält den neuen Wert für E0.1 = true. Ich habe das Programm mit 5.2 erstellt und mit PlcSim getestet. Man kann natürlich auch noch symbolisch Arbeiten und den FB1111 z.B. Mittelwert nennen und den OB1 und den FB1111 in unterschiedliche Quellen ablegen. Vielleicht kann ich ja Euer Interesse an SCL wecken? Man kann wirklich schnell gute Programme damit schreiben. Viele Grüße Thomas DateianhangMittelwert.zip (809 Downloads) |
Zuletzt bearbeitet von: wolpi@ts am: 07.03.2007 10:08 |
|
Folgen Sie uns auf