EMC2 User Manual Fr

Embed Size (px)

Citation preview

Manuel de lutilisateur V2.3The EMC Team 19 janvier 2011

i

NOTICE : As of 2011-01-16, the French version of the EMC2 documentation is 2 years out of date due to not having a translator available. Its recommended to use the English documentation whenever possible. If you wish to provide updated French translation of EMC2, please contact us. AVIS : Au 2011-01-16, la version franaise de la documentation EMC2 est de 2 ans la date dchance pour ne pas avoir un traducteur disponible. Il est recommand dutiliser la documentation en anglais chaque fois que possible. Si vous souhaitez fournir des mises jour traduction franaise dEMC2, sil vous plat contacteznous. This handbook is a work in progress. If you are able to help with writing, editing, or graphic preparation please contact any member of the writing team or join and send an email to [email protected].

Copyright (c) 2000-9 LinuxCNC.org

ii

Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation ; with no Invariant Sections, no Front-Cover Texts, and one Back-Cover Text : "This EMC Handbook is the product of several authors writing for linuxCNC.org. As you nd it to be of value in your work, we invite you to contribute to its revision and growth." A copy of the license is included in the section entitled "GNU Free Documentation License". If you do not nd the license you may order a copy from Free Software Foundation, Inc. 59 Temple Place, Suite 330 Boston, MA 02111-1307

Table des matiresCouverture Table des matires Avant-propos i 1 3

I

Les concepts

34 4 4 5 5 6 6 9 9

1 Le concept dEMC 1.1 1.2 1.3 1.4 1.5 1.6 1.7 1.8 1.9 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vue densemble de la CNC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Systme dexploitation de lordinateur . . . . . . . . . . . . . . . . . . . . . . . . . . . . Comment marche EMC2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Interfaces utilisateur graphiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Penser comme un oprateur sur CNC . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Modes opratoires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Informations afches . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 11 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

2 Concepts importants 2.1 Contrle de trajectoire 2.1.1 2.1.2 2.1.3 2.1.4 2.2

La planication de trajectoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 Le suivi du parcours . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 La programmation du planicateur . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Planication des mouvements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

G-code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 2.2.1 2.2.2 Vitesse davance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Compensation de rayon doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

2.3 2.4

Prise dorigine machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 Changement doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13

iii

TABLE DES MATIRES

iv

II

Les interfaces utilisateur

1415

3 Linterface graphique AXIS 3.1 3.2

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 Pour commencer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.2.1 Une session typique avec AXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3.3

Elments de la fentre dAXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.3.1 3.3.2 3.3.3 Menu Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 Boutons de la barre doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 Zones dafchage graphique du programme . . . . . . . . . . . . . . . . . . . . . 17 3.3.3.1 Afchage des coordonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 3.3.3.2 Vue du parcours doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.3.3.3 Etendues du programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.3.3.4 Le cne doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.3.3.5 Trac doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3.3.6 Interaction avec lafchage . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3.4 3.3.5 Zone texte dafchage du programme . . . . . . . . . . . . . . . . . . . . . . . . . 19 Contrle manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 3.3.5.1 Le groupe Axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

3.3.5.2 La prise dorigine machine . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.5.3 Toucher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.5.4 Le groupe Broche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.5.5 Le groupe Arrosage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.6 Donnes manuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 3.3.6.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.6.2 Commande MDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.6.3 G-Codes actifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 3.3.7 3.3.8 3.3.9 3.4 3.5 3.6 3.7 3.8 3.9 3.10 3.11 Correcteurs de vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

Correcteur de vitesse de broche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 Vitesse de Jog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

Raccourcis clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 emctop : Afchage de ltat dEMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

