Skip to main content

Valori effettivi, valori impostati e tempo morto

Questa pagina risponde alla domanda su quando i valori effettivi e i valori impostati vengono ricevuti e inviati e in che modo sono correlati al tempo morto. Per semplicità, ci concentriamo sulla posizione, ma lo stesso vale per altri valori come la velocità o la coppia. Ci concentriamo anche su EtherCAT. Il comportamento è simile per altri bus di campo. (Nota che assumiamo la configurazione predefinita e consigliata FrameAtTaskStart = TRUE.)

Quando vengono ricevuti i valori effettivi?

The actual position (<DriveA>.fActPosition) is received at the beginning of the current bus task cycle. It is the actual position of the drive at the time of the previous EtherCAT SYNC event.

Nel ciclo di attività del bus i, viene ricevuto il frame EtherCAT inviato nel precedente ciclo di attività del bus i-1. Questo frame contiene la posizione effettiva che è stata bloccata dall'unità all'evento SYNC

_sm_img_dead_time.png

Quando vengono inviati i valori impostati?

I valori impostati calcolati nel ciclo di attività del bus corrente i vengono inviati all'unità nel seguente ciclo di attività del bus i+1 e applicati dall'unità all'evento SYNC i+1. Vedere il diagramma riportato sopra.

Cos'è il tempo morto, come viene stimato e come viene utilizzato?

Come regola generale, il tempo morto è importante ogni volta che è necessario eseguire un'azione esattamente quando l'azionamento raggiunge una posizione. Il tempo morto è importante anche per determinare con precisione la posizione del motore in un determinato momento. Gli esempi includono l'applicazione della colla ad alta velocità o l'esecuzione di una sonda tattile nel PLC con ingressi digitali ad alta precisione collegati al

Definizione del tempo morto

Il tempo morto è il tempo impiegato dall'azionamento per raggiungere effettivamente la posizione impostata inviata dal PLC. Ciò significa che è l'intervallo di tempo fActPosition e il fSetPosition, all'inizio del ciclo di attività del bus corrente. Il tempo morto può essere configurato nell'editor generale dell'unità (Scheda: Generale) o utilizzando il Parametro MC_WRITE blocco funzionale con il numero di parametro 1070 (fSetActTimeLagCycles).

. Il tempo morto è dato dalla somma dei seguenti tempi:
  • Il tempo necessario per inviare la posizione impostata all'azionamento

  • Il tempo necessario al controller dell'azionamento per raggiungere la posizione impostata

  • Il tempo necessario per ricevere la posizione effettiva dal convertitore

Stima del tempo morto

Il tempo morto può essere stimato utilizzando SMC_EstimateDeadtime blocco funzionale. L'azionamento deve essere spostato a velocità costante e deve essere utilizzata la mediana o la media di diverse misurazioni del tempo morto

In alternativa, il tempo morto può essere stimato utilizzando l'editor di tracce. Per ulteriori informazioni, vedere quanto segue: Determinazione dei tempi morti del sistema

Utilizzo del tempo morto

Il tempo morto viene utilizzato nelle seguenti funzionalità. Se utilizzate una di queste funzioni e avete bisogno di un'elevata precisione, assicuratevi di determinare e configurare il tempo morto.

  • Quando si passa dalla modalità controller alla modalità controller SMC_position

    Per ulteriori informazioni, vedere quanto segue: Casi d'uso standard

  • In modalità controller SMC_velocity per calcolare la posizione impostata a partire dalla posizione effettiva e dalla velocità impostata

  • In modalità controller SMC_torque per calcolare la posizione impostata partendo dalla posizione effettiva e dalla velocità effettiva

  • Se la supervisione del ritardo di posizione del software è attivata

  • Nel SMC_GetTravelTime blocco funzionale dell'input ValueSource ha il valore MC_SOURCE.ACT

  • Nel SMC_DigitalCamSwitch_HighPrecision blocco funzionale dell'input ValueSource ha il valore MC_SOURCE.ACT

  • Nel SMC_ETC_InterpolateAxisPosition blocco funzionale (sonda tattile basata su PLC)