Pupitre LinuxCNC autonome - 2/2

Réalisation d'un pupitre de pilotage CNC entièrement autonome (pas besoin d'ordinateur) avec une architecture basée sur l'utilisation d'une carte Beaglebone Black configurée avec MachineKit (LinuxCNC embarqué), ce pupitre permet de commander jusqu'à 5 axes et est équipé d'un écran tactile permettant d'accéder à toutes les fonctions de LinuxCNC. La Beaglebone dispose de nombreuses entrées/sorties ce qui permet de disposer des fonctions nécessaires à la plupart des machines d'usinage amateur.

Cette deuxième partie décrit le pupitre lui-même, sa réalisation et surtout le paramétrage de LinuxCNC (MachineKit).
Pour mémoire, la première partie traite du cahier des charges à la réalisation de la carte d'interface à monter sur la Beaglebone Black.

Réalisation et câblage du pupitre

Présentation

Ce pupitre est conçu pour rassembler toutes les fonctions principales permettant de piloter différents types de machines jusqu'à 5 axes.
Seules les fonctionnalités spécifiques à une machine ne sont pas directement intégrées mais dans ce cas les lignes d'entrées/sorties sont reportées sur les connecteurs sub D du panneau latéral. Ainsi ce pupitre permet de disposer d'un ensemble modulable mais aussi facilement transportable d'une machine à une autre, même si pour l'instant je ne dispose que d'une seule machine.
L'idée de ce pupitre m'est venue en consultant le blog F1oat qui parmi bien d'autres sujets présente la rénovation d'un tour EMCO.
Ce pupitre intègre donc les éléments suivants :

- Beaglebone Black et BBB-CNC-Cape.
- Ecran tactile 12''.
- Hub USB à 4 sorties.
- Alimentation 5V / 12V
- 5 drivers d'axes (4 montés actuellement).
- Transformateur torique pour les axes.
- Redressement filtrage pour les axes.
- 3 ventilateurs.
- Arrêt d'urgence.
- 2 potentiomètres d'override.
- 2 voyants d'état.
- Interrupteur de sécurité 220V.
- 2 disjoncteurs de protection.
- 3 connecteurs USB (2 en façade).
- 1 connecteur RJ45.
- 5 sub D 9 pins pour les axes.
- 1 sub D 9 pins pour la broche.
- 1 sub D 25 pins pour les entrées/sorties.
Avec cette configuration, le pupitre dispose de tout le nécessaire pour gérer les 5 axes et les connecteurs de sorties d'axes permettent de brancher directement les moteurs pas à pas.

Le choix de ne pas intégrer les fonctions spécifiques à une machine fait que la commande de broche et le variateur de vitesse ne sont pas dans le pupitre, il faut donc prévoir un câble de liaison entre le pupitre et la machine afin d'y envoyer les signaux nécessaires à la broche (M/A ; PWM ; CW/CCW ; encodeur), et il en est de même pour toutes les fonctions auxiliaires.

L'architecture générale est décrite par le schéma suivant.

La réalisation

Le pupitre est constitué d'une structure en tubes aluminium Alfer assemblés par des noeuds plastique du même fournisseur. Cet assemblage est maintenu en place grâce à des rivets pops et des écrous sertis pour les panneaux démontables.
Le dessus et le dessous sont fermés par de la tôle aluminium épaisseur 1,5mm fixée à la structure par des rivets pops, la poignée supérieure est reprise sur la structure, elle permet de déplacer facilement le pupitre.
Les panneaux de façade, arrière et latéraux sont démontables afin d'accéder à tous les éléments.
Côté façade on retrouve bien sûr l'écran tactile 12 pouces et à sa droite un premier panneau avec l'arrêt d'urgence, les voyants d'état et deux connecteurs USB, l'un des deux est pris en permanence par le dongle du clavier et de la souris.
En dessous, un deuxième panneau porte les deux potentiomètres d'override avance et broche.
Plus tard, quand tout fonctionnera, les panneaux seront gravés avec les différentes indications de fonctions.
Le bas sera fermé par d'autres panneaux de tôle lorsque tout sera terminé.

