Pilotage via RAMPS 1.4 et firmware Marlin

  • Auteur de la discussion ThierryM
  • Date de début
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #1
Bonjour à tous,
Je cherche à piloter ma CNC en utilisant une carte RAMPS 1.4 et un Arduino Mega 2560 : c'est ce que j'utilise avec mon Imprimante 3D.
J'ai choisi cette solution car grâce au firmware Marlin on peut adjoindre un écran LCD avec un lecteur de carte SD incorporé qui rend la machine totalement autonome. Pour info le firmware Marlin est basé à l'origine sur Grbl. De plus, il est très bien commenté ce qui permet de comprendre à quoi servent les paramètres et comment les modifier.
Il existe le projet Grbl for Ramps mais il demande des branchements différents et propose moins de fonctionnalités que le Marlin d'origine (affichage LCD et carte SD).

À l'heure actuelle, voici où j'en suis avec le paramétrage du firmware Marlin (je n'ai rien modifié dans le code en dehors des paramètres) :
- Déplacement en X : OK (branchement normal avec un moteur)
- Déplacement en Y : OK (branchement normal avec 2 moteurs)
- Déplacement en Z : OK (branchement normal avec 1 seul moteur)
- Home en Xmin : OK (branchement normal avec des fins de courses optiques http://reprap.org/wiki/Gen7_Endstop_1.3.1)
- Home en Ymin : OK (branchement normal comme Xmin)
- Home en Zmin : OK (branchement normal comme Xmin). C'est la position la plus haute de la fraiseuse.
- Mise en route/ arrêt de la fraiseuse : OK, via un relais commandé par la broche D9 de la RAMPS (gcode M106 et M107 commandent le ventilateur de l'imprimante 3D à l'origine).
- Affichage LCD (Full Graphic Smart Controller) : OK (avec menu Imprimante 3D en français)

Mes problèmes / Interrogations :
- Réglage du Zmin "bis", hauteur de départ du fraisage : comment faire ?
Je compte utiliser une sonde comme celle-ci en la branchant comme un microswitch. Le déclenchement se ferait au contact avec la fraise (passage du courant).
- Rajout de commandes gcode spécifiques à la CNC : les infos sont ici http://reprap.org/wiki/G-code et il semblerait qu'il faille aller faire les rajouts/modifs dans le fichier "Marlin.cpp".
Bref, j'aurais aimé avoir vos retours d'expérience ou vos avis sur ce type de projets afin d'arriver à quelque chose de pleinement fonctionnel. Dans un second temps, l'idée serait de proposer des améliorations/informations pour ce type de matériel.
Cordialement,

Thierry
 
D
Doctor_itchy
Compagnon
20 Avr 2007
5 379
Morlanwelz
hello

en voila un sujet tres interessant !

car j'ai le meme projet ! , j'ai un module ramps 1.4 et arduino mega 2560 , avec marlin :) ecran lcd+ sdcard

donc meme config que toi !

le but est de controlé une cnc laser :) donc le laser sera géré par une sortie pwm :) , et D9 est garder pour controlé un moteur dc , car j'aimerais avoir la possibilité de fraisé legerement avec cette machine :) ( mais du pcb au max car systeme XY tres léger ! )

donc il faudrais viré toute les options et controle extruder chauffe ect ect pour libéré du temps machine (gestion chauffe qui prend des ressource ) afin d'optimiser les vitesse d'avance sur 2 as 3axe en meme temps :)

j'ai deja configuré la base de marlin , et je regarde pour le reste et je partagerais mes résultat :wink:
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #3
Salut Doc :wink: ,
Heureux de voir que je ne suis pas seul :partyman:
Voici ce que j'ai trouvé : le projet existe mais il n'a apparemment qu'un seul contributeur https://github.com/MaxVandenbussche/Marlin-Shapeoko-CNC et ne semble pas très actif... Je ne suis pas allé regarder les différences/ajouts par rapport au Marlin officiel.
L'idée serait de garder les parties communes de Marlin (pour bénéficier des mises à jour et améliorations) et d'éliminer tout le superflu comme les gestions de températures inutiles pour une CNC. J'ai remarqué qu'on ne pouvait pas éliminer les parties concernant l'extruder sans avoir d'erreur de compilation donc c'est plus délicat que de procéder par simple élimination...
Cordialement,

