astuce_pour_linuxcnc

Nous allons ici décrire l'ajout et la programmation d'un bouton sur l'interface Axis de LinuxCNC / EMC2

Exemple 1 : Créer un bouton de retour à l'origine.

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é :

  • Inclure l’interface Halui
  • Inclure un panneau pyVCP > Programme vierge
  • Inclure l’API ClassicLadder > Programme ladder vierge

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.

Exemple 2 : un bouton pour compenser l'origine en Z après un changement manuel d'outil

On reprend la même procédure vue précédemment :

  • on ajoute à MaCN.ini, dans la rubrique [HALUI] la commande suivante (supposant qu'on a déjà ajouté SUBROUTINE_PATH = /home/user/linucnc/configs/MaCN/ROUTINES/ dans la rubrique [RS274NGC]):
MDI_COMMAND = O <ch_outil> CALL
  • on ajoute à custom_postgui.hal
# paramétrage du bouton de changement d'outil
net remote-laserzero halui.mdi-command-01 <= pyvcp.ch_outil
  • on ajoute à custompanel.xml :
  <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>
  • et on ajoute un fichier ch_outil.ngc dans /home/user/linucnc/configs/MaCN/ROUTINES/ avec à l'intérieur :
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 :

  • l'outil va descendre rapidement jusqu'au palpeur
  • il remonte lentement d'un mm
  • il redescend lentement pour une mesure plus précise
  • il remonte de 30mm pour permettre le changement de l'outil

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

  • l'outil va descendre rapidement jusqu'au palpeur
  • il remonte lentement d'un mm
  • il redescend lentement pour une mesure plus précise
  • la différence de hauteur des outils est calculée et ajoutée en compensation Z de l'origine machine

On peut maintenant lancer un deuxième parcours d'usinage.

  • astuce_pour_linuxcnc.txt
  • Dernière modification: 2020/05/13 11:25
  • (modification externe)