Se supportato dal dispositivo, è possibile mappare i blocchi funzione su un canale di ingresso o di uscita. Ciò consente, ad esempio, di contare la frequenza delle modifiche al segnale o di ridimensionare un valore di canale a scopo di manutenzione.
Nell'esempio di codice riportato di seguito viene mappato un canale di output del dispositivo su un blocco funzione. Il blocco funzione ridimensiona il valore di uscita del canale.
Devono essere applicati i prerequisiti seguenti:
Nel progetto è disponibile un dispositivo con un’uscita analogica di tipo INT che supporta il mapping dei blocchi funzione.
È disponibile un blocco funzione Scale_Output_Int con la seguente implementazione.
Considerare gli attributi del blocco funzione stesso e gli attributi che precedono il parametro di uscita per l'elaborazione dell’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;
Per mappare un dispositivo e un'istanza del blocco funzione, procedere come segue:
|
Passo |
Azione |
Commento |
|---|---|---|
|
1 |
Aprire la scheda dell'editor di dispositivi. |
– |
|
2 |
Selezionare l’uscita della quale si desidera eseguire il mapping sul blocco funzione. |
– |
|
3 |
Fare clic sul pulsante più |
Risultato: viene visualizzata la finestra di dialogo . Sul lato sinistro viene visualizzato almeno il blocco funzione Scale_Output_int sotto il nodo . Le librerie disponibili nel progetto che contengono i blocchi funzione corrispondenti vengono anche visualizzate per la selezione. |
|
4 |
Selezionare il blocco funzione Scale_Output_int e fare clic su . |
Risultato: il percorso del parametro del blocco funzione iOutput viene immesso nella colonna della tabella di mapping I/O. |
|
5 |
Selezionare il canale e fare clic sul pulsante |
Risultato: lo stato attivo passa alla vista e alla nuova voce. La vista in modalità online visualizza il blocco funzione. È possibile scrivere e forzare il valore in questa vista di monitoraggio. |