Découpeuse laser Electronique Software

Nouveau shield FluidNC K40

Written by Avataar120

J’ai décidé de basculer sur FluidNC (successeur de ESP32 GRBL qui n’était plus maintenu)
A cette occasion, j’ai développé une nouvelle carte FluidNC K40 qui offre plus de fonctions

Je devrais être en mesure de le proposer à la vente sous quelques jours.

Nouvelle électronique pour K40 - FluidNC K40 - Compatible Lightburn
Nouvelle électronique pour K40 – FluidNC K40 – Compatible Lightburn

Liste des modifications principales :

  • Utilisation de FluidNC qui est le successeur de GRBL ESP32
  • 4 axes (pour pouvoir gérer une machine avec deux moteurs sur un axe comme les machines XYYZ par exemple – 1 moteur pour axe X, 2 moteurs pour axe Y et 1 moteur pour axe Z)
  • Possibilité d’avoir un moteur avec un driver externe (si besoin d’utiliser un NEMA23 pour l’axe Z par exemple)
  • 1 seul relai à contact sec contre 2 auparavant (le 2ème était peu utilisé par mes clients)
  • Ajout d’un étage d’alimentation

Fonctions toujours présentes ou améliorées :

  • Pilotage de la carte en WIFI y compris avec Lightburn en direct
  • SDCARD pour stocker les GCODEs
  • Pilotage en local via une interface Web
  • Pilotage intégral du laser via Lightburn ou autre logiciel utilisant le GCODE
    (mouvements et puissance laser)

L’utilisation et la mise en oeuvre est très proche de la version précédente

Installation de Lightburn

Commencez par installer Lightburn en respectant mes instructions

Connexion du shield FluidNC K40 à votre ordinateur

On va commencer par tester la connexion de l’ESP32 à votre PC sans installer le shield dans la K40.

Connectez le câble USB de votre PC à votre ESP32

Ensuite, sous lightburn, cliquez sur l’onglet “Console” de la colonne de doite. Vous devriez voir quelque chose comme :

Console de Lightburn
Premier démarrage

Cliquez maintenant avec le bouton droit de votre souris sur le bouton “Devices” dans la colonne de droite.
Ceci à pour effet de relancer la connexion USB/Série entre Lightburn et l’ESP32.
Vous devriez voir les indications semblables à celle ci-dessous sur la console :

Si c’est le cas, votre ordinateur et votre découpeuse laser sont bien connectées ensemble.

Dans le cas contraire, vérifiez bien :

  • Que la vitesse de connexion USB est bien la bonne (Edit/Device Settings) : elle devrait être sur 115200 ou 921600 bauds
  • Que le contrôle DTR est bien activé (Edit/Device Settings)

Il se peut également que le driver USB ne soit pas compatible de votre ESP32.
Il convient alors de télécharger et d’installer la bonne version en allant ici :
https://www.silabs.com/developers/usb-to-uart-bridge-vcp-drivers
et en choisissant la version CP210x Windows Drivers with Serial Enumerator

Si ça ne fonctionne toujours pas, il est possible que vous ayez plusieurs périphériques sur votre PC qui utilisent les ports COM.
Allez dans le gestionnaire de périphériques de votre ordinateur (touche Windows+R et entrez devmgmt.msc)
Cherchez les périphériques COM et LPT

Notez le numéro du port COM associé au driver Silicon Labs CP210x installé juste avant et vérifiez que Lightburn utilise bien le même port COM :

Installation du shield FluidNC K40 dans votre découpeuse laser

Les branchements sont extrêmement simples, mais faites bien attention à bien les respecter pour le pas endommager votre shield FluidNC K40 ou pire votre découpeuse laser.

