Pour cela nous avons 3 fichiers de configuration à modifier et un fichier gcode à créer.
Rappel de la structure de configuration de LinuxCNC Lors de la création de notre machine avec l'assistant graphique de paramétrage Stepconf, à l'étape de configuration avancée, nous avons coché :
Après avoir validé toutes les étapes de configuration nous obtenons un répertoire /home/user/linucnc/configs/MaCN dans lequel se trouvent plusieurs fichiers.
Dans le fichier de configuration *MaCN.ini* nous allons ajouter, dans les rubriques suivantes: ``` [RS274NGC] SUBROUTINE_PATH = /home/user/linucnc/configs/MaCN/ROUTINES/
[HALUI] MDI_COMMAND = O <ret_origine> CALL ``` Dans [RS274NGC] on ajoute donc le chemin vers le répertoire qui contiendra le(s) sous-programme(s) en gcode appelés lors d'appui sur le(s) bouton(s) et dans [HALUI] c'est le nom de la commande de données manuelles à ajouter.
On modifie ensuite le fichier *custom_postgui.hal* qui est appelé après l'initialisation de l'interface graphique et on y ajoute :
``` # paramétrage du bouton de retour à l'origine net remote-rapid-to-home halui.mdi-command-00 ⇐ pyvcp.ret_origine ```
On modifie aussi le fichier *custompanel.xml* en ajoutant entre les balises <pyvcp> </pyvcp> :
```
<hbox> <relief>RAISED</relief> <bd>5</bd> <button> <halpin>"ret_origine"</halpin> <text>"Retour Origine"</text> <font>('Fixed',14)</font> <width>10</width> </button> </hbox>
```
Enfin on créé le fichier gcode *ret_origine.ngc* dans /home/user/linucnc/configs/MaCN/ROUTINES/ avec à l'intérieur :
``` (ret_origine.ngc)
O <ret_origine> sub G0 Z0 G0 X0 Y0 O <ret_origine> endsub
M2 ```
Et voilà !
Lors du prochain démarrage de LinuxCNC vous aurez un bouton en haut à droite pour retourner à l'origine.
On reprend la même procédure vue précédemment :
SUBROUTINE_PATH = /home/user/linucnc/configs/MaCN/ROUTINES/ dans la rubrique [RS274NGC]):
``` MDI_COMMAND = O <ch_outil> CALL ```
``` # paramétrage du bouton de changement d'outil net remote-laserzero halui.mdi-command-01 ⇐ pyvcp.ch_outil
```
```
<hbox> <relief>RAISED</relief> <bd>5</bd> <button> <halpin>"ch_outil"</halpin> <text>"Ch. Outil"</text> <font>('Fixed',14)</font> <width>10</width> </button> </hbox>
```
``` O<ch_outil> SUB
G49 (supprime la compensation) G91 (passe en coordonnées relatives)
G38.2 Z-110 F200 (descente rapide vers le palpeur) G1 Z1 F20 (on remonte lentement d'un mm) G38.2 Z-10 F10 (descente très lente vers le capteur pour une mesure précise)
#<_RefZ> = #5063 (stocke la valeur Z de référence)
G1 Z30 F500 (remonte pour permettre le changement d'outil)
T0 M6 (appelle le changement d'outil)
G38.2 Z-110 F200 (descente rapide vers le palpeur) G1 Z1 F20 (on remonte d'un mm) G38.2 Z-10 F10 (descente lente vers le capteur pour une mesure précise)
#<_NewRefZ> = #5063 (stocke la nouvelle valeur Z)
G43.1 Z[#<_NewRefZ> - #<_RefZ>] (applique le décalage calculé)
G90 (repasse en coordonnées absolues)
O<ch_outil> ENDSUB
```
Dans la pratique, à la fin d'un premier parcours d’usinage, il suffira de positionner le capteur sous l'outil puis cliquer sur le bouton :
Une fenêtre indique qu'il faut procéder au changement manuel d'outil Une fois l'outil en place, on valide en cliquant sur Continuer
On peut maintenant lancer un deuxième parcours d'usinage.