Se il dispositivo lo supporta, è possibile mappare interi blocchi funzione su un canale di ingresso o di uscita. Ciò consente di contare la frequenza delle variazioni del segnale o di scalare il valore di un canale, ad esempio per scopi di manutenzione.
Qui si mappa un canale di uscita del dispositivo a un blocco funzione. In questo esempio, il blocco scala il valore di uscita del canale.
Requisiti: Nel progetto è collegato un dispositivo con un'uscita digitale che supporta la mappatura del blocco funzionale. Esiste un blocco funzione «Scale_Output_Int» con la seguente implementazione. Sono importanti gli attributi del blocco funzione stesso e prima del parametro di uscita con cui viene elaborata l'uscita del canale.
{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;
-
Aprire la sezione ⮫ Mappatura I/O del modulo del dispositivo. Fare doppio clic sull'uscita da collegare al blocco funzione. Fare clic sul pulsante
«Add FB for IO channel». Si apre la finestra di dialogo «Select Function Block». Sul lato sinistro, si vede almeno il blocco funzione «Scale_Output_int» sotto il nodo «Application». Vengono visualizzate per la selezione anche le librerie collegate al progetto che contengono i blocchi funzione corrispondenti.
-
Selezionare il POU
myScaleOutputInt.Dopo aver fatto clic su «OK», nella finestra di dialogo di mappatura viene inserito il percorso del parametro del blocco funzione
iOutputnella variabile . Il percorso comprende il nome dell'applicazione, il nome del canale del dispositivo e l'uscita del blocco funzionale selezionata (esempio:App1.Out_4_Int_myScale_Output_Int_1.iOutput). -
Selezionare il canale e fare clic sul pulsante
«Vai all'istanza». Il focus passa alla scheda «<nome dispositivo> Oggetti IEC» e alla voce creata per il nuovo oggetto IEC
Out_4_Int_myScale_Output_Int_1. In questa vista in modalità online, viene visualizzato il valore attuale del parametroiOutputper il canaleOut_4_Intscalato dal blocco funzionale. È anche possibile scrivere e forzare il valore come in altre viste di monitoraggio.
Per ulteriori informazioni, vedere: ⮫ «Scheda: '<nome dispositivo> Oggetti IEC » e ⮫ «Attributo: io_function_block, io_function_block_mapping »