Voici un aperçu du shield FluidNC K40 :

  • Bloc rouge : connecteur des fins de courses et bouton de contrôle de FluidNC (ex GRBL)
  • Bloc bleu : contrôle du laser
  • Bloc orange : alimentation du shield FluidNC K40 et des moteurs pas à pas
  • Bloc jaune : connecteur pour la nappe des K40s (si votre K40 n’est pas équipée avec une nappe, pas de problème, le shield FluidNC K40 est tout de même compatible de votre machine)
  • Blocs blancs : connecteurs pour brancher les moteurs pas à pas des axes de votre machine

Aperçu des 3 alimentations classiques dans une K40 (si votre machine utilise une autre alimentation n’hésitez pas à me contacter, le shield FluidNC K40 sera tout de même compatible)

Type 1 (connecteurs verts)

Type 2 (connecteurs blancs)

Type 3 (boitier noir – en général pour des lasers de puissance > 50W)

Toutes ces alimentations ont un connecteur pour l’alimentation 220V secteur (connecteur le plus à gauche) -> ne pas toucher à ce connecteur, il doit rester tel quel.

Sur les autres connecteurs, débranchez tout SAUF :

  • Les broches P et le G qui est à côté
  • L’éclairage et la ventilation qui sont sur les broches 24V en général. Si vous les débranchez quand même, ce n’est pas grave pour les tests, il faudra au moins rebrancher la ventilation ensuite.
  • Vous devriez donc avoir complètement débranché l’ancienne carte principale de votre K40 ainsi que la carte du capot si votre K40 en a une

IMPORTANT :
Pour autoriser un tir laser, toutes ces alimentations doivent avec un circuit fermé au niveau des broches P et G pour les types 1 et 2 et entre Water Protection et Signal Ground pour le type 3.
Autrement dit, si vous avez un contacteur de capot, un bouton rouge d’autorisation laser sur le chassis de votre découpeuse laser ou toute autre protection, ceux ci doivent être connectés entre ces deux broches. Tant qu’il n’y a pas de circuit fermé entre ces deux broches, le laser ne pourra pas tirer.

Connecteur alimentation (orange) du shield FluidNC K40 :

  • brancher le côté + sur la sortie 24V de votre alimentation. Les alimentations type 3 n’ont pas de sortie 24V. Il faut donc une alimentation dédiée.
  • brancher le côté – sur le G le plus proche du 24V sur votre alimentation.

Connecteur Laser Mngt (Bleu) du shield FluidNC K40 :

  • brancher la pin ENA (L) sur l’entrée L de l’alimentation de votre machine (pour les alimentations de type 1, choisissez l’entrée L du connecteur central)
  • brancher la pin PWM (IN) sur l’entrée IN de l’alimentation de votre machine
  • brancher la pin GND sur l’entrée G la plus proche de IN sur l’alimentation de votre machine

Connecteur Controls & Limits (Rouge) du shield FluiNC K40 :

  • Si vous avez une K40 avec cable nappe, les contacteurs de fin de course sont déjà connecté via ce cable pour les axes X et Y -> pas besoin de brancher quoi que ce soit sur les pin limX et limY
  • Si votre K40 n’a pas de cable nappe, il faudra brancher les fins de course sur les entrées LimX et LimY
  • Si vous avez un lit motorisé, branchez le contacteur de fin de course de ce lit sur l’entrée LimZ
  • Si vous le souhaitez, vous pouvez câbler des boutons/capteurs sur les entrées :
    • Hold : permet de mettre un travail en pause (le laser est coupé, mais le air assist reste actif)
    • Start : Permet de reprendre un travail interrompu
    • Door : Si ce capteur est activé, la machine s’arrêtera ainsi que l’air assist. Reprise possible en appuyant sur bouton start
    • Reset : pour redémarrer l’ESP 32 et le shield FluidNC K40

Connecteurs Moteurs (blancs) du shield FluidNC K40 :

  • Connecteur MotX : si votre machine est équipée d’un câble nappe, ne rien brancher sur ce connecteur. Sinon, brancher le connecteur du moteur pas à pas de l’axe X
  • Connecteur MotY : brancher le connecteur du moteur pas à pas de l’axe Y
  • Connecteur MotZ : si vous avez un lit motorisé, brancher le connecteur de son moteur pas à pas