Les 4 moteurs fixés sur le côté gauche ne sont là que pour la phase de développement, ils permettent de visualiser le fonctionnement sans être relié à la machine.
C'est par l'arrière que l'on accède à tout le matériel installé.
En haut à gauche la Beaglebone et la cape BBB-CNC-Cape.
Sur la droite les drivers de pas à pas.
En partie basse les alimentations.
Le panneau latéral côté drivers porte les trois ventilateurs qui travaillent en extraction pour refroidir le tout, le flux d'air entre par les grilles du côté opposé et balaye le matériel en commençant par les éléments les moins chauds pour finir par les drivers.
Le panneau opposé aux drivers portera l'interrupteur général et les différents connecteurs d'entrées/sorties, la partie supérieure de ce panneau sera uniquement composée d'une grille d'entrée d'air.
Pour que la ventilation fonctionne correctement il faut que le panneau arrière soit fermé.
La photo précédente montre la Beaglebone Black avec la BBB-CNC-Cape enfichée.

Les câbles HDMI et USB vont respectivement vers l'écran et vers le hub USB (qui répartira vers les connecteurs et l'écran).

La carte micro SD doit rester accessible afin d'effectuer les différentes mises à jour.

Lors de la prise du cliché, le câblage était en cours, c'est pourquoi les lignes de commande des moteurs ne sont pas encore en place.

La masse et les tensions 5V et 12V sont centralisés sur les deux petits blocs de connexion.
En regardant par l'autre côté, on peut voir les alimentations en partie basse, sous les drivers une alimentation à découpage qui donne du 12V (écran et ventilateurs) et du 5V (Beaglebone et électronique). La puissance des moteurs est fournie par un transformateur torique suivi d'un module de redressement et filtrage muni de quatre ponts (un pour chaque moteur) pour une meilleure répartition de la charge. Le site CNC Loisirs donne toutes les informations sur le calcul de votre alimentation de puissance.

La plupart des fils de câblage cheminent par des petites goulottes afin d'obtenir un résultat plus propre.
Comme vous avez pu le voir dans cet article, le pupitre LinuxCNC est loin d'être terminé, il reste encore pas mal de câblage et de tests à réaliser.
Mais par la suite la partie paramétrage sera aussi très longue en mise au point car LinuxCNC et MachineKit permettent de presque tout configurer comme il est possible de le faire sur une installation industrielle.
En voir plus
Blog F1oat
Le blog qui m'a donné l'idée de réaliser ce pupitre. L'auteur du blog a  reconstruit un tour en créant un pupitre disposant d'une Beaglebone et d'un écran tactile.
Forum usinage
Ce forum traite de tout ce qui touche à l'usinage amateur ou professionnel. Quelques fils traitent de LinuxCNC sur la Beaglebone, celui donné dans ce lien a été aussi l'un de mes points de départ.
CNC Loisirs
Site sur les CNC amateur, vous y trouverez tout ce qu'il faut pour concevoir et réaliser une machine.
Commerce
Beetonics
Le site où j'ai acheté l'écran tactile 12 pouces.
Alfer
Profilés en aluminium et accessoires disponibles dans la plupart des grandes surfaces de bricolage.
En voir plus
Blog F1oat
Le blog qui m'a donné l'idée du pupitre
Forum usinage
Fil sur LinuxCNC et la Beaglebone
Commerce
Beetronics
Ecran tactile 12 pouces
Alfer
Profilés aluminium en magasins de bricolage

Le pupitre entièrement fonctionnel

