Le drive sera vraisemblablement configuré en "torque mode" ou "velocity mode".
LinuxCNC fait 2 choses:
1/ calculer une trajectoire (position+vitesse) à partir de la séquence GCODE, avec le "trajectory planner" (TP)
Il a été considérablement amélioré il y a quelques années : https://forum.linuxcnc.org/forum/10-adv ... ams-wanted
Pour un CU, le plus important c'est d'abord la trajectoire, puis la vitesse.
L'ancien TP était un peu simpliste et il y avait pas mal de séquences freinage/accélération superflues.
Ca venait de la stratégie pour prendre en compte les mouvements futurs.
Exemple, avec la séquence
G1 X10
G1 X20
G1 X30
Un TP "bête" va provoquer un arrêt entre chaque ligne, car la machine va toujours chercher à pouvoir s'arrêter sur la position cible.
Dans LCNC il ont ajouté du "look ahead" pour améliorer ça, et éviter de freiner inutilement.
Mais ça ne suffisait pas toujours, d'où le travail sur le nouveau TP
2/ asservissement en boucle fermée
Ici, LCNC utilise du PID pour générer la commande vers le drive, et en retour il lit la vitesse et la position.
Ces informations lui permettent de corriger en dynamique la commande pour recaler en permanence vers la trajectoire voulue.
Avec plusieurs axes LCNC peut être amené à ralentir un axe si un autre ne va pas aussi vite que voulu.
Ca se voit bien quand on lance une commande de filetage/taraudage sans allumer la broche : l'outil se déplace quand on tourne le mandrin à la main, toujours en suivant l'hélice, même si la vitesse de broche n'est pas constante.
Maurice
Re: Maurice
J'arrive pas trouver la différence entre lcnc et machinekit, les deux codes semblent avoir beaucoup divergé : This branch is 4982 commits ahead, 5128 commits behind LinuxCNC:master.
Re: Maurice
Le fork a été fait à l'époque où une équipe voulait refondre certains aspects et travailler en mode CI/DevOps.
Ce qui ne correspondait pas à l'organisation projet de LinuxCNC.
Périodiquement, les modifs les plus importantes sont reportées entre les 2 repos.
Ici le meetup hosté par l'Electrolab en 2016 (avec 3 contributeurs majeurs au code Machinekit) : https://www.youtube.com/watch?v=OVVGdQnz5Ts
Michael y explique un peu l'origine du fork.
Et ici, d'autres meetups : https://www.youtube.com/channel/UC3FVtr ... Dq5motHMow
Machinekit apporte pas mal de nouveautés:
- remplacement du "middleware" historique NML (shared memory) par du ZeroMQ
- gestion de composants HAL en mode distribué
- découplage de la GUI qui peut tourner sur une autre machine que la partie contrôleur
- binding GUI QML avec QtQuickVCP
- support des tablettes Android pour la GUI
- modernisation du langage HAL, meilleure gestion des instances HAL
- gestion de CPU multi-coeurs
- gestion des processeurs X86 et ARM
- remplacement de RTAI par RT-PREEMPT
- des nouveaux drivers pour Beaglebone-Black
- portage sur DE0-Nano et DE10-Nano
Ce qui ne correspondait pas à l'organisation projet de LinuxCNC.
Périodiquement, les modifs les plus importantes sont reportées entre les 2 repos.
Ici le meetup hosté par l'Electrolab en 2016 (avec 3 contributeurs majeurs au code Machinekit) : https://www.youtube.com/watch?v=OVVGdQnz5Ts
Michael y explique un peu l'origine du fork.
Et ici, d'autres meetups : https://www.youtube.com/channel/UC3FVtr ... Dq5motHMow
Machinekit apporte pas mal de nouveautés:
- remplacement du "middleware" historique NML (shared memory) par du ZeroMQ
- gestion de composants HAL en mode distribué
- découplage de la GUI qui peut tourner sur une autre machine que la partie contrôleur
- binding GUI QML avec QtQuickVCP
- support des tablettes Android pour la GUI
- modernisation du langage HAL, meilleure gestion des instances HAL
- gestion de CPU multi-coeurs
- gestion des processeurs X86 et ARM
- remplacement de RTAI par RT-PREEMPT
- des nouveaux drivers pour Beaglebone-Black
- portage sur DE0-Nano et DE10-Nano
Re: Maurice
Merci pour la synthèse et les liens, il y a effectivement des choses intéressantes. je trouves qu'il manque une " global picture " de machine kit dans la doc.
Au sujet du RT dans le kernel, bien que RT-PREEMPT a des performances moyennes honorables, les mainteneurs ont découvert des races conditions dans le noyau lorsqu'on fait des tests de résolution sur de longues périodes. Autrement dit en moyenne c'est pas mal, mais il y a une probabilité non nulle que le kernel se prenne les pieds dans le tapis. C'est pour cette raison que le kernel Linux est considéré comme trop compliqué pour du critique. Quel risque sur une CNC ???
Au sujet du RT dans le kernel, bien que RT-PREEMPT a des performances moyennes honorables, les mainteneurs ont découvert des races conditions dans le noyau lorsqu'on fait des tests de résolution sur de longues périodes. Autrement dit en moyenne c'est pas mal, mais il y a une probabilité non nulle que le kernel se prenne les pieds dans le tapis. C'est pour cette raison que le kernel Linux est considéré comme trop compliqué pour du critique. Quel risque sur une CNC ???
Re: Maurice
fabrice a écrit :Quel risque sur une CNC ???
Planter une pièce ? Faire un crash outil ?
![Dan.San :aille:](./images/smilies/31.gif)
Re: Maurice
péter broche, moteurs, vis a billes, massacrer le plateau, se blesser?
Re: Maurice
les experts sont de nouveau dans le ventre de Maurice
- Fichiers joints
-
- IMG_20210307_171251red.jpg (215.32 Kio) Vu 8918 fois
Qui est en ligne
Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité