Skip to main content

Leggere lo stato dell'interpolatore

Vedi il CNC13_ReadInterpolatorState.project progetto di esempio nella directory di installazione di CODESYS sotto ..\CODESYS SoftMotion\Examples.

Il progetto di esempio mostra come leggere lo stato dell'interpolatore CNC. Lo stato viene utilizzato per visualizzare la posizione della macchina nelle coordinate della macchina e del decodificatore

Struttura dell'applicazione

La struttura è tipica delle applicazioni CNC. Il codice G viene letto nell'attività in background. L'interpolazione viene eseguita nel task del bus

Durante l'interpolazione, SMC_ReadAdditionalIpoState blocco funzionale chiamato.

Non appena inizia l'interpolazione, Valid l'output è TRUE. La posizione dell'interpolatore, che viene sempre emessa nel sistema di coordinate della macchina (MCS), viene quindi convertita utilizzando l'attuale sistema di coordinate del decodificatore (DCS) e

SMC_V3_Set(pos_MCS, ipo.piSetPosition.dX, ipo.piSetPosition.dY, ipo.piSetPosition.dZ);

readState(
    Enable:= TRUE,
    ipo:= ipo);

IF readState.Valid THEN
    SMC_PosInfo_Trf_Inverse(
        piOut:= piMCS_to_DCS,
        piIn:= readState.State.DCS,
        eOriConv:= readState.State.OriConv);

     SMC_PosInfo_Trf_Apply(
        vDst:= pos_DCS,
        piTrf:= piMCS_to_DCS,
        vSrc:= pos_MCS,
        eOriConv:= readState.State.OriConv);
END_IF

Per ulteriori informazioni sul sistema di coordinate del decodificatore, vedere quanto segue: Spostamento, rotazione e ridimensionamento del sistema di coordinate.

Messa in servizio

  1. Crea l'applicazione e scaricala su un controller.

  2. Aprire la visualizzazione.

  3. Avviare l'applicazione e premere il pulsante Avviare pulsante della visualizzazione.

    È possibile tracciare il movimento delle coordinate X e Y in MCS e DCS.