Wenn das Gerät dies unterstützt, können Sie ganze Funktionsblöcke einem Eingangs- oder Ausgangskanal zuordnen. Auf diese Weise können Sie die Häufigkeit von Signaländerungen zählen oder einen Kanalwert z. B. für Wartungszwecke skalieren.
Hier werden Sie einen Geräteausgangskanal einem Funktionsblock zuordnen. In diesem Beispiel skaliert der Block den Kanalausgangswert.
Erfordernis: Ein Gerät mit digitalem Ausgang, das FB-Mapping unterstützt, wird im Projekt verknüpft. Es gibt einen Funktionsblock „Scale_Output_Int“ mit der folgenden Implementierung. Wichtig sind die Eigenschaften des Funktionsblocks selbst und vor allem die Ausgangsparameter, mit denen der Kanalausgang verarbeitet wird.
{attribute 'io_function_block'} FUNCTION_BLOCK Scale_Output_Int VAR_INPUT iInput : INT; iNumerator : INT; iDenominator : INT :=1; iOffset : INT := 0; END_VAR VAR_OUTPUT {attribute 'io_function_block_mapping'} iOutput : INT; END_VAR VAR END_VAR IF iDenominator <> 0 THEN iOutput := TO_INT(TO_DINT(iInput) * TO_DINT(iNumerator) / TO_DINT(iDenominator)) + iOffset;
-
Öffnen Sie die ⮫ E/A-Zuordnung Registerkarte des Gerätemoduls. Doppelklicken Sie auf den Ausgang, der mit dem Funktionsblock verbunden werden soll. Klicken Sie auf die Schaltfläche
„FB für IO-Kanal hinzufügen“.
Das Dialogfeld „Funktionsblock auswählen“ wird geöffnet. Auf der linken Seite sehen Sie mindestens den Funktionsblock „Scale_Output_int“ unterhalb des Knotens „Application“. Im Projekt verknüpfte Bibliotheken, die entsprechende Funktionsblöcke enthalten, werden ebenfalls zur Auswahl angezeigt.
-
Wählen Sie die POE
myScaleOutputInt
.Nach Klick auf „OK“ wird der Pfad des Funktionsblockparameters
iOutput
in der „Variable“ im Mapping-Dialog eingetragen. Der Pfad besteht aus dem Anwendungsnamen, dem Gerätekanalnamen und dem gewählten FB-Ausgang (Beispiel:App1.Out_4_Int_myScale_Output_Int_1.iOutput
). -
Wählen Sie den Kanal aus und klicken Sie auf die Schaltfläche
„Go to Instance“.
Der Fokus wechselt auf die Registerkarte „<Gerätename> IEC-Objekte“ und den erstellten Eintrag für das neue IEC-Objekt
Out_4_Int_myScale_Output_Int_1
. In dieser Ansicht im Online-Modus sehen Sie den aktuellen Wert des ParametersiOutput
für den KanalOut_4_Int
skaliert durch den FB. Sie können den Wert auch wie in anderen Überwachungsansichten schreiben und erzwingen.
Für weitere Informationen siehe: ⮫ „Registerkarte: '<Gerätename> IEC-Objekte “ und ⮫ „Attribut: io_function_block, io_function_block_mapping “