Ceci est une ancienne révision du document !
Manuel (en) : commissioning manual
Manuel (fr) :G-Code Proxxon FF500 CNC
Quand vous travaillez sur la machine commencez par exécuter ces 5 lignes :
Prêtez une grande attention au mode de déplacement : En mode relatif (directive G91), quand vous tapez G00 X10 la machine déplacera l'outil de 10mm vers la droite (en fait la table de 10mm à gauche).
En mode absolu, il arrive que vous ne sachiez pas du tout ou un G00 X10 vous amènera; ça peut très bien commander un déplacement bien plus important dans un sens inattendu.
Le langage supporté pas la machine n'est pas forcement exactement ce à quoi on a l'habitude avec grbl/EMC2 et Cie. il faut donc s'adapter un peu :
F
) n'est pas définie en mm/min comme à l'habitude mais en 0.1mm/s: On divise la vitesse de coupe en m/min par 6 pour avoir des mm/s (6m/min ⇒ F1).knc
Pour calculer les vitesses d'usinage il est possible d'utiliser la calculatrice de vitesses de coupes (⚠️ Attention : ces vitesses restent indicatives)
Il y a plusieurs possibilités pour générer du GCode selon les besoin (cf. section logiciels du wiki). Les logiciels suivants on déjà été utilisés avec cette CNC :
'.knc
', le gcode de jscut semble être directement compatible avec nccad.⇒ Exemple concret d'utilisation de la machine : Fabrication d'un Écrou de fixation en T :
Les pinces (Type ER20 / DIN 6499-B) disponibles sont de diamètres : ∅12 ∅10 ∅8 ∅6 (mm)
Création d'un script custom permettant de génerer des fichier qui fonctionnent avec nccad(le logiciel de pilotage de la proxxon).
M05
peut peut être donner la possibilité de mettre la machine en pause pour changer l'outil et refaire le Z. A tester !
Ajouter cette ligne dans /usr/share/heekscnc/machines.xml
<Machine post="knc" reader="iso_read" suffix=".knc" description="Proxxon/nccad KNC" output_tool_definitions="False" output_h_and_d_at_tool_change="False" output_g43_on_tool_change_line="False" output_internal_coolant_commands="False" />
et créer ce fichier dans le répertoire /usr/lib/heekscnc/nc
:
import nc import emc2b class NoAddress(): def __init__(self, *args, **kwargs): self.str = None def set(self, *args,**kwargs): pass def write(self, *args,**kwargs): return '' class Creator(emc2b.Creator): def __init__(self): emc2b.Creator.__init__(self) self.s = NoAddress() self.can_do_helical_arcs = False self.output_tool_definitions = False def COOLANT_OFF(self): return('') def COOLANT_MIST(self): return('') def COOLANT_FLOOD(self): return('') def TOOL(self): return('') def TOOL_DEFINITION(self): return('') def imperial(self): raise RuntimeError('Machine only support metric mode') def metric(self): self.fmt.number_of_decimal_places = 3 def set_plane(self, plane): if (plane != 0) : raise RuntimeError('Machine only support XY plane mode') def polar(self, on=True): if (on) : raise RuntimeError('Machine does not support polar mode') def set_temporary_origin(self, x=None, y=None, z=None, a=None, b=None, c=None): raise RuntimeError('Machine does not support temporary origin') def PROGRAM_END(self): return( 'M02') def program_begin(self, id, comment): self.write( '(GCode adapted to .knc file for proxxon milling machine.)\n') emc2b.Creator.program_begin(self, id, comment) self.write( '\n(Starting Spindle)\n' ) self.write('M10 O6.1\n') def tool_change(self, id): if self.output_comment_before_tool_change: self.comment('tool change to %s - %s' %( self.tool_defn_params[id]['name'], self.z_for_g53)) self.write('M05\n') self.write('G54 Z0') nc.creator = Creator()
Puis,après avoir redémarré heekscad, sélectionner la machine Proxxon/nccad KNC
(clic droit sur “Programme CN” dans l'arbre de gauche, puis “Éditer”)
Il n'y a aucune manette de contrôle.
Que ce soit lors de la mise en place ou lors du nettoyage vous devrez passer par la console de commande pour ordonner un mouvement à la machine en G-Code.
Déplacements machine en relatif :
Axe | Positif | Négatif |
---|---|---|
X | Table vers la gauche (Outil à droite) | Table vers la droite (Outil à gauche) |
Y | Table vers vous (Outil vers le fond) | Table vers le fond (Outil vers vous) |
Z | Outils vers le haut | Outil vers le bas |
En absolu on part du WNP (G54), il n'y a donc aucune garantie quand au sens de déplacement.
Vérifiez bien le mode (Absolu ou relatif) dans la console de commande quand vous êtes en mode manuel.
WNP : Werkstück NullPunkt : Point origine programme ou pièce.
C'est le point d'origine des coordonnées en mode absolu.
Code | Explication | Exemple |
---|---|---|
G00 | Ligne droite à l'avance maximale. le point d'arrivée dépend du mode relatif ou absolu (G90 ou G91) | 2D Position: G00 X20 Y-5 |
G01 | Ligne droite à l'avance de travail actuelle F le point d'arrivée dépend du mode relatif ou absolu (G90 ou G91) | G01 X-345.02 Z-45 F30 30*6=180m/s |
G02 | Mouvement circulaire dans le sens des aiguilles d'une montre | G02 D50 I40 J-5 F5 |
G03 | Mouvement circulaire dans le sens inverse des aiguilles d'une montre | G03 D20 I70 K25 F5 |
G20 | GOTO ⇒ Saut vers le label indiqué | Uniquement dans un fichier KNC |
G22 | GOSUB ⇒ Saut vers un sous-programme terminé par G99 | Uniquement dans un fichier KNC |
G24 | FOR-NEXT ⇒ Répéter les lignes jusqu'à G98 | Uniquement dans un fichier KNC |
G54 | UNIQUEMENT EN MODE COMMANDE : Définition du WNP | Ne fonctionne pas dans un fichier KNC |
G60 | | G60 H5 B2 Z1 D90 S2 F100 |
G61 | | G61 KOSY-Essai de gravure |
G74 | Aller à la vitesse maxi (G00) et en ligne droite sur le WNP (Défini par G54) | G74 |
G76 | Aller à la vitesse maxi (G00) et en ligne droite sur le point d'origine de la machine | G76 Table au fond et à droite, tête au plus haut. |
G77 | Position de dégagement : Facilite la mise en place d'une pièce | G77 Table vers vous et à droite, tête au plus haut. |
G79 | | G79 X10 Y20 Z0 G79 X20 Z15 |
G81 | | G81 Z5 B2 F48 |
G87 | | G87 X30 Y20 Z1 B2 J0 K0.7 T2 F48 |
G88 | | G88 X40 Y20 Z2 B1 J0 K0.8 T3 F40 |
G89 | | G89 Z2 B2 R25 J0 K0.9 T2.5 F40 |
G90 | Mode de coordonnées absolues avec origine en WNP (défini par G54) | G90 |
G91 | Mode de coordonnées relatives. | G91 |
G98 | Fin de boucle FOR-NEXT (G24) | Uniquement dans un fichier KNC |
G99 | Fin de programme ou fin de sous programme (G22) | Uniquement dans un fichier KNC |
M01 | Interruption / Interruption du programme CN | M01 |
M02 | (Tour) | M02 ou M02 U0 (axe U) M02 C0 (axe C) |
M03 | (Tour) | M03 Snn o. M03 U0 Snn (axe U, n=tours) M03 C0 Snn (axe C, n=tours) |
M04 | (Tour) | M04 Snn o. M04 U0 Snn (axe U, n=tours) M04 C0 Snn (axe C, n=tours) |
M05 | Interruption / Avec possibilité d'intervention manuelle | M05 |
M10 | Commande des relais / Connexion de relais particuliers (Le relais 6 commande la broche) | M10 O3.1 ou: M10 O5.0 |
M15 | Test des entrées digitales/ Interruption, jusqu'à ce que l'état souhaité soit atteint | M15 I3.0 ou: M15 I2.1 |
M20 | *Mettre tous les relais au repos | M20 |
M25 | Tension réglable / Tension variant environ de 1 à 24 V | M25 U12.5 |
M30 | Temps d'attente en 1/18 sec. / La pause du programme se termine au temps donné | M30 P9 ; attendre 9/18=0,5 sek. |
M35 | *Attente de l'heure / Démarrage du programme à l'heure donnée | M35 W13.15 |
La machine n'a pas de cerveau, quand vous l'envoyez quelque-part elle obéira et décrira une parfaite ligne droite sans aucune considération pour votre pièce, votre système de fixation, voir vos mains.
C'est à vous de lui taper par exemple un G91 suivi d'un G00 Z100 pour la sortir strictement à la verticale avant d'aller ailleurs si nécessaire.
Fusion 360 est un logiciel de CAD et CAM: vous réalisez la conception 3D de votre pièce, les stratégies d'usinage que vous allez utiliser ainsi que la génération de gcode dans un seul logiciel. C'est un outil nécessitant une licence: elle est gratuite pour les étudiants, les bricoleurs et les entreprises qui font moins de 100.000$ de chiffre d’affaire par an, soit à peu près tout le monde.
Je me concentre ici sur le l'export de gcode pour la machine ainsi que l'importation d'outils, mais Autodesk fournit d'excellents tutoriels pour le cad et le cam en ligne (en anglais malheureusement, mais les vidéos sont très compréhensibles).
La première chose à faire et d'aller sur l'onglet “tool library” Cliquer sur l'onglet Local: c'est votre répertoire d'outils.
Comme vous le voyez, j'en ai déjà quelques uns mais vous n'aurez rien. Nous allons donc créer un nouvel outil. Pour cela, vous aurez besoin de votre outil et d'un pied à coulisse (ou de la fiche technique).
Cliquer sur “new mill tool”
Dans le menu “General”, donnez un petit nom à l'outil dans l'onglet “description” Dans le menu “Cutter”, commencez par sélectionner le type d'outil dans le menu déroulant puis rentrer les caractéristiques demandées. C'est ici qu'intervient le pied à coulisse. Sautez directement dans l'onglet “feed and speed” et rentrez la vitesse de rotation que vous utilisez pour l'outil, ainsi que l'épaisseur du copeau. Le reste se calcule automatiquement. Rentrez la même épaisseur de copeau (en plus léger) multiplié par le nombre de dents dans la partie “vertical feedrate” (j'ai dans l'image suivante 2 dents sur ma fraise)
Note: toutes les valeurs que vous rentrez dans cet onglet pourront être modifiées facilement lors de sans revenir dans ce menu selon le matériau utilisé: rentrez donc votre favori ici
Ce que vous obtenez ressemble normalement à peu près à ça:
Vous voici donc paré pour pouvoir concevoir votre stratégie d'usinage!
Exporter son gcode:
Pour ces étapes suivantes, il faut avoir fait une pièce et au moins une stratégie d'enlèvement de matière.
Comme la machine mange du kosy, il va falloir la nourrir avec du kosy. Heureusement, Autodesk fournit un post-processeur qui fait presque le travail. Comment ça “presque”? En effet, comme le feedrate F de la machine est en 0.1mm/s, ce qui n'est pas standard, il va falloir modifier le fichier de “règles” de Fusion. Pour cela cliquer sur “Post Process”
Dans la fenêtre qui s'ouvre, cherchez kosy
Cliquez sur “open config” juste à coté et une magnifique fenêtre de code s'ouvre. Allez ligne 59 et rajoutez “scale:1/6.0” comme sur l'image ci-dessous.
N'oubliez pas d'enregistrer!
Pour exporter le gcode, deux solutions sont possibles: 1) Exporter une seule stratégie: pour cela clic droit sur la stratégie et cliquer sur “Post Process” 2) Exporter toutes les stratégies: clic droit sur “Setup” et puis “Post Process”
Dans les deux cas on se retrouve dans la même fenêtre que tout à l'heure.
Rechoisissez kosy en tant que post processeur, puis le dossier d'export (ici dans Mes Documents de l'admin) et le nom (ici Op1)
Laissez la case “open NC file in editor” cochée et cliquez sur Post
Votre code s'affiche devant vos yeux (ébahis), vérifiez que le feedrate F est bien celui qui correspond: celui de Fusion est en mm/min et celui de la fraiseuse en 0.1mm/s Pour passer de Fusion à la fraiseuse, vous devriez avoir une division par 6. Si ce n'est pas le cas, c'est que vous avez sans doute mal enregistré la modification du post processeur: recommencez