Cześć,
Takie łączenie parametrów konfiguracyjnych o tyle ma sens, że potem po programie nie pałętają się zmienne o dziwnych nazwach, które nie wiadomo, co robią.... W przypadku, który opisałeś definiujesz blok funkcyjny i zmienną konfiguracyjną:
VAR
Mixer : FbPIDController;
END_VAR
VAR RETAIN PERSISTENT
mixerConfig : typConfigPIDController;
END_VAR
i w programie definiujesz:
Mixer(
xEnable := _____________,
rReferenceValue := _____________,
rActualValue := _____________,
xManualOperation := _____________,
rManualValue := _____________,
typConfigPIDController := mixerConfig
);
potem w wizualizacji wstawiasz obiekt Visualization wskazując ConfigPIDController i w konfiguracji tego obiektu pod Placeholder podajesz zmienną mixerConfig np: Heating_Control.mixerConfig
W efekcie ustawiasz parametry PIDa przez wizualizację.
Pozdrawiam,