Autres MultiCN Evaluation pour Arduino Uno

CNCSERV

Compagnon
27 Décembre 2007
4 189
FR-28360
Bonjour,
Je l'avais promis pour Noël 2016 , voici une version de mon logiciel de pilotage MultiCN en version évaluation compatible avec l'Arduino Uno.

J'ai commencé le développement de MultiCN en 1989, à l'époque c'était juste un petit programme résident sous DOS pour piloter un plotter Gerber qui à l'origine ne pouvait découper que du lettrage.
Depuis 2002 j'utilise MultiCN pour mon activité de rétrofit de machines à commande numérique dans divers domaine.
Je n'ai pas trop compté mais j'ai du faire environ 300 rétrofits à ce jour (environ 20 par an)

Avec mes 60 piges je vais laisser tomber le rétrofit et concentrer mes activités sur le développement de MultiCN et bien sur le SAV de mes clients.

MultiCN n'a pas été développer autour du G-Code, il peut travailler avec due l'HPGL, du DXF (R12) G-Code et aussi d'autres format plus rares.
Il n'y a donc pas de G-Code à manipuler, la plupart des fonction sont directement gérée par les scripts comme le démarrage de la broche par exemple.
Les vitesses et les profondeurs en 2D peuvent directement gérées dans MultiCN et peuvent être modifiées en cours d'usinage.
IMPORTANT, avec ce module 2D/3D le Z travaille en profondeur donc le Z+ est vers le bas.

MultiCN est très simple à utiliser car dans le monde professionnel les opérateurs change plus souvent que les machines.

MultiCN travaille toujours en trajectoire exacte et conserve les angles. C'est impératif par exemple pour les graveurs qui fabriquent des poinçons de 1 ou 2mm de haut.
En revanche les micro-vecteurs sont lissés sur tout les axes pour permettre d'usiner des courbes sans saccades.

Avec cette version la fréquence de step est limitée à 20kHz à cause de la liaison série à 115200bauds.

Pour L'installation lancer "MultiCN_Evalution_Arduino_xx_xx_xxxx.exe et téléverser "Serialmulticn.ino" dans l'Arduino Uno.


Sur MultiCN tout est configurable, je vous propose une version assez standard :

1537268791951.png


La configuration est très simplifiée et ne doit pas poser de problème, les paramètres peuvent être facilement retrouvés:
1537269000225.png




Je vais essayé de compléter cette page progressivement.

Pour le téléchargement -> https://www.usinages.com/threads/telechargement-multicn-evaluation-pour-arduino-uno.114168/
 
Dernière édition:

PL50

Compagnon
7 Octobre 2014
792
30Km de Cherbourg - Manche (50)
Bonjour,
Je l'avais promis pour Noël 2016 , voici une version de mon logiciel de pilotage MultiCN en version évaluation compatible avec l'Arduino Uno.

J'ai commencé le développement de MultiCN en 1989, à l'époque c'était juste un petit programme résident sous DOS pour piloter un plotter Gerber qui à l'origine ne pouvait découper que du lettrage.
Depuis 2002 j'utilise MultiCN pour mon activité de rétrofit de machines à commande numérique dans divers domaine.
Je n'ai pas trop compté mais j'ai du faire environ 300 rétrofits à ce jour (environ 20 par an)

Avec mes 60 piges je vais laisser tomber le rétrofit et concentrer mes activités sur le développement de MultiCN et bien sur le SAV de mes clients.

MultiCN n'a pas été développer autour du G-Code, il peut travailler avec due l'HPGL, du DXF (R12) G-Code et aussi d'autres format plus rares.
Il n'y a donc pas de G-Code à manipuler, la plupart des fonction sont directement gérée par les scripts comme le démarrage de la broche par exemple.
Les vitesses et les profondeurs en 2D peuvent directement gérées dans MultiCN et peuvent être modifiées en cours d'usinage.
IMPORTANT, avec ce module 2D/3D le Z travaille en profondeur donc le Z+ est vers le bas.

MultiCN est très simple à utiliser car dans le monde professionnel les opérateurs change plus souvent que les machines.

MultiCN travaille toujours en trajectoire exacte et conserve les angles. C'est impératif par exemple pour les graveurs qui fabriquent des poinçons de 1 ou 2mm de haut.
En revanche les micro-vecteurs sont lissés sur tout les axes pour permettre d'usiner des courbes sans saccades.

