Jedicut - Arduino - Ramps 1.4

#1
Bonjour à tous,
C'est mon premier message sur ce forum, pour me connaître un peu plus vous visitez mon blog et mon site.
Après avoir développé l'électronique de ma machine avec IPL5X et une carte Ramps 1.4, je développe une électronique pour Jedicut à base d'Arduino et Ramps 1.4. J'utilise l'ensemble électronique vendu pour les imprimantes 3D avec un afficheur LCD 20x4 équipé d'un encodeur rotatif, d'un buzzer et d'un BP arrêt.
Aujourd'hui, mon programme Arduino fonctionne très bien avec Jedicut en USB sous Windows10 . A l'ensemble il faut ajouter 3 interrupteurs et un Bouton Poussoir :
1 inter pour le mode PC/Manu
1 inter pour les moteurs ON/OFF
1 inter pour le fil chaud ON/OFF
Le Bouton Poussoir pour shunt des fdc mini pour repositionner à +1mm.
Le chauffage est commandé par la ramps 1.4, une sortie relais est prévue pour couper l'alimentation du fil chaud
Le buzzer teinte pour défaut fdc ou mauvais positionnement des inters à la mise sous tension.
L'encodeur rotatif permet de commander le fil chaud en mode manu pour nettoyage du fil.
Bien sûr je mettrai à disposition l'ensemble des documents.
Bonsoir et bonne lecture .

Voici 2 photos
[img]https://goo.gl/photos/DBveLP49rEoEQ4nD6[/img]
Je vous invite sur mon blog :
http://alainfelixdenis.wordpress.com/
sur mon site :
http://www.aeroden.fr

Re: Jedicut - Arduino - Ramps 1.4

#4
Bonjour Jérome,

Merci d'avoir créé ce fil de discussion, cela va être effectivement plus clair.

Où en suis-je aujourd'hui, la programmation de l'Arduino est terminé pour la version 1.0. Elle correspond aux objectifs que je m'étais fixé. En plus je calcul la vitesse de déplacement et l'affiche sur le LCD en mm/s.
Pour la question de fréquence que je te posais dans le mail, j'ai compris les transmissions des ordres de fréquence. J'en profite pour féliciter Martin pour le programme Arduino de la liaison USB pour le décodage des paramètres envoyés par Jedicut. Je n'ai rien changé pour le décodage par contre pour la gestion des fréquences j'ai modifié pour avoir une excursion plus importante. Dans Jedicut j'affiche la fréquence timer à 65535 (timer de l'Arduino) dans l'onglet "communication" , dans l'onglet "machine", il faut afficher nbre mm/pas ; pour mes moteurs, 200 p/t, Ramps 1.4 en 1/2 pas ce qui donne 400 step/t; ma tige filetée M6 au pas de 1 mm j'entre donc 0.0025 dans Jedicut. Ensuite je règle les coefficients pour obtenir les vitesses qui m'intéresse pour la coupe et rapide:
vitesse de coupe coefficient 51 j'obtiens 3.09 mm/s
vitesse rapide coefficient 25 j'obtiens 6.07 mm/s Vitesse max de ma machine sans accélération.
Dans le dialogue USB ces 2 coefficients sont transmis à l'Arduino ce qui détermine par rapport au timer le cadencement des steps vers les drivers des moteurs pap. Ce que j'ai constaté, il n'y a que les coefficients de X1 qui sont envoyés. Ce qui impose un même développement mécanique sur les 4 axes. Moteurs identiques et entraînements identiques.
A partir de ces données, par calcul j'affiche sur le LCD les vitesses.
Jedicut envoie les données très rapidement, l'Arduino envoie un ordre à Jedicut lorsque buffer est plein et ensuite redemande des données. C'est pour cela que la barre de progression va très vite s'il n'y a pas de dialogue. J'ai testé les transmissions aux vitesses de 1 mm/s jusqu'à 17 mm/s. Il n'y a eu aucun plantage de Jedicut ou de l'Arduino.
Maintenant si vous démarrez une découpe, vous vous apercevez que ce n'est pas bon, il suffit de basculer l'inter Mode sur Manu ou l'inter Moteur sur OFF, le programme Arduino réalise un arrêt propre en coupant surtout la puissance sur le fil chaud.
L'utilisation de l'encodeur pour la référence de chauffe en manuelle n'est pas très pratique car on ne peut pas réaliser le réglage lorsque la chauffe est ON. Ceci est dû au fait que l'encodeur utilise des entrées Arduino sur lesquelles il n'y a pas d'interruption.
J'étudie un autre moyen avec potentiomètre pour pouvoir régler chauffe en service pour permettre des réglages lors de l'étalonnage des matériaux.
Je prévoie aussi une commande de chauffe pour un cutter électrique.
A+ alain
Je vous invite sur mon blog :
http://alainfelixdenis.wordpress.com/
sur mon site :
http://www.aeroden.fr

