FUNCTION Versus FUNCTION_BLOCK, große Vorteile bei ._BLOCK

Begonnen von Frank.Kirchhoefer, 20. Dezember 2015, 00:28:25

Vorheriges Thema - Nächstes Thema

0 Mitglieder und 1 Gast betrachten dieses Thema.

Frank.Kirchhoefer


Als Vorschlag habe ich, wo es geeignet ist FUNCTION in FUNCTION_BLOCK umzuwandeln, mit je nach Anwendung merklichen Performance Gewinnen. Mag sein, dass man das mit vielen Funktionen machen sollte, die deutlich mehr als einen Eingangsparameter haben. Zumal Speicher, also mehrere Instanzen in einem Programm bzw. einer Task immer weniger Kriterium der Software wird. Performance bleibt aber immer Ziel von Optimierungen.

Ich habe mich mit Unterschieden zwischen FUNCTION und FUNCTION_BLOCK beruflich beschäftig. Der FUNCTION_BLOCK kann einerseits mit Werten höherer Wahrscheinlichkeit vorbelegt werden, andererseits bei mehreren Anwendungen mit gleichen Parametern kann die entsprechende Zuweisung entfallen.

Am Beispiel X_LIN2:
Nicht selten ist X1 0, Y1 0, ein Versuch wäre auch als Standard Linearisierung auf 100% Y2 mit 100 vorzubelegen.                                                                                                         X_LIN2 : X_LIN2;(* Instanz deklarieren *)
.. = X_LIN2(X := X,X1=0,X2=10,Y1=0,Y2=100); (* von 0..10V auf 0..100%*) kann dann werden .. = X_LIN2(X := X,X2=10);
MfG
Frank Kirchhöfer