Funzioni ed FB per gestione timers ---------------------------------- eTOF, Timer Off ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |image0| +----------+------------------+ | **Type** | **Library** | | | | +----------+------------------+ | FB | eLLabStdLib_B000 | +----------+------------------+ Questo blocco funzione esegue la temporizzazione sulla disattivazione, attivando l'ingresso **IN** l'uscita **Q** si attiva immediatamente ed il tempo in uscita **ET** si azzera. Disattivando l'ingresso IN inizia il conteggio e dopo il tempo definito **PT** espresso in mS, si disattiva l'uscita **Q**. Sulla uscita **ET** viene ritornato il tempo trascorso dalla disattivazione dell'ingresso espresso in mS. +-----------------------------------+-----------------------------------+ | **IN** (BOOL) | Ingresso timer, attivandolo | | | l'uscita Q si attiva | | | immediatamente ed il tempo in | | | uscita ET si azzera. | | | Disattivandolo inizia il | | | conteggio e dopo il tempo | | | definito in PT, si disattiva | | | l'uscita Q. | +-----------------------------------+-----------------------------------+ | **PT** (UDINT) | Preset tempo, definisce il tempo | | | di ritardo dalla disattivazione | | | dell'ingresso IN alla | | | disattivazione dell'uscita Q, | | | espresso in mS. | +-----------------------------------+-----------------------------------+ | **Q** (BOOL) | Uscita timer, si attiva su | | | attivazione ingresso IN, e si | | | disattiva dopo il tempo definito | | | in PT dalla disattivazione | | | dell'ingresso IN. | +-----------------------------------+-----------------------------------+ | **ET** (UDINT) | Tempo timer, si azzera su | | | attivazione ingresso IN ed inizia | | | conteggio da disattivazione | | | ingresso IN. Raggiunto tempo | | | impostato in PT si arresta | | | conteggio, espresso in mS. | +-----------------------------------+-----------------------------------+ **Esempi** """"""""""""""""""""""""""""""""""""" Il timer è presettato a 1 secondo (1000 mS). Attivando l'ingresso digitale **Di00M00** si attiva immediatamente l'uscita digitale **Do00M00** ed il valore di tempo nella variabile **VarOut** è azzerato. Disattivando l''ingresso digitale **Di00M00** il timer inizia il conteggio del tempo, il valore di tempo trascorso dalla disattivazione è trasferito nella variabile **VarOut**. Trascorso il tempo l'uscita digitale **Do00M00** si disattiva. +------------------------------------------------------------------+ | **Definizione variabili** | +------------------------------------------------------------------+ | |image1| | +------------------------------------------------------------------+ **Esempio LD** *(PTP115A100, eTOF_LD)* |image2| **Esempio IL** .. code-block:: none CAL FBeTOF (* Call the eTOF function block *) LD Di00M00 ST FBeTOF.IN (* Transfer the digital input to timer input *) LD 1000 ST FBeTOF.PT (* Set the delay time *) LD FBeTOF.Q ST Do00M00 (* When time is passed the digital output is set *) LD FBeTOF.ET ST OutValue (* The counting time is copied to variable *) eTON, Timer On ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |image3| +----------+------------------+ | **Type** | **Library** | | | | +----------+------------------+ | FB | eLLabStdLib_B000 | +----------+------------------+ Questo blocco funzione esegue la temporizzazione sulla attivazione, attivando l'ingresso **IN** inizia il conteggio e dopo il tempo definito **PT** espresso in mS, si attiva l'uscita **Q**. Sulla uscita **ET** viene ritornato il tempo trascorso dalla attivazione dell'ingresso espresso in mS. Disattivando l'ingresso **IN** l'uscita **Q** si disattiva istantaneamente ed il valore di tempo su uscita **ET** si azzera. +-----------------------------------+-----------------------------------+ | **IN** (BOOL) | Ingresso timer, attivandolo | | | inizia il conteggio e dopo il | | | tempo definito in PT, si attiva | | | l'uscita Q. Disattivandolo | | | l'uscita Q si disattiva | | | immediatamente ed il tempo in | | | uscita ET si azzera. | +-----------------------------------+-----------------------------------+ | **PT** (UDINT) | Preset tempo, definisce il tempo | | | di ritardo dalla attivazione | | | dell'ingresso IN alla attivazione | | | dell'uscita Q, espresso in mS. | +-----------------------------------+-----------------------------------+ | **Q** (BOOL) | Uscita timer, si attiva dopo il | | | tempo definito in PT dalla | | | attivazione dell'ingresso IN e si | | | disattiva su disattivazione | | | ingresso IN. | +-----------------------------------+-----------------------------------+ | **ET** (UDINT) | Tempo timer, inizia conteggio da | | | attivazione ingresso IN, | | | raggiunto tempo impostato in PT | | | si arresta conteggio. Si azzera | | | su disattivazione ingresso IN, | | | espresso in mS. | +-----------------------------------+-----------------------------------+ **Esempi** """"""""""""""""""""""""""""""""""""" Su attivazione dell'ingresso digitale **Di00M00** dopo 1 S (1000 mS) viene attivata l'uscita digitale **Do00M00**. Disattivando l'ingresso digitale **Di00M00** l'uscita digitale **Do00M00** si disattiva immediatamente. +--------------------------------------------------------------------------+ | **Definizione variabili** | +--------------------------------------------------------------------------+ | |image4| | +--------------------------------------------------------------------------+ **Esempio LD** *(PTP115A100, eTON_LD)* |image5| **Esempio IL** .. code-block:: none CAL FBeTON (* Call the eTON function block *) LD Di00M00 ST FBeTON.IN (* Transfer the digital input to timer input *) LD 1000 ST FBeTON.PT (* Set the delay time *) LD FBeTON.Q ST Do00M00 (* When time is passed the digital output is set *) LD FBeTON.ET ST OutValue (* The counting time is copied to variable *) **Esempio ST** .. code-block:: none FBeTON(PT:=1000); (* Call the eTON function block *) FBeTON.IN:=Di00M00; (* Transfer the digital input to timer input *) OutValue:=FBeTON.ET; (* The counting time is copied to variable *) Do00M00:=F_eTON.Q; (* When time is passed the digital output is set *) eTP, Timer pulse ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ |image6| +----------+------------------+ | **Type** | **Library** | | | | +----------+------------------+ | FB | eLLabStdLib_B000 | +----------+------------------+ Questo blocco funzione esegue la temporizzazione su impulso di attivazione, attivando l'ingresso **IN** l'uscita **Q** si attiva, in uscita **ET** è ritornato il tempo trascorso (in mS) dall'impulso di attivazione. Raggiunto il tempo impostato **PT** (in mS), indipendentemente dallo stato dell'ingresso **IN**, l'uscita **Q** si azzera, mentre il tempo in uscita su **ET** si azzera solo se ingresso **IN** non è più attivo. +-----------------------------------+-----------------------------------+ | **IN** (BOOL) | Ingresso timer, attivandolo si | | | attiva l'uscita Q ed inizia il | | | conteggio, dopo il tempo definito | | | in PT indipendentemente dallo | | | stato dell'ingresso IN, l'uscita | | | Q si azzera. | +-----------------------------------+-----------------------------------+ | **PT** (UDINT) | Preset tempo, definisce il tempo | | | di attivazione dell'uscita Q, | | | espresso in mS. | +-----------------------------------+-----------------------------------+ | **Q** (BOOL) | Uscita timer, si attiva | | | all'attivazione dell'ingresso IN | | | per il tempo definito in PT. | +-----------------------------------+-----------------------------------+ | **ET** (UDINT) | Tempo timer, inizia conteggio da | | | attivazione ingresso IN, | | | raggiunto tempo impostato in PT | | | si arresta conteggio, espresso in | | | mS. | +-----------------------------------+-----------------------------------+ **Esempi** """""""""""""""""""""""""""""""""" Il timer è presettato a 5 secondi (5000 mS). Attivando l'ingresso digitale **Di00M00** si attiva immediatamente l'uscita digitale **Do00M00** ed il valore di tempo nella variabile **VarOut** inizia il conteggio. Raggiunto il tempo definito 5 secondi, l'uscita **Do00M00** si azzera mentre il valore di tempo nella variabile **VarOut** rimane bloccato sul valore di preset (5000 mS) sino alla disattivazione dell'ingresso **Di00M00**. Disattivando l'ingresso digitale **Di00M00** durante la temporizzazione non si hanno ripercussioni nè sullo stato dell'uscita **Do00M00**, nè sul valore della variabile **VarOut**. +-------------------------------------------------------------------------+ | **Definizione variabili** | +-------------------------------------------------------------------------+ | |image7| | +-------------------------------------------------------------------------+ **Esempio LD** *(PTP115A100, eTP_LD)* |image8| **Esempio IL** .. code-block:: none CAL FBeTP (* Call the eTP function block *) LD Di00M00 ST FBeTP.IN (* Transfer the digital input to timer input *) LD 5000 ST FBeTP.PT (* Set the delay time *) LD FBeTP.Q ST Do00M00 (* When time is passed the digital output is set *) LD FBeTP.ET ST OutValue (* The counting time is copied to variable *) **Esempio ST** .. code-block:: none FBeTP(PT:=5000); (* Call the eTP function block *) FBeTP.IN:=Di00M00; (* Transfer the digital input to timer input *) OutValue:=FBeTP.ET; (* The counting time is copied to variable *) Do00M00:=FBeTP.Q; (* When time is passed the digital output is set *) .. |image0| image:: media/image1.jpg :width: 0.75972in :height: 0.70833in .. |image1| image:: media/image2.jpg :width: 7.08681in :height: 0.52361in .. |image2| image:: media/image3.jpg :width: 7.08681in :height: 1.06319in .. |image3| image:: media/image4.jpg :width: 0.74028in :height: 0.72014in .. |image4| image:: media/image5.jpg :width: 7.08681in :height: 0.53542in .. |image5| image:: media/image6.jpg :width: 7.08681in :height: 1.08681in .. |image6| image:: media/image7.jpg :width: 0.72014in :height: 0.69653in .. |image7| image:: media/image8.jpg :width: 7.08681in :height: 0.53542in .. |image8| image:: media/image9.jpg :width: 7.08681in :height: 1.06319in