mdi : Entre de donnes en texte (MDI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 axis-remote : Commande distance de linterface graphique dAXIS . . . . . . . . . . . 25 hal_manualtoolchange : Dialogue de changement manuel doutil . . . . . . . . . . . . 25

Modules en Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Utiliser AXIS pour contrler un tour CNC . . . . . . . . . . . . . . . . . . . . . . . . . . 25 Conguration avance dAXIS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 Filtres de programme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

3.11.1

TABLE DES MATIRES 3.11.2 3.11.3 3.11.4 3.11.5 3.11.6 La base de donnes des ressources X

v . . . . . . . . . . . . . . . . . . . . . . . . 27

Manivelle de jog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 ~/.axisrc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Editeur externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 Panneau de contrle virtuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 29

4 Linterface TkEMC 4.1 4.2

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 Utiliser TkEMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.2.1 Une session typique avec TkEMC . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

4.3

Elments afchs par TkEMC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.3.1 4.3.2 4.3.3 Boutons principaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 Barre de status des diffrents offsets . . . . . . . . . . . . . . . . . . . . . . . . . 31 Zne dafchage des coordonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3.3.1 Parcours doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 4.3.4 Contrle en automatique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.4.1 Boutons de contrle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.4.2 Zne texte dafchage du programme . . . . . . . . . . . . . . . . . . . . . 32 4.3.5 Contrle en manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.5.1 Touches implicites . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.5.2 Le groupe de boutons Broche . . . . . . . . . . . . . . . . . . . . . . . . 32 4.3.5.3 Le groupe de boutons Arrosage . . . . . . . . . . . . . . . . . . . . . . . 33 4.3.6 Entre manuelle de G-code (MDI) . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.3.6.1 MDI : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.3.6.2 G-Codes actifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 4.3.7 4.3.8 4.3.9 Vitesse de Jog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 Correcteur de vitesse davance travail . . . . . . . . . . . . . . . . . . . . . . . . 34 Correcteur de vitesse de broche . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.4

Raccourcis clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 35

5 Linterface MINI 5.1 5.2 5.3 5.4

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35 Lcran . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Barre de menu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36 Barre de boutons de contrle 5.4.1 5.4.2 5.4.3 5.4.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

MANUEL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 AUTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 MDI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 VITESSE-0 CONTINUER . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

TABLE DES MATIRES 5.4.5 5.4.6 5.5

vi

ABANDON . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 A/U . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Colonne de gauche 5.5.1 5.5.2 5.5.3

Afcheurs de position des axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Correcteur de vitesse travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5.6

Colonne de droite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 5.6.1 5.6.2 5.6.3 5.6.4 Editeur de texte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 Parcours doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Page des outils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 Page des offsets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

5.7

Raccourcis clavier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 5.7.1 5.7.2 5.7.3 Touches courantes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Mode Manuel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 Mode Auto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

5.8

Divers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 47

6 Linterface KEYSTICK 6.1 6.2 6.3

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 Utilisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

III

Lutilisation dEMC2

4950

7 Vue densemble dun centre dusinage 7.1

Composants mcaniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.1.1 Axes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.1.1.1 Axes linaires primaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 7.1.1.2 Axes linaires secondaires . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7.1.1.3 Axes rotatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 7.1.2 7.1.3 7.1.4 7.1.5 7.1.6 7.1.7 7.1.8 7.1.9 7.1.10 Broche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Arrosages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Chargeur de pices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Carrousel doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Changeur doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 Visu des messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

Correcteurs de vitesse davance et de broche . . . . . . . . . . . . . . . . . . . . 51 Bouton deffacement de block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Bouton darrt optionnel du programme . . . . . . . . . . . . . . . . . . . . . . 52

TABLE DES MATIRES 7.2

vii

Composants de contrle et de donnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 7.2.1 7.2.2 7.2.3 7.2.4 7.2.5 7.2.6 7.2.7 7.2.8 7.2.9 7.2.10 7.2.11 7.2.12 7.2.13 7.2.14 7.2.15 Axes linaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Axes rotatifs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Point contrl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Mouvement linaire coordonn . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 Vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

Arrosage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Temporisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Position courante . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 Choix du plan de travail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 carrousel doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Changeur doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Chargeur de pice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Boutons des correcteurs de vitesses . . . . . . . . . . . . . . . . . . . . . . . . . 54 Modes de contrle de trajectoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54

7.3

Interaction de linterprteur avec les boutons . . . . . . . . . . . . . . . . . . . . . . . . 54 7.3.1 7.3.2 7.3.3 Boutons de correction de vitesses . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 Bouton deffacement de block Switch . . . . . . . . . . . . . . . . . . . . . . . . . 54 Bouton darrt optionnel du programme . . . . . . . . . . . . . . . . . . . . 55

7.4

Fichier doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 7.4.1 7.4.2 Fichier doutils au format fraiseuse . . . . . . . . . . . . . . . . . . . . . . . . . . 55 Fichier doutils au format tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56

7.5 7.6

Paramtres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 Systmes de coordonnes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 60

8 Vue densemble du langage 8.1 8.2 8.3

Format dune ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 Numro de ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Les mots 8.3.1 8.3.2 8.3.3 8.3.4 8.3.5 8.3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

Nombres . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Paramtres numrots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 Paramtres nomms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

Expressions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Oprateurs binaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 Fonctions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

8.4

Commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 8.4.1 8.4.2 Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 Enregistrement des mesures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

TABLE DES MATIRES 8.4.3

viii

Log gnral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 8.4.3.1 (LOGOPEN,lename) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 8.4.3.2 (LOGCLOSE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 8.4.3.3 (LOG,. . .) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

8.4.4 8.4.5 8.5 8.6 8.7 8.8

Messages de dboguage

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Paramtres dans les commentaires . . . . . . . . . . . . . . . . . . . . . . . . . . 65 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Rptitions ditems

Ordre des items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Commandes et modes machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 Groupes modaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 68 69

9 Ordre dexcution 10 G-Code : Bonnes pratiques 10.1 10.2 10.3 10.4 10.5 10.6 10.7

Utiliser un nombre de dcimales appropri . . . . . . . . . . . . . . . . . . . . . . . . . 69 Utiliser les espaces de faon cohrente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Prfrer le format centre pour les arcs . . . . . . . . . . . . . . . . . . . . . . . . . . . 69 Placer les codes modaux importants au dbut des programmes . . . . . . . . . . . . . 69 Ne pas mettre trop de choses sur une ligne . . . . . . . . . . . . . . . . . . . . . . . . . 70 Ne pas utiliser les numros de ligne . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

Lorsque plusieurs systmes de coordonnes sont dplacs, envisager le mode vitesse inverse du temps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 71

11 Fichier doutils et compensations 11.1 11.2 11.3 11.4

Fichier doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Compensation doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Compensation de longueur doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 Compensation de rayon doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

11.4.1 12 G Codes 12.1 12.2 12.3 12.4

Compensation de rayon doutil, dtails . . . . . . . . . . . . . . . . . . . . . . . . 72 82

Table rsume du G-code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 G0 : Interpolation linaire en vitesse rapide . . . . . . . . . . . . . . . . . . . . . . . . . 84 G1 : Interpolation linaire en vitesse travail . . . . . . . . . . . . . . . . . . . . . . . . . 84 G2, G3 : Interpolation circulaire en vitesse travail . . . . . . . . . . . . . . . . . . . . . 84 Arc au format centre (format recommand) . . . . . . . . . . . . . . . . . . . . . 85 Arcs au format rayon (format non recommand) . . . . . . . . . . . . . . . . . . 85

12.4.1 12.4.2 12.5 12.6 12.7

G4 : Tempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 G7 : Mode diamtre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 G8 : Mode rayon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

TABLE DES MATIRES 12.8 12.9 G10 L1 : Entre dans la table doutils

ix . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 . . . . . . . . . . . . . . . . 86

G10 L2 : tablissement du systme de coordonnes pice

12.10 G17, G18, G19, G17.1, G18.1, G19.1 : Choix du plan de travail . . . . . . . . . . . . . 87 12.11 G20, G21 : Choix des units machine . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 12.12 G28, G28.1 : Aller une position prdnie . . . . . . . . . . . . . . . . . . . . . . . . . 87 12.13 G30, G30.1 : Aller une position prdnie . . . . . . . . . . . . . . . . . . . . . . . . . 88 12.14 G33, G33.1 : Mouvement avec broche synchronise . . . . . . . . . . . . . . . . . . . . 88 12.15 G38.x : Mesure au palpeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89 12.16 G40, G41, G42, G41.1, G42.1 : Compensation de rayon doutil 12.16.1 12.16.2 . . . . . . . . . . . . . 89

Compensation de rayon doutil depuis une table doutils . . . . . . . . . . . . . 90 Compensation dynamique de rayon doutil . . . . . . . . . . . . . . . . . . . . . 90

12.17 G43, G43.1, G49 : Compensation de longueur doutil . . . . . . . . . . . . . . . . . . . 90 12.17.1 G43, G43.1 : Activation de la compensation de longueur doutil . . . . . . . . . 90 12.17.1.1 43 : Compensation de longueur doutil depuis une table doutils . . . . 90 G 12.17.1.2 43.1 : Compensation dynamique de longueur doutil . . . . . . . . . . . 90 G 12.17.2 G49 : Annulation de la compensation de longueur doutil . . . . . . . . . . . . . 91

12.18 G53 : Mouvement en coordonnes absolues . . . . . . . . . . . . . . . . . . . . . . . . . 91 12.19 G54 G59.3 : Choix du systme de coordonnes . . . . . . . . . . . . . . . . . . . . . . 91 12.20 G61, G61.1, G64 : Types de contrle de trajectoire . . . . . . . . . . . . . . . . . . . . . 91 12.21 G73 : Cycle de perage avec brise copeaux . . . . . . . . . . . . . . . . . . . . . . . . . . 91 12.22 G76 : Cycle de letage prprogramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 12.23 G80 : Rvocation des codes modaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 12.24 Les cycles prprogramms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 12.24.1 12.24.2 12.24.3 12.24.4 12.24.5 12.24.6 12.24.7 12.24.8 12.24.9 Mots communs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93

Mots sticky . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Rptition de cycle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94

Mode de retrait . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Erreurs des cycles prprogramms . . . . . . . . . . . . . . . . . . . . . . . . . . 94 Mouvement prliminaire et Intermdiaire . . . . . . . . . . . . . . . . . . . . . . 95 G81 : Cycle de perage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 G82 : Cycle de perage avec temporisation . . . . . . . . . . . . . . . . . . . . . 96 G83 : Cycle de perage avec dbourrage . . . . . . . . . . . . . . . . . . . . . . . 96

12.24.10 G84 : Cycle de taraudage droite . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 12.24.11 G85 : Cycle dalsage, sans temporisation, retrait en vitesse travail . . . . . . . 96 12.24.12 G86 : Cycle dalsage, arrt de broche, retrait en vitesse rapide . . . . . . . . . 97 12.24.13 G87 : Alsage inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 12.24.14 G88 : Alsage, arrt de broche, retrait en manuel . . . . . . . . . . . . . . . . . 97 12.24.15 G89 : Cycle dalsage, temporisation, retrait en vitesse travail . . . . . . . . . . 97

TABLE DES MATIRES

x

12.25 G90, G91 : Modes de dplacement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 12.26 G90.1, G91.1 : Mode distance (I, J et K) . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 12.27 G92, G92.1, G92.2, G92.3 : Dcalage dorigine des systmes de coordonnes . . . . . 98 12.28 G93, G94, G95 : Choix des modes de vitesse . . . . . . . . . . . . . . . . . . . . . . . . 98 12.29 G96, G97 : Modes de contrle de la broche . . . . . . . . . . . . . . . . . . . . . . . . . 99 12.30 G98, G99 : Options du plan de retrait . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 13 M Codes 13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 13.9 100

M0, M1, M2, M30, M60 : Arrts de programme . . . . . . . . . . . . . . . . . . . . . . . 100 M3, M4, M5 : Contrle de broche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 M6 : Appel doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 M7, M8, M9 : Contrle darrosage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 M48, M49 : Contrle des correcteurs de vitesse . . . . . . . . . . . . . . . . . . . . . . . 101 M50 : Contrle du correcteur de vitesse travail . . . . . . . . . . . . . . . . . . . . . . . 101 M51 : Contrle du correcteur de vitesse broche . . . . . . . . . . . . . . . . . . . . . . . 102 M52 : Contrle de vitesse adaptative . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 M53 : Contrle de coupure de vitesse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

13.10 M61 : Ajuste le numro de loutil courant . . . . . . . . . . . . . . . . . . . . . . . . . . 102 13.11 M62 M65 : Contrle de sorties numriques . . . . . . . . . . . . . . . . . . . . . . . . 102 13.12 M66 : Contrle dentre digitale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103 13.13 M100 M199 : Commandes dnies par lutilisateur . . . . . . . . . . . . . . . . . . . 103 14 O Codes 14.1 14.2 14.3 14.4 14.5 14.6 14.7 104

Sous-programmes : sub , endsub , return , call . . . . . . . . . . . . . . . . . . 104 Boucles : do , while , endwhile , break , continue . . . . . . . . . . . . . . . . 105 Conditionnel : if , else , endif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Rptition : Repeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Indirection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 Calcul des valeurs dans les mots O . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 Appel de chiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 107 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

15 Autres Codes 15.1 15.2 15.3 F : Rglage de la vitesse travail

S : Rglage de la vitesse de rotation de la broche . . . . . . . . . . . . . . . . . . . . . . 107 T : Choix de loutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107

TABLE DES MATIRES 16 Diffrences entre le g-code dEMC2 et le RS274NGC 16.1 16.1.1 16.1.2 16.1.3 16.1.4 16.1.5 16.1.6 16.1.7 16.2 16.2.1 16.2.2 16.2.3 16.2.4 16.2.5 16.2.6 16.2.7

xi 108

Diffrences changeant la signication dun programme correctement crit en RS274NGC108 Position aprs un changement doutil . . . . . . . . . . . . . . . . . . . . . . . . 108 Les dcalages sont dans les units du chier ini . . . . . . . . . . . . . . . . . . 108 Les longueurs/diamtres de la table doutils sont dans les units du chier ini 108 G84, G87 non implments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108 G28, G30 avec des mots daxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 M62, M63 non implments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 G0 rduit les longs mouvements angulaires pour les rendre infrieurs un tour109 G33, G76 codes de taraudage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 G38.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 G38.3. . .G38.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 O-codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 M50. . .M53 survitesses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 M61. . .M66 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 G43, G43.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 16.2.7.1Longueurs doutil ngatives . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 16.2.7.2Outils de tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 16.2.7.3Longueurs doutil dynamiques . . . . . . . . . . . . . . . . . . . . . . . . . 110

Diffrences ne changeant pas la signication des programmes bien crits en RS274NGC109

16.2.8 16.2.9 16.2.10

G41.1, G42.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 G43 sans mot H . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 Axes U, V et W . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110 111

17 Fichier doutils et compensations 17.1 17.2 17.3 17.4

Fichier doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Compensation doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Compensation de longueur doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 Compensation de rayon doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112 Compensation de rayon doutil, dtails . . . . . . . . . . . . . . . . . . . . . . . . 112 122

17.4.1

18 Systmes de coordonnes et dcalage G92 18.1 18.2 18.3

Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Commande en coordonnes machine : G53 . . . . . . . . . . . . . . . . . . . . . . . . . 122 Dcalages pice (G54 G59.3 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 Systme de coordonnes par dfaut . . . . . . . . . . . . . . . . . . . . . . . . . 124 Rglage des dcalages avec G10 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 Les commandes G92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Rglage des valeurs de G92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Prudence avec G92 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

18.3.1 18.3.2 18.4 18.4.1 18.4.2 18.4.3 18.5

G92 Dcalages daxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Exemple de programme utilisant les dcalages daxes . . . . . . . . . . . . . . . . . . . 126

TABLE DES MATIRES 19 Spcicits des tours 19.1 19.2 19.3 19.4

xii 128

EMC congur pour un tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Fichier doutils . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 Tangenter et corriger loutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130 Filetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

IV

Quelques exemples

131132 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

20 Exemples de G-Code 20.1 Exemples pour une fraiseuse

20.1.1 20.1.2 20.1.3 20.1.4 20.1.5 20.1.6 20.1.7 20.2

Fraisage hlicodal dun orice Rainurage

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

Palpage dune grille rectangulaire de points . . . . . . . . . . . . . . . . . . . . . 132 Amlioration du palpage dune grille rectangulaire de points . . . . . . . . . . . 132 Mesure de longueur doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Mesure dun alsage au palpeur . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Compensation de rayon doutil . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

Exemples pour un tour . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 Filetage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 134

20.2.1

21 Image-to-gcode : Usiner un depth maps 21.1 21.2 21.3 21.4

Quest-ce quun depth map ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134 Intgrer image-to-gcode dans linterface utilisateur dAXIS . . . . . . . . . . . . . . . . 134 Utilisation dimage-to-gcode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Les diffrentes options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Units . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Invert Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Normalize Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Expand Image Border . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Tolerance (units) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Pixel Size (units) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Plunge Feed Rate (units par minute) . . . . . . . . . . . . . . . . . . . . . . . . 136

21.4.1 21.4.2 21.4.3 21.4.4 21.4.5 21.4.6 21.4.7 21.4.8 21.4.9 21.4.10 21.4.11 21.4.12 21.4.13 21.4.14

Feed Rate (units par minute) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Spindle Speed (RPM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Scan Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Scan Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Depth (units) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Step Over (pixels) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 Tool Diameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

TABLE DES MATIRES 21.4.15 21.4.16 21.4.17 21.4.18 21.4.19

xiii

Safety Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Tool Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Lace bounding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Contact angle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Offset dbauche et profondeur par passe dbauche . . . . . . . . . . . . . . . . 137

V

Diagnostic

139140

22 Moteurs pas pas 22.1

Problmes communs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Le moteur navance que dun pas . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Le moteur ne bouge pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Distance incorrecte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140

22.1.1 22.1.2 22.1.3 22.2

Messages derreur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Erreur de suivi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140 Erreur de RTAPI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

22.2.1 22.2.2 22.3

Tester . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 Tester le timing des pas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

22.3.1

VI

Annexes

143144

23 Legal Section 23.1 23.2

Copyright Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144 GNU Free Documentation License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

VII

Index de louvrage

148

Avant-proposEMC2 est souple et modulaire. Ces attributs lont fait apparatre certains comme un brouillon de petits morceaux confus, ils se sont demand pourquoi il en tait ainsi. Cette page tente de rpondre cette question avant que vous lecteurs, ne plongiez dedans pour vous faire votre propre ide. EMC a dbut linstitut national des standards et des technologies des Etats Unis, le NIST. Il a mri comme un logiciel fonctionnant sur le systme dexploitation Unix. Unix le rendait diffrent. Trs tt des dveloppeurs Unix ont apport une srie dides concernant lcriture du code, cest devenu une criture selon la tradition dUnix . Les premiers auteurs dEMC ont suivi cette voie. Eric S. Raymond, dans son livre The Art of Unix Programming, rsume la philosophie Unix par la philosophie largement utilise en ingnirie, le principe KISS Keep it Simple, Stupid Reste Simple, Crtin ou Sois Simple et Concis. Puis il dcrit sa vision selon laquelle cette philosophie globale sapplique en tant que norme culturelle Unix, bien quon trouve sans surprise de graves entorses la plupart des rgles Unix suivantes : * Rgle de modularit : Ecrire des lments simples relis par de bonnes interfaces. * Rgle de clart : La Clart vaut mieux que lingniosit. * Rgle de composition : Concevoir des programmes qui peuvent tre relis dautres a programmes. * Rgle de sparation : Sparer les rgles du fonctionnement ; Sparer les interfaces du mcanisme. 1 M. Raymond offre dautres rgles mais ces quatre dcrivent les caractristiques essentielles du systme de contrle de mouvement EMC2. La rgle de Modularit est critique. Tout au long de ces manuels, vous trouverez des discussions propos de linterprteur ou propos des planicateurs de tche ou de mouvement ou encore propos de HAL. Chacun deux est un module ou un ensemble de modules. Cette modularit vous permettra de ne connecter entre elles que les parties dont vous avez besoin pour le bon fonctionnement de votre machine. La rgle de clart est essentielle. EMC2 est en perptuelle volution, il nest pas termin et ne le sera jamais. Il est assez complet pour piloter toutes les machines que nous avons voulu quil pilote. Une bonne partie de cette volution est atteinte parce que les utilisateurs et les dveloppeurs peuvent voir le travail des autres et construire sur ce qui est dj fait. La rgle de composition nous permet de concevoir et de construire un contrleur partir des nombreux modules existants, en les rendant connectables entre eux. Nous obtenons cette connectivit en appliquant une interface standard tous les modules et en suivant ce standard. La rgle de sparation exige que chaque petite chose soit faite par une partie distincte. En sparant les fonctions, le dpannage est rendu plus ais, le remplacement de modules par dautres peut tre fait lintrieur du systme et la comparaison seffectuer facilement. Quapporte la fameuse tradition dUnix vous, utilisateurs dEMC2. Elle signie que vous pourrez faire des choix sur la faon dutiliser le systme. Beaucoup de ces choix affecteront les parties intgres la machine, mais beaucoup galement affecteront la manire dont vous utiliserez votre machine. Au cours de votre lecture, vous trouverez diffrents endroits o vous pourrez faire des1. Trouv sur http ://fr.wikipedia.org/wiki/Philosophie_d%27Unix le 09/09/2008

1

TABLE DES MATIRES

2

comparaisons. Finalement vous pourrez dire Jutiliserai cette interface plutt que telle autre ou, Jcrirai cette nouvelle partie de telle manire plutt que de telle autre. Tout au long de ces manuels nous dcrirons ltendue des possibilits dEMC2 actuellement disponibles. Puisque vous commencez votre voyage dans lutilisation dEMC2 nous vous proposons ces deux citations : 2 "Unix na pas t conu pour empcher ses utilisateurs de commettre des actes stupides, car cela les empcherait aussi de raliser des actes ingnieux." Doug Gwyn "Unix est convivial. Cependant Unix ne prcise pas vraiment avec qui." Steven King

2. Trouv sur http ://fr.wikipedia.org/wiki/Philosophie_d%27Unix le 06/07/2008

Premire partie

Les concepts

3

Chapitre 1

Le concept dEMC1.1 Introduction

Ce document est centr sur lutilisation dEMC2, il est plutt destin aux lecteurs layant dj install et congur. Quelques informations sur linstallation sont donnes dans les chapitres suivants. La documentation complte sur linstallation et la conguration se trouve dans le manuel de lintgrateur.

1.2

Vue densemble de la CNC

Le terme CNC a pris beaucoup de sens diffrents au cours des annes. Dans les dbuts, la CNC a consist remplacer les mains de loprateur par des moteurs, lesquels suivaient des commandes reproduisant au mieux les mouvements dun oprateur tournant les manivelles. De ces premires machines, un langage de contrle de loutil est n, puis a grandi. Ce langage est appell RS274 dont diffrentes variantes ont t proposes. Des ajouts lui ont t apports par les fabricants de machines-outils et de contrleurs pour rpondre aux besoins spciques de leurs machines. Pour quune machine puisse changer doutil pendant lexcution dun programme il est ncessaire de disposer de commandes de changement doutil. Si un chargeur de pices doit installer un nouveau brut, il est galement ncessaire davoir les commandes permettant de grer ce type de matriel. Comme tous les langages, RS274 a volu au l du temps. Actuellement plusieurs dialectes existent. En gnral, chaque fabricant de machines-outils essaye de rester cohrent avec ses lignes de produits mais il arrive que des commandes produisent des effets compltement diffrents dune machine une autre. Trs rcemment le langage de CNC a t masqu derrire diffrents symboles de programmation se rfrant un Langage 1 de programmation conversationnel. Une caractristique commune de ces types de programmation est la slection dune forme ou dune gomtrie et lajout de valeurs pour les coins, les limites, ou les caractristiques de cette gomtrie. Lusage du Dessin Assist par Ordinateur a galement eux un impact sur les langages de programmation CNC. Les dessins raliss en DAO tant sauvegards sous forme de listes de donnes avec les variables associes chaque gomtrie, ces listes sont facilement interprtes dans le G-Code. Les interprteurs qui ralisent ce travail sont appels des programmes de CAM (Computer Aided Machining). Ce sont des convertisseurs de DAO, lensemble des logiciels de dessin, comme CorelTM et presque la totalit des programmes graphiques, fournissent des chiers pouvant tre convertis. Ces convertisseurs ont t crits pour lire un chier dune image bitmap, en trames ou vectorielle et la transformer en un chier G-Code pouvant tre lanc sur une machine CNC.1. Un fabricant de machines, Hurco, clame avoir seul les droits de lusage de ces symboles en programmation ainsi que de lusage du terme conversationnel utilis dans ce contexte.

4

CHAPITRE 1. LE CONCEPT DEMC

5

Vous vous demandez peut tre, Pourquoi ai-je besoin de savoir cel ? La rponse est que dans sa forme actuelle EMC2 ne peut pas utiliser directement, pour lusinage, un chier non converti issu dune DAO, ni aucune image. EMC2 utilise une variante du premier langage CNC nomme RS274NGC. (pour Next Generation Controller). Toutes les commandes passes EMC2 doivent ltre dans une forme reconnue par son interprteur RS274NGC. Ce qui signie que si vous voulez usiner une pice dssine dans un programme graphique ou de dessin, vous devez galement utiliser un programme capable de convertir le format du chier de sortie de ce programme en un autre chier dans le format reconnu et accept par linterprteur dEMC2. Il existe plusieurs programmes commerciaux effectuant cette tche. Au moins un convertisseur (Ace) a t mis sous un type de copyright le rendant disponible au public. Il y a eux de rcentes discussions propos de lcriture dune interface conversationelle ou gomtrique, permettant loprateur dentrer les programmes plus ou moins de la mme faon que sur certains contrleurs propritaires modernes, mais cest encore loin.

1.3

Systme dexploitation de lordinateur

Le code dEMC2 peut tre compil sur la plupart des distributions GNU-Linux (sous rserve que son noyau ait t patch avec une extension temps rel). En plus du code source, certaines distributions binaires sont disponibles. Le dernier paquet a t cr autour dune distribution Ubuntu qui est une ditribution GNU-Linux. Ubuntu est la distribution la plus apprcie par les utilisateurs de Linux novices, elle est considre comme tant trs facile utiliser. En plus de cel, il existe pour elle un grand nombre de sites dentraide dans le monde entier. Installer EMC2 sur cette distribution est extrmement simple, voir la section ?? EMC2 ne fonctionne pas sur les systmes dexploitation Microsoft (TM). La raison en est quEMC2 requiert un environnement temps rel pour son planicateur de mouvements et ses gnrateurs de pas. Il bncie aussi de lexcellente stabilit et des performances nettement meilleures du systme dexploitation Linux.

1.4

Comment marche EMC2

EMC2 est un peu plus que juste un autre programme de fraiseuse CNC . Il est capable de contrler des machines-outils, des robots ou dautres automatismes. Il est capable de contrler des servomoteurs, des moteurs pas pas, des relais ainsi que dautres mcanismes relatifs aux machines-outils. Dans ce manuel nous nous concentrerons seulement sur de petites machines mais aux possibilits impressionnantes, les mini fraiseuses. La gure 1.1 montre un simple diagramme bloc reprsentant une machine 3 axes typique comme EMC2 les aime. Cette gure montre un systme bas sur des moteurs pas pas. Le PC, tournant sous Linux contrle les interfaces de puissance des moteurs pas pas en leur envoyant des signaux au travers du port parallle. Ces signaux (impulsionnels) font que la puissance adquate est fournie aux moteurs. EMC2 peut galement contrler des servomoteurs via une interface de puissance pour servomoteurs ou utiliser le port parallle tendu connect une carte de contrle externe. Quand nous examinerons chacun des composants qui forment un systme EMC2, nous nous rfrerons cette machine typique. Il y a quatre composants dans le logiciel EMC2 : un controleur de mouvement (EMCMOT), un contrleur dentres/sorties discrtes (EMCIO), un coordinateur dexcution des tches (EMCTASK) et une bibliothque dinterfaces utilisateur, tant graphiques que textuelles. EMC2, pour prendre le contrle complet dune fraiseuse, il doit lancer chacun de ces quatre composants. Chaque composant sera brivement dcrit ci-dessous. En plus, il existe une couche appele HAL (la couche dabstraction du matriel), qui permet la conguration simple dEMC2 sans quil soit besoin de le recompiler.

CHAPITRE 1. LE CONCEPT DEMC

6

F IGURE 1.1 Simple machine contrle par EMC2

1.5

Interfaces utilisateur graphiques

Linterface graphique est la partie dEMC2 qui interragit avec loprateur de la machine-outil. EMC2 est fourni avec plusieurs interfaces utilisateurs graphiques : Un cran graphique de type caractres nomm keystick 1.3 Un programme X Windows nomm xemc Deux GUI bases sur Tcl/Tk nommes tkemc 1.5 et mini 1.4. Une GUI base sur OpenGL, avec prvisualisation du G-Code, appele AXIS 1.2 Tkemc et Mini peuvent tourner sous Linux, Mac et Microsoft Windows si le langage de programmation Tcl/Tk a t pralablement install. Les versions Mac et Microsoft Windows peuvent tre connectes EMC2 tournant sur une machine Linux temps rel via une connection rseau, permettant de visualiser la machine depuis un emplacement distant. Les instructions pour installer et congurer une telle connection entre un MAC ou une machine Micosoft et un PC sur lequel tourne EMC2 se trouvent dans le manuel de lintgrateur.

1.6

Penser comme un oprateur sur CNC

Ce manuel ne prtend pas vous apprendre utiliser un tour ou une fraiseuse. Devenir un oprateur expriment prends beaucoup de temps et demande beaucoup de travail. Un auteur a dit une fois, Nous apprenons de lexprience, si on la possde toute . Les outils casss, les taux attaqus et les cicatrices sont les preuves des leons apprises. Une belle nition, des tolrances serres

CHAPITRE 1. LE CONCEPT DEMC

7

F IGURE 1.2 Linterface graphique AXIS

F IGURE 1.3 Linterface graphique Keystick

CHAPITRE 1. LE CONCEPT DEMC

8

F IGURE 1.4 Linterface graphique Mini

F IGURE 1.5 Linterface graphique TkEmc et la prudence pendant le travail sont les preuves des leons retenues. Aucune machine, aucun programme ne peut remplacer lexprience humaine.

CHAPITRE 1. LE CONCEPT DEMC

9

Maintenant que vous commencez travailler avec le programme EMC2, vous devez vous placer a dans la peau dun oprateur. Vous devez tre dans le rle de quelquun qui a la charge dune a machine. Cest une machine qui attendra vos commandes puis qui excutera les ordres que vous lui donnerez. Dans ces pages nous donnerons les explications qui vous aideront devenir un bon oprateur de fraiseuse avec EMC2.

1.7

Modes opratoires

Quand EMC2 fonctionne, il existe trois diffrents modes majeurs pour entrer des commandes. Les modes Manuel, Auto et MDI. Passer dun mode un autre marque une grande diffrence dans le comportement dEMC2. Des choses spciques un mode ne peuvent pas tre faites dans un autre. Loprateur peut faire une prise dorigine sur un axe en mode manuel mais pas en mode auto ou MDI. Loprateur peut lancer lexcution complte dun programme de G-codes en mode auto mais pas en mode manuel ni en MDI. En mode manuel, chaque commande est entre sparment. En termes humains une commande manuelle pourrait tre active larrosage ou jog laxe X 250 millimtres par minute. Cest en gros quivalent basculer un interrupteur ou tourner la manivelle dun axe. Ces commandes sont normalement contrles en pressant un bouton de linterface graphique avec la souris ou en maintenant appuye une touche du clavier. En mode auto, un bouton similaire ou lappui dune touche peuvent tre utiliss pour charger ou lancer lexcution complte dun programme de Gcodes stock dans un chier. En mode dentre de donnes manuelles (MDI) loprateur peut saisir un bloc de codes est dire la machine de lexcuter en pressant la touche ou du clavier. Certaines commandes de mouvement sont disponibles et produisent les mmes effets dans tous les modes. Il sagit des commandes ABOR T, ESTOP et FEED RATE OVERRIDE. Ces commandes se dispensent dexplications. Linterface utilisateur graphique AXIS supprime certaines distinctions entre Auto et les autres modes en rendant automatique la disponibilit des commandes, la plupart du temps. Il rend galement oue la distinction entre Manuel et MDI parce que certaines commandes manuelles comme Toucher, sont galement implmentes en envoyant une commande MDI.

1.8

Informations afches

Quand EMC2 fonctionne, chacun de ses modules maintient la conversation avec les autres et avec linterface graphique. Cest la charge de lafchage de slectionner quel ux dinformation loprateur doit voir et de larranger sur son cran pour lui rendre facile comprendre. Le point le plus important de lafchage est peut tre la possibilit de voir le fonctionnement interne dEMC2. Vous devrez garder un oeil sur le mode dafchage. Lafchage du mode actif permet de savoir si il y a cohrence entre lafchage et la position de chaque axe. La plupart des interfaces permettent loprateur de lire la position actuelle ou commande ainsi que la position machine ou relative. Machine Cest la position dun axe par rapport lorigine machine, aprs que la POM a t faite. Relative Cest la position relative dun axe aprs quun ou plusieurs dcalages aient t appliqus (pice, outil, etc). Actuelle Cest la position relle dun axe en coordonnes machine ou relatives. Commande Cest la position commande sur laquelle laxe doit aller. Elles sont toutes exactement les mmes si aucun dcalage na t appliqu et quaucune bande morte na t paramtre dans le chier INI. La bande morte (Deadband) est une toute petite distance, suppose trs proche peut tre une impulsion de pas ou un point de codeur.

CHAPITRE 1. LE CONCEPT DEMC

10

Il est galement important de voir tous les messages ou les codes derreur envoys par EMC2. Ceuxci sont utiliss pour demander que loprateur change loutil, pour dcrire les problmes dans les programmes G-code ou indiquer pourquoi la machine sest arrte. Vous modierez votre faon de travailler avec ces petits textes, vous apprendrez, petit petit, comment ajuster et faire fonctionner votre machine avec le logiciel EMC2. Pendant que vous apprendrez afner les rglages, que vous travaillerez avec votre mini fraiseuse, vous penserez dautres applications et dautres possibilits. Ce seront les sujets dautres manuels de linuxcnc.org.

1.9

Units

Les units peuvent prter confusion. Vous pouvez vous demander, Vaut-il mieux travailler en pouces, en pieds, en centimtres, millimtres ou autre ? Plusieurs rponses sont possibles cette question mais la meilleure est que a marchera mieux dans lunit avec laquelle vous avez choisi de congur la machine. Au niveau de la machine, chacun des axes est rgl avec une unit xe dans une variable du chier INI. Cette variable ressemble ceci : UNITS = inch ou UNITS = mm Aprs avoir dcid de lunit utilise sur les axes, il faut indiquer EMC2 combien dimpulsions moteur, ou de codeur, il doit envoyer ou lire pour produire un dplacement pour chaque unit de distance. Aprs cel, EMC2 sait compter les units de distance. Cependant il est trs important de comprendre que ce calcul de distance pour les axes est diffrent de la distance commande dans le programme. Vous pouvez commander une distance en millimtres ou en pouces sans mme penser aux units car il existe des G-code permettant de basculer dune unit mtrique une unit impriale.

Chapitre 2

Concepts importantsCe chapitre couvre les concepts importants qui doivent tre assimils avant dessayer de dmarrer un chier de G-code.

2.12.1.1

Contrle de trajectoireLa planication de trajectoire

La planication de trajectoire est en gnral, le moyen qui permet EMC2 de suivre le chemin spci par le programme G-code, tout en restant dans les limites permises par la machine. Un programme en G-code ne peut jamais tre totalement suivi. Par exemple imaginez que vous spciez dans une ligne du programme les mouvements suivants :

G1 X10 F100 (G1 un mouvement linaire, X10 la destination, F100 la vitesse) En ralit, la totalit du mouvement ne peut pas tre effectue F100, puisque la machine commence le mouvement une vitesse nulle, elle doit acclrer pour se dplacer vers X=10, puis dclrer pour revenir une vitesse nulle en n de mouvement. Parfois une portion du mouvement se fera bien F100, mais pour beaucoup de mouvements, spcialement les petits mouvements, la vitesse spcie ne sera jamais atteinte. Les acclrations et dclrations de base dcrite ici ne sont pas complexes et ne ncessite pas de compromis. Les contraintes des axes de la machine sont placs dans le chier INI, comme la vitesse maximum de laxe et lacclration ne devant pas tre dpasses par le planicateur de trajectoire.

2.1.2

Le suivi du parcours

Un problme plus compliqu est pos par le suivi du parcours. Quand vous programmez un angle droit en G-code, le planicateur de trajectoire peut suivre diffrents parcours, tous sont bons dans certains cas ; il peut dclrer et sarrter exactement sur les coordonnes du sommet de langle, puis acclrer dans la direction perpendiculaire. Il peut galement faire ce qui est appel le mode trajectoire continue , qui consiste maintenir la vitesse davance en passant vers le sommet de langle, ce qui ncessite darrondir langle de faon respecter les contraintes machine. Vous pouvez remarquer quil y a dans ce cas un compromis : vous pouvez ralentir pour avoir un meilleur suivi du parcours, ou conserver une vitesse davance leve au dtriment de la nesse des angles, du fait dun moins bon suivi du parcours. Selon les particularits de lusinage, du matriau, de loutillage, etc., le programmeur devra dcider du bon compromis. 11

CHAPITRE 2. CONCEPTS IMPORTANTS

12

2.1.3

La programmation du planicateur

Les commandes de contrle de trajectoire sont les suivantes : G61 (mode arrt exact) G61 indique au planicateur de sarrter exactement la n de chaque segment. Le parcours sera suivi avec exactitude mais les arrts complets de lavance peuvent se rvler destructeurs pour la pice ou loutillage, selon les particularits de lusinage. G64 (mode trajectoire continue sans tolrance) G64 est juste une trajectoire continue, le naive cam detector nest pas activ. G64 et G64 P0 indiquent au planicateur de sacrier la prcision de suivi du parcours pour conserver une vitesse davance leve. Ce mode est ncessaire pour certains types de matriaux ou doutillages pour lesquels larrt exact est dangereux. Il peut trs bien fonctionner tant que le programmeur garde lesprit que le parcours doutil pourra tre plus arrondi que celui indiqu par le programme. G64 Px.xxx (mode trajectoire continue avec tolrance) Ce mode active le naive cam detector et active le mode trajectoire continue avec tolrance. Si vous utilisez le millimtre comme unit et programmez G64 P1.27, vous dites au planicateur que vous souhaitez une vitesse davance continue, mais quaux coins programms vous voulez un ralentissement sufsant pour que le parcours de loutil puisse rester moins de 1.27mm du parcours programm. Lamplitude exacte du ralentissement dpend de la gomtrie de langle programm et des contraintes machine, mais la seule chose dont le programmeur ait se soucier est la tolrance, ce qui lui donne le contrle complet des compromis du suivi de parcours. La tolrance de ce mode peut tre modie tout au long du programme si ncessaire. Attention : spcier un G64 P0 aura le mme effet quun G64 seul (voir ci-dessus), cest rendu ncessaire pour conserver la compatibilit ascendante avec les anciens programmes G-code. Trajectoire continue sans tolrance Le point contrl touchera chaque mouvement spci au moins un point. La machine ne pourra jamais se dplacer une vitesse davance telle quelle ne puisse pas sarrter avec prcision la n du mouvement en cours (ou du prochain mouvement, si vous mettez en pause lorsque la trajectoire est dj commence). La distance avec le point nal du mouvement est aussi grande que ncessaire pour maintenir la meilleure vitesse davance possible pendant le parcours. Naive Cam Detector Les mouvements successifs en G1, concernant uniquement les axes XYZ, dont la dviation par rapport une ligne droite est infrieur P, sont fusionns en une seule ligne droite. Ce mouvement fusionn remplace les mouvements individuels en G1 pour obtenir une nouvelle trajectoire avec tolrance. Entre les mouvements successifs, le point contrl ne passera jamais plus de P- du point nal du mouvement en cours. Le point contrl touchera au moins un point de chacun des mouvements. La machine ne pourra jamais se dplacer une vitesse ne lui permettant pas de venir sarrter exactement la n du mouvement actuel (ou du prochain mouvement, si vous mettez en pause lorsque la trajectoire est dj commence).

2.1.4

Planication des mouvements

Assurez-vous que les mouvements soient assez longs pour convenir votre machine/matriel. Principalement en raison de la rgle selon laquelle la machine ne pourra jamais se dplacer une vitesse ne lui permettant pas de venir sarrter compltement la n du mouvement actuel , il y a une longueur minimale de dplacement permettant la machine datteindre la vitesse demande avec un rglage dacclration donn. Les phases dacclration et de dclration utilisent chacune la moiti de la variable MAX_ACCELERATION du chier .ini. Avec une trajectoire continue cest exactement invers, ce qui fait que lacclration totale de laxe est gal la variablee MAX_ACCELERATION. Dans dautres cas, lacclration actuelle de la machine est un peu infrieure celle du chier ini. Pour maintenir la vitesse davance, le mouvement doit tre plus long que la distance qui lui est ncessaire pour acclrer de zro la vitesse souhaite, puis de dclrer pour sarrter. En utilisant A comme tant 1/2 de la variable MAX_ACCELERATION et F comme tant la vitesse davance *en units par seconde*, le temps dacclration sera ta=F/A et la distance dacclration sera

CHAPITRE 2. CONCEPTS IMPORTANTS

13

da=(1/2)*F*ta. Les temps et distance de dclration sont les mmes, ce qui fait que la distance critique dc=da+dd=2*da=F2 /A. Par exemple, pour une vitesse davance de 25mm par seconde et une acclration de 250mm/sec2 , la distance critique sera de 102 /100=1mm. Pour une vitesse davance de 5mm par seconde, la distance critique ne serait que de 52 /100 = .25mm.

2.22.2.1

G-codeVitesse davance

Si vous avez un tour ou un axe rotatif, pour savoir comment la vitesse davance sapplique selon que laxe est linaire ou rotatif, lire et comprendre la section vitesse davance (7.2.5) du manuel de lutilisateur.

2.2.2

Compensation de rayon doutil

La compensation de rayon doutil (G41/42) ncessite que loutil puisse toucher tout au long de la trajectoire programme sans interfrer avec les mouvements dentre ou de sortie. Si cest impossible avec le diamtre de loutil courant, une erreur est signale. Un diamtre doutil infrieur est peut tre utilisable sans erreur pour le mme parcours. Ce qui signie que quand ce type de problme se prsente, il est possible de programmer un outil plus petit pour usiner le mme parcours sans erreur. Voir la section compensation de rayon doutil (17.4) pour plus dinformations.

2.3

Prise dorigine machine

Aprs le dmarrage dEMC2 chaque axe doit tre rfrenc sur sont point dorigine machine avant tout mouvement ou commande MDI. Pour droger ce comportement par dfaut, ou pour utiliser linterface Mini, il est possible dajuster loption NO_FORCE_HOMING = 1 dans la section [TRAJ] du chier ini.

2.4

Changement doutil

Il existe plusieurs options pour effectuer un changement doutil. Voir la section [EMCIO] dans le manuel de lintgrateur pour les informations sur la conguration de ces options. Voir galement les sections G2812.12 et G3012.13 du manuel de lutilisateur.

Deuxime partie

Les interfaces utilisateur

14

Chapitre 3

Linterface graphique AXIS3.1 Introduction

AXIS est une interface utilisateur graphique pour emc2, il offre un aperu permanent du parcours de loutil. Il est crit en Python, utilise Tk et OpenGL pour lafchage de linterface graphique. F IGURE 3.1 Fentre dAXIS

3.2

Pour commencer

Pour choisir AXIS comme interface graphique demc2, ditez le chier .ini et dans la section [DISPLAY] changez la ligne DISPLAY comme ceci : 15

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS DISPLAY = axis

16

Puis, lancez emc2 et choisissez le chier ini. La conguration simplie sim/axis.ini est dj congure pour utiliser AXIS comme interface. Quand vous dmarrez AXIS, une fentre telle que celle de la gure 3.1 souvre.

3.2.1

Une session typique avec AXIS

1. Lancez emc et slectionnez un chier de conguration. 2. Relchez le bouton darrt durgence A/U et mettez la machine en marche. 3. Faites les prises dorigine machine POM pour chacun des axes. 4. Chargez un chier dusinage. 5. Utilisez lafchage du parcours doutil pour vrier que le programme est correct. 6. Bridez le brut usiner sur la table. 7. Faites les prises dorigine pice POP de chacun des axes avec le jog et en utilisant le bouton Toucher . 8. Lancez le programme. 9. Pour usiner le mme chier une nouvelle fois, retournez ltape 6. Pour usiner un chier diffrent, retournez ltape 4. Quand vous avez ni, quittez AXIS.

3.3

Elments de la fentre dAXIS

La fentre dAXIS contient les lments suivants : Un espace dafchage qui montre une pr-visualisation du chier charg (dans ce cas, axis.ngc ), ainsi que la position courante du point programm par la machine CNC. Plus tard, cette zone afchera le parcours de loutil dplac par la machine CNC, cette zone est appele le parcours doutil ( backplot ) Une barre de menus, une barre doutils, des curseurs et des onglets permettent deffectuer diffrentes actions. Longlet Contrle manuel , qui permet de faire des mouvements daxe, de mettre la broche en rotation ou de larrter, de mettre larrosage en marche ou de larrter. Longlet Donnes manuelles (aussi appel MDI), o les blocs de programme G-code peuvent tre entrs la main, une ligne la fois. Les curseurs Correcteurs de vitesse , qui permettent daugmenter ou de diminuer la vitesse de la fonction concerne. Une zone de textes qui afche le G-code du chier charg. Une barre dtat qui afche ltat de la machine. Dans cette capture dcran, la machine est en marche, aucun outil nest mont, la position afche est relative lorigine machine (par opposition une position absolue ) et actuelle (par opposition une position commande )

3.3.1

Menu Items

SousSection en cours de rdaction - To Do List nish menu descriptions

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

17

3.3.2

Boutons de la barre doutils

Signication des boutons, de gauche droite : 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. Arrt durgence (A/U) en Anglais (E-Stop) Marche/Arrt puissance machine Ouvrir un chier Recharger le chier courant Dpart cycle Cycle en pas pas Pause/Reprise Stopper lexcution du programme Sauter ou non les lignes commenant par "/" Avec ou sans pause optionelle Zoom plus Zoom moins Vue prdnie Z (vue de dessus) Vue prdnie Z bascule Vue prdnie X (vue de ct) Vue prdnie Y (vue de face) Vue prdnie P (vue en perspective) Orienter la vue avec le bouton gauche de la souris Rafrachir le parcours doutil

3.3.33.3.3.1

Zones dafchage graphique du programmeAfchage des coordonnes

Lafchage des coordonnes est situ en haut gauche de lcran graphique. Il montre les positions de la machine. A gauche du nom de laxe, un symbole dorigine ( ) est visible si la prise dorigine de

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

18

laxe a t faite. A droite du nom de laxe, un symbole de limite ( ) est visible si laxe est sur un de ses capteurs de limite. Pour interprter correctement ces valeurs, rfrez vous lindicateur Position : de la barre dtat. Si la position est Absolue , alors les valeurs afches sont exprimes en coordonnes machine. Si la position est Relative , alors les valeurs afches sont exprimes en coordonnes relatives la pice. Quand les coordonnes afches sont relatives, une marque dorigine de couleur cyan est visible pour reprsenter lorigine machine ( ). Si la position est Commande , alors il sagit de la position atteindre par exemple, les coordonnes passes dans une commande G0. Si la position est Actuelle , alors il sagit de la position laquelle la machine vient de se dplacer. Ces valeurs peuvent varier pour certaines raisons : erreur de suivi, bande morte, rsolution dencodeur ou taille de pas. Par exemple, si vous demandez un mouvement X 0.08 votre fraiseuse, mais un pas du moteur fait 0.03, alors la position Commande sera de 0.08 mais la position Actuelle sera de 0.06 (2 pas) ou 0.09 (3 pas). 3.3.3.2 Vue du parcours doutil

Quand un chier est charg, une vue du parcours doutil quil produira est visible dans la zone graphique. Les mouvements en vitesse rapide (tels ceux produits par une commande G0) sont afchs en lignes pointilles vertes. Les dplacements en vitesse programme (tels ceux produits par une commande G1) sont afchs en lignes continues blanches. Les arrts temporiss (tels ceux produits par la commande G4) sont reprsents par une petite marque X . 3.3.3.3 Etendues du programme

Les tendues du programme sont visibles pour chacun des axes. Aux extrmits de chacune, la plus petite et la plus grande valeur des coordonnes sont indiques. Au milieu, la diffrence entre ces valeurs de coordonnes est visible. Sur la gure 3.1, ltendue des X du chier va de -1.95 1.88 pouces, un total de 3.83 pouces. Quand une coordonne excde une soft limits tablie dans le chier .ini, la dimension correspondante est afche dans une couleur diffrente. Ici, la limite maximale est dpasse sur laxe X:

3.3.3.4

Le cne doutil

Lemplacement de la pointe de loutil est indiqu par le cne doutil . Le cne doutil ne donne pas dindication sur la forme, la longueur ou le rayon de loutil. Quand un outil est charg, (par exemple dans le MDI, avec la commande T1 M6), le cne passe de cnique cylindrique, il indique alors le diamtre de loutil lu dans le chier de la table doutil.

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS 3.3.3.5 Trac doutil

19

Quand la machine se dplace, elle laisse une trace appele le trac doutil. La couleur des lignes indique le type de mouvement : Jaune pour les jogs, vert clair pour les mouvements en vitesse rapide, rouge pour les mouvements en vitesse davance programme et magenta pour les mouvements circulaires en vitesse davance programme. 3.3.3.6 Interaction avec lafchage

Par un clic gauche sur une portion du parcours doutil, la ligne sous la souris passe en surbrillance la fois dans le graphique et dans le texte. Un clic droit dans une zone vide enlve la surbrillance. En dplaant la souris avec son bouton gauche appuy, la vue est glisse sur lcran. En dplaant la souris avec le bouton Maj enfonc, ou en glissant avec la molette de la souris appuye, la vue est tourne. Si une ligne du trac est en surbrillance, elle devient le centre de rotation de la vue. Autrement, le centre de rotation est le milieu du chier dans son ensemble. En tournant la molette de la souris ou en glissant la souris avec son bouton droit enfonc ou encore en glissant la souris avec son bouton gauche enfonc et la touche Ctrl appuye, le trac sera zoom en plus ou en moins. En cliquant sur une des icnes de vue pr-dnie de la barre doutils, ou en pressant la touche V , cette vue est slectionne.

3.3.4

Zone texte dafchage du programme

Un clic gauche sur une ligne du programme passe la ligne en surbrillance la fois dans la zone texte et dans la zone graphique. Quand le programme est lanc, la ligne en cours dexcution est en surbrillance rouge. Si aucune ligne nest slectionne par lutilisateur, le texte dle automatiquement pour toujours laisser la ligne courante visible.

3.3.5

Contrle manuel

Quand la machine est en marche mais quaucun programme nest excut, les lments graphiques de longlet Contrle manuel peuvent tre utiliss pour actionner le centre dusinage ou mettre en marche et arrter les diffrents organes de la machine. Quand la machine nest pas en marche ou quand un programme est en cours dexcution, le contrle manuel est indisponible. Certains des lments dcrits plus bas ne sont pas disponibles sur toutes les machines. Quand AXIS dtecte quune pin particulire nest pas connecte dans le chier HAL, llment correspondant de longlet Contrle manuel est supprim. Par exemple, si la pin HAL motion.spindle-brake nest pas connecte, alors le bouton Frein de broche napparatra pas sur lcran. Si la variable denvironnement AXIS_NO_AUTOCONFIGURE est mise 1, ce comportement est dsactiv et tous les boutons sont visibles. 3.3.5.1 Le groupe Axes

Les cases cocher du groupe Axes permettent de choisir laxe de la machine actionner manuellement. Cette action sappelle le jog . Premirement slectionnez laxe actionner en cochant sa case. Puis cliquez le bouton + ou - selon le sens de dplacement souhait. Les quatre premiers axes peuvent aussi tre dplacs avec les touches ches pour (X et Y), Page prcdente et Page suivante pour (Z) et les touches [ et ] pour (A).

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

20

F IGURE 3.2 Ligne courante et ligne en surbrillance

Si En continu est slectionn, le mouvement continuera tant que la touche ou le bouton resteront appuys. Si une autre valeur est slectionne, la machine se dplacera juste de la distance afche chaque fois que la touche ou le bouton seront appuys. Par dfaut, les valeurs disponibles sont : 0.1000 0.0100 0.0010 0.0001 Le rglage du chier .ini [DISPLAY]INCREMENTS peut tre utilis pour remplacer ces valeurs par dfaut. Ces valeurs doivent contenir des nombres dcimaux (ex. 0.1000) ou des nombres fractionnaires (ex. 1/16), ventuellement suivis par une unit (une parmi cm, mm, um, inch, in, ou mil). Si aucune unit nest spcie, les units natives de la machine seront utilises. Pour les utilisateurs prfrant les units mtriques, un bon rglage pourrait tre : INCREMENTS = 10 um, 50 um, 0.1mm, 0.5mm, 1mm, 5mm, 10 mm Pour les utilisateurs prfrant les units impriales , un bon rglage pourrait tre : INCREMENTS = 1/4 in, 1/16 in, 1/32 in, 1/64 in, 1 mil, .1 mil ou INCREMENTS = .5 in, .1 in, 50 mil, 10 mil, 5 mil, 1 mil, .1 mil Le mlange entre mtrique et imprial est possible : INCREMENTS = 1 inch, 1 mil, 1 cm, 1 mm, 1 um

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS 3.3.5.2 La prise dorigine machine

21

Si votre machine a une squence de prise dorigine machine dnie, le bouton POM gnrale ou les touches Ctrl+origine lanceront cette squence. Autrement, le bouton sera lu Origine machine , et enverra laxe courant sa position dorigine. Lappui de la touche origine seule enverra laxe courant sa position dorigine mme si une squence de prise dorigines machine est dnie. Selon votre conguration, la POM peut ajuster la valeur de la position de laxe comme tant la position absolue 0.0, ou elle peut faire dplacer la machine vers une position dorigine spcie et avec lusage de capteurs dorigine . 3.3.5.3 Toucher

Si le bouton Toucher ou la touche Fin sont appuys, le dcalage dorigine pice de laxe actif, sur la gure3.3 : P1 G54, prendra la valeur spcie dans le champ de la boite de dialogue. Les expressions peuvent tre entres en suivant les rgles de programmation rs274ngc, sauf les variables qui ne peuvent pas tre utilises. La valeur rsultante sera afche sous le champ. F IGURE 3.3 Toucher

La case cocher Mouvement temporaire hors limites permet un dplacement temporaire de la machine hors des limites physiques. Par exemple, pour ramener dans les limites, un axe engag par erreur sur un n de course. 3.3.5.4 Le groupe Broche

Les boutons de la premire range permettent de slectionner la direction de rotation de la broche : Sens anti-horaire, Arrt, Sens horaire. Les boutons de la range suivante augmentent ou diminuent la frquence de rotation. La case cocher de la troisime range permet dengager ou de relcher le frein de broche. Selon la conguration de votre machine, ces lments napparatront peut tre pas tous. 3.3.5.5 Le groupe Arrosage

Ces deux boutons permettent dactiver le Brouillard et l Arrosage ou de les dsactiver. Selon la conguration de votre machine, ces boutons napparatront peut tre pas tous.

3.3.6

Donnes manuelles

Longlet dentre de donnes manuelles (encore appel MDI), permet dentrer manuellement et une par une, des lignes de programme en G-code. Quand la machine nest pas en marche, ou quand un programme est en cours dexcution, cet onglet nest pas oprationnel.

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

22

F IGURE 3.4 Longlet Donnes manuelles

3.3.6.1

Historique

Afche les commandes prcdemment tapes au cours de cette session. 3.3.6.2 Commande MDI

Ce champ permet la saisie dune ligne de commande excuter. La commande sera excute par lappui de la touche Entre ou un clic du bouton Envoi . 3.3.6.3 G-Codes actifs

Ce champ afche les codes modaux actuellement actifs dans linterprteur. Par exemple, G54 indique que le dcalage dorigine G54 sera appliqu toutes les coordonnes qui seront entres.

3.3.7

Correcteurs de vitesse

En dplaant le curseur, la vitesse de dplacement programme peut tre modie. Par exemple, si un programme requiert une vitesse F60 et que le curseur est plac sur 120%, alors la vitesse rsultante sera de 72.

3.3.8

Correcteur de vitesse de broche

En dplaant ce curseur, la vitesse programme de la broche peut tre modie. Par exemple, si un programme requiert une vitesse F8000 et que le curseur est plac sur 80%, alors la frquence de rotation rsultante sera de 6400. Cet lment napparat que si la HAL pin motion.spindle-speed-out est connecte dans .ini.

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

23

3.3.9

Vitesse de Jog

En dplaant ce curseur, la vitesse de jog peut tre modie. Par exemple, si ce curseur est plac sur 100 mm/mn, alors un jog de 1 mm durera .6 secondes, ou 1/100 de minute. Du ct gauche du curseur (jog lent) lespacement des valeurs est petit alors que du ct droit (jog rapide) lespacement des valeurs est plus grand, cela permet une large tendue de vitesses de jog avec un contrle plus n du curseur dans les zones les plus importantes. Sur les machines avec axes rotatifs, un second curseur de vitesse est prsent. Il permet dajuster la vitesse de rotation des axes rotatifs (A, B et C).

3.4

Raccourcis clavier

La plupart des actions dAXIS sont accessibles depuis le clavier. La liste complte des raccourcis clavier est disponible dans laide rapide dAXIS qui safche en cliquant sur A IDE > A IDE RAPIDE. Beaucoup de ces raccourcis sont inaccessible en mode Entres manuelles. Les raccourcis clavier les plus frquents sont visibles dans la table 3.1. T ABLE 3.1 Raccourcis clavier usuels Touches Actions produites F1 Bascule larrt durgence F2 Bascule le marche/arrt machine , 1 .. 9, 0 Correcteurs de vitesse de 0% 100% X, Active le premier axe Y, 1 Active le deuxime axe Z, 2 Active le troisime axe A, 3 Active le quatrime axe I Slection dincrment du jog C jog en mode continu Ctrl+origine Lance une squence de POM Fin Toucher : valide loffset G54 de laxe actif Gauche, Droite Jog du premier axe Up, Down Jog du deuxime axe Pg Up, Pg Dn Jog du troisime axe [, ] Jog du quatrime axe O Ouvrir un chier Ctrl+R Recharger le chier courant R Excuter le programme P Pause dans lexcution du programme S Reprise de lexcution du programme ESC Stopper lexcution Ctrl+K Raffrachi le trac doutil V Dlement cyclique des vues prdnies

3.5

emctop : Afchage de ltat dEMC

AXIS inclut un programme appel emctop qui afche en dtail ltat demc. Ce programme est accessible dans le menu M ACHINE > F ENTRE D TAT D EMC 2 Le nom de chaque entre est afch dans la colonne de gauche. La valeur courante de chaque entre safche dans la colonne de droite. Si la valeur a chang rcemment, elle safche en surbrillance rouge.

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

24

F IGURE 3.5 Fentre dtat dEMC

3.6

mdi : Entre de donnes en texte (MDI)

AXIS inclut un programme appel mdi , il permet denvoyer des commandes la session dEMC2 en cours, sous forme de lignes de texte. Vous pouvez lancer ce programme en ouvrant une console et en tapant : mdi /path/to/emc.nml En cours dexcution il afche le prompt : MDI>. Quand une ligne vide est entre, la position courante de la machine est afche. Quand une commande est entre, elle est passe emc qui lexcute. Une courte session MDI est visible sur la gure 3.6.

F IGURE 3.6 Session MDI $ mdi ~/emc2/configs/sim/emc.nml MDI> (0.0, 0.0, 0.0, 0.0, 0.0, 0.0) MDI> G1 F5 X1 MDI> (0.5928500000000374, 0.0, 0.0, 0.0, 0.0, 0.0) MDI> (1.0000000000000639, 0.0, 0.0, 0.0, 0.0, 0.0)

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

25

3.7

axis-remote : Commande distance de linterface graphique dAXIS

AXIS inclut un programme appel axis-remote qui permet denvoyer certaines commandes vers lapplication AXIS fonctionnant distance. Les commandes disponibles sont visibles en faisant : axis-remote --help pour vrier quAXIS est en marche, inclure : (--ping), charger un chier, recharger le chier courant avec : (--reload) et quitter le programme AXIS avec : (--quit).

3.8

hal_manualtoolchange : Dialogue de changement manuel doutil

AXIS inclut un composant Hall appel hal_manualtoolchange , il ouvre une fentre dappel doutil (Figure 3.7) quand la commande M6 est invoque. Ds que le bouton Continuer est press, lexcution du programme reprend. Le chier de conguration .hal : configs/sim/axis_manualtoolchange.hal montre les commandes HAL ncessaires pour lutilisation de ce composant. hal_manualtoolchange peut tre utilis mme si linterface graphique AXIS nest pas en service. F IGURE 3.7 La fentre de changement manuel doutil

3.9

Modules en Python

AXIS inclut plusieurs modules en Python qui peuvent tre trs utiles. Pour des informations compltes sur ces modules, faites : pydoc ou lisez son code source. Modules inclus : emc fournit laccs aux commandes demc, son tat et aux chanes derreur gcode fournit laccs linterprteur rs274ngc rs274 fournit des outils supplmentaires pour travailler sur les chiers rs274ngc hal permet la cration par lutilisateur de composants de HAL crits en Python _togl fournit des lments OpenGL utilisables dans les applications Tkinter minigl fournit laccs aux sous-ensembles dOpenGL utiliss par AXIS Pour utiliser ces modules dans vos propres scripts, assurez-vous que le rpertoire o ils se trouvent est dans le chemin daccs des modules Python. Avec une version installe dEMC2, a se fera automatiquement. Avec une version installe en in-place , a peut tre fait avec laide de : scripts/emc-environmen

3.10

Utiliser AXIS pour contrler un tour CNC

En incluant cette ligne dans le chier ini le mode tour (lathe) sera slectionn :

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS [DISPLAY] LATHE = 1

26

Laxe Y ne sera pas visible dans lafchage des coordonnes, la vue sera modie pour placer laxe Z dans le sens gauche/droite et laxe X dans le sens avant/arrire et diffrents lments (tels que les icnes des vues prdnies) seront supprims. La touche V agit alors sur le zoom pour afcher le trac complet du chier charg. En mode tour (lathe), la forme de loutil charg est visible. F IGURE 3.8 Forme doutil visible en mode tour

3.113.11.1

Conguration avance dAXISFiltres de programme

AXIS a la capacit denvoyer des chiers chargs travers un ltre de programme . Ce ltre peut faire diverses tches : Simple, comme sassurer que le programme se termine bien par un : M2 ou complexe, comme dtecter que lentre est une image et gnrer le g-code qui permettra dusiner sa forme. La section [FILTER] du chier ini dni comment les ltres doivent agir. Premirement, pour chaque type de chier, crire une ligne : PROGRAM_EXTENSION puis, spcier le programme excuter pour chaque type de chier. Ce programme reoit comme argument le nom du chier dentre, il doit produire le code selon le standard rs274ngc, en sortie. Les lignes de cette sortie safchent alors dans la zone texte, le parcours doutil rsultant est visible dans la zone graphique, enn il sera excut quand emc recevra la commande Excuter le programme . Les lignes suivantes fournissent la possibilit dutiliser image-to-gcode , le convertisseur dimages fourni avec EMC2 : [FILTER]

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS PROGRAM_EXTENSION = .png,.gif Greyscale Depth Image png = image-to-gcode gif = image-to-gcode Il est galement possible de spcier un interprteur : PROGRAM_EXTENSION = .py Python Script py = python

27

De cette manire, nimporte quel script Python pourra tre ouvert et sa sortie traite comme du g-code. Un autre exemple est disponible dans : nc_files/holecircle.py. Ce script cre le g-code pour percer une srie de trous suivant un arc de cercle. F IGURE 3.9 Perages circulaires

Si la variable denvironnement : AXIS_PROGRESS_BAR est active, alors les lignes seront crites sur stderr de la forme : FILTER_PROGRESS=%d AXIS xera la barre de progression selon le pourcentage donn. Cette fonction devrait tre utilise pour un ltre qui fonctionne sufsamment longtemps.

3.11.2

La base de donnes des ressources X

Les couleurs de la plupart des lments de linterface utilisateur dAXIS peuvent tre personnalises grce la base de donnes X. Le chier : axis_light_background modie les couleurs de la fentre du parcours doutil sur le modle lignes noires et fond blanc , il sert aussi de rfrence des lments congurables dans lcran graphique.

CHAPITRE 3. LINTERFACE GRAPHIQUE AXIS

28

Pour plus dinformations au sujet des lments congurables dans les applications Tk, rfrez vous aux manuels de Tk. Les bureaux graphiques modernes effectuent certains rglages dans la base de donnes des ressources X ces rglages peuvent affecter ceux dAXIS, par dfaut ces rglages sont ignors. Pour que les lments des ressources X crasent ceux par dfaut dans AXIS, il faut inclure cette ligne dans vos ressources X : *Axis*optionLevel: widgetDefault ce qui entranera la construction des options au niveau widgetDefault , de sorte que les ressources X (qui sont elles, au niveau userDefault ) puissent lemporter.

3.11.3

Manivelle de jog

Pour accrotre linteraction dAXIS avec une manivelle de jog physique, laxe actif courant slectionn dans linterface graphique est aussi report sur une pin Hal avec un nom comme axisui.jog.x. Except pendant un court instant aprs que laxe courant ait chang, une seule de ces pins la fois est TRUE, les autres restent FALSE. Aprs quAXIS ait cr ces HAL pins , il excute le chier hal dclar avec : [HAL]POSTGUI_HALFILE. Ce qui diffre de [HAL]HALFILE, qui lui ne sutilise quune seule fois.

3.11.4

~/.axisrc

Si il existe, le contenu de : ~/.axisrc est excut comme un code source Python juste avant louverture de linterface graphique dAXIS. Les dtails de ce qui peut tre crit dans .axisrc sont sujets changement durant le cycle de dveloppement. Les lignes visibles sur la gure 3.10 ajoutent un Ctrl+Q comme raccourci clavier pour Quitter et activer loption Distance restante par dfaut. F IGURE 3.10 Exemple de chier .axisrc root_window.bind("", "destroy .") help2.append(("Ctrl+Q", "Quitter")) vars.show_distance_to_go.set(1)

3.11.5

Editeur externe

En dnissant : [DISPLAY]EDITOR, les options de menu : Fichier > Editer ainsi que Fichier > Editer la table doutils, deviennent accessibles. Deux valeurs qui marchent bien : EDITOR=gedit et EDITOR=gnome-terminal -e vim.

3.11.6

Panneau de contrle virtuel

AXIS peut afcher le chier xml pyVCP dans le panneau droit de linterface.

Chapitre 4

Linterface TkEMC4.1 Introduction

TkEMC est linterface utilisateur graphique la plus populaire aprs Axis, cest linterface traditionelle dEMC. Elle est crite en Tcl et utilise le toolkit Tk pour lafchage. Le fait dtre crite en TCL la rend vraiment trs portable (elle fonctionne sur une multitude de plateformes).

4.2

Utiliser TkEMC

Pour slectionner linterface graphique TkEMC avec EMC2, diter le chier .ini et dans la section [DISPLAY] modier lafchage comme ci-dessous : DISPLAY = tkemc Puis, lancer EMC2 et choisir ce chier ini. La conguration qui se trouve dans sim/tkemc.ini est dj congure pour utiliser TkEMC comme interface utilisateur. Quand EMC2 est lanc avec TkEMC, une fentre comme celle de la gure 4.1 safche.

4.2.1

Une session typique avec TkEMC

1. Lancer EMC2 et slectionner un chier de conguration. 2. Librer l Arrt dUrgence et mettre la machine en marche (en pressant F1 puis F2). 3. Faire l Origine Machine de chacun des axes. 4. Charger un chier dusinage. 5. Brider le brut usiner sur la table. 6. Faire l Origine Pice de chacun des axes, laide du jog ou en introduisant une valeur de dcalage dorigine aprs un clic droit sur le nom dun axe. 7. Lancer le programme. 8. Pour refaire une autre pice identique, reprendre ltape 6. Pour usiner une pice diffrente, reprendre ltape 4. Quand cest termin, quitter EMC2.

29

CHAPITRE 4. LINTERFACE TKEMC

30

F IGURE 4.1 Lafchage de TkEMC

4.3

Elments afchs par TkEMC

La fentre TkEMC contient les lments suivants : Une barre de menu permettant diverses actions ; Un jeu de boutons pemettant dagir sur le mode de travail, Marche/Arrt de la broche et autres lments ; Une barre de status pour lafchage des diffrents offsets ; Une zne dafchage des coordonnes ; Un jeu de curseurs pour contrler