[:fr]
Contrôleur autonome Masso
[:en]
Contrôleur autonome Masso
Contrôleur autonome Masso
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Contrôleur autonome Masso
Le contrôleur CNC Masso est une électronique de commande haut de gamme fabriquée en Australie par l’entreprise Hind Technology.
C’est une électronique de commande autonome, la carte regroupe l’électronique de commande et l’informatique de pilotage.
Elle possède une sortie VGA et des ports USB, on branche un écran un clavier et une souris pour paramétrer la carte et piloter différentes machines CNC.
Un ordinateur n’est donc pas nécessaire pour piloter, l’ensemble est donc plus fiable, il est beaucoup plus insensible aux perturbation électromagnétique qu’un ordinateur, l’ensemble de la ressource matérielle et logiciel est dédié au pilotage CNC sans que d’autre programmes viennent interférer.
La carte gère jusqu’à 5 axes et peut piloter toutes sortes de machines CNC, du tour CNC à la fraiseuse 5 axes ainsi que la découpeuse plasma.
L’activation des axes se fait par logiciel, l’avantage est que vous pouvez faire évoluer une machine par exemple une fraiseuse 3 axes en fraiseuse 4 axes puis 5 axes sans changer de matériel.
I ) Les possibilités de la carte Masso
Cette électronique de commande possède énormément d’entrées sorties.
– 24 entrées numériques, 18 sorties numériques
– gestion d’encodeurs, de broches VFD
– pilotage de moteurs pas à pas mais aussi servo moteurs
– gestion des écrans tactiles
– connexion Wi Fi
Cette carte peut donc gérer des CNC pro puissantes avec servo moteur et changement automatique d’outils ATC
II ) Installation
Masso peut être alimenté de 12 à 24V avec un minimum de 1.5A
24v est maintenant un standard pour l’alimentation des cartes de commande CNC
Juste après l’achat de votre carte Masso vous allez recevoir par mail le firmware correspondant au nombre d’axes et type de machine que vous avez commandé. Par exemple le fichier G3-5761 – Plasma 3-Axis v3.43.2 , Wi-Fi.HTG indique que
– ce firmware est pour la version 3 de la carte Masso (G3)
– pour la carte de numéro de série 5761
– 3 axes sont activés avec l’option Wi-Fi
– c’est la version 3.43.2 du firmware
Il va falloir enregistrer ce fichier firmware dans une clef USB formatée comme dans la capture d’écran suivante.
Attention !! ne pas modifier le nom du fichier
Il faut créer un dossier « MASSO » et mettre le firmware dedans. On peut mettre plusieurs firmwares de différentes machines dans ce dossier MASSO de la clef USB.
Branchez un écran, un clavier et une souris à la carte MASSO ainsi que la clef USB
Démarrez la carte MASSO et appuyez plusieurs fois sur la touche « F1 » au démarrage pour installer le firmware.
Maintenant sélectionnez le firmware que vous voulez installer.
III ) Utilisation de la carte Masso
Au démarrage de la carte une fois installée un mot de passe est demandé.
Le mot de passe par défaut est « HTG » en majuscule mais il est possible de changer le mot de passe ou mettre un mot de passe vide.
En bas de l’écran il y a accès aux différentes parties de l’interface MASSO.
On y accès avec les raccourcis clavier « F1 F2 F3 F4 F5 F6 » ou avec la souris ou avec le doigt si vous avez l’option écran tactile.
F1 : ne concerne pas l’opérateur mais l’administrateur de la machine
cet écran permet de configurer le matériel ( accès avec mot de passe )
F2 : permet d’exécuter les fichiers Gcode ou d’envoyer des commandes Gcode à la machine
démarre un usinage ou une découpe plasma
F3 : permet un déplacement manuel de la machine
F4 : fonctions avancées lorsqu’il y a plusieurs outils et plusieurs origines pièces ( ne concerne pas la découpe plasma, laser, jet d’eau )
F5 : permet de demander l’usinage de formes simples en conversant avec la machine sans passer par un logiciel de création de Gcode
il n’existe pas pour l’instant de formes conversationnelles pour la découpe plasma
F6 : Permet d’ouvrir un fichier Gcode venant d’une clef USB ou de la liaison Wi Fi
Voici ci dessous les parties que vous utiliserez par ordre de fréquence selon votre situation :
Opérateur fraisage : F2 – F3 – F6 – F5 – F4
Opérateur tournage : F2 – F3 – F6 – F5 – F4
Opérateur plasma : F2 – F3 – F6
Ailleurs sur le web
– Chaine Youtube Masso
– Tutoriel connecter le controleur THC Proma 150 avec Masso et mise à la terre
Prise de référence avec tête flottante ou système ohmique
Cet écran situé au début est le dernier à être utilisé dans le cas de l’éxécution d’un fichier Gcode !!
Il sert à 2 choses :
– Démarrer un programme Gcode ( a condition d’avoir avant charger un programme Gcode avec « F6 LOAD FILE »
– Rentrer soit même manuellement des commandes Gcode « MDI »
L’écran de gauche permet de vérifier les trajectoires et celui de droite vérifier le Gcode ( petites flèches bleue )
Remarque : des postprocesseurs qui écrivent des commentaires dans le Gcode sont préférables afin de faire une vérification rapide avant de démarrer un cycle d’usinage.
– Cycle start : permet de démarrer l’exécution d’un programme Gcode
– Feedhold : mettre en pause l’exécution
– Rewind : permet de reprendre l’exécution du programme suite à une pause
– MDI : passage en mode MDI ( Manual Data Input )
Diminuer la vitesse d’avance en cours d’usinage ( Override select mode )
Il faut appuyer sur la touche « F11 » et tourner la manivelle de la télécommande pour avoir une vitesse d’avance inférieure à 100%
Une rotation du sélecteur d’axe permet de revenir en mode « Jog »
Le mode MDI ( Manual Data Input )
Ce mode est un mode de commande manuelle au moyen de commandes GCODE
Soit vous taper la commande ( G92 X0 Y0 Z0 par exemple ) et « Entrée » pour exécuter
Soit vous utilisez les bouton de commande
– Flood On Off : démarrage et arret de la pompe de fluide de coupe
– Clamp On Off : bridage et débridage de la pièce ( avec une table aspirante par exemple )
– Go to home Z axis / All Axis : retour à l’origine machine en Z ou pour les trois axes / Gcode G53
– Spindle CW ( Clockwise ) : démarrage de broche sens horaire / Gcode M3
– Spindle CCW ( CounterClockwise ) : démarrage de broche sens anti horaire / Gcode M4
– Spindle Stop : arret de la broche / Gcode M5
Remarque : si vous avez la télécommande et que vous n’êtes pas dans ce mode » Onglet JOG » en jaune, la machine ne peut pas se déplacer manuellement.
Attention : mettez vous au début avec un incrément de déplacement de 1.0mm
si vous laisser à 0.0100 vous avez l’impression que la machine à un problème, qu’elle n’avance pas alors qu’elle avance sans que ce soit visible de loin.
Prise d’origine pièce :
L’une des raisons de faire un déplacement manuel est de placer l’outil à un endroit et d’indiquer par une commande que ce sera l’origine pièce ou origine travail, le point à partir duquel l’usinage va démarrer.
On indique que la position est à l’origine travail en cliquant sur Xzero Yzero Zero
Dans cet exemple on est déjà en position travail ( origine pièce ) pour X et Y
Quand l’outil touche la surface supérieure de la matière on doit indiquer que en Z cette position sera l’origine « 0 »
Il va donc falloir cliquer sur « Zzero » pour terminer le paramétrage de la prise d’origine travail
Alarmes :
Certaines alarmes ( arrêt d’urgence, dépassement limites déplacement … stoppent les déplacements en cours d’usinage mais aussi les déplacements manuels.
IV ) Branchement des entrées sorties de la carte Masso
- Cabler l'arrêt d'urgence
- Brancher des capteurs à contact
- Brancher des capteurs inductifs
- Paramétrer le Homing ( zéro machine )
- Brancher des relais aux sorties
- Relier un découpeur plasma
- Brancher une broche VFD
- Connecter une électrobroche avec un relais SSR
- Ecran tactile et buzzer de sélection
Si vous avez alimenté la carte Masso, branché écran clavier et souris comme sur la photo ci-dessous, puis installé le firmware; la première étape est terminée.
Mais si il y a la Led « ERROR » qui clignote en permanence c’est parce que vous n’avez pas connecté d’arrêt d’urgence.
Il s’agit d’un arrêt d’urgence E-stop, c’est a dire que l’arrêt d’urgence ne coupe pas l’alimentation de la machine mais donne un ordre à l’électronique de tout stopper (déplacement des axes et fonctionnement de l’outil)
A ) Arrêt d’urgence externe seul
I faut utiliser un contact NF (Normalement fermé) l’arrêt d’urgence se produit lorsque l’entrée 2 E-stop reçoit PW+
B ) Arrêt d’urgence télécommande seule
Il n’y a rien à câbler la télécommande via la prise DB15 va utiliser le connecteur 2 E-stop.
Pour tester le fonctionnement de cet arrêt d’urgence de télécommande il suffit de faire un test de continuité entre les broche 13 et 14 de la prise DB15.
Il est possible d’utiliser une télécommande standard achetée 2 fois moins cher que celle de Masso en suivant cette doc.
Par contre vérifiez bien que la roue codeuse est du même voltage que l’alimentation Masso par exemple 24V sinon il faut ajouter un régulateur de tension. Il y a plusieurs modèles vendus sur internet mais le plus souvent il faut cabler soit même la prise DB15.
C ) 2 arrêt d’urgence, externe et télécommande
Cette fois ci, l’arrêt d’urgence externe est connecté à l’entré 1 du connecteur E-stop, l’entrée 2 est utilisée par le E-stop de la télécommande. Les 2 arrêt d’urgence se retrouvent ainsi câblés en série.
D ) Stopper un appareil ou accessoire de la machine avec l’arrêt d’urgence
On va utiliser un relais ou un Optocoupleur, selon qu’on doit couper de la puissance ( alimentation électrobroche ) ou désactiver un appareil électronique ( broche Enable d’un moteur pas à pas non géré par la carte )
N’importe quelle entrée (input) peut recevoir le VCC venant de Power quand le fin de course se ferme.
L’affectation de l’entrée qui correspondra à X home, Y home ou Z home se fera ensuite de manière logicielle en appuyant sur la touche « F1 » de l’interface MASSO
Ci-dessous un exemple de câblage de fin de course pour les limites d’axe.
Il est usuel d’utiliser les Min Limit pour l’origine machine ( Homing )
Si vous voulez simplifier le câblage et mettre que les Xmin Ymin et Zmin, les capteurs physiques Xmax Ymax Zmax peuvent être remplacés par des Soft Limite c’est à dire des limites logicielles.
6 fils doivent être reliés à l’électronique de commande d’une découpeuse Plasma
1 ) Démarrage et Arrêt de la torche ( Start / Stop )
L’interpolateur lorsqu’il reçoit la bonne commande Gcode ( M03 et M05 ) va fermer un contact sec d’un relais afin de démarrer et arrêter la torche.
2 ) Transfert Ok ou Arc OK
Lorsque l’interpolateur reçoit l’information du découpeur plasma que l’arc plasma est bien établit celui ci va autoriser le déplacement pour la découpe. La source plasma doit fermer un contact sec de relais qui va envoyer en entrée de l’interpolateur une tension appropriée.
3 ) Tension d’arc
La tension à l’intérieur d’un arc plasma est proportionnelle à la distance entre les deux potentiels ( torche et tôle métallique à découper )
Si la tôle est gondolée, la distance va varier donc la tension donc la qualité de la coupe. Pour remédier à ce problème il va falloir que la torche soit constamment à égale distance de la tôle donc quelle monte et descende pour suivre l’ondulation.
Par contre la tension d’arc est beaucoup trop importante pour être en entrée d’une électronique, donc les sources plasma compatibles avec une CNC devront avoir un système de diviseur de tension.
Les connecteurs source plasma électronique sont souvent des connecteurs CPC 14 broches, et toutes les broches ne sont pas utilisées.
Par contre les numéros de broches ne sont pas les mêmes selon les constructeur.
( ci-dessus le brochage pour le matériel GYS et ci-dessous les découpeurs Powermax de Hyperterm )
Ci dessous la connexion CNC pour les découpeur Everlast Powerplasma
4 ) Relier le système THC ( Torch High control )
Grâce à la tension de coupe divisé, le système de contrôle de hauteur de torche ( THC ) va pouvoir envoyer des ordres de montée ou descente.
Les nouveaux modèle de contrôleur THC peuvent directement piloter le moteur pas à pas de l’axe Z, sans passer par l’interpolateur.
C’est le cas du contrôleur Proma 150-SD
Il est préférable de placer le contrôleur THC plus proche de la source plasma que du contrôleur CNC
Il est nécessaire d’utiliser un câble blindé, et de relier le blindage au boitier de contrôle CNC
Exemple avec le modèle Yuhuan Huanyang HY02d211B-T
Exemples écrans tactiles pouvant être utilisés avec Masso
Liste des écrans tactiles compatibles et non compatibles avec Masso
Les détecteurs inductifs
[:en]
Les détecteurs inductifs
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Les détecteurs inductifs
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
Why use normaly closed endstop and use « 0 » Ground to send the information endstop push ?
For each endstop, it’s better to connect C to Signal and NC to Ground because this means the digital input pin ( endstop connector ) will be connected to Ground in it’s normal state and cut from Ground when the button is pressed. This approach is less prone to noise than the reverse. See here for more information.
Another positive effect of this approach is, that if a wire breaks for some reason you get the same signal as if the endstop is pressed. That makes sure that even with a damaged wire you are not able to overrun the endstop.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Explain in Chinese about floating volt level pin and pull up resistor
with Lazy Tomato Lab
See the other vidéo of LazyTomatoLab Chanel http://www.lazytomatolab.com/ very good lesson for learn about Arduino
Important !!
Check that you do not connect VCC ( red ) and GND ( black ) to a mechanical (microswitch) endstop!
Depending on your wiring that may fries your smoothieboard instantly or when the switch gets pressed.
If you’re not careful enough you can damage your board.
The endstop setting section inside config file
In smoothieboard like arduino board no need prepare pull up resistor for input pin, already have internal board resistor for this fonction.
Just activate the « pull up resistor » with option setting in config file
So don’t delete the » ^ » after the number the pin
If you do this the fonction pull up resistor don’t works
In cnc can have endstop min for setting the « 0 » machine and endstop max for when the machine move over capacitie, stop automatically.
The Formosa don’t have max endstop, it’s just a option.
With this way the cabling is more simple, users just need check if the drawing is under the maxi size the machine can cut.
If the machine move over the limit don’t worry just steppers motors loose step but don’t have damage.
Check the correct works of endstop
Use M119 command to check if the wiring of endstop is correct
when the endstop is hit, need show 1
When endstop don’t hit, need show 0
If you don’t use xmax ymax … not need there parameters appear can comment
with # in the beginning of line like below to desactivate
alpha_min_endstop 1.24^
#alpha_max_endstop 1.25^
alpha_homing_direction home_to_min
Or use nc in the end of the line like
alpha_max_endstop nc
Les détecteurs inductifs
I ) Utilisation
Les détecteurs de proximité inductifs permettent de détecter sans contact des objets métalliques à une distance de 0 à 60 mm.
Ils se retrouvent dans des applications très variées telles que la détection de position des pièces de machines (cames, butées, …), le comptage de présence d’objets métalliques.
II ) Principe de fonctionnement
Un détecteur inductif détecte exclusivement les objets métalliques.
Il est essentiellement composé d’un oscillateur dont les bobinages constituent la face sensible.
Les capteurs inductifs produisent à l’extrémité de leur tête de détection un champ magnétique oscillant. Ce champ est généré par une inductance et un condensateur montés en parallèle.
Lorsqu’un corps conducteur métallique est placé dans ce champ, des courants de Foucault prennent naissance dans la masse du métal ; il y a perturbation de ce champ qui entraîne une réduction de l’amplitude des oscillations au fur et à mesure de l’approche de l’objet métallique, jusqu’à blocage complet.
Cette variation est exploitée par un amplificateur qui délivre un signal de sortie, le capteur commute.
III ) Avantages
-
pas de contact physique avec l’objet détecté ( possibilité de détecter des objets fragiles, fraîchement peints )
-
pas d’usure, durée de vie indépendante du nombre de manœuvres
-
détecteur statique, pas de pièces en mouvement
-
produit entièrement encapsulé dans la résine (étanche)
-
très bonne tenue à l’environnement industriel (atmosphère polluante)
IV ) Branchements / sortie PNP ou sortie NPN
Les détecteurs ou capteurs peuvent être équipés de sorties type PNP et NPN, technique 3 fils, alimentation 30VDC :
-
type PNP : commutation sur la charge du potentiel positif,
-
type NPN : commutation sur la charge du potentiel négatif.
Ces sorties sont typiques des détecteurs inductifs ou photo-électrique.
Mise à la terre de l’électronique
[:en]
Mise à la terre de l’électronique
Mise à la terre de l’électronique
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
Why use normaly closed endstop and use « 0 » Ground to send the information endstop push ?
For each endstop, it’s better to connect C to Signal and NC to Ground because this means the digital input pin ( endstop connector ) will be connected to Ground in it’s normal state and cut from Ground when the button is pressed. This approach is less prone to noise than the reverse. See here for more information.
Another positive effect of this approach is, that if a wire breaks for some reason you get the same signal as if the endstop is pressed. That makes sure that even with a damaged wire you are not able to overrun the endstop.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Explain in Chinese about floating volt level pin and pull up resistor
with Lazy Tomato Lab
See the other vidéo of LazyTomatoLab Chanel http://www.lazytomatolab.com/ very good lesson for learn about Arduino
Important !!
Check that you do not connect VCC ( red ) and GND ( black ) to a mechanical (microswitch) endstop!
Depending on your wiring that may fries your smoothieboard instantly or when the switch gets pressed.
If you’re not careful enough you can damage your board.
The endstop setting section inside config file
In smoothieboard like arduino board no need prepare pull up resistor for input pin, already have internal board resistor for this fonction.
Just activate the « pull up resistor » with option setting in config file
So don’t delete the » ^ » after the number the pin
If you do this the fonction pull up resistor don’t works
In cnc can have endstop min for setting the « 0 » machine and endstop max for when the machine move over capacitie, stop automatically.
The Formosa don’t have max endstop, it’s just a option.
With this way the cabling is more simple, users just need check if the drawing is under the maxi size the machine can cut.
If the machine move over the limit don’t worry just steppers motors loose step but don’t have damage.
Check the correct works of endstop
Use M119 command to check if the wiring of endstop is correct
when the endstop is hit, need show 1
When endstop don’t hit, need show 0
If you don’t use xmax ymax … not need there parameters appear can comment
with # in the beginning of line like below to desactivate
alpha_min_endstop 1.24^
#alpha_max_endstop 1.25^
alpha_homing_direction home_to_min
Or use nc in the end of the line like
alpha_max_endstop nc
Mise à la terre de l’électronique
Article intéressant sur la mise à la terre d’une machine https://makr.zone/grounding-the-machine/283/
Isolateur USB de Adafruit https://www.adafruit.com/product/2107
Contrôleur autonome DSP Richauto A11
[:en]
Contrôleur autonome DSP Richauto A11
Contrôleur autonome DSP Richauto A11
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Contrôleur autonome DSP Richauto A11
Ce contrôleur DSP est réalisé par l’entreprise Beijing RichAuto ( Ruizhitianhang en Chinois ) http://www.richauto.com.cn/en/
Il est constitué d’une carte contrôleur et d’une télécommande
Pour avoir un clavier exclusivement en Anglais il faut choisir le modèle A11E
Pour les axes le Shield n’a pas besoin d’être branché si les partie Enable+ Enable- des drivers ne sont pas connectées.
Les impulsions ( pulse ) et changements de direction ( DIR ) se font donc avec un signal « 0 »
L’alimentation des signal d’entrée DC10V~DC24V est séparée de l’alimentation générale 24V GND
Exemple de câblage de Contrôleur DSP A11 pour une CNC
Video tutoriels : video 1
Les autres contrôleurs de la gamme A1X
Microprocesseur, microcontrôleur, PLC, DSP
[:en]
Microprocesseur, microcontrôleur, PLC, DSP
Microprocesseur, microcontrôleur, PLC, DSP
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Microprocesseur, microcontrôleur, PLC, DSP
Dans les descriptions des différentes électroniques de commande d’une machine CNC, le vocabulaire peut être abscon, surtout s’il n’est pas utilisé pour des raisons techniques mais marketing.
I ) Différence entre microprocesseur et microcontrôleur
Un microcontrôleur est un mini-système, constitué de l’ensemble microprocesseur avec RAM, ROM, EEPROM, convertisseurs CAN/CNA et interfaces d’entrées/sorties séries/parallèles, intégrés dans une même structure (une même puce, un même circuit).
Du fait de la richesse de sa constitution, un microcontrôleur est bien un mini système et peut être envisagé comme une solution générale à une majorité d’applications analogiques, numériques ou mixtes, qui ne nécessite pas une vitesse extrême, pour laquelle il est préférable d’utiliser des circuits câblés, ou à la rigueur, des circuits reconfigurables FPGA
II ) Pilotage d’un driver de moteur pas à pas avec un PLC
Un contrôleur logique programmable (de l’anglais : Programmable Logic Controller (PLC)) appelé aussi automate programmable est un composant qui est programmé et utilisé pour la commande ou la régulation d’une machine ou d’une installation.
Un PLC est pourvu d’entrées, de sorties, d’un système d’exploitation (firmware) et d’une interface par laquelle peut être chargé un programme d’application (logiciel d’exploitation). Le programme d’application définit la façon dont les sorties doivent être commutées en fonction des entrées. Un langage graphique très utilisé pour la programmation des PLC est le langage LADDER.
Le système d’exploitation (firmware) fait en sorte que le programme d’application ait toujours à sa disposition l’état actuel des capteurs. Sur la base de ces informations, le programme d’application peut commuter les sorties de sorte que la machine ou l’installation fonctionne comme prévu.
La liaison entre le PLC et la machine est réalisée par des capteurs et des actionneurs. Les capteurs sont branchés aux entrées du PLC et communiquent à ce dernier ce qui se passe dans la machine.
Certains utilisent un PLC à la place d’un microcontrôleur pour gérer les pilotes d’un moteur pas à pas, afin de faire de l’automation.
Je pense cependant que le PLC est moins rapide et performant qu’un microcontrôleur.
III ) Qu’est ce qu’un circuit DSP
Un DSP (de l’anglais « Digital Signal Processor », qu’on pourrait traduire par « processeur de signal numérique » ou « traitement numérique de signal ») est un microprocesseur d’un type particulier optimisé pour exécuter des applications de traitement numérique du signal le plus rapidement possible.
Comme un microprocesseur classique, un DSP est mis en œuvre en lui associant de la mémoire (RAM, ROM) et des périphériques. Un DSP typique a plutôt vocation à servir dans des systèmes de traitements autonomes. Il se présente donc généralement sous la forme d’un microcontrôleur intégrant, selon les marques et les gammes des constructeurs, de la mémoire, des timers, des ports série synchrones rapides, des contrôleurs DMA, des ports d’E/S divers.
Applications des circuits DSP : les applications sont de plus en plus nombreuses
Les circuits DSP peuvent être utilisés pour la commande de machines, le contrôle de moteurs
Par exemple certains drivers de commande de moteurs pas à pas numériques, possèdent un circuit DSP
En effet le signal numérique qui va envoyer les impulsions vers les bobines du moteur peut être retravaillé en temps réel afin de diminuer les vibrations, les phénomènes de résonance et les pertes de puissance.
Par contre le fait d’appeler des télécommandes de fraiseuse CNC des systèmes DSP me semble être plus du marketing
Exemple avec le contrôleur 3 axe DSP A1 RichAUto
Ce contrôleur DSP est réalisé par l’entreprise Beijing RichAuto ( Ruizhitianhang en Chinois ) http://www.richauto.com.cn/en/
Plus d’informations sur le contrôleur DSP Richauto A11
Electronique de commande Mach3 Mach4
[:en]
Electronique de commande Mach3 Mach4
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
It’s important save firmware and config file in other place of sd card for exemple computer, if you change something and whant return back, can find original file.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
Many settings in smoothie can be set immediately with M commands, these settings are lost on reset, however they can be saved to a non-volatile storage (similar to EEPROM on other systems).
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
I ) SMOTHIEBOARD AXIS
In the config file alpha match with M1 motor axis
beta match with M2 motor axis
gamma with M3 motor axis
Smoothiesboard is universal for all CNC machine, no need have different electronic board for CNC Milling machine other for Laser cut machine etc. …
The config file already have inside the different function for all machine
Just change the setting about your kind of machine.
I ) OPTIONS IN THE CONFIG FILE
In smoothieboard, for control steppers motors, can use :
Internal stepper driver : A5984 stepper drivers with 1/32 microstepping
2A max
External stepper driver : The reason to use external is when people need more power for example 3A 4A 7A
When use internal stepper driver the motor is connect to plug write 1
When use external driver, the external driver is connect to place write 2 with EN STEP DIR and GND pin
All name and number of pins are write in back face of smoothieboard
The number of pin in smoothieboard need match with number of pin in file config.
When you receive the electronic board all setting are OK
After when you understand the config of pin all can be change
have many possibilities of différents configurations.
my_pin_name number of the pin (option)
For example : signalalpha_dir_pin 0.5!
alpha_min_endstop 1.24^
When the motor don’t turn in correct direction, no need change the wire, just add
! after the pin number
With smoothieboard, no need use screwdriver and turn potentiometer to setting with difficulty the limit of current, like drivers of a lot of 3d printer.
All internal stepper drivers have digital potentiometer.
Just write 1.5 in alpha_current setting and stepper driver works to 1.5A
The limit without cooling system ( fan ) is 1.6A
1.6 to 2A (max) need use fan on top of electronic.
I ) The number of step for the machine move of 1mm depend of différent things
II ) Calculate for timing belt / pulley transmission
III ) Calculate for Threaded Leadscrew
IV ) If reality a little différent theory
I was never have problem with machine move à little different than the calculate.
But if you have this just use a accurate measurement tool
and recalculate like below.
Electronique de commande Mach3 Mach4
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Electronique de commande Mach3 Mach4
Mach3 est un logiciel propriétaire qui permet de transformer un ordinateur PC en commande numérique.
Le logiciel est disponible seulement pour les systèmes d’exploitation windows.
Manuel d’utilisation de Mach3 en Français
Mach3 permet par l’intermédiaire du PC de piloter les signaux nécessaires à la commande de moteurs par pas et direction (Step/Dir ou Clock/Dir).
– via l’interface parallèle : cette interface se fait de plus en plus rare sur les ordinateurs et elle possède des limites en fréquence d’utilisation, les OS windows 64 bit ne sont pas supportés.
– via une carte électronique dédiée utilisant une connexion USB ou RJ45
On doit toujours avoir un PC Windows en fonctionnement avec la machine mais la performance est supérieure à la prise //
Une nouvelle version Mach4 permet plus de fonctionnalités en particulier pour la version industrielle
Document listant les fonctionnalités des différentes versions
C’est une carte Mach3 USB basique de premier prix ( environ 16 Euro sur les sites Chinois )
Le nombre d’entrées sortie est très limité.
Electronique de commande GRBL
[:en]
Electronique de commande GRBL
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
It’s important save firmware and config file in other place of sd card for exemple computer, if you change something and whant return back, can find original file.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
Many settings in smoothie can be set immediately with M commands, these settings are lost on reset, however they can be saved to a non-volatile storage (similar to EEPROM on other systems).
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
I ) SMOTHIEBOARD AXIS
In the config file alpha match with M1 motor axis
beta match with M2 motor axis
gamma with M3 motor axis
Smoothiesboard is universal for all CNC machine, no need have different electronic board for CNC Milling machine other for Laser cut machine etc. …
The config file already have inside the different function for all machine
Just change the setting about your kind of machine.
I ) OPTIONS IN THE CONFIG FILE
In smoothieboard, for control steppers motors, can use :
Internal stepper driver : A5984 stepper drivers with 1/32 microstepping
2A max
External stepper driver : The reason to use external is when people need more power for example 3A 4A 7A
When use internal stepper driver the motor is connect to plug write 1
When use external driver, the external driver is connect to place write 2 with EN STEP DIR and GND pin
All name and number of pins are write in back face of smoothieboard
The number of pin in smoothieboard need match with number of pin in file config.
When you receive the electronic board all setting are OK
After when you understand the config of pin all can be change
have many possibilities of différents configurations.
my_pin_name number of the pin (option)
For example : signalalpha_dir_pin 0.5!
alpha_min_endstop 1.24^
When the motor don’t turn in correct direction, no need change the wire, just add
! after the pin number
With smoothieboard, no need use screwdriver and turn potentiometer to setting with difficulty the limit of current, like drivers of a lot of 3d printer.
All internal stepper drivers have digital potentiometer.
Just write 1.5 in alpha_current setting and stepper driver works to 1.5A
The limit without cooling system ( fan ) is 1.6A
1.6 to 2A (max) need use fan on top of electronic.
I ) The number of step for the machine move of 1mm depend of différent things
II ) Calculate for timing belt / pulley transmission
III ) Calculate for Threaded Leadscrew
IV ) If reality a little différent theory
I was never have problem with machine move à little different than the calculate.
But if you have this just use a accurate measurement tool
and recalculate like below.
Electronique de commande GRBL
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Electronique de commande GRBL
Les cartes présentées ici fonctionnent avec le firmware GRBL
Plus d’info sur le firmware GRBL Ici
Ce kit GRBL 32bits permet de piloter des CNC jusqu’à 4 axes.
Le kit assure la fonction d’interpolateur, les drivers de pilotage des moteurs PAP sont externes !!!
Il est composé d’une partie interpolateur grâce au microcontrôleur STM32
et d’une partie affichage et liaison Wi-Fi avec le microcontrôleur ESP32
I ) Partie interpolateur
Comme les GPIO du STM32 fonctionnent en 3.3v, les signaux sont amplifiés en 5V pour la compatibilité avec une multitude de drivers externes.
La carte possède un relais permettant de piloter une broche.
Plus d’info : https://www.makerfr.com/cnc/grbl-32-bits-board/presentation-grbl-32bits-board/
II ) Partie affichage et Wi FI
Le microcontrôleur ESP32 gère le wifi ce qui permet de se connecter à la console, d’uploader un fichier gcode sur la SD et de lancer un usinage depuis la SD via l’ordinateur.
L’affichage de l’écran tactile 3.2 est entièrement personnalisable.
Voir pour plus d’info https://www.makerfr.com/cnc/grbl-32-bits-board/mode-demploi-du-tft/
Directeur de commande Syntec série6
[:en]
Directeur de commande Syntec série6
I ) Architecture générale
In the left the hardware of Cnc controler is just interface between Computer and machine ( no software )
When computer send impulsion to steppers motor drivers of CNC, the communication between computer can use
- parallele port : there are limit to use computer with // port to control CNC, the fréquency can’t be very high (maxi 35khz)
there latence for step signal between CPU and // port.
A a lot of computer don’t have // port now - Sérial or usb port card : more performance than // port because have processor manage step but there électronic card are a little expensive and use special software, need use the software of the card.
In the right the Cnc controler have all hardware and software to manage machine with autonomy
The computer is to send the machining file ( Gcode ) in memory of CNC controler and after computer can be unplug.
Like controler of big professional CNC in industry.
II ) Electronic control with smoothieboard
Directeur de commande Syntec série6
For save SD-Card need use Win32DiskImage if you have windows OS
https://www.youtube.com/watch?v=LWFxO9iIwUQ
Directeur de commande Syntec série6
I ) Présentation
Les contrôleur Syntec 6MA sont des contrôleur 3Axes et les Syntec 6MB sont des contrôleur 4Axes
Le nouveau contrôleur 6MD-H permet de piloter les servo moteurs Yaskawa avec une connection série USB.
Controleur Syntec 60WE
Parmi les avantages de ce controleur il y a le protocole EtherCat et le système Build-in CAD/CAM
Ampérage puissance
[:fr]
Ampérage puissance
La puissance utile pour un moteur d’entrainement d’axe (moteur PAP ou servo) est la puissance mécanique restituée.
Cette puissance mécanique correspond au couple disponible multiplié par la vitesse.
Les moyens de communication de la carte smoothieboard avec l’extérieur
[:fr]
Les moyens de communication de la carte smoothieboard avec l’extérieur
I ) Communication avec liaisons UART, SPI ou I2c
Certains pin GPIO de la carte smoothieboard peuvent être configuré dans le fichier config pour qu’ils permettent des liaison séries SPI I2c ou UART
Les pin P0.16 P0.15 P0.18 et P0.17 sont utilisés comme liaison SPI par exemple par le Panel GLCD pour gérer l’écran LCD
Dans le fichier config il y a :
# config settings
panel.enable true # set to true to enable the panel code panel.lcd reprap_discount_glcd # set type of panel panel.spi_channel 0 # spi channel to use ; panel.spi_cs_pin 0.16 # spi chip select ; GLCD EXP1 Pin 4 Seul le Pin 0.16 (CS) est indiqué dans le fichier config, je suppose que le reste Sérial clock MOSI et MISO est codé dans le firmware ?
La liaison spi-card P0.6 est celle de la carte SD qui est reprise par le panel GLCD mais la config pour un lecteur carte sd externe est indiqué dans le fichier config à partir d'une liaison I2c en bas de la carte # setup for external sd card on the GLCD which uses the onboard sdcard SPI port panel.external_sd true # set to true if there is an extrernal sdcard on the panel panel.external_sd.spi_channel 1 # set spi channel the sdcard is on panel.external_sd.spi_cs_pin 0.28 # set spi chip select for the sdcard (or any spare pin) panel.external_sd.sdcd_pin 0.27!^ # sd detect signal (set to nc if no sdcard detect) (or any spare pin)![]()
La carte smoothieboard peut communiquer avec les liaisons
SPI, I2c et UART
Page du wiki smoothieboard dédiée aux protocoles logiciels de ces liaisons
http://smoothieware.org/smoothie-accessory-protocol
II ) Communication avec n’importe quel pin GPIO avec les modules
Les cartes à microcontroleurs ( Raspberry Pi, Arduino, Beaglebone, Smoothieboard … ) ont des entrées sorties prévue pour les usages classiques, port USB, port réseau, port écran HDMI …
Les fonctions de ces cartes à microcontrôleur sont extensibles en y connectant des appareils, d’autres cartes électroniques.
Les éléments externes qui seront des options utilisés par la suite se connectent par l’intermédiaire des connecteur GPIO
GPIO signifie General Purpose Input/Output, littéralement (Entrée/Sortie pour un Usage Général)
Au lieu d’être regroupé à un seul endroit comme pour les carte Raspberry et Arduino.
Les ports GPIO de la carte smoothieboard sont répartis un peu partout. http://smoothieware.org/pinout
Il y a énormément de broches de connection GPIO de disponible dont certaines peuvent avoir des capacités particulières
Les broches GPIO avec possibilité d’interruption peuvent être utilisé pour des boutons pour modifier immédiatement le déroulement habituel de l’usinage même si celui ci est en cours.
PWM signifie Pulse Width Modulation ( modulation de largeur d’impulsions ) permet d’avoir une sortie analogique pour par exemple moduler la vitesse de la broche à partir de la carte.
Chaque port GPIO est identifié par P(un nombre).(un nombre)
Beaucoup de port GPIO sont libres d’utilisation comme ceux ci-dessous encadrés en rouge.
Mais si certaines fonctions de la carte ne sont pas utilisées il est possible d’affecter les broches correspondante à un usage général GPIO
Ce serait le cas pour les broches ici entourées en orange. Par exemple le capteur endstop X min s’il n’est pas utilisé, sa broche P1.24 pourrait être affectée à autre chose.
Exemples de configuration de port GPIO grâce aux modules du fichiers config
A ) GPIO en sortie
a1 ) Commander un relais statique pour démarrer et éteindre la broche à partir du Gcode
# Switch module for spindle control
switch.spindle.enable true #
switch.spindle.input_on_command M3 #
switch.spindle.input_off_command M5 #
switch.spindle.output_pin 1.22 #
switch.spindle.output_type digital # just an on or off pin
B ) GPIO en entrée
b1 ) Créer un bouton pause qui suspend l’usinage lors d’un premier appui et le reprend en appuyant une seconde fois
# Switch module for pause button
switch.pause.enable true # Enable this module
switch.pause.input_pin 2.11^ # Pin where pause button is connected
switch.pause.output_on_command suspend # Suspend command
switch.pause.output_off_command resume # Resume command
switch.pause.input_pin_behavior toggle # This pin toggles between it’s on and off states each time it is pressed and released
after_suspend_gcode M5 # Gcode to run after suspend
before_resume_gcode M3 # Gcode to run before resume
b2 ) Créer un bouton reset pour redémarrer la carte smoothieboard
# Switch module for reset button
switch.reset.enable true # Enable this module
switch.reset.input_pin 3.26^ # Pin where reset button is connected
switch.reset.output_on_command reset # Command to reset the board
b3 ) Avoir un bouton kill qui arrête et annule immédiatement l’usinage
# Kill button (used to be called pause) maybe assigned to a different pin, set to the onboard pin by default
kill_button_enable true # set to true to enable a kill button
kill_button_pin 2.12 # kill button pin. default is same as pause button 2.12 (2.11 is another good choice)
Plus d’information sur les modules
http://smoothieware.org/moduleexample
http://smoothieware.org/switch
et la configuration des pin http://smoothieware.org/pin-configuration
Configuration de la carte smoothieboard en mode console http://smoothieware.org/console-commands
Version papier de cet article : format Libre office format PDF
Les firmware
[:fr]
Les firmware
Un firmware (en Français micrologiciel, microcode, logiciel interne, logiciel embarqué ou encore microprogramme) est un programme intégré dans un circuit électronique programmable (ordinateur, photocopieur, appareil photo numérique, smartphone, machine à laver etc.) pour qu’il puisse fonctionner.
Le mot anglais firmware est issu de firm (« résistant » ou « ferme », en Français) et de software (logiciel, programme informatique).
Firm est un état intermédiaire entre soft et hard.
Le firmware fait l’intermédiaire entre les composants électroniques et le logiciel de l’utilisateur.
Ce firmware est dans une mémoire non volatile du circuit électronique et gère le fonctionnement interne des composants, alors que le logiciel gère les commandes de l’utilisateur.
Dans le cas d’une CNC, le logiciel de contrôle utilisateur va gérer les commandes Gcode de l’utilisateur via une interface utilisateur. Ces commandes vont être ensuite interprétés par le firmware qui va ensuite gérer des impulsions vers des moteurs PAP et les relais.
Le logiciel de modélisation (C.A.D) envoie des fichiers au format DXF pour le 2D ou STL pour le 3D vers
Le logiciel de préparation de parcours d’usinage (C.A.M) qui envoie un fichier texte avec le langage GCODE vers l’interface utilisateur
Les commandes de déplacement des axes de la CNC en gcode sont interprétés par le firmware de la carte électronique qui envoie des impulsions électriques vers les moteurs pas à pas.
Pourquoi plusieurs firmwares ?
Tout d’abord un firmware peut être mis à jour, des nouvelles versions d’un même firmware avec des fonctions supplémentaires peuvent être proposées par le constructeur d’un matériel électronique.
De la même façon qu’on peut avoir plusieurs logiciels utilisateurs concurrents assurant les mêmes fonctions,
il est possible que 2 firmwares soient disponibles pour un même matériel. Cela arrive fréquemment dans le cas de matériel Opensource.
La carte électronique de contrôle de machine CNC Smoothieboard accepte 2 firmwares différents
Smoothieware et GRBL
Le firmware smoothieware est universel et peut être utilisé pour le pilotage d’imprimantes 3D, de fraiseuses CNC, découpeuses Laser, robots …
Le firmware GRBL est dédié au pilotage des fraiseuses CNC
I ) Mettre à jour smoothieware pour une carte smoothieboard ou compatible
A ) Présentation des parties logiciels ( software ) et matérielles ( hardware ) des cartes smoothie
On peut séparer une carte électronique smoothie ( smoothieboard et compatible ) en :
La partie logicielle ( software )
- Firmware (micrologiciel) –> il peut être mis à jour
- Fichier config –> paramétrage du fonctionnement de la carte
- Fichiers Gcode –> pour les trajectoires d’outils
La partie matérielle ( hardware )
- Un microcontrôleur Cortex M3 LPC1769 ou LPC1768 selon les cartes.
- 512 Kb de mémoire flash et 64Kb de mémoire RAM
- Connexion USB et Ethernet selon les cartes
- De nombreuses entrées sorties (GPIO) pour étendre les possibilités de la carte
Les fichiers « config » et « firmware.cur » ne doivent pas être effacés. Sinon la carte ne fonctionne plus.
Faites une copie de sauvegarde de ces fichiers.
Pour éviter de les effacer en les confondants avec des fichiers Gcode, il est préférable de créer un dossier pour stocker les Gcode.
Pour éditer le fichier « config » je recommande le programme Notepad ++
Remarque : le fichier config peut être nommé « config » sans extension ou « config.txt » veuillez à ce qu’il y ai qu’un seul fichier config dans la carte SD
B ) Mettre à jour le firmware d’une carte Smoothie
On met à jour un firmware parce que l’on veux profiter de nouvelles fonctionnalités. ( installation du firmware le plus récent )
En allant à cette adresse https://github.com/Smoothieware/Smoothieware/tree/edge/FirmwareBin
Quelquefois on souhaite passer du dernier firmware à une version précédente car la dernière version du logiciel de pilotage n’est pas encore compatible avec le dernier firmware.
Téléchargez le fichier zippé FIRMWARE.zip pour avoir une version compatible avec les dernières versions des principaux logiciels de pilotage, en particulier CNCjs.
Procédure :
1 – Vous devez avoir un fichier firmware.bin ( l’extension .bin est importante )
2 – Copiez ce fichier à la racine de la carte SD de la carte Smoothie
3 – Déconnectez la carte et coupez son alimentation
4 – Reconnectez vous, vous verrez que le « firmware.bin » s’est transformé en « firmware.cur »
5 – la carte est maintenant flashé avec un firmware différent.
Attention !!
Certaine fonctionnalité d’un nouveau firmware ne correspondent plus avec celles indiqués dans un ancien fichier config.
Il est préférable de mettre à jour la version du firmware avec le fichier config qui lui correspond.
II ) Les limites du firmware universel dans le cas de pilotage de machine avec du Gcode
Le G-code qui au départ a été conçu dans les années 1950 pour le pilotage des machines outils d’usinage ( enlèvement de matière ), est maintenant victime de sont succès, il gère maintenant toutes sorte de machines dont les imprimantes 3D.
Concernant les imprimantes 3D, la communauté Reprap qui est à l’origine de la démocratisation de ce type de machine a ignoré le G-Code déjà existant et a attribué certains codes G des machines outils d’usinage pour des actions différentes avec des imprimantes 3D.
Par exemple :
G-Code | Pour une imprimante 3D | Pour une fraiseuse |
G28 | Aller jusqu’au fin de course et s’arrêter | Aller à une origine machine enregistrée en coordonnée absolue. |
G10 | Rétracte le filament selon un paramètre du fichier de configuration. | Ajuste, modifie ou fixe la valeur d’outil ou l’origine d’un système de coordonnée selon le paramètre suivant. |
Le G-Code faisant référence pour l’impression 3D est celui de la communauté Reprap : http://reprap.org/wiki/G-code/fr
Le G-code faisant référence pour les CNC non industrielles est celui de la communauté LinuxCNC : http://linuxcnc.org/docs/html/gcode/gcode_fr.html
Les G-code faisant référence pour les CNC (tours et fraiseuses) industrielles sont les Gcode Fanuc, Num et Siemens
http://www.cnc-book.com/7077-les-langages-cn.html
Les conséquences :
Bien que les auteurs du firmware smoothieware aient essayé de concilier l’interprétation Gcode pour fraiseuse CNC et imprimante 3D avec quelques astuces. Il y a quelques rares situations ou un Gcode de fraisage ne soient pas correctement interprétés par le firmware universel smoothieware
En savoir plus avec un exemple
Et bon nombre de logiciels de pilotage de CNC on un bouton de homing qui envoi une commande G53 au lieu de G28.
Pour ces raisons si vous choisissez d’utiliser le firmware smoothieware dans le cas du fraisage 3D je recommande de le faire fonctionner en mode GRBL Le firmware interprète toutes les commandes Gcode de la même façon que le ferai le firmware spécialisé CNC fraisage GRBL
C’est juste une ligne à ajouter dans le fichier config http://smoothieware.org/grbl-mode
Si vous avez une machine CNC universelle ( machine légère pour hobbyistes permettant de faire des petits travaux en fraisage, impression 3D et gravure Laser )
On peut parfaitement imaginer un bouton qui réécrive à la volée le fichier config du firmware selon l’utilisation grbl-mode true ou grbl-mode false
Le firmware GRBL à été créer par le Norvégien, Simen Svale Skogsrud http://bengler.no/simen , en 2009 il le publie en Opensource. http://bengler.no/grbl
Depuis la communauté autour de GRBL est importante et la dernière version est la 1.1 https://github.com/gnea/grbl/wiki
GRBL est écrit en C, son code à été optimisé au départ pour les microcontrôleurs Arduino.
Il est capable de maintenir jusqu’à 30kHz d’impulsions de contrôle stable avec des microcontrôleur AVR 328p présents dans les cartes arduino Uno Duemilanove Nano Micro etc.
Compte tenu de la faible mémoire et puissance de ces microcontrôleurs 2Kb, les faire interpréter du gcode à été est un vrai tour de force.
Liens : Configuration de GRBL Gcode et commandes GRBL sur le site http://www.cnc-amateurs.fr
Répartition électronique de commande électronique de puissance
[:fr]
Répartition électronique de commande électronique de puissance
Le microcontrôleur de l’électronique de commande génère les impulsions pour les moteurs pas à pas en fonction des informations Gcode.
Les 4 bobines des moteurs pas à pas doivent être alimentées avec une tension et un ampérage suffisant pour que ces moteurs aient suffisamment de couple et de vitesse.
Dans le cas du contrôleur CNC Smoothieboard.
Si le couple des moteurs et leurs accélérations ne demande pas plus de 2A et 24V, le contrôleur CNC smoothieboard peut se charger de générer les impulsions et aussi d’alimenter les bobines des moteurs pas à pas avec des drivers internes.
Dans le cas de drivers internes
Le microcontrôleur envoie des impulsions vers chaque drivers interne de chaque axe.
Ensuite, les drivers internes alimentent les bonnes bobines des moteurs dans le bon ordre.
Mise en place de drivers externes
Lorsque le couple et l’accélération des moteurs pas exige plus de 2A et 24V
Il est possible d’ajouter entre l’électronique de commande et les moteurs pas à pas des drivers externes.
Les drivers externes font partie de l’électronique de puissance.
Ils fournissent une puissance électrique en fonctions d’information venant de l’électronique de commande.
Exemple de drivers externes
Les drivers externes reçoivent les impulsions avec l’entrée « EN »
L’entrées « DIR » pilotent le sens de rotation des moteurs
Une entrée « EN » permet de désactiver l’alimentation des moteurs.
Les sorties A- A+ B+ B- alimentent les bobines des moteurs PAP et l’ensemble est alimenté en courant continu avec un voltage pouvant aller de 12 à 50V selon les modèles de drivers.
Des micro interrupteurs permettent de sélectionner l’intensité limite pouvant traverser les bobines des moteurs ainsi que de sélectionner les fractions de pas ( 1/8 ; 1/16 ; 1/32 … )
Câblage smoothieboard vers drivers externes
Les drivers externes sont branchés aux endroits noté EN, DIR, ST et GND de la smoothieboard.
ST signifie STEP (pas) c’est la même chose que PULL ( impulsion )
En standard les trois premiers connecteurs sont à connecter pour les axes X Y et Z
Par la suite vous pourrez câbler deux autres axes supplémentaire pour avoir une CNC 4 axes voir 5 axes.
Du câble réseau blindé convient très bien pour relier la carte smoothieboard aux drivers externes.
Le fil de drain n’est pas nécessaire, il peut être enlevé.
Dans ce cas les paires de câbles torsadés peuvent être branchées ensemble à chaque broche des connecteurs molex.
– Câbles marrons vers EN (enable )
– Câble bleues vers DIR ( direction )
– Câbles verts vers ST ( Step signal )
– Câbles orange vers GND ( Ground )
Les potentiels négatifs (Gnd) des entrée En, Pul et Dir peuvent être reliés ensemble au fil orange pour aller ensuite vers le GND de la smoothieboard.
Câblage drivers externes vers bornier moteurs PAP
Vous pouvez pour effectuer ce câblage utiliser des câbles spécifiques pour moteurs Pas à Pas comme celui de l’image ci-contre.
Ou bien utiliser des câbles réseau blindés comme précédemment.
Chaque brin de câble réseau peut supporter jusqu’à 3.5A
Comme il y a 8 fils à l’intérieur vous pouvez relier ensemble les brins des 4 paires et avoir au total 4 fils d’alimentation pouvant supporter jusqu’a 7A.
Câblage de l’alimentation des drivers externes
Les entrées d’alimentation DC- de chaque drivers devront être connectées ensemble et relié à la borne – de l’alimentation.
Les entrées DC+ de chaques drivers devront aussi être connectées mais par l’intermédiaire de l’arrêt d’urgence de façon à ce qu’en cas d’arrêt d’urgence l’alimentation des drivers se coupe en plus de celle de la carte électronique.
Les drivers de moteurs pas à pas
[:fr]
Les drivers de moteurs pas à pas
Exemple avec un driver externe basé sur le circuit Toshiba TB6600
Exemple avec un driver externe de l’entreprise Leadshine
Les drivers externes ont généralement 2 Led :
– une pour indiquer que les drivers sont sous tension, qu’ils ont une alimentation électrique
– une pour indiquer que le driver est en erreur, qu’il ne peut pas fonctionner.
La plage d’alimentation dépend des modèles de drivers :
– de 12 à 48V pour les modèles d’entrée de gamme
– de 36 à 72V pour les modèles puissants
Plus le voltage d’alimentation est important plus il y a de couple dans les grandes vitesses de déplacement
mais n’allez pas à la limite donnée par le constructeur. Par exemple si dans la fiche constructeur c’est indiqué 12 à 48V prenez une alimentation 36V
Le réglage d’intensité délivré aux moteur :
Cela dépend quelle intensité maxi peut accepter les moteurs, plus les moteurs pas à pas sont puissants plus vous pouvez régler une intensité importante. La encore n’allez pas à la limite si la capacité maxi du driver est de 5A réglez à 4A
Il faut surveiller la température des moteurs pas à pas et des drivers en les touchant.
Si l’un ou l’autre sont chaud il faut arrêter et changer les réglages sinon c’est soit un moteur qui grille ou un driver ( le plus souvent le driver )
Le réglage de micropas
Cela dépend encore des modèles. Certains vont jusqu’à 1/16 de pas d’autre vont jusqu’a 1/128
Plus les micro pas sont petit plus les déplacements sont fluide, mais la fluidité des déplacement dépend aussi beaucoup de la carte de commande qui génère les impulsions.
1/16 de pas ou 1/32 de pas est un bon réglage pour aller au delà il faut vous assurer que la carte de commande génère des impulsions à une fréquence très élevée au dessus de 100Mhz.
Les signaux qui viennent du microcontrôleur
En+ active ou désactive le fonctionnement du driver. Il s’agit d’un signal 5V qui peut venir de la carte de commande ou d’une alimentation coupée par un arrêt d’urgence.
Pul+ génère les steps, les impulsions
Dir+ permet la rotation du moteur pas à pas dans un sens ou dans l’autre
si le fil est mal branché le moteur ira toujours dans le même sens quelque soit les ordres donnés
En- Pul- Dir- sont a relier ensemble vers le « – » de la carte de commande
L’alimentation des bobines d’un moteur pas à pas bipolaire
Le moteur PAP bipolaire à 2 bobines à alimenter par 4 fils et seuls les drivers pour moteurs pas à pas bipolaire conviennent pour les faire fonctionner. Les connections vers les bobines des moteurs pas à pas bipolaires sont notés A+ A- B+ B-
Exemple de réglages en intensité et micropas
Intensité maxi de 2.5A 1/16 micro pas |
Intensité maxi de 2.5A 1/16 micro pas |
Exemple d’alimentation des drivers
Une disposition comme dans le dessin ci-contre permet de relier ensemble l’alimentation des drivers et de limiter les longueurs de fils.
Contrôler des actionneurs de puissance avec des transistors Mosfet
[:en]
Contrôler des actionneurs de puissance avec des transistors Mosfet
I ) How to use an N channel MOSFET (a type of transistor) to turn anything on and off
The video below come from Afrotechmods Youtube Chanel https://www.youtube.com/user/Afrotechmods/videos
a good chanel to learn électronic
Contrôler des actionneurs de puissance avec des transistors Mosfet
1 ) Principe des transistors Mosfet
Les transistors Mosfet sont commandé par une source de tension contrairement aux transistors bipolaires commandés par une source de courant.
Au delà d’une certaine tension sur la grille (Gate en anglais), un courant circule entre la source et le drain.
Plus la tension est importante plus l’intensité circulant est importante.
Ceci concerne le transistor Mosfet à enrichissement (le plus courant) et pour lequel plus la tension au niveau de la gate est important plus l’intensité circulant entre la source et le drain est élevé.
Il existe aussi des transistor Mosfet à appauvrissement ou le fonctionnement est contraire plus la tension au niveau de la gate est élevée, plus le courant entre la source et le drain diminue.
Les transistors Mosfet peuvent être commandés directement par des microcontrôleur vu que au niveau de la grille (Gate) il n’y a pas de consommation de courant.
Voici une vidéo de Thomas Schwenke montrant clairement comment fonctionne un transistor Mosfet
Je vous conseille fortement de regarder sa chaine Youtube https://www.youtube.com/user/MrGreenTranslation/videos
Ainsi que le site http://www.bring-knowledge-to-the-world.com/ pour les excellentes animations technologiques
2 ) Les transistors Mosfet de la carte smoothieboard
Smoothieboard 0x : ne possède pas de transistor Mosfet.
Pour contrôler un élément de puissance, il faut utiliser une sortie GPIO et
brancher un relais SSR.
Smoothieboard 3x : possède 2 petit Mosfet de 3A maxi
Smoothieboard 4x : 2 petit Mosfet de 3A maxi et 2 gros Mosfet de 12.5A maxi
Smoothieboard 5x : 3 petit Mosfet de 3A maxi et 3 gros Mosfet de 12.5A maxi
Pour alimenter les Mosfet il y a 2 cas, alimenter avec la même tension que l’alimentation principale (par exemple 24V) ou bien alimenter avec une tension différente.
3 ) Mosfet alimenté avec une tension spécifique
L’alimentation se fera pour les petits mosfet a coté du Mosfet 2.6
L’alimentation pour les gros mosfet se fait entre les Mosfet 2.5 et 2.7
Attention : les mosfet ne sont pas protégés contre les surtensions et cours-circuits
Si vous voulez une protection, il conviens dans ce cas de rajouter un fusible.
La conséquence par exemple d’un mosfet grillé qui laisse passer en permanence le maximum de courant, c’est pour une imprimante 3d une température de hotend qui augmente hors de tout contrôle. ( phénomène thermal runaway )
L’augmentation hors contrôle de la température peut être la conséquence également du capteur de température sorti de son logement du hotend et qui mesure en permanence la température ambiante.
Il y a des mesures de protection soft en configurant le firmware de la smoothieboard http://smoothieware.org/temperaturecontrol
Mais une protection matérielle avec fusible est encore plus sûre.
Prenez conscience des conséquences d’un thermal runaway avec cette vidéo https://www.youtube.com/watch?v=qVjWg2vuWzk
Exemple de la cartouche chauffante d’une tête d’impression 3D
Il conviendra de choisir un fusible juste au dessus de l’empèrage maxi pouvant être utilisé
Les cartouches chauffantes font 40W
P = U x I
Donc pour une alimentation de 24V i = P / U = 40 / 24 = 1.6 A il faudra chaisir un fusible de 2A par exemple
Pour une alimentation de 12V i = P / U = 40 / 12 = 3.33 A il faudra chaisir un fusible de 3.5A par exemple.
3 ) Mosfet alimentés par la même tension que la carte principale
Exemple alimentation principale 24V
Cela simplifie le câblage, plus besoin de mettre des alimentations externes pour les mosfet.
Il faut utiliser un petit jumper pour faire connecter le VBB (+) de 24V aux + des petits Mosfet 2.4 et 2.6
Il faut utiliser 2 Jumper en parallèle ( doubler la capacité d’ampérage maxi ) pour pour faire connecter le VBB (+) de 24V aux + des gros Mosfet 2.7 et 2.5
Attention !! l’ampérage maxi pouvant être transmis par un Jumper est de 2A .
Donc pour les petits Mosfet, limitez vous à 2A
Et pour les gros Mosfet limitez vous à 4A
Cette solution avec les jumper simplifie le câblage mais limite l’ampérage pouvant être transmis.
Faire communiquer la carte smoothieboard avec des éléments extérieurs
[:en]
Faire communiquer la carte smoothieboard avec des éléments extérieurs
I ) Architecture générale
In the left the hardware of Cnc controler is just interface between Computer and machine ( no software )
When computer send impulsion to steppers motor drivers of CNC, the communication between computer can use
- parallele port : there are limit to use computer with // port to control CNC, the fréquency can’t be very high (maxi 35khz)
there latence for step signal between CPU and // port.
A a lot of computer don’t have // port now - Sérial or usb port card : more performance than // port because have processor manage step but there électronic card are a little expensive and use special software, need use the software of the card.
In the right the Cnc controler have all hardware and software to manage machine with autonomy
The computer is to send the machining file ( Gcode ) in memory of CNC controler and after computer can be unplug.
Like controler of big professional CNC in industry.
II ) Electronic control with smoothieboard
Faire communiquer la carte smoothieboard avec des éléments extérieurs
For save SD-Card need use Win32DiskImage if you have windows OS
https://www.youtube.com/watch?v=LWFxO9iIwUQ
Faire communiquer la carte smoothieboard avec des éléments extérieurs
I ) Les Entrées/Sorties pour un Usage Général
Les cartes à microcontroleurs ( Raspberry Pi, Arduino, Beaglebone, Smoothieboard … ) ont des entrées sorties prévue pour les usages classiques, port USB, port réseau, port écran HDMI …
Les fonctions de ces cartes à microcontrôleur sont extensibles en y connecter des appareils, d’autres cartes.
Les éléments externes qui seront des options utilisés par la suite se connectent par l’intermédiaire des connecteur GPIO
GPIO signifie General Purpose Input/Output, littéralement (Entrée/Sortie pour un Usage Général)
Au lieu d’être regroupé à un seul endroit comme pour les carte Raspberry et Arduino.
Les ports GPIO de la carte smoothieboard sont répartis un peu partout. http://smoothieware.org/pinout
Il y a énormément de broches de connection GPIO de disponible dont certaines peuvent avoir des capacités particulières
Les broches GPIO avec possibilité d’interruption peuvent être utilisé pour des boutons pour modifier immédiatement le déroulement habituel de l’usinage même si celui ci est en cours.
PWM signifie Pulse Width Modulation ( modulation de largeur d’impulsions ) permet d’avoir une sortie analogique pour par exemple moduler la vitesse de la broche à partir de la carte.
Chaque port GPIO est identifié par P(un nombre).(un nombre)
Beaucoup de port GPIO sont libres d’utilisation comme ceux ci-dessous encadrés en rouge.
Mais si certaines fonctions de la carte ne sont pas utilisées il est possible d’affecter les broches correspondante à un usage général GPIO
Ce serait le cas pour les broches ici entourées en orange. Par exemple le capteur endstop X min s’il n’est pas utilisé, sa broche P1.24 pourrait être affecté à autre chose.
II ) Exemple de configuration de port GPIO
A ) GPIO en sortie
a1 ) Commander un relais statique pour démarrer et éteindre la broche à partir du Gcode
# Switch module for spindle control
switch.spindle.enable true #
switch.spindle.input_on_command M3 #
switch.spindle.input_off_command M5 #
switch.spindle.output_pin 1.22 #
switch.spindle.output_type digital # just an on or off pin
B ) GPIO en entrée
b1 ) Créer un bouton pause qui suspend l’usinage lors d’un premier appui et le reprend en appuyant une seconde fois
# Switch module for pause button
switch.pause.enable true # Enable this module
switch.pause.input_pin 2.11^ # Pin where pause button is connected
switch.pause.output_on_command suspend # Suspend command
switch.pause.output_off_command resume # Resume command
switch.pause.input_pin_behavior toggle # This pin toggles between it’s on and off states each time it is pressed and released
after_suspend_gcode M5 # Gcode to run after suspend
before_resume_gcode M3 # Gcode to run before resume
b2 ) Créer un bouton reset pour redémarrer la carte smoothieboard
# Switch module for reset button
switch.reset.enable true # Enable this module
switch.reset.input_pin 3.26^ # Pin where reset button is connected
switch.reset.output_on_command reset # Command to reset the board
b3 ) Avoir un bouton kill qui arrête et annule immédiatement l’usinage
# Kill button (used to be called pause) maybe assigned to a different pin, set to the onboard pin by default
kill_button_enable true # set to true to enable a kill button
kill_button_pin 2.12 # kill button pin. default is same as pause button 2.12 (2.11 is another good choice)
Principe de la communication série
[:en]
Principe de la communication série
Principe de la communication série
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
Why use normaly closed endstop and use « 0 » Ground to send the information endstop push ?
For each endstop, it’s better to connect C to Signal and NC to Ground because this means the digital input pin ( endstop connector ) will be connected to Ground in it’s normal state and cut from Ground when the button is pressed. This approach is less prone to noise than the reverse. See here for more information.
Another positive effect of this approach is, that if a wire breaks for some reason you get the same signal as if the endstop is pressed. That makes sure that even with a damaged wire you are not able to overrun the endstop.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Explain in Chinese about floating volt level pin and pull up resistor
with Lazy Tomato Lab
See the other vidéo of LazyTomatoLab Chanel http://www.lazytomatolab.com/ very good lesson for learn about Arduino
Important !!
Check that you do not connect VCC ( red ) and GND ( black ) to a mechanical (microswitch) endstop!
Depending on your wiring that may fries your smoothieboard instantly or when the switch gets pressed.
If you’re not careful enough you can damage your board.
The endstop setting section inside config file
In smoothieboard like arduino board no need prepare pull up resistor for input pin, already have internal board resistor for this fonction.
Just activate the « pull up resistor » with option setting in config file
So don’t delete the » ^ » after the number the pin
If you do this the fonction pull up resistor don’t works
In cnc can have endstop min for setting the « 0 » machine and endstop max for when the machine move over capacitie, stop automatically.
The Formosa don’t have max endstop, it’s just a option.
With this way the cabling is more simple, users just need check if the drawing is under the maxi size the machine can cut.
If the machine move over the limit don’t worry just steppers motors loose step but don’t have damage.
Check the correct works of endstop
Use M119 command to check if the wiring of endstop is correct
when the endstop is hit, need show 1
When endstop don’t hit, need show 0
If you don’t use xmax ymax … not need there parameters appear can comment
with # in the beginning of line like below to desactivate
alpha_min_endstop 1.24^
#alpha_max_endstop 1.25^
alpha_homing_direction home_to_min
Or use nc in the end of the line like
alpha_max_endstop nc
Principe de la communication série
Article inspiré des sites web Sitelec http://sitelec.org/cours/abati/rs232.htm
Siloged http://www.siloged.fr/cours/html/isn_reseaux_info/la_liaison_srie.html
et Technologuepro
http://www.technologuepro.com/cours-systemes-embarques/cours-systemes-embarques-Bus-RS485-MODBUS-Prifibus.htm
I ) Introduction
Une liaison série est une ligne où les bits d’information (1 ou 0) arrivent successivement, soit à intervalles réguliers (transmission synchrone), soit à des intervalles aléatoires, en groupe (transmission asynchrone)
La liaison RS232 est par exemple une liaison série asynchrone
L’octet à transmettre est envoyé bit par bit (poids faible en premier) par l’émetteur sur la ligne Tx, vers le récepteur (ligne Rx) qui le reconstitue
La vitesse de transmission de l’émetteur doit être identique à la vitesse d’acquisition du récepteur.
Ces vitesses sont exprimées en BAUDS (1 baud correspond à 1 bit / seconde, dans notre cas).
Il existe différentes vitesses normalisées: 9600, 4800, 2400, 1200… bauds
A ) Communication duplex, half-duplex, full duplex
La communication peut se faire dans les deux sens (duplex).
soit émission d’abord, puis réception ensuite (half-duplex)
soit émission et réception simultanées (full-duplex)
B ) Communication asynchrone et synchrone
Lors d’une communication type asynchrone (pas d’horloge commune entre l’émetteur et le récepteur), des bits supplémentaires sont indispensables au fonctionnement: bit de début de mot (start), bit(s) de fin de mot (stop)
D’autre part, l’utilisation éventuelle d’un bit de parité, permet la détection d’erreurs dans la transmission
La norme RS485 date de 1983, les liaisons RS485 sont assez utilisées pour les CNC, notamment pour piloter certains drivers de moteur PAP ou servo moteurs ou piloter des variateurs de broches.
La transmission se fait sur une paire torsadée blindée, par des variations de tension en mode différentiel.
Le Bus RS485
Un des principaux problèmes des liaisons séries est l’absence d’immunité pour le bruit sur les lignes de signal. L’émetteur et le récepteur comparent les tensions par rapport à une masse commune en ligne (exemple RS232).
Un changement dans le niveau du potentiel de terre peut avoir des effets désastreux. Le bruit limite à la fois la distance maximale et la vitesse de communication.
Avec l’RS485 il n’y a pas une masse commune comme signal de référence. La transmission est différentielle, le récepteur compare la différence de tension entre les deux lignes, au lieu d’un niveau de tension absolue sur une ligne de signal.
Le protocole :
Un protocole consiste en la définition de trames d’échange. Plusieurs protocoles en été définies. Le protocole le plus connu est le protocole Modbus (marque déposée par MODICON) et Profibus (Siemens) qui sont deux protocoles standards de dialogue basé sur une structure hiérarchisée entre un maître et plusieurs esclaves. Néanmoins l’utilisateur est libre de définir son propre protocole.
- 2 modes de communication sont possibles
– Le maître envoie une demande à un esclave en particulier et attend une réponse
– Le maître parle à l’ensemble des esclaves sans attendre de réponseCe qu’il faut savoir - Deux esclaves ne peuvent dialoguer ensemble.
- Le dialogue maître – esclave peut être schématisé sous une forme successive de liaisons point à point.
- Mode de communication : half-duplex. (2 fils ou 4 fils)Structure des messages :Le maître envoie un message constitué de la façon suivante :
- La détection de fin de message est réalisée sur un silence de durée supérieure ou égale à la durée de transmission de 3 octets.
- L’esclave répond par un message du même type que le message question.
- Exemple de circuit permettant de convertir une liaison série TTL UART en liaison RS485https://www.aliexpress.com/item/TTL-to-RS485-module-RS485-to-TTL-with-isolated-single-chip-serial-port-UART/32820863224.html?spm=a2g0s.9042311.0.0.fyFwys
Le CAN (Controller Area Network) est un bus de communication de type série, développé à la fin des années 80, par l’entreprise allemande Robert Bosch.
L’objectif était de fournir à l’industrie automobile une alternative aux nombreux câbles nécessaires pour interconnecter les équipements électroniques, sans cesse croissant des automobiles.
Aujourd’hui, l’efficacité et la robustesse de ce protocole l’ont amené à être utilisé dans de nombreuses autres applications industrielles, en particulier celles nécessitant un débit important (jusqu’à 1 Mbits/s) avec un très faible taux d’erreur.
Dans une voiture il y a un bus rapide à 250 kbit/s pour les équipements de sécurité et un de 125 kbit/s pour les autres équipements.
Plus d’informations à http://isil-electro.wikispaces.com/CAN
Electronique de commande smoothieboard et compatible
[:en]
Electronique de commande smoothieboard et compatible
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
It’s important save firmware and config file in other place of sd card for exemple computer, if you change something and whant return back, can find original file.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
Many settings in smoothie can be set immediately with M commands, these settings are lost on reset, however they can be saved to a non-volatile storage (similar to EEPROM on other systems).
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
I ) SMOTHIEBOARD AXIS
In the config file alpha match with M1 motor axis
beta match with M2 motor axis
gamma with M3 motor axis
Smoothiesboard is universal for all CNC machine, no need have different electronic board for CNC Milling machine other for Laser cut machine etc. …
The config file already have inside the different function for all machine
Just change the setting about your kind of machine.
I ) OPTIONS IN THE CONFIG FILE
In smoothieboard, for control steppers motors, can use :
Internal stepper driver : A5984 stepper drivers with 1/32 microstepping
2A max
External stepper driver : The reason to use external is when people need more power for example 3A 4A 7A
When use internal stepper driver the motor is connect to plug write 1
When use external driver, the external driver is connect to place write 2 with EN STEP DIR and GND pin
All name and number of pins are write in back face of smoothieboard
The number of pin in smoothieboard need match with number of pin in file config.
When you receive the electronic board all setting are OK
After when you understand the config of pin all can be change
have many possibilities of différents configurations.
my_pin_name number of the pin (option)
For example : signalalpha_dir_pin 0.5!
alpha_min_endstop 1.24^
When the motor don’t turn in correct direction, no need change the wire, just add
! after the pin number
With smoothieboard, no need use screwdriver and turn potentiometer to setting with difficulty the limit of current, like drivers of a lot of 3d printer.
All internal stepper drivers have digital potentiometer.
Just write 1.5 in alpha_current setting and stepper driver works to 1.5A
The limit without cooling system ( fan ) is 1.6A
1.6 to 2A (max) need use fan on top of electronic.
I ) The number of step for the machine move of 1mm depend of différent things
II ) Calculate for timing belt / pulley transmission
III ) Calculate for Threaded Leadscrew
IV ) If reality a little différent theory
I was never have problem with machine move à little different than the calculate.
But if you have this just use a accurate measurement tool
and recalculate like below.
Electronique de commande smoothieboard et compatible
I ) SD Micro card
We can separate the smoothieboard controler in
Software part :
Firmware —-> can be update
config file —-> setting of smoothieboard
Gcode files —> machining path
Hardware électronic board with :
32-bit Cortex-M3 LPC1769 processor
with 512kB flash and 64kB RAM
Ethernet and USB connections
Various inputs and outputs for extensibility
Without Sd-card the smoothieboard can’t works
If the smoothieboard can’t read the two file more important
config and Firmware.cur, the smoothieboard don’t start.
If have problem with sd-card or firmware inside sd-card.
Can see with color of led.
Don’t mix smoothieboard firmware and config with gcode file.
Create special folder ‘gcode » for exemple to put machining file inside.
If you don’t can do mistake and delete sometimes important file.
Can have two more file, depend of options you choice.
-
config-override : – Created when the g-code M500 is played.
-
on_boot.gcode : – Played on startup of smoothieboard. Can be used to initialize the smoothie driven device.
Overway is to copy sd-card to other sd-card (like copy sd-card for raspberry pi)
All is normal |
The Led 2 and 3 blink at this speed The Les 4 and 1 stay on |
Sd-Card problem
|
The Led 4 stay off |
Firmware crash |
All green led stay on or Led 3 and 2 stay off |
For overcome problem see Troubleshooting section of smoothieboard documentation http://smoothieware.org/troubleshooting#troubleshooting-a-problem-with-your-smoothieboard
The values in the configuration file will be overridden for those configuration options.
There is a set of M-codes (M50x) documented below that allow you to save all the current settings that have Mxxx commands to set them. This is particularly convenient for parameters that require tuning, as you can use a command to modify them without having to open the file and reset the board.
As these settings can be temporarily overridden with Mxxx commands there is a way to save these settings. Once saved they are reloaded on reset or boot overriding the settings in the config file. If you then edit the config file, make sure the setting you are editing is not being overridden by the override file (M503 will tell you if there is an active override file). This can sometimes explain why editing the config file appears to have no effect.
M-code | Description | Example | ||||
M500 | Save settings to an override file | |||||
M501 | load config-override file optionally specifying the extension | M501 – loads config+override, M501 test1 – loads config+override.test1 | ||||
M502 | Delete the override file, reverting to config settings at next reset | |||||
M503 | Display overridden settings if any | |||||
M504 | Save the settings to an override file with specified extension | M504 blue-pla |
Crashing
Do not issue M500 or M504 when gcode is read by machine, or the machine could crash or the SD card become corrupted.
Do not
Edit the config-override file yourself, only use the commands to edit the values.
Electronique de commande smoothieboard et compatible
Nous aborderons ici les technologies des cartes smoothieboard et compatible, mais seulement celles dédiés au pilotage des machines outils CNC. Concernant le pilotage des imprimantes 3D avec une carte smoothieboard il y a déja pléthore de documentation sur le Web.
Si l’on prend les cartes électroniques smoothieboard originales
Il est inutile d’utiliser les modèles 3X 4X 5X possédant respectivement 2, 4 et 5 drivers internes car ces drivers internes sont limité à 24V 2A, suffisant pour piloter des imprimantes 3D mais insuffisant pour faire fonctionner les gros moteurs PAP d’une fraiseuse CNC qui doit faire déplacer un outil dans de la matière.
Le modèle smoothieboard OX plus drivers externes puissants est mieux adapté.
La carte smoothieboard originale utilise un microcontrôleur 32-bit Cortex-M3 LPC1769 fonctionnant à une fréquence maxi de 120Mhz
I ) La configuration des sorties pilotant les drivers PAP externes
Les pins (broches) sur la carte correspondent au fichier de configuration
Si des axes ne sont pas utilisés, les pins peuvent être utilisés pour autre chose.
Par exemple, le 5ème axe vous est inutile et bien les pin 4.29 2.13 et 2.8 peuvent être branchés à autre chose à condition bien sur d’adapter le fichier de configuration
alpha_step_pin 2.0 # Pin for alpha stepper step signal alpha_dir_pin 0.5 # Pin for alpha stepper direction, add '!' to reverse direction alpha_en_pin 0.4 # Pin for alpha enable pin alpha_current 1.5 # X stepper motor current alpha_max_rate 30000.0 # Maximum rate in mm/min beta_step_pin 2.1 # Pin for beta stepper step signal beta_dir_pin 0.11 # Pin for beta stepper direction, add '!' to reverse direction beta_en_pin 0.10 # Pin for beta enable beta_current 1.5 # Y stepper motor current beta_max_rate 30000.0 # Maxmimum rate in mm/min gamma_step_pin 2.2 # Pin for gamma stepper step signal gamma_dir_pin 0.20 # Pin for gamma stepper direction, add '!' to reverse direction gamma_en_pin 0.19 # Pin for gamma enable gamma_current 1.5 # Z stepper motor current gamma_max_rate 300.0 # Maximum rate in mm/min
II ) La configuration des pins de fin de course (endstop)
## Endstops
# See http://smoothieware.org/endstops
endstops_enable true
alpha_min_endstop 1.24
#alpha_max_endstop 1.25
alpha_homing_direction home_to_min
alpha_min 0
alpha_max 200
beta_min_endstop 1.26
#beta_max_endstop 1.27
beta_homing_direction home_to_min
beta_min 0
beta_max 200
gamma_min_endstop 1.28
gamma_max_endstop 1.29
gamma_homing_direction home_to_min
gamma_min 0
gamma_max 200
alpha_max_travel 500
beta_max_travel 500
gamma_max_travel 500
Même principe que précédemment, si des fin de course max ne sont pas utilisé vous pouvez utiliser les broches pour autre chose
Les cartes SKR1.1 et SKR1.3 utilisent un microcontrôleur Cortex-M3 series LPC1768 fonctionnant à 100Mhz
Cette carte peut fonctionner avec les firmwares Smoothieware et Marlin 2.0
Les caractéristiques du microcontrôleur LPC1768 sont les mêmes que le LPC1769 mis à part la fréquence maxi du CPU de 100Mhz au lieu de 120Mhz
I ) La configuration des sorties pilotant les drivers PAP externes
Les pin utilisés dans le fichier de configuration sont pour la plupart différents de ceux de la smoothieboard originale
I ) La configuration des sorties pilotant les drivers PAP externes
# axe X sur le M1
alpha_step_pin 2.0 # Pin for alpha stepper step signal
alpha_dir_pin 3.26 # Pin for alpha stepper direction
alpha_en_pin 3.25 # Pin for alpha enable pin
alpha_max_rate 3000.0 # mm/min
# axe Y sur le M2 et le M4
beta_step_pin 2.1 # Pin for beta stepper step signal
beta_dir_pin 0.22 # Pin for beta stepper direction
beta_en_pin 0.21 # Pin for beta enable
beta_max_rate 3000.0 # mm/min
# axe Z sur le M3
gamma_step_pin 2.2 # Pin for gamma stepper step signal
gamma_dir_pin 4.28 # Pin for gamma stepper direction
gamma_en_pin 4.29 # Pin for gamma enable
gamma_max_rate 3000.0 # mm/min
Les pins utilisés pour le pilotage des drivers externes sur cette carte SimpleCncMillBoard sont différents de la smoothieboard originale mais ils correspondent au fichier de config de la carte SimpleCncMillBoard
II ) La configuration des pins (broches) des fin de course (endstop)
alpha_min_endstop 1.22!^ # add a ! to invert if endstop is NO connected to ground
alpha_max_endstop nc # NOTE set to nc if this is not installed
alpha_homing_direction home_to_min # or set to home_to_max and set alpha_max
alpha_max 500 # valeur positive # this gets loaded after homing when home_to_max is set
beta_min_endstop 1.23!^ #
beta_max_endstop nc #
beta_homing_direction home_to_min #
beta_max 500 # valeur positive
#
gamma_min_endstop nc # c’est le Zprobe qui est utilisé à la place de Zmin
gamma_max_endstop nc #
gamma_homing_direction home_to_min #
gamma_max 200 #
# param communs
endstop_debounce_ms 10 # anti-rebond pour les homing endstop en ms
#endstop_debounce_count 2000 # uncomment if you get noise on your endstops, default is 100
La connection du Probe
## Z-probe
zprobe.enable false # set to true to enable a zprobe
zprobe.probe_pin 1.28!^ # pin probe is attached to if NC remove the !
zprobe.slow_feedrate 20 # mm/sec probe feed rate
#zprobe.debounce_count 100 # set if noisy
zprobe.fast_feedrate 100 # move feedrate mm/sec
zprobe.probe_height 20 # how much above bed to start probe
L’électronique de contrôle intégrée autonome
[:en]
L’électronique de contrôle intégrée autonome
L’électronique intègre :
– Le processeur qui exécute le Gcode
– L’interface de signaux (la ‘breakout board’)
selon les cas :
– la partie puissance alimentant les moteurs pas à pas
– le stockage des fichiers G-Code
– Un panneau de commande avec mini écran
Ces cartes électroniques intégrés ont été conçu initialement pour les imprimante 3D et des adaptations pour le pilotage des machines outils ont été développés.
I ) Les solutions basés sur microcontrôleur arduino
Ces solutions utilisent un microcontrôleur 8 bit assez ancien (Atmel AVR) et limité en performance.
Une importante optimisation logicielle permet aujourd’hui d’atteindre une fréquence maximale de pas de l’ordre de 16kHz.
Il n’y a plus trop d’améliorations possibles avec ce processeur en fin de vie.
La communauté autour de ces cartes est très importante et les développements sont continus.
Ces solutions se présentent :
soit avec une carte d’extension de la carte Arduino ( arduino shield ), c’est le cas par exemple des GRBL Shield
Ces GRBL Shield s’insèrent au dessus d’une carte arduino Uno, la GRBL Shiel de l’entreprise Synthetos à droite à des drivers de moteur pas à pas intégré, le GRBL Shield à gauche à des drivers insérables type stepstick.
Le firmware pour ce type de carte est GRBL , synthetos à développer un autre firmware appellé TinyG
Soit incorporent dans une même carte les composants d’un Arduino en y ajoutant les composants d’interface et éventuellement de puissance.
C’est le cas par exemple de la solution de l’entreprise Pibot basé à Guilin en Chine
Les drivers pour le système Pibot sont externes et plus puissant que les stepstick.
L’ensemble peut pilotr une imprimante 3D ou une CNC.
Mais on est obligé pour passer de l’un à l’autre de flasher le firmware.
Marlin pour l’impression 3D
GRBL pour le fraisage CNC
II ) Les cartes basées sur l’Arduino ‘DUE’
Arduino a sorti en 2011 une carte basée sur un microcontrôleur 32 bits nettement plus puissant, l’Atmel SAM3X, construit à partir d’un cœur de type ARM Cortex-M3.
Il existe une version de tinyG fonctionnant sur les processeurs de type ‘Due’ la version Tiny G2.
Possibilité de mettre le Grblshield sur une carte Arduino Due ( pilotage 3 axes )
Ou la carte intégrée TinyG basé sur arduino Due.
La carte possède 4 drivers Texas instrument intégré fonctionnant en 1/8 de pas.
Il est possible de câbler des drivers externes plus performants et plus puissant.
Le Gcode est interprété localement par la carte, mais il n’y a pas de lecteur SD-Card pour le stocker.
Le système n’est pas complètement autonome.
III ) Les nano ordinateurs
Depuis quelques années, on trouve de toutes petites cartes (plus petites qu’un paquet de cigarettes) intégrant un ordinateur complet avec ses entrées/sorties (USB, Ethernet, vidéo et broches d’entrées/sorties).
Le plus connu est le Raspberry Pi (la ‘Framboise’), mais pour la CNC, il est utilisé un autre modèle d’ordinateur le Beagle Bone Black (BBB) notamment car il dispose de beaucoup plus d’entrées/sorties et d’unités de contrôle dites Temps réel (exécutant les instructions sans délai d’attente).
Une version de LinuxCNC a été préparée pour le BBB sur la base de Machinekit
La puissance est un peu limite et la définition vidéo du BBB est limitée (1280×1024), mais la compacité, la simplicité et le coût en font une solution intéressante pour le pilotage CNC.
Cet ordinateur peut être géré à distance par un autre ordinateur (on parle alors d’une configuration ‘Headless’, sans clavier ni écran) ou alors être totalement autonome. LinuxCNC ne gérant pas l’USB, les fichiers doivent être transférés par réseau.
Les processeurs de ces ordinateurs sont de type ARM (non compatible PC), les mêmes processeurs que ceux utilisés dans les tablettes et smartphone.
Il faut ajouter une carte additionnelle au Beaglebone black pour brancher des drivers externes, pour les nano ordinateur Beaglebone cela s’appelle des Capes http://blog.machinekit.io/p/hardware-capes.html
Pour l’instant aucune des solutions pour Beablebone n’a eu de succès, soit les demandes sont trop faibles et les créateurs de capes ne se lance pas dans la production, souvent les capes sont en téléchargement opensource et c’est à chacun de se débrouiller pour les fabriquer.
Lorsqu’un cape est commercialisé comme celui de l’entreprise Probotix ci contre, le prix du cape plus du Beaglebone black revient aussi cher qu’une solution tout intégré et aussi performante.
L’entreprise Fastbot3d située en Inde avait lancé avec succès sur Indiegogo une carte regroupant l’électronique du Beagleboneblack et l’électronique nécessaire à l’impression 3D avec comme projet d’intégrer Machinekit mais l’entreprise à eu des difficultés financières et a fermée au bout de 3 ans. http://www.fastbot3d.com/
Exemple de CAPES dont les infos sont disponibles et chacun doit se débrouiller pour les fabriquer
Les CAPES MachineKit de Jean-Luc Soumard, il partage également la fabrication d’un pupitre de commande complet Linux CNC avec BeagleBone http://jean-luc.soumard.pagesperso-orange.fr/pupitre-cnc-02.htm
III ) Les cartes smoothieboard et ses dérivés
La demande pour une puissance de calcul plus élevée étant forte, on trouve depuis fin 2013, suite à un développement partiellement financé sur KickStarter une nouvelle carte la ‘Smoothieboard‘, basée sur un microcontrôleur NXP LPC 1769, lui-aussi basé sur un cœur ARM Cortex-M3, mais plus rapide que celui de l’Arduino DUE.
Un nouveau firmware ‘smoothieware’ a été développé il est universelle pour toutes les machines fonctionnant avec du G-Code (imprimantes 3D, fraiseuses, découpeuse laser ou plasma … ), ce firmware est totalement modulable, et n’importe quelle fonction peut être ajoutée et affectée aux nombreux ports GPIO de la carte.
L’ensemble est totalement opensource et documenté si bien qu’il y a maintenant de nombreuses cartes Smoothie dérivée de l’originale et fonctionnant avec le même firmware.
L’électronique de contrôle intégrée autonome
L’électronique intègre :
– Le processeur qui exécute le Gcode
– L’interface de signaux (la ‘breakout board’)
selon les cas :
– la partie puissance alimentant les moteurs pas à pas
– le stockage des fichiers G-Code
– Un panneau de commande avec mini écran
Ces cartes électroniques intégrés ont été conçu initialement pour les imprimante 3D et des adaptations pour le pilotage des machines outils ont été développés.
I ) Les solutions basés sur microcontrôleur arduino
Ces solutions utilisent un microcontrôleur 8 bit assez ancien (Atmel AVR) et limité en performance.
Une importante optimisation logicielle permet aujourd’hui d’atteindre une fréquence maximale de pas de l’ordre de 16kHz.
Il n’y a plus trop d’améliorations possibles avec ce processeur en fin de vie.
La communauté autour de ces cartes est très importante et les développements sont continus.
Ces solutions se présentent :
soit avec une carte d’extension de la carte Arduino ( arduino shield ), c’est le cas par exemple des GRBL Shield
Ces GRBL Shield s’insèrent au dessus d’une carte arduino Uno, la GRBL Shiel de l’entreprise Synthetos à droite à des drivers de moteur pas à pas intégré, le GRBL Shield à gauche à des drivers insérables type stepstick.
Le firmware pour ce type de carte est GRBL , synthetos à développer un autre firmware appellé TinyG
Soit incorporent dans une même carte les composants d’un Arduino en y ajoutant les composants d’interface et éventuellement de puissance.
C’est le cas par exemple de la solution de l’entreprise Pibot basé à Guilin en Chine
Les drivers pour le système Pibot sont externes et plus puissant que les stepstick.
L’ensemble peut pilotr une imprimante 3D ou une CNC.
Mais on est obligé pour passer de l’un à l’autre de flasher le firmware.
Marlin pour l’impression 3D
GRBL pour le fraisage CNC
II ) Les cartes basées sur l’Arduino ‘DUE’
Arduino a sorti en 2011 une carte basée sur un microcontrôleur 32 bits nettement plus puissant, l’Atmel SAM3X, construit à partir d’un cœur de type ARM Cortex-M3.
Il existe une version de tinyG fonctionnant sur les processeurs de type ‘Due’ la version Tiny G2.
Possibilité de mettre le Grblshield sur une carte Arduino Due ( pilotage 3 axes )
Ou la carte intégrée TinyG basé sur arduino Due.
La carte possède 4 drivers Texas instrument intégré fonctionnant en 1/8 de pas.
Il est possible de câbler des drivers externes plus performants et plus puissant.
Le Gcode est interprété localement par la carte, mais il n’y a pas de lecteur SD-Card pour le stocker.
Le système n’est pas complètement autonome.
III ) Les nano ordinateurs
Depuis quelques années, on trouve de toutes petites cartes (plus petites qu’un paquet de cigarettes) intégrant un ordinateur complet avec ses entrées/sorties (USB, Ethernet, vidéo et broches d’entrées/sorties).
Le plus connu est le Raspberry Pi (la ‘Framboise’), mais pour la CNC, il est utilisé un autre modèle d’ordinateur le Beagle Bone Black (BBB) notamment car il dispose de beaucoup plus d’entrées/sorties et d’unités de contrôle dites Temps réel (exécutant les instructions sans délai d’attente).
Une version de LinuxCNC a été préparée pour le BBB sur la base de Machinekit
La puissance est un peu limite et la définition vidéo du BBB est limitée (1280×1024), mais la compacité, la simplicité et le coût en font une solution intéressante pour le pilotage CNC.
Cet ordinateur peut être géré à distance par un autre ordinateur (on parle alors d’une configuration ‘Headless’, sans clavier ni écran) ou alors être totalement autonome. LinuxCNC ne gérant pas l’USB, les fichiers doivent être transférés par réseau.
Les processeurs de ces ordinateurs sont de type ARM (non compatible PC), les mêmes processeurs que ceux utilisés dans les tablettes et smartphone.
Il faut ajouter une carte additionnelle au Beaglebone black pour brancher des drivers externes, pour les nano ordinateur Beaglebone cela s’appelle des Capes http://blog.machinekit.io/p/hardware-capes.html
Pour l’instant aucune des solutions pour Beablebone n’a eu de succès, soit les demandes sont trop faibles et les créateurs de capes ne se lance pas dans la production, souvent les capes sont en téléchargement opensource et c’est à chacun de se débrouiller pour les fabriquer.
Lorsqu’un cape est commercialisé comme celui de l’entreprise Probotix ci contre, le prix du cape plus du Beaglebone black revient aussi cher qu’une solution tout intégré et aussi performante.
L’entreprise Fastbot3d située en Inde avait lancé avec succès sur Indiegogo une carte regroupant l’électronique du Beagleboneblack et l’électronique nécessaire à l’impression 3D avec comme projet d’intégrer Machinekit mais l’entreprise à eu des difficultés financières et a fermée au bout de 3 ans. http://www.fastbot3d.com/
III ) Les cartes smoothieboard et ses dérivés
La demande pour une puissance de calcul plus élevée étant forte, on trouve depuis fin 2013, suite à un développement partiellement financé sur KickStarter une nouvelle carte la ‘Smoothieboard‘, basée sur un microcontrôleur NXP LPC 1769, lui-aussi basé sur un cœur ARM Cortex-M3, mais plus rapide que celui de l’Arduino DUE.
Un nouveau firmware ‘smoothieware’ a été développé il est universelle pour toutes les machines fonctionnant avec du G-Code (imprimantes 3D, fraiseuses, découpeuse laser ou plasma … ), ce firmware est totalement modulable, et n’importe quelle fonction peut être ajoutée et affectée aux nombreux ports GPIO de la carte.
L’ensemble est totalement opensource et documenté si bien qu’il y a maintenant de nombreuses cartes Smoothie dérivée de l’originale et fonctionnant avec le même firmware.
L’électronique de contrôle intégrée autonome
L’électronique intègre :
– Le microcontrôleur qui exécute le Gcode ( Interpolateur Gcode )
– L’interface de signaux (la ‘breakout board’) partie de la carte électronique qui permet d’envoyer les signaux électroniques vers un bornier.
selon les cas :
– la partie puissance alimentant les moteurs pas à pas ( drivers internes )
– le stockage des fichiers G-Code ( souvent dans une carte SD )
– Un panneau de commande avec mini écran
Ces cartes électroniques intégrées sont apparues d’abord pour les imprimantes 3D puis des versions pour le pilotage des machines outils ont été développés.
I ) Les solutions basées sur microcontrôleur arduino 8 bits
Ces solutions utilisent un microcontrôleur 8 bit assez ancien (Atmel AVR) et limité en performance.
Une importante optimisation logicielle permet aujourd’hui d’atteindre une fréquence maximale de pas de l’ordre de 16kHz.
Il n’y a plus trop d’améliorations possibles avec ce processeur en fin de vie.
Le nombre d’entrées sorties des cartes arduino Uno est limité et il est difficile de piloter une machine possédant de nombreux accessoires
La communauté autour de ces cartes est très importante et les développements sont continus.
Ces solutions se présentent :
a ) soit avec une carte d’extension de la carte Arduino ( arduino shield ), c’est le cas par exemple des GRBL Shield
Ces GRBL Shield s’insèrent au dessus d’une carte arduino Uno, la GRBL Shield de l’entreprise Synthetos à droite à des drivers de moteur pas à pas intégré, le GRBL Shield à gauche à des drivers insérables type stepstick.
Le firmware pour ce type de carte est GRBL , synthetos a développé un autre firmware appelé TinyG
b ) Soit incorporent dans une même carte les composants d’un Arduino en y ajoutant les composants d’interface et éventuellement de puissance.
C’est le cas par exemple de la solution de l’entreprise Pibot basé à Guilin en Chine
Les drivers pour le système Pibot sont externes et plus puissant que les stepstick.
L’ensemble peut pilote une imprimante 3D ou une CNC.
Mais on est obligé pour passer de l’un à l’autre de flasher le firmware.
Marlin pour l’impression 3D
GRBL pour le fraisage CNC
II ) Les cartes basées sur l’Arduino ‘DUE’
Arduino a sorti en 2011 une carte basée sur un microcontrôleur 32 bits nettement plus puissant, l’Atmel SAM3X, construit à partir d’un cœur de type ARM Cortex-M3.
Il existe une version de tinyG fonctionnant sur les processeurs de type ‘Due’ la version Tiny G2.
Possibilité de mettre le Grblshield sur une carte Arduino Due ( pilotage 3 axes )
Ou la carte intégrée TinyG basé sur arduino Due.
La carte possède 4 drivers Texas instrument intégré fonctionnant en 1/8 de pas.
Il est néanmoins possible de câbler des drivers externes plus performants et plus puissant.
Le Gcode est interprété localement par la carte, mais il n’y a pas de lecteur SD-Card pour le stocker.
Le système n’est pas complètement autonome.
III ) Les nano ordinateurs
Depuis quelques années, on trouve de toutes petites cartes (plus petites qu’un paquet de cigarettes) intégrant un ordinateur complet avec ses entrées/sorties (USB, Ethernet, vidéo et broches d’entrées/sorties).
Le plus connu est le Raspberry Pi (la ‘Framboise’), mais pour la CNC, il est utilisé un autre modèle d’ordinateur le Beagle Bone Black (BBB) notamment car il dispose de beaucoup plus d’entrées/sorties et d’unités de contrôle dites Temps réel (exécutant les instructions sans délai d’attente).
Une version de LinuxCNC a été préparée pour le BBB sur la base de Machinekit
La puissance est un peu limite et la définition vidéo du BBB est limitée (1280×1024), mais la compacité, la simplicité et le coût en font une solution intéressante pour le pilotage CNC.
Cet ordinateur peut être géré à distance par un autre ordinateur (on parle alors d’une configuration ‘Headless’, sans clavier ni écran) ou alors être totalement autonome. LinuxCNC ne gérant pas l’USB, les fichiers doivent être transférés par réseau.
Les processeurs de ces ordinateurs sont de type ARM (non compatible PC), les mêmes processeurs que ceux utilisés dans les tablettes et smartphones.
Il faut ajouter une carte additionnelle au Beaglebone black pour brancher des drivers externes, pour les nano ordinateurs Beaglebone cela s’appelle des Capes http://blog.machinekit.io/p/hardware-capes.html
Pour l’instant aucune des solutions pour Beablebone n’a eu de succès, soit les demandes sont trop faibles et les créateurs de capes ne se lancent pas dans la production, souvent les capes sont en téléchargement opensource et c’est à chacun de se débrouiller pour les fabriquer.
Lorsqu’un cape est commercialisé comme celui de l’entreprise Probotix ci contre, le prix du cape plus du Beaglebone black revient aussi cher qu’une solution tout intégré et aussi performante.
L’entreprise Fastbot3d située en Inde avait lancé avec succès sur Indiegogo une carte regroupant l’électronique du Beagleboneblack et l’électronique nécessaire à l’impression 3D avec comme projet d’intégrer Machinekit mais l’entreprise a eu des difficultés financières et a fermé au bout de 3 ans.
Exemple de CAPES dont les infos sont disponibles et chacun doit se débrouiller pour les fabriquer
Les CAPES MachineKit de Jean-Luc Soumard, il partage également la fabrication d’un pupitre de commande complet Linux CNC avec BeagleBone http://jean-luc.soumard.pagesperso-orange.fr/pupitre-cnc-02.htm
III ) Les cartes smoothieboard et ses dérivés
La demande pour une puissance de calcul plus élevée étant forte, on trouve depuis fin 2013, suite à un développement partiellement financé sur KickStarter une nouvelle carte la ‘Smoothieboard‘, basée sur un microcontrôleur NXP LPC 1769, lui-aussi basé sur un cœur ARM Cortex-M3, mais plus rapide que celui de l’Arduino DUE.
Un nouveau firmware ‘smoothieware’ a été développé il est universelle pour toutes les machines fonctionnant avec du G-Code (imprimantes 3D, fraiseuses, découpeuse laser ou plasma … ), ce firmware est totalement modulable, et n’importe quelle fonction peut être ajoutée et affectée aux nombreux ports GPIO de la carte.
L’ensemble est totalement opensource et documenté si bien qu’il y a maintenant de nombreuses cartes Smoothie dérivées de l’originale et fonctionnant avec le même firmware.
a ) La carte smoothieboard originale ( Opensource )
Le leader du projet est Arthur Wolf un Français situé à Brest mais la communauté est internationale et la quasi totalité des ressources et du support sont en Anglais.
Je laisse Arthur présenter la carte smoothieboard dans une vidéo réalisée par les fabriques du Ponant
Site officiel des cartes smoothieboard http://smoothieware.org/smoothieboard
b ) Quelques cartes dérivées utilisant le firmware smoothieware
- SimpleCncMillBoard Cette carte est parfaitement adaptée pour le pilotage des machines outils CNC (fraiseuse, tour … ) ou découpeuses (Laser, plasma … ), toute l’électronique qui était utilisé uniquement par les imprimantes 3D a été enlevé, le résultat est une carte électronique compatible smoothieware plus petite et moins cher.
Cette carte conçu en France est le résultat d’une collaboration entre :
Christophe Courche de CNC Fraises https://www.cncfraises.fr/ ( design, prototype, production, co-financement ) et
Xavier Hinault http://www.mon-fablab.fr/ (idée, conseils techniques, tests, site web, co-financement)
- Cohesion 3D mini et Cohesion 3D remix http://cohesion3d.com/ (Opensource)
La Cohesion 3D mini est bien adaptée pour équiper les petites découpeuse laser K40 (40W) qu’on trouve sur ebay ou les sites Chinois entre 300 et 400€
La Cohesion 3D remix peut être utilisé pour des imprimantes 3D avec des drivers stepsticks ou des drivers externes pour des CNC - Carte AzteEG x5 de l’entreprise Panucatt http://www.panucatt.com/ (Opensource)
Cette carte est peu encombrante mais utilise des stepsticks, elle n’a pas de connecteur RJ45 - Carte Re-ARM Controller for RAMPS aussi de l’entreprise Panucatt (Opensource)
Celle ci permet de remplacer les cartes arduino MEGA 2560 et d’avoir des shields RAMPS fonctionnant avec smoothieware - Carte Emotronic de l’entreprise EmotionTech de Toulouse (Opensource) https://www.reprap-france.com/produit/1234568620-carte-electronique-emotronic
- Carte MKS SBASE (Non Opensource)
Système de pilotage d’une CNC
[:en]
Système de pilotage d’une CNC
I ) Architecture générale
In the left the hardware of Cnc controler is just interface between Computer and machine ( no software )
When computer send impulsion to steppers motor drivers of CNC, the communication between computer can use
- parallele port : there are limit to use computer with // port to control CNC, the fréquency can’t be very high (maxi 35khz)
there latence for step signal between CPU and // port.
A a lot of computer don’t have // port now - Sérial or usb port card : more performance than // port because have processor manage step but there électronic card are a little expensive and use special software, need use the software of the card.
In the right the Cnc controler have all hardware and software to manage machine with autonomy
The computer is to send the machining file ( Gcode ) in memory of CNC controler and after computer can be unplug.
Like controler of big professional CNC in industry.
II ) Electronic control with smoothieboard
Système de pilotage d’une CNC
For save SD-Card need use Win32DiskImage if you have windows OS
https://www.youtube.com/watch?v=LWFxO9iIwUQ
Système de pilotage d’une CNC
I ) Architecture générale
A gauche entre l’ordinateur et la machine il y a juste une carte d’interface, permettant de convertir les signaux venant de la prise parallèle. C’est donc l’ordinateur qui envoie directement les signaux vers les drivers de commande de moteur pas à pas.
Les logiciels souvent utilisé dans cette configuration sont les logiciels Linux CNC (anciennement EMC2 ) ou le logiciel Mach3
Le prix de la carte d’interface est dérisoire, c’est la solution la moins cher, il y a par contre une limite dans les performances.
– La fréquence d’envoie des impulsions pour les moteurs est limitée ( maxi environ 35khz ).
– Il y a des problèmes de latence entre le processeur de l’ordinateur et le port //
– Si le CPU est occupé à autre chose cela perturbe le pilotage ou pire si l’ordinateur plante l’usinage s’arrête.
Les ordinateurs avec port parallèle sont de plus en plus rares.
La fréquence de sortie des signaux (exprimé en kHz) est un paramètre important car c’est un facteur qui peut être limitant pour la vitesse de la machine. Si la commande de moteurs pas à pas se fait en fraction de pas (micropas), ceci augmente le débit des signaux. Pour les moteurs pas à pas, on va jusqu’à 32 micro-pas, ce qui nécessite 16 fois plus de signaux que pour une commande en 1/2 pas. Les servos peuvent tourner très vite et demandent donc un débit important.
Le logiciel Linux CNC est gratuit et Opensource, il s’installer que sur les ordinateurs Linux avec prise //
Le logiciel Mach3 est propriétaire il s’installe que sur Windows avec des ordinateurs ayant une prise //
certaines cartes USB sont maintenant compatibles Mach3
Les cartes d’interpolation avec port série ou USB : les performances sont nettement meilleures qu’avec les ports parallèle mais
– ces cartes électroniques coûtent assez cher.
– elles utilisent des logiciels spécifiques, on est obligé d’utiliser le logiciel de pilotage de CNC adapté à la carte
Ce sont par exemple les cartes Soprolec, Iprocam, PlanetCNC
plus d’information sur http://cncloisirs.com/Electronique/CarteDeCommande
A droite :
Cette fois l’ordinateur est seulement utilisé pour envoyer le fichier G-Code dans la mémoire de l’électronique de commande ( sd-card ).
C’est l’électronique de commande qui envoie les impulsions nécessaires au pilotage des moteurs pas à pas.
On retrouve le principe des directeurs de commande des CNC industrielles, qui gèrent de manière autonome la machine.
Les performances sont plus importantes puisque les microcontrôleurs sont dédiés exclusivement au calcul des trajectoires et ne s’occupent de rien d’autre.
Plus d’information :
http://cncloisirs.com/Electronique/CartesInt%e9gr%e9es
A propos du pilotage de CNC avec prise //
Si votre budget est limité pour la partie commande de la machine et que vous envisager de commander une simple carte d’interface entre la prise // et la machine. ( Carte BOB qui signifie Break Out Board ) il est préférable dans ce cas de privilégier Linux CNC par rapport à Mach3 car Windows n’est pas un OS disposant d’un noyaux Real Time.
En savoir plus sur les noyaux temps réel
Plus d’information ici http://www.metabricoleur.com/t9418-tutorielpresentation-et-installation-de-linuxcnc
Il est préférable d’utiliser un PC Fixe avec prise // plutôt qu’un portable avec prise // certains portables peuvent poser problème notamment leurs cartes graphiques.
Dans tous les cas au niveau performance, il est préférable d’utiliser une carte interpolateur (MCB Motion Control Board) plutôt qu’une carte interface (BOB Break Out Board)
II ) Electronique de contrôle basé sur la carte
Smoothieboard
Le microcontroleur LPC1769 (ARM32) fonctionne grâce au firmware ( microprogramme ) présent sur la carte micro-SD.
Il exécute les instruction G-code venant des des fichiers G-code présent également sur la carte micro-sd.
Un firmware permet à un matériel informatique d’évoluer (via des mises à jour), d’intégrer de nouvelles fonctionnalités, sans avoir besoin de revoir complètement le design du hardware.
Un nouveau firmware avec des nouvelles fonctionnalités peut être mis facilement sur la carte micro-sd
http://smoothieware.org/flashing-smoothie-firmware
Le firmware est paramétrable grâce au fichier config, celui ci va activer, désactiver paramétrer les fonctionnalités afin de les adapter en fonction de votre machine.
La partie soft de l’électronique de commande ( firmware et fichier config ) forme un OS Linux minimaliste spécialisé dans l’exécution du G-Code et la communication avec la carte électronique.
La partie communication pour transférer le G-Code vers la carte peut se faire via un câble USB ou par le réseau.
La carte smoothieboard à un mini serveur http et un petit serveur telnet.
On peut communiquer via le réseau avec le navigateur en http ou en telnet avec un logiciel.
Le matériel nécessaire pour ajouter des fonctionnalités à sa carte électronique de commande
[:en]
Outillage nécessaire
The minimum classic material for electronics
– Soldering iron
– Welding coil
– small cutting plier
I advise you to also purchase a steel wool to regularly clean the soldering iron to brew
Le matériel nécessaire pour ajouter des fonctionnalités à sa carte électronique de commande
The following video is for hard makers that have chosen to don’t order the electronic control system already prepared and preferred to perform manufacturing and assembly themselves.
Outillage nécessaire
The minimum classic material for electronics
– Soldering iron
– Welding coil
– small cutting plier
I advise you to also purchase a steel wool to regularly clean the soldering iron to brew
Le matériel nécessaire pour ajouter des fonctionnalités à sa carte électronique de commande
The following video is for hard makers that have chosen to don’t order the electronic control system already prepared and preferred to perform manufacturing and assembly themselves.
Outillage nécessaire
Le matériel classique minimum pour l’électronique
– Fer à braser 60W minimum
– Bobine d’étain
– Petite pince coupante
Je vous conseille d’avoir également une paille de fer inoxydable pour nettoyer régulièrement la panne ( le bout ) du fer à braser.
Une pince à dénuder et également très pratique, il existe différents modèles.
Le matériel nécessaire pour ajouter des fonctionnalités à sa carte électronique de commande
Ci dessous une vidéo montrant l’ajout d’un régulateur de tension ainsi que du câblage sur une carte smoothieboard.
Utilisation du petit matériel électronique classique.
Connecter les capteurs de fin de course
[:en]
Connecter les capteurs de fin de course
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Connecter les capteurs de fin de course
The endstop are use for the machine can have reference point, machine origin « 0 »
For endstop it’s common to use SPDT switch (Single Pole Double Throw) more information here
In the official smoothieboard endstop documentation http://smoothieware.org/guide-endstops
have this drawing and it’s write « Wiring a basic NC endstop »
And when you see your smoothieboard , you can guest when endstop is hit the « O Volt » go to the Signal pin
If you beginner to wiring endstop in input of microcontroler may be you ask at yoursef two question.
– Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
- Why the information « O » is send tu input of microcontroller and not « + » ?
The answer or there question are not specific for smoothieboard, the technology use is same when connect switch SPDT or pushbutton in input of electronicboard ( arduino, 3d printer board, etc … )
Why use only 2 wire and don’t use 3 wires Ground (-) Signal and VCC (+) ?
Use 3 wire is Ok, it’s works
– when endstop push, the signal pin of électronic card receive 5Volt to send information « endstop push »
– when endstop don’t hit, the signal pin of électronic receive
0 Volt to send information ‘endstop don’t hit
It’s works, just have 3 small disadvantage
- need buy and prepare more 3 wires if you connect xmin ymin and 7min. 6wires more if you connect endstop min and end stop max.
A little more money and time to prepare - If the red wire (+) breakdown the machine continu to more over the endstop. If the machine is small without very big motor, not damage, but with heavy and strong CNC professional, a simple wire breakdown can be cost a lot of money with damage result.
- If you whant connect a touch plate in Zmin, only have 2 location tu connect can’t use the 3 wire.
Why use normaly closed endstop and use « 0 » Ground to send the information endstop push ?
For each endstop, it’s better to connect C to Signal and NC to Ground because this means the digital input pin ( endstop connector ) will be connected to Ground in it’s normal state and cut from Ground when the button is pressed. This approach is less prone to noise than the reverse. See here for more information.
Another positive effect of this approach is, that if a wire breaks for some reason you get the same signal as if the endstop is pressed. That makes sure that even with a damaged wire you are not able to overrun the endstop.
What need to know when use only 2 wire for connect switch or push button to microcontroler board ?
Below à explain of James Lewis the creator of https://www.baldengineer.com/ and http://addohms.com/ youtube chanel
A pin of input microcontroler board can’t unconnect. If you do this the interference around create sometimes 4,8V; 0,15V 5V… and create fake information inside. That’s why in the video sometimes the LED don’t blink when push button and sometimes blink without push buton. Have somethinks out of control.
The pull up resistor solution explain by James Lewis
Support this guy with buy his DVD if you whant learn électronic because he’s explains are very good
Explain in Chinese about floating volt level pin and pull up resistor
with Lazy Tomato Lab
See the other vidéo of LazyTomatoLab Chanel http://www.lazytomatolab.com/ very good lesson for learn about Arduino
Important !!
Check that you do not connect VCC ( red ) and GND ( black ) to a mechanical (microswitch) endstop!
Depending on your wiring that may fries your smoothieboard instantly or when the switch gets pressed.
If you’re not careful enough you can damage your board.
The endstop setting section inside config file
In smoothieboard like arduino board no need prepare pull up resistor for input pin, already have internal board resistor for this fonction.
Just activate the « pull up resistor » with option setting in config file
So don’t delete the » ^ » after the number the pin
If you do this the fonction pull up resistor don’t works
In cnc can have endstop min for setting the « 0 » machine and endstop max for when the machine move over capacitie, stop automatically.
The Formosa don’t have max endstop, it’s just a option.
With this way the cabling is more simple, users just need check if the drawing is under the maxi size the machine can cut.
If the machine move over the limit don’t worry just steppers motors loose step but don’t have damage.
Check the correct works of endstop
Use M119 command to check if the wiring of endstop is correct
when the endstop is hit, need show 1
When endstop don’t hit, need show 0
If you don’t use xmax ymax … not need there parameters appear can comment
with # in the beginning of line like below to desactivate
alpha_min_endstop 1.24^
#alpha_max_endstop 1.25^
alpha_homing_direction home_to_min
Or use nc in the end of the line like
alpha_max_endstop nc
![](http://www.makerslide-machines.xyz/wp-content/uploads/2016/07/info-endstop-fr.jpg)
Connecter les capteurs de fin de course
Les capteurs de fin de courses permettent à la machine d’avoir une position de référence l’origine « 0 »