Re: Jedicut - Arduino - Ramps 1.4

#5
Bonjour Alain,
Parfait tout ca.
De mon cote, j'ai juste pris le code de l'arduino Uno, change les broches, et légèrement touche le code en consequence, et ca marche. Mais visiblement, tu as fait plus de travail que moi!
Je vais rajouter la gestion d'une axe de rotation en direct dans l'arduino. Il faudra changer le code a chaque decoupe, mais... est-ce un probleme? pas vraiment.

A bientot.

Olivier.

Re: Jedicut - Arduino - Ramps 1.4

#6
Bonjour Olivier,
Est-ce que tu veux que ton axe de rotation doit fonctionner avec Jedicut ou simplement en manuel ?
Si c'est en manuel; dans ma nouvelle organisation du programme USB, je quitte la boucle de scrutation de la liaison série, et j'ai une nouvelle boucle de programme pour la chauffe en manuel , la chauffe d'un cutter électrique et éventuellement la commande du 5 ème axe.
Quelles sont les commandes que tu prévois pour ton 5 ème axe ?

A+
Je vous invite sur mon blog :
http://alainfelixdenis.wordpress.com/
sur mon site :
http://www.aeroden.fr

Re: Jedicut - Arduino - Ramps 1.4

#7
Alain,

Le 5 eme axe sera utilise pendant le cycle de decoupe. J'ai rien prevu en manuel, mais si tu as le shield qui va bien, qui permet de le faire, je suis preneur.

Il me semble qu'une commande manuelle avec rotation de 90 degres serait deja bien. Comme ca, on peut dresser les 4 faces d'un bloc.

Olivier.

Re: Jedicut - Arduino - Ramps 1.4

#9
Ca tourne bien vite!

quel est le pas de tes vis?

J'ai de mon cote achete des vis de rerrap, 8mm, pas de 8mm. Faut tourner moins vite. J'ai paye 32 port inclus les quatre vis de 600mm + quatre ecrous, avec il est vrai un peu de jeu. J'ai fait un petit mécanisme de rattrapage de jeu, qui est maintenant de l'ordre de 1/10 mm.

Olivier.

Re: Jedicut - Arduino - Ramps 1.4

#10
Pour mes vis j'ai donné les informations plus haut :M6 pas de 1mm.
Pour tes vis 8mm au pas de 8 c'est bizarre !
Je crois plutôt à 8mm pas de 2mm. dans ce cas, au lieu d'être en 1/2 pas sur les drivers des moteurs pap tu passes en 1/4 pas tu obtiens 0.0025 mm par step si tu as des moteurs 200 pas /t. Avec mon système de ratrapage de jeu, je n'ai aucun jeu: 2 écrous avec des ressorts.
A+ alain
Je vous invite sur mon blog :
http://alainfelixdenis.wordpress.com/
sur mon site :
http://www.aeroden.fr
cron