Re: Jedicut - Arduino - Ramps 1.4

32
Bonjour Jean-Yves,
J'ai remarqué que 60 km nous séparent, je te remercie de suivre cette aventure et de participer. Plus on est sur une affaire, plus on a des chances de réussir une projet. Nous sommes tous des ignorants mais nous n'ignorons pas les même choses.

Pour en revenir à notre affaire, en général, lorsque l'on ajoute des appareils dans un câblage, on détériore plutôt les performances. Sans le hub, la programmation de l'Arduino se passe normalement !
Pour l'instant je ne remets pas en cause le plugin USB, pour le programme de l'Arduino j'ai reconduis la boucle de lecture des données issues de Jedicut et le décodage dont l'auteur est Martin que je remercie pour son excellent travail sur le forum en anglais. Ce n'est qu'ensuite que j'ai ajouté les commandes de la Ramps 1.4.
J'ai utilisé une carte Arduino mega 2560 au lieu de la UNO ou NANO, Le fonctionnement est un peu différent sur la mega mais ne change pas le principe.
En fin d'après-midi, j'ai fais des essais avec un NANO et le programme en dépôt sur GitHub. Le phénomène est le même lorsque je regarde les signaux de steps à l'oscilloscope.
Je vais procéder avec méthode l'analyse du programme et des signaux. Je vais aussi rechercher sur les évolutions de IDE Arduino, les révisions et les librairies. Il n'est pas possible de proposer le bricolage avec ajout d'un hub USB.
Un peu de patience, nous allons bien trouver, tout à une explication.
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

34
Bonsoir Jean-Yves,

Lorsque l'on lit divers articles, il semblerait que ce soit une technique qui exclut l'utilisation de µcontrôleur dans le circuit intégré, ce qui permet des vitesses importantes pour les sorties sans temps morts.

J'ai passé un peu de temps à étudier le programme USB qui est sur GitHub sur un UNO, la fréquence maxi sur les steps est limité par programme à 1000Hz. Je retrouve cette fréquence à l'oscillo en utilisant le Hub USB, sans le Hub la fréquence des steps est de 500Hz. Il n'y a pas de perte d'informations.

Mon programme sur l'Arduino Mega 2560 tourne jusqu'à 6500 Hertz avec le Hub sans le Hub je retombe à 500Hz. Il n'y a pas de perte d'informations.

Je réfléchi sur le dialogue entre le PC et l'Arduino, il manque peut-être une séquence de confirmation de réception de message , est-ce que le hub USB envoie un accusé de réception ? Je vais approfondir cette voie.

Rappel: avec des moteurs 200 pas/t, l'électronique en 1/2 pas, il faut 400 steps par tour, avec une vis M6 1mm/t ; si on vise 6 mm/s en vitesse rapide il faut au moins 2400 steps/s soit 2400 Hz. Sur ma machine, 6 mm/s c'est la vitesse maxi sans pentes d'accélération. Jedicut n'a pas de pente d'accélération. Sur mon électronique IPL5X je monte à 11 mm/s (4400 Hz). C'est simplement intéressant pour les positionnements à vide. En découpe dès que l'on utilise les vitesses nécessitant des accélérations on génère des défauts. Je ne les utilise plus. Lorsque l'on compare le temps de préparation des fichiers avant la découpe, le temps de découpe n'est pas une priorité donc je me limite à 5.6 mm/s.

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

35
Salut !

2 réflexions me viennent en lisant ce dernier message :

1 - Merci d'avoir mis en évidence ce phénomène limitant la communication à 500Hz. Peut être qu'on a raté un truc dans le code du plugin mais quoi ? Ce serait vraiment intéressant de savoir :S
2 - Merci de dire que les accélérations sont sources de difficulté durant les découpes. Je n'en vois pas l'intérêt sur des ensemble mécanique "amateur". Par contre il semble y avoir un intérêt pour les déplacements rapides. A méditer... 8-)
Jerome

Re: Jedicut - Arduino - Ramps 1.4

36
Bonjour Jérôme,

Une précision, je ne parle pas de communication à 500 Hz, mais la génération des steps X1, Y1, X2, Y2 à 500 Hz. Je ne pense pas que c'est le Plugin mais plutôt le traitement de la réception des informations. Cela devient passionnant.

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

Re: Jedicut - Arduino - Ramps 1.4

37
Bonjour,

Après mes recherches sur le mauvais fonctionnement de l'USB en vitesse rapide sans le Hub, j'ai remarqué que quelque soit la valeur du "BAUDRATE" dans le fichier "comport.ini" le fonctionnement est identique sans toucher la vitesse de 115200 dans le programme de l'Arduino. J'ai essayé différentes vitesses en appairant comport.init et arduino il n'y en a aucune qui fonctionne en dehors de 115200. J'en conclu que le plugin ou Jedicut ne tiennent pas compte de BAUDRATE du fichier "comport.ini".

Je n'ai rien trouvé dans le programme arduino sur la méthode de décodage des données venant de Jedicut. J'ai modifié le mode de fonctionnement du timer, j'arrive au même résultat. Toujours pas de vitesse rapide sans le Hub.
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

38
Salut,

Il y a eu plusieurs versions du plugin. Je n'ai jamais regardé ce code, mais c'est possible que la variable baudrate ne soit pas utilisée mais codé "en dur". Ce ne serait pas la première fois qu'une variable inutilisée se ballade dans un code 8-)

Je ne comprends pas la question sur le "décodage" ?
Jerome

Re: Jedicut - Arduino - Ramps 1.4

40
Bonjour Alain,

Je suis en train de regler les vitesses et la chauffe de la machine, et j'ai des problemes un peu differents des tiens. Mes vis ont un pas de 2mm*4 filets, donc par construction, 1 tour = 8mm, et j'ai 100 pas par tour, donc ca va vite...

Par contre peux tu partager avec moi les modifications que tu as apportees au niveau du timer STP? la plage de reglage des vitesse est ridiculement petite...

Je vais verifier la vitesse max des steps, pour voir si je suis limite aussi a 1Khz.

Olivier.
`); }); })(jQuery, window, document, phpbb);