Scrittura del codice di controllo dell'uscita impulsi

È possibile accedere al registro dati speciale in cui sono memorizzati i codici di controllo del contatore veloce e dell'uscita ad impulsi con la variabile di sistema sys_wHscOrPulseControlCode. (La variabile di sistema sys_wHscOrPulseControlCode corrisponde al registro dati speciale DT90052.)

Operazioni eseguite dal codice di controllo dell'uscita ad impulsi:

Le impostazioni del codice di controllo per ciascun canale possono essere monitorate usando le variabili del sistema sys_wHscChannelxControlCode o sys_wPulseChannelxControlCode (ove x=numero di canale).Le impostazioni di tale variabile di sistema restano invariate fino a quando viene eseguita un'altra operazione di impostazione.
NOTA
  • L'esecuzione di uno stop uscita impulsi può avere per conseguenza che il valore corrente all'uscita del PLC sia diverso dal valore corrente all'ingresso del motore. Per tale motivo, dopo che l'uscita ad impulsi ha effettuato lo stop, si deve eseguire un Home.
  • L'impostazione dell'ingresso near home non è possibile se il conteggio è proibito o se viene effettuato un reset del software.

Impostazione/reset dell'ingresso near home

Per decelerare il moto durante l'avvicinamento alla posizione di home, si deve stabilire un ingresso near home e mettere il bit 4 del registro dati speciali nel quale è memorizzato il codice di controllo per l'uscita degli impulsi (sys_wHscOrPulseControlCode) prima su TRUE e poi di nuovo su FALSE. Il bit near home viene mantenuto. Per poter impostare l'ingresso near home una seconda volta durante un Home Return (ritorno alla posizione iniziale), impostate questo bit su FALSE subito dopo averlo impostato su TRUE.

  1.  (1) Velocità iniziale e finale
  2.  (2) Velocità target
  3.  (3) Ingresso near home: TRUE
  4.  (4) Ingresso home: TRUE
  5.  (5) L’ingresso home può essere attivato in qualsiasi momento.

Prosecuzione/arresto dell'emissione di impulsi (stop uscita impulsi)

L'uscita ad impulsi si arresta impostando il bit 3 del registro contenente il codice di controllo dell'uscita impulsi (sys_wHscOrPulseControlCode) su TRUE. La possibilità di uno stop uscita impulsi dovrebbe essere prevista in ogni programma facente che utilizza istruzioni per l'uscita ad impulsi. Per proseguire l'uscita ad impulsi reimpostare il bit 3 su FALSE.

Abilitazione/disabilitazione delle operazioni di conteggio

Y*

Uscita ad impulsi

(1)

Valore corrente

(2)

1

Quando il bit 1 del codice di controllo è impostato su TRUE, il conteggio è proibito e il valore corrente mantiene il suo valore attuale. Il conteggio prosegue quando il bit 1 viene resettato su FALSE.

Reset del valore corrente (reset software) del contatore veloce

Y*

Uscita ad impulsi

(1)

Valore corrente

(2)

Bit 0 del codice di controllo dell'uscita impulsi (reset software)

Quando il bit 0 del codice di controllo è impostato su TRUE, viene eseguito un reset software del valore corrente di conteggio che viene posto a 0. Il valore corrente resta al valore 0 finché il bit 0 non viene resettato su FALSE.