Avec cette version la fréquence de step est limitée à 20kHz à cause de la liaison série à 115200bauds.

Pour L'installation lancer "MultiCN_Evalution_Arduino_xx_xx_xxxx.exe et téléverser "Serialmulticn.ino" dans l'Arduino Uno.


Sur MultiCN tout est configurable, je vous propose une version assez standard :

Voir la pièce jointe 422897

La configuration est très simplifiée et ne doit pas poser de problème, les paramètres peuvent être facilement retrouvés:
Voir la pièce jointe 422898



Je vais essayé de compléter cette page progressivement.

Pour le téléchargement -> https://www.usinages.com/threads/telechargement-multicn-evaluation-pour-arduino-uno.114168/
Salut CNCSERV et merci pour ce partage.
je comprend maintenant pourquoi tu dis que l'usb en cnc n'est pas forcement un problème ! ! !
j'ai telechargé ton soft installé sur mon portable (64bit)
j'ai fait le televersement.
les valeurs x y z ne s'affichent pas
j'ai essayé de changer le port com dans le panneau config (on ne peut y acceder qu'au demarrage?)
par defaut c'est 15; mais le menu deroulant propose 3
si on clique entrée, on se fait éjecter et on se retrouve direct dans le programme, si on coche ok on va aussi dans le programme.
si je redemarre le soft, je suis à nouveau sur le port com15; comme s'il ne le prenait pas en compte.
c'est parce que mon pc est 64b?
as tu une idée, car mon pc et l'arduino semblent ne pas vouloir se causer...
c'est un vrai marqué "arduino uno"

autre question; comment recupères tu les ES sur l'arduino?
tu as un plan d'affectation des broches, ou il faut remettre une autre carte par dessus?

désolé encore un domaine où je débute, mais j'ai commencé l'arduino.... cet été ! ! !

donc je suis vraiment un jeunot dans le sujet, et du coup je pose sans doute des questions con....

en tout cas encore bravo et merci pour ton partage ! !
 

CNCSERV

Compagnon
27 Décembre 2007
4 189
FR-28360
'ai essayé de changer le port com dans le panneau config (on ne peut y acceder qu'au demarrage?)
par defaut c'est 15; mais le menu deroulant propose 3
Les ports proposés dans la config sont scannés , normalement tu dois trouver dans la liste les même ports série que dans le gestionnaire de périphériques.
A l'occasion fais moi une copie d'écran.
c'est parce que mon pc est 64b?
le mien aussi :wink:
j'ai essayé de changer le port com dans le panneau config (on ne peut y acceder qu'au demarrage?)
Oui car c'est quand même une version simplifiée. Autrement tu peux lancer le su.bat pour débloquer le menu Options et aller dans paramètres carte
autre question; comment recupères tu les ES sur l'arduino?
tu as un plan d'affectation des broches, ou il faut remettre une autre carte par dessus?
C'est l'affectation courante shield CNC :
avec le PWM broche
GRBL9.png

et sans PWM broche :
arduino-cnc-shield-v3-layout_vwJrjKoIh8.png


Dans les 2 cas j'ai mis la commande broche sur le PIN13
Le palpeur est sur A5


Autrement il existe un shiel permettant une adaptation sur BOB //
J'en ai acheté mais pas essayé.
2017-02-10T14%3A19%3A41.054Z-2016-03-15T17-26-51.026Z-20160315_122008.jpg.2560x2560_q85.jpg
 
Dernière édition:

Rebus