Le pupitre est enfin fonctionnel avec toutes les connexions, l'écran tactile, la gestion des potentiomètres, le pilotage d'une broche de fraisage brushless (ER11), le pilotage de prises pour actionner la broche du tour et l'arrosage.
Et grace aux fonctionnalités de LinuxCNC je peux enfin faire des filetages avec le tour et ceci "simplement" en ajoutant un codeur fait maison sur la broche afin de synchroniser l'avance.

Vous pouvez télécharger mes configurations ainsi qu'une image de la carte SD contenant tout l'environnement Linux et Machinekit installés, du plug and play, attention car l'image pèse un peu moins 500Mo.
L'intérieur du pupitre avec la Beaglebone Black et la BBB-CNC-Cape version 1.
Dessous, à côté des disjonteurs il s'agit d'un convertisseur PWM vers 0-10V pour le pilotage de la broche. Les deux relais servent à gérer la mise en route de la puissance seulement quand Linux CNC a activé la machine, c'est une question de sécurité à la mise sous tension.
Un maximum du câblage est sous goulottes pour l'esthétique.
La façade du pupitre avec bien sûr l'écran tactile, j'ai choisi GmocCapy comme interface.

Sur la droite les voyants d'état et l'arrêt d'urgence.

Deux connecteurs USB afin de connecter une clé pour le transfert des programmes d'usinage.

Les deux potentiomètres permettent une action rapide sur la vitesse d'avance et celle de la broche, comme sur les CNC industrielles.
Sur le côté droit, on retrouve l'interrupteur général et le connecteur 220V.

Les cinq connecteurs pour alimenter les moteurs pas à pas sont de simples SubD 9.
Un SubD 25 permet un report des différentes entrées/sorties.
Le dernier SubD 9 est destiné à la connexion de la broche.

Une prise USB et une RJ45 complètent les possibilités de liaisons externes.

Les grilles servent aux entrées d'air pour la ventilation, l'extraction est assurée par trois ventilateurs situés sur le côté gauche.
Pour les fraisages de métaux tendres, une petite broche brushless avec pince ER11 est parfaite pour ma petite machines.

Comme il n'y a pas assez de place dans le pupitre pour y intégrer l'alimentation et le driver, j'ai construit un boitier déporté y placer les composants indispensables pour la broche.

Ce boitier est relié au pupitre grâce au connecteur SubD 9 "BROCHE".
L'intérieur du boitier de contrôle de la broche brushless.

Avec l'alimentation à l'arrière, le driver au milieu avec son ventilateur de refroidissement.

Les deux relais pour commander la marche/arrêt et la prise 220V.

En complément, sur l'arrière du boitier une prise 220V pilotée par un des relais pour la commande de l'arrosage.
LinuxCNC intègre la possibilité de synchroniser les avances avec la rotation d'une broche de tour non asservie, cela permet de fileter.

Pour synchroniser les avances, il faut placer un codeur simple sur la broche du tour. J'ai fabriqué le mien avec des fourches optiques et une roue crantées... fraisées avec la petite broche.
Ce pupitre LinuxCNC automome m'a permis de redécouvrir ma petite machine qui était jusqu'alors pilotée avec Cnc3Axes, les possibilités de LinuxCNC sont incroyables et finalement relativement simples à intégrer.
Grâce à ce nouvel équipement j'ai maintenant une petite machine pleinnement opérationnelle.

Je reste à votre disposition pour toutes questions sur ce projet, pour cela vous pouvez utiliser le formulaire de contact.

Le succès de ce projet m'a même donné envie de construire une nouvelle fraiseuse CNC de plus grande capacité, mais cela est une autre histoire...
Télécharger
Configurations
Mes configurations pour tour et fraiseuse 3 axes.
Image Machinekit
Image flashable de mon environnement machinekit avec configurations.
Télécharger
Configuration
Mes configurations tour et fraiseuse
Image Machinekit
Image fonctionnelle avec mes configurations
Site réalisé avec OpenElement
Date mise à jour  
CARNETS JL-S
Loisirs techniques
Carnets JLS
Top page