Questo blocco funzione esegue un movimento con una velocità di destinazione specificata.
Nome della libreria e spazio dei nomi
Nome della libreria: PLCopen MC part 1
Spazio dei nomi: PLCO
Ingresso |
Tipo di dati |
Descrizione |
---|---|---|
Axis |
Axis_Ref |
Riferimento all'asse per cui deve essere eseguito il blocco funzione. |
Execute |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. Un fronte di salita dell'ingresso Execute avvia il blocco funzione. Il blocco funzione continua a essere eseguito e l'uscita Busy è impostata a TRUE. È possibile riavviare questo blocco funzione durante l'esecuzione. I valori di destinazione vengono sovrascritti dai nuovi valori nel momento in cui si verifica il fronte di salita. |
Velocity |
LREAL |
Campo valori: -2147483648...2147483647 Valore predefinito: 0 Velocità di destinazione in unità definite dall'utente. Valori negativi per la velocità di destinazione invertono la direzione del movimento. |
Acceleration |
LREAL |
Intervallo di valori: qualsiasi valore positivo LREAL Valore predefinito: 0 Accelerazione in unità definite dall'utente. Il valore su questo ingresso è utilizzato per raggiungere la velocità di destinazione specificata (accelerazione o decelerazione). |
Jerk |
LREAL |
Intervallo di valori: qualsiasi valore positivo LREAL e zero oValori positivi: limite jerk (in unità/s3) (max jerk con cui si modifica l'accelerazione). oZero: limite jerk disattivato. L'accelerazione passa istantaneamente da zero al valore massimo (jerk infinito). Valore predefinito: 0 |
Direction |
Valore predefinito: PositiveDirection Senso di movimento. Valori possibili: oValore PositiveDirection oValore NegativeDirection Per una descrizione dei valori, vedere MC_Direction. |
|
BufferMode |
Valore predefinito: Aborting Modalità buffer. Valori possibili: oValore Aborting oValore Buffered oValore BlendingLow oValore BlendingPrevious oValore BlendingNext oValore BlendingHigh Per una descrizione dei valori, vedere MC_Buffer_Mode. |
Uscita |
Tipo di dati |
Descrizione |
---|---|---|
InVelocity |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. oFALSE: valore di destinazione non raggiunto. oTRUE: valore di destinazione raggiunto. |
Busy |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. oFALSE: il blocco funzione non è in fase di esecuzione. oTRUE: il blocco funzione è in fase di esecuzione. NOTA: L'uscita Busy rimane TRUE anche se la velocità di destinazione è stata raggiunta o Execute diventa FALSE. L'uscita Busy viene impostata a FALSE non appena viene eseguito un altro blocco funzione come MC_Stop. |
Active |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. oFALSE: il blocco funzione non controlla il movimento dell'asse. oTRUE: il blocco funzione controlla il movimento dell'asse. |
CommandAborted |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. oFALSE: l'esecuzione non è stata interrotta. oTRUE: l'esecuzione è stata interrotta da un altro blocco funzione. |
Error |
BOOL |
Campo valori: FALSE, TRUE. Valore predefinito: FALSE. oFALSE: il blocco funzione è in esecuzione, nessun errore è stato rilevato durante l'esecuzione. oTRUE: è stato rilevato un errore nell'esecuzione del blocco funzione. |
ErrorID |
ET_Result |
Questa enumerazione fornisce informazioni diagnostiche. |
L'uscita Busy rimane TRUE anche se è stata raggiunta la velocità di destinazione oppure se l'ingresso Execute viene impostato a FALSE. L'uscita Busy viene impostata a FALSE non appena viene eseguito un altro blocco funzione come MC_Stop.
Se si utilizza MC_MoveVelocity per spostare un asse continuamente nella stessa direzione, definire questo asse come asse modulo. Per ulteriori informazioni, vedere Intervallo di movimento e calcolo della posizione con numeri in virgola mobile.
ErrorId |
Causa |
Correttivo |
---|---|---|
AccelerationOutOfRange |
Il valore all'ingresso Acceleration è inferiore o uguale a zero. |
Fornire un valore positivo (maggiore di zero) all'ingresso Acceleration. |
AxisInErrorStop |
Impossibile eseguire il blocco funzione in quanto è stato rilevato un errore dell'asse e l'asse è nello stato operativo ErrorStop. |
Verificare che l'asse non sia nello stato operativo ErrorStop quando si cerca di avviare un nuovo blocco funzione. |
AxisInvalid |
Nessun asse è specificato per l'ingresso Axis oppure l'asse specificato non supporta la funzione richiesta. Per MC_Touchprobe e MC_AbortTrigger: l'asse specificato non supporta la cattura. |
Collegare l'asse per cui si deve eseguire il blocco funzione all'ingresso Axis. Per MC_Touchprobe e MC_AbortTrigger: utilizzare un asse che supporti la cattura. |
AxisIsDisabled |
Impossibile eseguire il blocco funzione in quanto l'asse è nello stato operativo Disabled. |
Verificare che l'asse non sia nello stato operativo Disabled quando si cerca di avviare un nuovo blocco funzione. |
AxisIsStopping |
Impossibile eseguire il blocco funzione in quanto un blocco funzione MC_Stop è attivo e l'asse è nello stato operativo Stopping. |
Verificare che l'asse non sia nello stato operativo Stopping quando si cerca di avviare un nuovo blocco funzione. |
DirectionInvalid |
Il valore all'ingresso Direction non è valido. |
Utilizzare solo gli elementi seguenti di MC_Direction: oPer MC_MoveAbsolute: oPositiveDirection oNegativeDirection oShortestWay oPer MC_MoveVelocity: oPositiveDirection oNegativeDirection |
IfMotionCommandNotSupported |
L'asse collegato non supporta tutte le funzioni richieste. |
Verificare che l'asse collegato implementi l'interfaccia IF_MotionCommand della libreria MotionInterface. |
JerkOutOfRange |
Il valore all'ingresso Jerk è inferiore a zero. |
Utilizzare un valore positivo o zero all'ingresso Jerk. |
NoBusCommunication |
Il bus di campo non è nello stato Operational (Sercos: fase 4). |
Verificare che il bus di campo sia nello stato Operational (Sercos: fase 4) al fronte di salita dell'ingresso Execute e durante l'esecuzione. |
Ok |
messaggio di stato |
- |
OutOfMemory |
Memoria insufficiente per il comando di movimento. |
Ridurre la memoria richiesta dall'applicazione. |
UnexpectedReturnValue |
Valore restituito non determinabile dal sistema. |
Rivolgersi al rappresentante Schneider Electric. |