Connecteur K40 flex connector (Jaune) du shield FluidNC K40 :

  • Soulevez le connecteur pour le déverrouiller
  • Insérer le cable nappe, contacts vers l’extérieur du shield FLuidNC K40
  • Poussez le connecteur pour le verrouiller

IMPORTANT :
Vérifier une nouvelle fois toutes vos connexions et en particulier la connexion de l’alimentation pour vérifier que la polarité est bien respectée.

Premiers déplacements

Lors du premier démarrage, il est important de vérifier que tous les axes se comportent comme nous l’attendons et qu’un mouvement se produit bien dans le bon sens et sur la bonne distance.

Ne cliquez surtout pas à ce stade sur le bouton “HOME”

Placez à la main la tête de votre machine laser au centre de la zone de travail (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main)

Tant que le “HOME” n’a pas été fait, FluidNC K40 interdit les mouvements.
Comme on ne peut pas faire de “HOME” encore à ce stade, on va entrer la commande suivante dans la console de Lightburn (onglet console de la colonne de droite) pour débloquer les mouvements des axes :

$x

Cliquez sur l’onglet “move” dans la colonne de droite de Lightburn
Vous devriez voir la fenêtre suivante :

Remplacez les valeurs de distance par 10mm et de vitesse par 10mm/s. Cela va nous permettre de vérifier le sens de déplacement.

Cliquez sur la flèche “droite” de l’interface de Lightburn

  • Si le déplacement s’opère bien vers la droite -> tout va bien
  • Si l’axe X est connecté via un câble nappe sur votre K40, le sens de déplacement est forcément correct. Si ce n’est pas le cas, merci de me contacter.
  • Si votre machine n’a pas de câble ruban et si le déplacement s’opère sur la gauche, il faut intervenir. Le plus simple est de retourner le connecteur de votre moteur pas à pas sur le Shield (cas où il n’y a pas de câble ruban)
  • S’il n’y a pas de mouvement, si le moteur pas à pas rate des pas, ou si la machine vibre, allez au chapitre Troubleshooting ci-dessous.

Remettez la tête laser manuellement en position centrale (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main) et vérifiez une nouvelle fois que le mouvement sur l’axe X (flèche droite et gauche de l’interface lightburn) fonctionnent maintenant correctement

Cliquez sur la flèche “bas” de l’interface de Lightburn (celle représentant un chevron vers le bas)

  • Si le déplacement s’opère bien vers le bas-> tout va bien
  • Si le déplacement s’opère vers le haut, il faut intervenir. Le plus simple est de retourner le connecteur de votre moteur pas à pas sur le Shield
  • S’il n’y a pas de mouvement, si le moteur pas à pas rate des pas, ou si la machine vibre, allez au chapitre Troubleshooting ci-dessous.

Remettez la tête laser manuellement en position centrale (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main) et vérifiez une nouvelle fois que le mouvement sur l’axe Y (flèche droite et gauche de l’interface lightburn) fonctionnent maintenant correctement

Cliquez sur la flèche “bas” de l’interface de Lightburn (celle représentant une flèche vers le bas avec un trait intermittent)