Thierry
 
Dernière édition par un modérateur:
D
Doctor_itchy
Compagnon
20 Avr 2007
5 379
Morlanwelz
je découvre le lien , je ne l'avais pas encore trouver :)


oui il n'y as pas bcp de contributeur sur le sujet , pourtant le concept est plutot interessant une cnc autonome avec un tout ptit uc entierement programable et compact :)

et qui propose une vitesse d'avance tres confortable pour un cout ridicule (comparé as une config pc + emc² ou mach3 , avec bob ect ect :) )

je vais lire la bibilio du lien et comparé avec marlin original , voir les changement comme ça on pourras peu etre modifier correctement pour notre utilisation :wink:
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #5
Salut,
Je viens de découvrir ce projet : G-CNC Sender concernant la Ramps et Marlin https://sourceforge.net/projects/gcncsender/. Ça semble correspondre à ce que je cherche.
Je l'ai installé sur mon Ubuntu 14.04 (attention il faut aussi installer Java 1.8 pour avoir l'interface) mais je n'arrive pas à me connecter (impossible de choisir le port comm...). J'ai laissé un message sur le site et j'attends une réponse.
 
Dernière édition par un modérateur:
D
Doctor_itchy
Compagnon
20 Avr 2007
5 379
Morlanwelz
interessant mais l existe déja un soft du genre , mais cela ne permet pas d'utilisé la machine en stand alone :)

il faut modifier le code pour cela :wink:

la je n'ai pas trop le temps mais des que je sais je regarderais encore pour amélioré cela :)
 
J
JeanPierreAix13
Nouveau
20 Juin 2015
2
Bonjour Thierry

Je suis tombé par hasard sur ton fil de discussion et apparemment tu peux mettre d'un ENORME secours. LOL

Tout d'abord, cela ne concerne pas une CNC mais une imprimante 3D...Non, non, je ne fais pas mon troll.

Je suis en train de construire une foldarap Mondrian, qui est une imprimante type HBOT. Je souhaite la piloter avec une ramps1.4 ( question de budget ) mais voilà, impossible de mettre la main sur un firmware compatible...

Je voulais utiliser Marlin mais celui-ci est configuré pour piloter deux moteurs en axe Z. Moi, c'est l'axe Y qui a deux moteurs fonctionnant en sens oppposé. Un recablage permettra d'obtenir cela, mais comme je suis débutant, je ne sais pas reconfigurer Marlin pour attribuer les stepper Z pour piloter mes moteurs de l'axe Y.
C'est pourquoi ton Post a attiré mon attention car apparemment tu as reconfiguré Marlin pour que les steppers dévolus à l'axe Z pilotent ceux de ton axe Y.
S'il te plaît...Comment as tu fait ????
Penses tu que ta configuration puisse m'aider. Je pense que Oui, car elle m'aidera à chercher dans la bonne direction.
Pourrais-tu, s'il te plaît, m'envoyer une copie de ton version de Marlin que tu as modifiée ?
Cela m'aiderai surement.

Dans l'attente de ta réponse et je l'espère de ton aide.

Bonne continuation pour ton projet.

Amicalement

Jean Pierre
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #8
Salut Jean-Pierre,

En fait quel que soit ton câblage, tu devras quand même configurer ton firmware Marlin. Et pour un débutant, s'approprier le firmware est assez ardu mais c'est indispensable afin de faire du sur mesure (chaque machine ayant ses spécificités entre les fins de courses, le sens des moteurs qui dépend du sens de branchement, ...). L'avantage de Marlin, c'est que le code est très bien commenté (en anglais) et qu'on comprend à quoi servent les différents paramètres. Mais il te faudra du temps afin de voir bouger tes axes. Sans vouloir faire de prosélytisme, je te conseille le forum http://forums.reprap.org/list.php?110 spécifique à l'impression 3D où il y a pas mal de spécialistes : il te suffit d'ouvrir un nouveau fil en exposant ton problème et tu devrais avoir des retours.

