ATAN

Arcotangente

ATAN calcola l'arcotangente della variabile di ingresso (valore ± 52707176) e scrive i dati dell'angolo, espressi in radianti, nella variabile di uscita. La funzione restituisce un valore maggiore di -π/2 e minore di π/2.

Parametri

Ingresso

Unnamed input (REAL, LREAL)

Valore di ingresso compreso tra -52707176 e +52707176

Uscita

Unnamed output (REAL, LREAL)

Uscita come ingresso: arcotangente del valore di ingresso in radianti

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)

se la variabile di ingresso non presenta il tipo di dato REAL, LREAL o la variabile di ingresso è ³ 52707176

sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)

se la variabile di ingresso non presenta il tipo di dato REAL, LREAL o la variabile di ingresso è ³ 52707176

sys_bIsEqual (passa a TRUE e resta TRUE)

se la variabile di uscita è zero

sys_bIsCarry (passa a TRUE per una scansione)

se il risultato dell'elaborazione di programma eccede la variabile di uscita (overflow)

Esempio

Intestazione del POU

Tutte le variabili di ingresso e uscita utilizzate per programmare questa funzione sono state dichiarate nell'intestazione del POU. La stessa intestazione del POU è utilizzata per tutti i linguaggi di programmazione.

	VAR
		input_value: REAL:=0.0;
			(*range -1 to 1*)
		output_value: REAL:=0.0;
			(*angle data radians -Pi/2 to Pi/2*)
	END_VAR

In questo esempio vengono utilizzate variabili. Potete anche utilizzare una costante per la variabile di ingresso.

Corpo LD

L'arcotangente di input_value viene calcolata e scritta in output_value.

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 5 ;
        NETWORK_BODY
B(B_F,ATAN!,Instance,7,1,12,3,,?D?C);
B(B_VARIN,,input_value,5,1,7,3,);
B(B_VAROUT,,output_value,12,1,14,3,);
L(1,0,1,5);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

output_value:=ATAN(input_value);

Corpo IL

L'ultima revisione: 2024-03-15Feedback su questa paginaPanasonic hotline