Nous attendons que le lit motorisé se déplace vers le … haut !! (en effet, les logiciels de CNC fonctionnent par rapport à l’outil ici le laser.
Si on demande à faire descendre l’outil (ici le laser), on demande en fait à réduire la distance entre la pièce et le laser. Sur notre K40, comme c’est le lit motorisé qui gère la distance entre le laser et la pièce, cela revient à faire monter le lit.

  • Si le déplacement du lit s’opère bien vers le haut-> tout va bien
  • Si le déplacement s’opère vers le bas, il faut intervenir. Le plus simple est de retourner le connecteur de votre moteur pas à pas sur le Shield
  • S’il n’y a pas de mouvement, si le moteur pas à pas rate des pas, ou si la machine vibre, allez au chapitre Troubleshooting ci-desous.

Remettez la tête laser manuellement en position centrale (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main et vérifiez une nouvelle fois que le mouvement sur l’axe Z (flèche haut et bas de l’interface lightburn) fonctionnent maintenant correctement

Réglage de l’axe Z

Si vous n’avez pas d’axe Z (pas de lit motorisé), vérifiez bien que FluidNC K40 n’est pas paramétré pour demander un homing de l’axe Z, sinon le homing ne se déroulera pas bien. Si pas de lit motorisé, entrez donc les commandes suivante dans la console

$axes/z/homing/cycle=
$cd=config.yaml

Le réglage de l’axe Z (quand vous disposez d’un lit motorisé) peut être un peu … fastidieux.

Les étapes suivantes ne sont à réaliser qu’une seule fois. Ensuite, FluidNC K40 mémorise les informations en mémoire non volatile et ne les perdra pas.

  • Vérifier que votre FluidNC K40 est bien configuré en mode coordonnées Workspace (paramètre $10 ou Lightburn/Edit/Machine Settings)
  • Vérifier que votre axe Z n’est pas en mode relatif (Lightburn / Edit / Device Setting / Relative Z moves only doit être à 0
  • Vérifier que votre lit fonctionne à l’envers 🙂 c’est à dire que si vous demandez un mouvement vers le bas via Lightburn / Move, le lit montera
  • Réaliser un Homing, en cliquant sur le bouton Home de la fenêtre lightburn ou en tapant $H dans la console de lightburn
  • Une fois le homing terminé, entrez la commande G10 L20 P0 X0Y0Z0 dans la console de lightburn qui aura pour effet de prendre la position actuelle et de considérer que c’est l’origine de tous vos axes
  • Identifiez à peu près quelle est la valeur de votre focus (il faut à peu près 50.8mm entre la lentille et le matériau), donc si vous mesurez 60mm entre le haut de votre matériau et le bas de la tête laser, commencez par 60-51 = 9mm
  • Entrez cette valeur dans la case Matérial (mm) – on se fiche de l’épaisseur réelle du matériau à ce stade
  • Tracez une ligne avec lightburn sur votre matériau avec une puissance et une vitesse compatible d’une gravure (pas d’une coupe). Vérifiez au préalable dans les paramètres de la layer que l’offset est bien à 0 !
  • Cherchez autour de cette valeur, en faisant varier la valeur de l’épaisseur du matériau dans lightburn quelle est la meilleure valeur, c’est à dire la valeur pour laquelle la ligne est la plus fine
  • Une fois la bonne valeur trouvée, on va recaler le Z de FluidNC K40 avec la commande G10 L20 P0 X0Y0Zmonz où monz doit être remplacé par l’épaisseur de votre matériau. Ex, si mon contreplaqué fait 3,3mm d’épaisseur, j’entrerai G10 L20 P0 X0Y0Z3.3
  • Mettre maintenant dans la case material (mm) de lightburn la vraie épaisseur de votre matériau
  • Ca y est ! Votre Z est calibré !

Troubleshooting

Lors du premier démarrage, il est nécessaire de régler la puissance maximale autorisée par les drivers de moteur pas à pas.

Normalement les drivers ont déjà été réglés par mes soins.

Cependant, les frottements, moteurs, axes, … étant différents d’une machine à une autre, il est sans doute nécessaire d’ajuster les réglages.

Si votre axe ne bouge pas, ou s’il rate des pas, ou s’il est bruyant ou encore qu’il vibre, n’hésitez pas à regarder des vidéos sur youtube pour apprendre à régler vos drivers.

De mon côté, j’applique la méthode suivante :

  • Je tourne la vis de réglage du driver incriminé jusqu’au blocage en tournant dans le sens des aiguilles d’une montre (sur un DRV8825) – celà met la puissance au minimum.
  • Mettez votre tête laser manuellement au milieu de la zone de travail
  • Régler un mouvement long sur l’axe incriminé : 100mm pour l’axe X, 80mm pour l’axe Y, 10mm pour l’axe Z
  • Régler une vitesse lente de déplacement : 10mm/s quelque soit l’axe que vous réglez
  • Lancez un mouvement sur l’axe concerné via lightburn
  • Pendant le mouvement, tournez très doucement la vis de réglage du driver dans le sens contraire des aiguilles d’une montre. Le mouvement devrait démarrer
  • Cherchez le meilleur compromis pour le pas rater de pas et éviter bruit/vibrations (en tournant en sens inverse des aiguilles d’une montre), tout en restant au réglage minimum (en tournant dans le sens des aiguilles d’une montre)

Si malgré cela votre moteur pas à pas continue à refuser de bouger ou qu’il vibre énormément, vous avez sans doute un problème de câblage (mauvaise connexion d’un des 4 fils du moteur pas à pas) ou mauvais branchement dans l’ordre des fils du moteur pas à pas.

Vérification des butées de fin de course

Nous allons vérifier les 3 fins de course de la machine

Pour cela, mettre la tête laser au centre du lit à la main (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main)
Entrez la commande “?” dans la console de lightburn

La réponse devrait être du style : <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0>
Cela signifie qu’aucun des capteurs de fin de course n’est détecté

Si au contraire vous obtenez quelque chose du style : <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0|Pn:XYZ|WCO
“Pn:XYZ” signifie que vos fins de course sont inversées.
Il faudra les changer dans la configuration de FluidNC K40
Dans mon exemple, il faut donc inverser les fins de course des trois axes X, Y et Z
De votre côté, il faudra intervertir seulement les fins de courses qui sont mentionnées dans Pn:…

Pour intervertir un axe, il faut entrer les commandes suivantes dans la console de lightburn :

Pour l’axe X :
$axes/x/motor0/limit_neg_pin

FluidNC 40 répondra $/axes/x/motor0/limit_neg_pin=gpio.39

Pour intervertir la fin de course de cet axe, j’entrerai alors les commandes :

$/axes/x/motor0/limit_neg_pin=gpio.39:low
$cd=config.yaml

Pour l’axe Y :

$axes/y/motor0/limit_neg_pin

FluidNC K40 répondra $/axes/y/motor0/limit_neg_pin=gpio.34

Pour intervertir la fin de course de cet axe, j’entrerai alors les commandes :

$/axes/y/motor0/limit_neg_pin=gpio.34:low
$cd=config.yaml

Pour l’axe Z :

$axes/z/motor0/limit_neg_pin

FluidNC K40 répondra $/axes/z/motor0/limit_neg_pin=gpio.35:low

Pour intervertir la fin de course de cet axe, j’entrerai alors les commandes :

$/axes/z/motor0/limit_neg_pin=gpio.35
$cd=config.yaml

Une fois que vous obtenez bien une réponse du style <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0> (c’est à dire sans la mention Pn:….), vos capteurs de fin de course sont correctement configurés.

On va maintenant vérifier qu’ils fonctionnent bien …

Mettez la tête laser au centre de l’axe X, et en butée haute de l’axe Y à déplaçant la tête à la main (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main).
Vérifiez que vous obtenez une réponse du type : <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0|Pn:Y|WCO> à la commande “?”
Seule l’information Pn:Y doit être présente.
Si ce n’est pas le cas, vous avez un problème de câblage, vérifiez tout !

Mettez la tête laser au centre de l’axe Y, et en butée gauche de l’axe X à déplaçant la tête à la main (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main).
Vérifiez que vous obtenez une réponse du type : <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0|Pn:X|WCO> à la commande “?”
Seule l’information Pn:X doit être présente.
Si ce n’est pas le cas, vous avez un problème de câblage, vérifiez tout !

Remettez la tête au centre de la zone de travail en la déplaçant à la main (il faut couper l’alimentation de la machine ou entrer la commande $md dans la console de lightburn pour pouvoir déplacer la tête à la main).
Avec un moyen type tournevis fin, appuyez sur la fin de course de votre lit motorisé. Pendant que vous appuyez, vérifier que que vous obtenez une réponse du type : <Idle|WPos:0.000,0.000,7.700|Bf:31,127|FS:0,0|Pn:Z|WCO> à la commande “?”
Seule l’information Pn:Z doit être présente.
Si ce n’est pas le cas, vous avez un problème de câblage, vérifiez tout !

A ce stade, vos butées de fin de course doivent fonctionner correctement

Premier Homing

Soyez alerte car le mouvement sera sans doute assez rapide.
En cas de problème, vous appuierez immédiatement sur le bouton arrêt d’urgence de votre machine pour éviter un crash des axes.

Appuyez sur le bouton “Home” de l’interface de Lightburn
Les axes X et Y commencent leur homing et une fois qu’ils ont terminé, l’axe Z réalise son homing.

Si un déplacement ne s’effectue pas dans le bon sens, arrêtez immédiatement la machine avec le bouton d’arrêt d’urgence et contactez moi. Attention, le bouton “Stop” de l’interface Lightburn n’a aucun effet sur une manœuvre de Homing.

Retestez le bouton “home” et ajustez le sens de homing de l’axe Z si nécessaire.

Si vous arrivez à ce stade, vous devriez avoir une machine en mesure de réaliser une opération de Homing

Vérification des distances parcourues

Lancez une gravure d’un carré de 100mm x 100mm via lightburn

Mesurez le carré réalisé, en cas d’écart contactez moi

Tests laser

Si vous avez une machine avec le nouveau panneau digital, il est complètement débranché et son bouton test laser ne fonctionne plus

Si vous avez une ancienne machine avec le potentiomètre, ce dernier est normalement débranché ainsi que le bouton de test laser

Pour effectuer les essais, il faut donc passer par lightburn.

Dans Lightburn / Edit / Device settings, vérifiez que l’option “enable fire laser button” est activée

Dans l’onglet move de lightburn, vous pouvez désormais faire des tests de tir laser.
Mettez 14% en puissance et cliquez sur le bouton Fire. Attention, pour arrêter le tir laser, il faut appuyer à nouveau sur ce bouton

Si tout c’est bien passé, vous pouvez tenter une découpe.

Conseil :
Afin de simplifier vos tests de tirs laser, vous pouvez procéder de la façon suivante :

  • Appuyer sur le bouton rouge sur le capot de votre machine pour interdire les tirs lasers
  • Dans l’onglet Move de Lightburn, mettre 14% en puissance et appuyer sur le bouton FIRE
    Le laser ne doit pas tirer (bouton autorisation laser sur la machine en position OFF)
  • “Jouer” avec le bouton rouge pour faire les tirs laser comme souhaité
  • Quand vous avez terminé, mettre le bouton rouge du capot en position OFF
  • Sur Lightburn, désactiver le bouton FIRE
  • Remettre le bouton rouge en position ON sur la machine

Bravo !!

Bravo, à ce stade vous avez une K40 avec une toute nouvelle électronique en mesure de fonctionner avec Lightburn, un lit motorisé et plein de nouvelles fonctionnalités !

Rappelez vous que suite à la mise sous tension de votre machine, le shield ne peut pas savoir où se trouve la tête. Il est donc indispensable de lancer un HOME via Lightburn à chaque mise sous tension de votre machine !

Il vous reste à apprendre à utiliser Lightburn en détail : lien vers le manuel

Lien vers le STL pour imprimer le support du shield. Il se positionne normalement sur la paroi gauche du compartiment électronique de votre K40 (sur la séparation entre la zone de travail et la zone électronique) : Lien

About the author

Avataar120

Leave a Comment

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.