Skip to main content

Esempio CNC 08: Utilizzo di Assi Addizionali

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

Questo esempio estende il CNC01_direct.projektprogetto descritto inEsempio CNC 01: Generazione diretta di OutQueue. Dimostra come utilizzare assi aggiuntivi. Come nell'esempio CNC 01, vengono raggiunte quattro posizioni nel piano X/Y con velocità e accelerazione definite. Inoltre, l'asse aggiuntivo A è azionato durante ogni movimento. Il programma imposta due punti di commutazione del percorso sul percorso.

Modifica di un programma CNC nell'editor

  1. Apri il CNC01_direct.project project dalla directory di installazione di CODESYS.

  2. Nel progetto, aprire il programma CNC Example.

  3. Aggiungere le posizioni per l'asse aggiuntivo A ai comandi di spostamento:

    Esempio 49. Editore CNC
    N0  G01 X82.9 Y 8.9 A20 F50 E30 E-30
    N10 G02 X84.9 Y84.6 A40 R100 H12 L10
    N20 G01 X 6.6 Y25.7 A60 H-1 O0.8
    N30 G03 X54.6 Y49.7 A80 R100


    sm_img_cnc_example8_1.png

Creazione di un'interfaccia dell'azionamento e configurazione del PLC

  1. Inserisci un'unità virtuale aggiuntiva A_Drive sotto il Pool di assi generali SoftMotion.

  2. Impostare i parametri come segue:

    sm_img_cnc_example8_2.png

Modifica di un programma IEC

  1. Aprire il programma CFC Ipo.

  2. Attiva l'unità aggiunta in precedenza A_Drive con il MC_Power blocco funzione.

    sm_img_cnc_example8_3.png
  3. In questo esempio, un semplice asse di orientamento (A_Drive) deve essere controllato con l'asse aggiuntivo A. Per questo motivo non sono necessari più moduli di trasformazione. La posizione nominale dell'interpolatore corrisponde direttamente alla posizione nominale dell'azionamento e viene applicata tramite il SMC_POSINFO selettore con il SMC_ControlAxisByPos blocco funzione. L'applicazione non garantisce che le uscite dell'interpolatore siano continue. Ad esempio, la posizione dell'asse aggiuntivo termina in un punto diverso da quello in cui inizia. Pertanto, è necessario attivare l'evitare il gap (bAvoidGaps, fGapVelocity, fGapAcceleration, e fGapDeceleration). Quindi collegare il bStopIpo uscita al bEmergency_Stop ingresso dell'interpolatore e collegare l'uscita dell'interpolatore iStatus ai rispettivi ingressi dei blocchi funzione di controllo dell'asse.

    Prestare attenzione soprattutto al corretto ordine dei blocchi funzione durante la programmazione con CFC.

    sm_img_cnc_example8_4.png

La messa in produzione

Compila e avvia il programma creato. Il programma esegue il movimento del CNC non appena il Execute è stato impostato l'ingresso dell'interpolatore. Dopo che il programma è stato eseguito completamente, è possibile applicare un nuovo fronte di salita per riavviarlo.

Durante l'esecuzione del programma CNC, annotare la posizione dell'asse aggiuntivo A (piSetPosition.dA) che viene mostrato nella visualizzazione della POU di interpolazione.