Avvio tabella di posizionamento
Questa istruzione avvia l'operazione di posizionamento secondo i dati specificati nella memoria di posizionamento (area tabella di posizionamento). Sono possibili le seguenti operazioni:
Controllo E (punto finale)
Controllo P (punto di passaggio) (P ® E)
Controllo C (punto di continuazione) (C ® E)
Controllo J (punto di velocità) (J ® E)
Interpolazione lineare
Ingresso
Numero di canale
Configurator PMX: SYS_PMX_CHANNEL_0–SYS_PMX_CHANNEL_3
Configurator PM7: SYS_PM7_AXIS_1–SYS_PM7_AXIS_8
Numero tabella: 1–20
Se un operando è un valore fuori intervallo, si verifica un errore di calcolo.
L'operazione di stop ha la priorità se le condizioni di stop di sistema, stop di emergenza, stop di limite e stop decelerato sono state soddisfatte.
Un errore di calcolo si verifica se il registro di sistema di un canale specificato è diverso da Uscita ad impulsi [Funzionamento tabella].
Un errore autodiagnosi (errore operazione di posizionamento) si verifica quando il valore impostato o il valore della memoria di posizionamento (area di impostazione degli assi) è anormale.
Quando il canale da avviare è già operativo, il controllo posizionamento termina.
Se per s3_OutputCalculationOnly si specifica simulazione - no impulsi in uscita, viene eseguito esclusivamente il calcolo della tabella. Quando si avvia l'operazione di posizionamento per lo stesso canale e la stessa tabella dalla scansione successiva dopo aver eseguito il calcolo, il tempo di avviamento del controllo posizionamento viene ridotto.
se l'area specificata utilizzando il registro indice eccede il limite.
se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.
se l'Uscita ad impulsi [Funzionamento tabella] non è stata impostata nel registro di sistema.
se l'area specificata utilizzando il registro indice eccede il limite.
se un valore specificato per un parametro è fuori dall'intervallo utilizzabile.
se l'Uscita ad impulsi [Funzionamento tabella] non è stata impostata nel registro di sistema.
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
bStartPositioning: BOOL:=FALSE;
iChannel0: INT:=0;
END_VAR
Quando la variabile bStartPositioning è impostata su TRUE, la funzione viene eseguita.
BODY
WORKSPACE
NETWORK_LIST_TYPE := NWTYPELD ;
ACTIVE_NETWORK := 0 ;
END_WORKSPACE
NET_WORK
NETWORK_TYPE := NWTYPELD ;
NETWORK_LABEL := ;
NETWORK_TITLE := ;
NETWORK_HEIGHT := 7 ;
NETWORK_BODY
B(B_F,F380_Positioning_Start!,,13,1,27,7,,?DEN?Ds1_Channel?Ds2_TableNumber?Ds3_OutputCalculationOnly?AENO);
B(B_CONTACT,,bStartPositioning,6,2,8,4,R);
B(B_VARIN,,iChannel0,11,3,13,5,);
B(B_VARIN,,3,11,4,13,6,);
B(B_VARIN,,0,11,5,13,7,);
L(1,3,6,3);
L(8,3,13,3);
L(1,0,1,7);
END_NETWORK_BODY
END_NET_WORK
END_BODY
IF DF(bStartPositioning) then
F380_Positioning_Start(s1_Channel := iChannel0,
s2_TableNumber := 3,
s3_OutputCalculationOnly := 0);
END_IF;