Ouvrier
18 Juin 2007
449
Bonjour,
J'attendais d'autres avis ....
De mon coté, je ne peux que confirmer pas de dialogue entre PC et carte Arduino.
Je me suis donc remis sur ma carte Mega2560 avec GRBL que j'utilise depuis un moment et qui m'a permis de graver des CI et quelques pièces en POM.
Mon seul problème c'est que j'aimerais ramener la vitesse de 115200bauds à 9600bauds .... et ça je n'y parviens pas.
(D'ailleurs je n'ai toujours pas compris l'intérêt de transmettre les données aussi vite.)
 

CNCSERV

Compagnon
27 Décembre 2007
4 189
FR-28360
Merci pour ton retour négatif.
D'ailleurs je n'ai toujours pas compris l'intérêt de transmettre les données aussi vite.
Peut-être tout simplement parce qu'il y a beaucoup de données a transmettre.

Comme c'est bien indiqué dans le titre j'ai prévu cette version au départ UNIQUEMENT pour une Arduino NANO.
Suite au remarques constructives de speedjf37 j'ai fait les modifications pour accepter n'importe qu'elle carte avec la sélection du port série.

J'ai eu pas mal de travail sur cette version gratuite, je viens tout juste de la terminer. Je ne pas garantir qu'elle soit parfaite du premier coup donc j'essaye d'être réactif au remarques que l'on peut me faire.

Pour ton problème de sélection de carte as tu bien télécharger la dernière version qui permet de choisir la carte ?
As tu bien cette version ?

1537426083031.png
 
Dernière édition:

Rebus

Ouvrier
18 Juin 2007
449
Merci pour ton retour négatif.

Peut-être tout simplement parce qu'il y a beaucoup de données a transmettre.
Ce n'est pas l'envoi de quelques centaines de lignes de Gcodes en ASCII qui nécessite de telles vitesses.
A ce que j'ai pu voir en mettant un espion sur le bus USB, c'est surtout un "handshaking" extrêmement complexe.
On est très loin du Xon /Xoff de la RS232 !

PS: Désolé pour mon retour négatif, vu le boulot que tu as du abattre.
 

CNCSERV

Compagnon
27 Décembre 2007
4 189
FR-28360
Pour en revenir à la sélection du port série assurez vous de bien avoir la dernière version ici en vérifiant la date et l'heure de la mise à jour.

Si la carte n'apparait pas dans la liste dans MultiCN vérifiez qu'elle est bien reconnue dans le gestionnaire de périphériques.
1537280096011-png.png

Si oui me faire une capture d'écran pour que je puisse faire la correction. La syntaxe peut avoir beaucoup d'importance.
 

******

Compagnon
6 Janvier 2014
2 884
paris
il faut lié cette vitesse a la "bufferisation" (file d'attente )

Plus la transmission 'est rapide , plus la carte arduino ( d'autan plus si c'est une uno ! )

plus la carte arduino a intérêt a avoir son buffer (file d'attente ) bien rempli !


afin d’être sur qu'il n'y est pas de ' vide' de manque de données" de manque de signaux...

http://www.unilim.fr/pages_perso/deneuville/docs/Info2PC/Cours4handout.pdf



""
Serial.available() Description − Donne le nombre d'octets (caractères) disponible pour lecture dans la file d'attente (buffer) du port série. Syntaxe − Serial.available(); Valeur renvoyée − Le nombre d'octet disponible pour lecture dans la file d'attente (buffer) du port série, ou 0 si aucun caractère n'est disponible. Si une donnée est arrivée, Serial.available() sera supérieur à 0. La file d'attente du buffer peut recevoir jusqu'à 128 octets.

""

ps : si la transmission n'est pas sujette a parasite ( cable correct)
il n'y as aucune raison de ce posé une tel question ...
plus c'est rapide , mieux c'est
 
Dernière édition:

CNCSERV

Compagnon
27 Décembre 2007
4 189
FR-28360
Bon je préfèrerais que l'on parle de ton logiciel sur une autre discussion.

ces considérations n'ont rien à voir avec MultiCN dont ta as un avis négatif sans pour cela me donner la moindre information pour corriger un éventuel problème.
Maintenant parlons de G-code sur une liaison série, imagine que tu usines une courbe en 3D avec des microvecteurs de 0.1mm a 50mm/s.
On va avoir 50/0.1 =500 lignes.
Sachant qu'il faut environ 9 caractères par axes et que les 3 axes bougent, on a donc 3X9+2 = 29 octets par ligne donc 29X500=145000Bauds en flux continu. C'est même impossible a 115200.
Tu fait quoi avec tes 9600?
Le pire dans tout ça, c'est que tu serais capable de modifier la vitesse dans ton logiciel et ensuite te plaindre car il ne fonctionne pas correctement.
Maintenant si tu as d'autre interrogations sur ton logiciel n'hésite pas à créer une nouvelle discussion. Ici je préfèrerais que l'on parle que de MultiCN.
Merci
:wink: