F166_PulseOutput_Set

Uscita ON al raggiungimento del valore target (uscita ad impulsi)

Se il valore corrente corrisponde al valore target del canale dell’uscita ad impulsi selezionata, l’uscita specificata passa immediatamente a TRUE.

Parametri

Ingresso

n_diPulseOutputChannel (DINT)

Canale uscita ad impulsi:0–3

s_diTargetValue (DINT)

Specificate un valore di dato a 32 bit per il valore target che sia compreso nel seguente intervallo:: da -2147483467 a +2147483648

Uscita

d_Y (BOOL)

Uscita che passa a TRUE quando il valore corrente corrisponde al valore target:Y0–Y1F

Note

  • Caratteristiche dell’uscita ad impulsi

    Valore target: 10000

    (1)

    Valore corrente dell'uscita ad impulsi

    (2)

    Condizione di esecuzione

    (3)

    Flag "controllo uscita attivo"

    (4)

    Uscita del PLC

    L’uscita del PLC passa a TRUE quando il valore corrente corrisponde al valore target. Inoltre il flag “controllo uscita attivo” commuta su FALSE e l’istruzione viene disattivata.Se viene specificata un’uscita che fisicamente non è presente, viene commutata solamente la memoria interna relativa alle WY

  • Operazione di interrupt

    Il programma di interrupt viene eseguito quando il valore corrente corrisponde al valore target Ogni interrupt inserito nella lista dei Task viene automaticamente abilitato. Ad ogni numero di canale è assegnato uno speciale numero di programma di interrupt.

  • Canali utilizzati dai programmi di interrupt:

    Interrupt8

    Canale0

    Interrupt9

    Canale1

    Interrupt10

    Canale2

    Interrupt11

    Canale3

Informazione generale di programmazione

  • Nei registri di sistema impostare "uscita ad impulsi" per il canale desiderato.

  • Quando viene eseguita questa istruzione, il flag “controllo uscita attivo” (p.es. sys_bIsPulseChannel0ControlActive) per il canale usato passa a TRUE. Finché questo flag è TRUE non si può eseguire nessun’altra istruzione contatore veloce (F166_PulseOutput_Set o F167_PulseOutput_Reset) usando lo stesso canale.

  • Questa istruzione è disponibile per tutte le istruzioni uscita ad impulsi tranne che F173_PulseOutput_PWM e può essere eseguita prima o dopo l’esecuzione di un’istruzione uscita ad impulsi.

  • L’uso duplicato di un’uscita esterna in altre istruzioni (OUT, SET, RST, KEEP ed altre istruzioni F) non viene rilevato da FPWIN Pro.

  • Per commutare su FALSE un’uscita del PLC che è stata commutata su TRUE da questa istruzione, usare un’istruzione RST o MOVE.

  • Per disattivare l'esecuzione di un'istruzione di uscita ad impulsi, impostare il bit 2 del registro dati contenente il codice di controllo dell'uscita impulsi (sys_wHscOrPulseControlCode) su TRUE. Il flag di controllo dell'uscita ad impulsi passerà allora a FALSE. Per riabilitare l'esecuzione dell'istruzione, riportare il bit 2 a FALSE.

  • Se sia il programma principale sia il programma di interrupt contengono un codice per lo stesso canale, essi non devono poter esser eseguiti contemporaneamente.

  • Si raccomanda vivamente di incorporare un'opzione di stop uscita impulsi nel proprio programma di posizionamento.

  • Lo stato del flag di controllo del contatore veloce o del flag di controllo dell'uscita ad impulsi può variare durante lo svolgimento di una scansione. For example, if the number of received bytes is read more than once different statuses may exist within one scan.

Flag di errore

sys_bIsOperationErrorHold (passa a TRUE e resta TRUE)
  • se il numero di canale o valori della tabella dati sono fuori del campo ammissibile
  • se l'uscita ad impulsi non è stata impostata nei registri di sistema
sys_bIsOperationErrorNonHold (passa a TRUE per una scansione)
  • se il numero di canale o valori della tabella dati sono fuori del campo ammissibile
  • se l'uscita ad impulsi non è stata impostata nei registri di sistema

Esempio

Variabili globali

Nella lista variabili globali si definiscono variabili alle quali possono accedere tutti i POU del progetto.

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_EXTERNAL
		out_0: BOOL:=FALSE;
			(*output Y0 of PLC*)
	END_VAR
	VAR 
		start: BOOL:=FALSE;
			(*start condition*)
		@'': @'';
	END_VAR

Corpo del POU

Quando la variabile start è impostata su TRUE, la funzione viene eseguita.

Corpo LD

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_F,F166_PulseOutput_Set!,Instance,12,1,26,6,,?DEN?Hn_diPulseOutputChannel?Ds_diTargetValue?AENO?Cd_Y);
B(B_VARIN,,0,10,3,12,5,);
B(B_VARIN,,10,10,4,12,6,);
B(B_VAROUT,,out_0,26,3,28,5,);
B(B_CONTACT,,start,5,2,7,4,R);
L(1,3,5,3);
L(7,3,12,3);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

IF DF(start) then
    F166_PulseOutput_Set(n_diPulseOutputChannel := 0, 
          s_diTargetValue := 10, 
          d_Y => out_0);
END_IF;

L'ultima revisione: 2023-03-16Feedback su questa paginaPanasonic hotline