Cancellazione delle istruzioni contatore veloce e controllo posizionamento (solo FP0R

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.

Descrizione per FP-Sigma

I bit 0–15 del codice di controllo vengono allocati in gruppi di quattro. L'impostazione dei bit in ciascun gruppo è rappresentata da un numero esadecimale (p.es. 00020000 0000 1001 = 16#2009).

Gruppo IV

(1)

Numero di canale (canale n: 16#n)

Gruppo III

0 (fisso)

Gruppo II

(2)

Ingresso near home (bit 4)

0: FALSE

1: TRUE

Gruppo I

(3)

Uscita ad impulsi (bit 3)

0: continua

1: stop

(4)

0 (bit 2, fisso)

(5)

Conta (bit 1)

0: permetti

1: proibisci

(6)

Resetta valore corrente su 0 (bit 0)

0: no

1: sì

Esempio: 16#2009

Gruppo

Valore

Descrizione

IV

2

Numero di canale: 2

III

0

(fisso)

II

0

Ingresso near home: FALSE

I

9

9 esadec. corrisponde a 1001 binario

Uscita ad impulsi: stop (bit 3)

1

(bit 2, fisso)

0

Conta: permetti (bit 1)

0

Resetta valore corrente su 0: sì (bit 0)

1

Descrizione per FP-X

Gruppo IV

(1)

Numero di canale (canale n: 16#n)

Gruppo III

(2)

1 (fisso)

Gruppo II

(3)

Ingresso near home (bit 4) (vedere la nota)

0: FALSE

1: TRUE

Gruppo I

(4)

Uscita ad impulsi (bit 3)

0: continua

1: stop

(5)

Conta (bit 1)

0: permetti

1: proibisci

(6)

Resetta valore corrente su 0 (bit 0)

0: no

1: sì

Esempio: 16#2109

Gruppo

Valore

Descrizione

IV

2

Numero di canale: 2

III

1

(fisso)

II

0

Ingresso near home: FALSE

I

9

9 esadec. corrisponde a 1001 binario

Uscita ad impulsi: stop (bit 3)

1

(bit 2 fisso)

0

Conta: permetti (bit 1)

0

Resetta valore corrente su 0: sì (bit 0)

1

Descrizione per FP0R

I bit 0–15 del codice di controllo vengono allocati in gruppi di quattro. L'impostazione dei bit in ciascun gruppo è rappresentata da un numero esadecimale (p.es. 00020001 0000 1001 = 16#2109).

Gruppo IV

(1)

Numero di canale (canale n: 16#n)

Gruppo III

1 (fisso)

Gruppo II

(2)

Richiesta inizio controllo di posizione

0: disabilitato

1: abilitato

(3)

Richiesta stop decelerato

0: disabilitato

1: abilitato

(4)

Ingresso near home (bit 4) (vedere la nota)

0: FALSE

1: TRUE

Gruppo I

(5)

Uscita ad impulsi (bit 3)

0: continua

1: stop

(6)

Cancella funzioni controllo uscita ad impulsi in esecuzione (bit 2)

0: continua

1: stop

(7)

Conta (bit 1)

0: permetti

1: proibisci

(8)

Resetta valore corrente su 0 (bit 0)

0: no

1: sì

Esempio: 16#2109

Gruppo

Valore

Descrizione

IV

2

Numero di canale: 2

III

1

(fisso)

II

0

Richiesta inizio controllo di posizione: disabilitata

Richiesta stop decelerato: disabilitata

Ingresso near home: FALSE

I

9

9 esadec. corrisponde a 1001 binario

Uscita ad impulsi: stop (bit 3)

1

Cancella funzioni controllo uscita ad impulsi in esecuzione (bit 2)

0

Conta: permetti (bit 1)

0

Resetta valore corrente su 0: sì (bit 0)

1

Descrizione per FP0, FP-e

I bit 0–15 del codice di controllo vengono allocati in gruppi di quattro e ciascun gruppo contiene le impostazioni per un canale. L'impostazione dei bit in ciascun gruppo è rappresentata da un numero esadecimale (p.es. 0000 0000 1001 0000 = 16#90).

Gruppo

II

I

Canale

1

0

  1.  (1) Uscita ad impulsi (bit 3)

    0: continua

    1: stop

  2.  (2) Ingresso near home (bit 2) (vedere la nota)

    0: FALSE

    1: TRUE

  3.  (3) Conta (bit 1)

    0: permetti

    1: proibisci

  4.  (4) Resetta valore corrente su 0 (bit 0)

    0: no

    1: sì

Esempio: 16#90

Gruppo

Valore

Descrizione

II

9

Numero di canale: 1

9 esadec. corrisponde a 1001 binario

Uscita ad impulsi: stop (bit 3)

1

Ingresso near home: FALSE (bit 2)

0

Conta: permetti (bit 1)

0

Resetta valore corrente su 0: sì (bit 0)

1

I

0

Esempio: abilitare l'ingresso near home per il canale 2 (FP-SIGMA)

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
	 bEnableNearHome: BOOL:=FALSE;
	END_VAR
	VAR CONSTANT
		PLS_CH2_ENABLE_NEAR_HOME: WORD:=16#2010;
			(*Enables near home input for channel 2*)
		PLS_CH2_CONTINUE: WORD:=16#2000;
			(*Disables near home input for channel 2
and starts deceleration*)
	END_VAR

Corpo LD

L’ingresso near home è abilitato per il canale 2 durante le operazioni di Home.

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 8 ;
        NETWORK_BODY
B(B_VARIN,,PLS_CH2_ENABLE_NEAR_HOME,20,2,22,4,);
B(B_VARIN,,PLS_CH2_CONTINUE,20,6,22,8,);
B(B_F,E_MOVE!,Instance,22,0,28,4,,?DEN?D?AENO?C);
B(B_VAROUT,,sys_wHscOrPulseControlCode,28,2,30,4,);
B(B_F,E_MOVE!,Instance,22,4,28,8,,?DEN?D?AENO?C);
B(B_VAROUT,,sys_wHscOrPulseControlCode,28,6,30,8,);
B(B_CONTACT,,bEnableNearHome,4,1,6,3,R);
L(7,2,7,6);
L(1,2,4,2);
L(6,2,22,2);
L(7,6,22,6);
L(1,0,1,8);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Corpo ST

if DF(bEnableNearHome) then
    PLS_CH2_ENABLE_NEAR_HOME:=sys_wHscOrPulseControlCode;
    PLS_CH2_CONTINUE:=sys_wHscOrPulseControlCode;
end_if;

Esempio: esecuzione di uno stop uscita impulsi per il canale 0 (FP0, FP-e, FP-SIGMA)

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.

Corpo LD

Per il canale 0 viene effettuato uno stop uscita impulsi dell'uscita ad impulsi.

Corpo ST

if DF(bStopPulseOutput) then
    PLS_CH2_STOP_PULSE_OUTPUT:=sys_wHscOrPulseControlCode;
    PLS_CH2_CONTINUE:=sys_wHscOrPulseControlCode;
end_if;
NOTA

L'esecuzione di uno stop uscita impulsi può avere per conseguenza che il valore corrente all'uscita del PLC sia diverso dal valore corrente all'ingresso del motore. Per tale motivo, dopo che l'uscita ad impulsi ha effettuato lo stop, si deve eseguire un Home.

L'ultima revisione: 2021-06-29Feedback su questa paginaPanasonic hotline