Résumé

Les commandes numériques (CNC) du marché sont des boîtes noires où l'utilisateur n'a quasiment aucun accès aux algorithmes de planification de trajectoires. LinuxCNC est une commande libre et ouverte, mais pas adaptée pour l'usinage à haute performance, car sans contrôle du jerk. OpenCN surmonte ces limitations avec une optimisation de trajectoires en deux étapes : 1. optimisations géométriques comprenant entre autres un lissage optimal des transitions avec une continuité géométrique de type G2 . 2. optimisation temporelle avec contrôle du jerk, basée sur un problème d'optimisation convexe de type LP appliqué sur un horizon reculant. Les algorithmes sont codés et testés sur Matlab avec une génération automatique du code embarqué C/C++. Le framework OpenCN est constitué d’un environnement de type Linux asymétrique (AMP), avec un noyau récent, et d’une version revisitée de l’extension temps-réel Xenomai/Cobalt. Les plateformes HW supportées sont x86, Raspberry Pi, Zynq® Ultrascale+, et QEMU/virt64 offrant ainsi la possibilité d’exécuter le framework dans un environnement émulé. Un maître EtherCAT libre est inclus, permettant la transmission fiable de consignes aux drives avec une cadence de 10 kHz grâce à l'horloge distribuée (DC). Une validation fonctionnelle de OpenCN est présentée sur une mini fraiseuse 3 axes très performante, dont la première fréquence propre est supérieure à 180 Hz. Les tests ont été effectués sur des pièces fraisées en laiton jusqu'à des vitesses d'avance de F9000. Un module cinématique pour des machines 5 axes est en cours de développement.

Détails

Actions

PDF