1ère solution : intervertir Y et Z
Donc (de mémoire, ça fait un moment que je ne me suis pas penché sur Marlin), vu que tu as 2 moteurs en Y et un seul en Z, j'intervertirais Y et Z pour bénéficier du double branchement fourni habituellement en Z sur la Ramps.
Ensuite dans le firmware Marlin (fichier pins.h), il faudra intervertir les pins servant à Z et à Y dans la partie traitant de la Ramps 1.4 : http://www.reprap.org/wiki/RAMPS_1.4/fr#Firmware_et_attribution_des_broches
Puis, tu devras aller dans le fichier Configuration.h pour adapter Marlin à ton matériel (Ramps 1.4).

2ème solution : dédoubler Y sur la Ramps
Ici, c'est comme si tu avais une configuration normale et tu n'agis que sur Configuration.h
Remarque pour tes moteurs inversés Y : tu inverses le sens de branchement d'un des moteurs tout simplement.

En espérant, t'avoir un peu aidé sachant que ça prend du temps de "digérer" le fonctionnement mais que ça en vaut la peine.
Cordialement,

Thierry
 
J
JeanPierreAix13
Nouveau
20 Juin 2015
2
Merci Thierry pour m'avoir consacrer un peu de ton temps.

Je vais explorer les pistes que tu m'as données.

Cordialement

Jean Pierre
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #10
Bonjour à tous,

Suite à une demande, voici où j'en suis actuellement.
J'ai abandonné le firmware Marlin pour utiliser le firmware Grbl sur ma RAMPS 1.4 avec le logiciel bCNC qui évolue rapidement (je participe à la traduction en français).

bCNC :
À l'heure actuelle, c'est le logiciel qui me semble le plus complet pour piloter ma CNC. Il utilise le firmware Grbl et fonctionne aussi bien sous Windows, Mac que GNU/Linux (il est écrit en python). Il est prévu pour pouvoir fonctionner sur un Raspberry Pi : c'est un sacré avantage pour se créer une machine autonome. Possibilité d'utiliser une caméra pour faire le homing, etc.
Site :
https://github.com/vlachoudis/bCNC
http://www.shapeoko.com/wiki/index.php/BCNC

Plus d'info ici : http://lofurol.fr/joomla/cnc/84-partie-electronique-de-ma-cnc

Cordialement,

Thierry
 
B
boby67
Ouvrier
29 Août 2011
460
Strasbourg
Bonjour ThierryM,

Je m'abonne aussi à ce sujet très intéressent . Depuis que je possède une imprimante 3D , j'ai vite compris que les possibilités d'une petite carte Ramps ou arduino , sont nettement supérieure à une configuration pc . Surtout en terme d'ouverture et de liberté de programmation . Ces cartes peuvent fonctionner avec Windows, Linux ou mac pour leur rentrer un programme et donc de les rendre autonomes.

Salutations cordiales
 
wika58
wika58
Compagnon
17 Déc 2006
13 124
FR-54560 Lorraine
Sujet dans lequel je voudrais débuter et donc je vais suivre avec intérêt.

Il devrait pouvoir y avoir de la synergie dans ce projet...:smt023
 
D
Doctor_itchy
Compagnon
20 Avr 2007
5 379
Morlanwelz
ha ben , plus personne :/ , je vais avoir un peu de temps bientot j'en profiterais pour ressortir le projet , dans l'etat actuel le controlleur fonctionne avec une version modifiée de marlin que j'ai trouvée toute faite :) quelque modif perso mais rien de compliquer ! le soft est modifier pour une laser :) , mais je voudrais le modifier pour laser et cnc combiné

j'ai aussi vu sur le net des carte arduino nano sur une breakout board avec 2 ou 3 drivers step et un drivers laser (ou relais broche) pour une 20ene d'euro , je pense en prendre une y mettre grbl et numeriser une mf70 :) mais ce ne sera pas autonome :/
 
B
boby67
Ouvrier
29 Août 2011
460
Strasbourg
Bonjour,

Comment ça plus personne ?
Je suis sûr qu'on est pleins de curieux qui zieutent le projet .
Mon arduino mega vient juste d'arrivé, le temps de prendre les choses en main et on en reparle :-D
Salutations cordiales
 
F
fakeear
Nouveau
27 Juin 2016
6
42 / 43: Loire / Haute-Loire
Bonjour à tous,

Voici une contribution sur les cnc pilotées par mega 2560 et ramps 1.4 avec le firmware marlin, deux projet sympa, je suis en train de réaliser le second:
les deux utilisent Marlin et il doit y avoir une version dispo pour chaque projet.

Bonne continuation.
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #16
Salut à tous,

Pour info, je me suis fais un petit tutoriel expliquant comment utiliser Inkscape pour créer un fichier G-code et comment l'exploiter avec bCNC qui pilote ma CNC avec une RAMPS 1.4.
À cette occasion, je viens de découvrir une nouvelle fonctionnalité permettant d'ajouter directement via bCNC des pattes de maintien (attaches ou "tabs" in english) à la forme à découper afin que la pièce soit toujours maintenue : c'est une des fonctionnalités qui font que je trouve bCNC vraiment intéressant.
Vous pouvez trouver le fichier .pdf que je mets à jour régulièrement ici : https://lofurol.fr/joomla/cnc/103-utiliser-inkscape-et-bcnc-pour-piloter-une-cnc.
En espérant que ça aide, cordialement,

Thierry
 
bonhom61
bonhom61
Apprenti
12 Août 2016
167
Bonjour Thierry il s'agit de bcnc que compilé dans la arduino ? y a til'un parametrage à effectuer avant? merci d'avance
 
wika58
wika58
Compagnon
17 Déc 2006
13 124
FR-54560 Lorraine
Ce n'est pas pcq on ne dit rien qu'on ne suit pas...:wink:
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #20
Bonjour à tous,

Je viens d'installer le découpage laser sur ma CNC pilotée par bCNC (firmware Grbl) : c'est vraiment facile et le résultat est bluffant. Le tout pour moins de 30€ avec un laser bleu de 500 mW de 405 nm de longueur d'onde, avec radiateur + ventilateur + lentille de mise au point + carte de pilotage + lunettes de protection).
J'ai imprimé un support de fixation du module laser afin qu'il prenne la place de la fraiseuse (collet de 43mm de diamètre). Ensuite il suffit de brancher le module laser avec sa carte de pilotage en D10 sur la Ramps 1.4. L'allumage et l'extinction du laser se font respectivement via les commandes M03 et M05 (comme pour la fraiseuse).
laser_ensemble.resized.jpg

Le pilotage se fait toujours avec Inkscape via un plugin dédié que l'on peut trouver ici : https://jtechphotonics.com/?page_id=1980
J'ai découpé du papier (une croix occitane de 12 cm) en 20 minutes (je pense que je pourrais aller plus vite mais vu la qualité du résultat, on peut attendre quelques minutes de plus) et la précision est étonnante (sans compter le silence :wink: ).
croix_papier.jpg


Plus d'infos ici : https://lofurol.fr/joomla/cnc/106-ajout-de-la-gravure-et-du-decoupage-laser
Cordialement,

Thierry
 
Dernière édition:
bonhom61
bonhom61
Apprenti
12 Août 2016
167
Bonjour Thierry, ton laser peut te permettre de coupé quoi comme matière ?
 
T
ThierryM
Nouveau
20 Fev 2015
8
Les Corbières (Aude), France
  • Auteur de la discussion
  • #22
Salut,
Pour l'instant, je n'ai coupé que du papier en 1 passe (de façon vraiment très nette) et du tissu fin en 3 passes (moins net que pour le papier mais peut-être aurait-il fallu une passe supplémentaire ?).
Mon laser n'est opérationnel que depuis hier donc je n'ai pas encore testé beaucoup de matériaux. Je n'ai pas non plus tenté la gravure...
Cordialement,

Thierry
 
Haut