Raspberry

Prenez le contrôle 

de votre CNC.

 

 

 

Bonjour à tous,

Si comme moi vous utilisez une CNC GBRL vous avez certainement été confronté à l'immobilisation de votre PC pour effectuer des tâches de gravures.  

J'ai donc voulu contourner le probléme en utilisant un rapberry Pi4 comme interface d'utilisation. Grâce à un écran tactil vous pourrez prendre facilement le contrôle de votre CNC. 

Dans cet article vous trouverez toutes les étapes nécessaires à cette réalisation. Comme j'aime cela et qu'il me semble que c'est la maniére la plus simple de préparer un Raspberry, nous utiliserons la console pour configurer l'ensemble. Rassurez-vous cela ne prend que quelques minutes.

Pour contrôler ma CNC, j'utilise bCNC, mais bien d'autres logiciels sont compatibles. Rapidement j'espére réaliser une CNC de plus grande taille qui sera pilotée par ce montage.

 

 

 

 

Sommaire

 

 

 Le matériel, préparation du Raspberry

 

Pour réliaser ce montage, j'ai commandé un kit Raspberry P4 8G de Ram et un écran tactil 5 " DSI. Les deux sont  100 % compatible, il n'y a besoin d'aucunes configurations pour qu'ils fonctionnent ensemble. Voulant pouvoir faire évoluer le montage, j'ai anticipé un Raspberry puissant, si vous faites des essais avec d'autres modéles, vos retours seront les bienvenus.  Merci d'avance ;-) 

Je trouve l'écran un peu juste en taille, peut être serait-il intéressant d'utiliser un 7 ou 10 ". Là aussi je compte sur vos retours.

Pour l'assemblage j'ai n'ai pas utilisé la partie inférieur du refroidisseur afin de pourvoir fixer l'ensemble sur l'écran. Les ventilateurs sont alimentés directement pas les GPIO du raspberry, ils ne font quasiment aucun bruit. L'écran est relié avec l'aide d'une petite nappe directement au Raspberry.

Cela donne fait un montage minimaliste, mais c'est ce que je recherche. Ainsi toute la connectique reste disponible.

 

 

arduino mega  tft 2 8 240 320
Kit complet raspberry avec carte mémoire et systéme de refroidissement.

Ecran tactile DSI 5" compatible raspberry

NRF24L01   ESP8266 serial
Assemblage finit vu de face Assemblage finit vu de dos

 

 

 

Choix et installation de L'OS

 

L'OS est le système d'exploitation qui va gérer le micro ordinateur Raspberry, windows est un OS. Le Raspberry peut accueillir plusieurs types d'OS, Raspbian, Ubuntu,.... Ils sont basés sur la distribution Debian, seul l'interface graphique change réellement. Pour ce projet nous aurons besoin d'un OS doté d'un bureau, pour simplifier la configuration je vais choisir le OS PI desktop .  Rendons nous sur le site officiel du Raspberry pour télécharger l'utilitaire d'installation Raspberry pi imager.

acceuil software


 

Installons le logiciel, puis ouvrons celui-ci. Au préalable nous aurons branché la carte micro SD via l'adaptateur à notre ordinateur. Cliquons sur le bouton "choose SD card" pour sélectionner notre carte SD. 

Puis il vat nous falloir choisir l'OS que nous voulons installer. J'ai choisi Raspberry Pi Desktop.  Gravons notre carte en cliquant sur write. Un message vous informera que l'installation est terminée.


Choix OS

Ce n'est pas tout à fait fini, pour pouvoir communiquer avec notre Raspberry il faut activer le SSH. Il nous permettra de nous connecter à notre Raspberry. Pour cela il suffit de créer un fichier nommé ssh sans extension dans la racine boot de la carte SD. Déconnectons puis reconnectons l'adaptateur USB pour qu'il soit reconnu par Windows et ajoutons ce fichier.

ssh file

Après avoir inséré notre carte SD dans le Raspberry nous pouvons le connecter à notre réseau grâce au câble RJ45. La première mise en marche prend un peu de temps car l'OS s'installe. L'écran est automatiquement reconnu vous avez maintenant accés à l'interface graphique.  Notez que sur l'image ci dessous VNC et bCNC sont déjà installés.

bureau raspberry

 

 

 

 

Installation et configuration de la console putty

 

Nous avons besoin d'une console SSH pour nous connecter à notre Raspberry, rendons nous sur le site officiel Putty pour télécharger le logiciel puis l'installer.

 

Il faut que nous trouvions le raspberry sur le réseau. Pour cela assurez vous d'être connecté sur le même réseaux. Le groupe de travail du raspberry est par défaut le même que celui de windows (WORKGROUP), le host name du Raspberry est raspberrypi. Si vous êtes sur le même réseau il vous sera facile de vérifier sa présence en ouvrant l'invite de commande  de Windows ( cmd dans le menu )  en envoyant un "ping raspberrypi" , il devrait vous retourner son adresse IP. Si vous rencontrez des difficultés, vous pouvez télécharger des scanners réseaux comme le macscanner de colasoft.

 

ping raspberry

 

Maintenant ouvrons le logiciel Putty. Pour ne pas perdre vos habitudes de frappes, je vous propose de configurer la touche "del" de l'interface. Dans le cas contraire il vous faudra utiliser Ctrl-H pour effacer.

Del putty

 

Ceci fait configurons la connexion dans l'onglet "Session". Vous pouvez enregistrer ces informations grâce au bouton "Save".  Si votre nom d'hôte ne fonctionne pas vous pouvez le remplacer par son adresse ip 192.168.XXX.XXX.

choice partition

 

Cliquer sur Open pour ouvrir la session, une fenêtre vous avertie de la création d'une clé de cryptage, valider la demande.

Le PC est prêt, attaquons nous à la configuration du Raspberry.

 

 

 

 Connexion  au Raspberry

 

L'invite de commande du Raspberry nous demande de nous logger. Pour cela nous allons utiliser l'utilisateur par défaut "pi". Son mot de passe par défaut est raspberry. Connectons-nous en informant ces deux informations.


acceuil software

 

Nous sommes maintenant connectés avec l'utilisateur pi de la machine Raspberrypi. Par mesure de sécurité nous allons immédiatement changer le mots de pass de l'utilisateur pi, pour cela taper ce qui suit, un nouveau mot de passe vous sera demandé. Pour coller les textes il suffit de les copier (ctrl-c) puis de faire un click droit dans la console pour les coller.

sudo passwd pi

 sudo : permet de passer en mode super utilisateur afin d'avoir les droits pour changer le mot de passe, il sera souvant utilisé  par la suite.

 passwd:  est une commande qui permet de changer le mot de passe d'un utilisateur, ici pi.  

Second point important avant de commencer notre configuration, nous allons mettre à jour notre raspberry. Contrairement à windows tous les logiciels ce trouvent dans des depots qui sont consultables sur internet. Cette mise à jour ce fait en deux étapes. La première consiste à mettre à jour le cache (un fichier) des paquets installés grace la commande apt-get update. Je rappelle que les commandes sont les mêmes sur tous les systèmes Debian (Ubuntu,..).

sudo apt-get update

Puis de mettre à jour le raspberry, cela prendra quelques minutes.

sudo apt-get upgrade

 Astuce: Avec la touche tabulation vous pouvez activer l'auto-complémentation. Cela permet de compléter automatiquement la frappe en cours en appuyant sur la touche tabulation. Cela fonctionne aussi bien pour les commandes que pour les noms de fichiers et de répertoires. 

Cela fait nous allons configurer notre raspberry,  un utilitaire propre au Raspberry permet de nous aider.

sudo raspi-config

raspi config

 

 L'utilitaire va nous permettre de régler notre raspberry, notamment le fuseau horaire.

time zone

 

 

Grâce à cet outil il possible d'activer VNC, cela vous permettra la main à distance sur le bureau du raspberry depuis un ordinateur distant. Personnellement j'utilise VNC viewer comme client. Je vous conseille de ne l'utiliser que sur votre réseau personnel. 

VNC Activation

Il est aussi possible d'activer le wifi depuis cet utilitaire. 

 wifi setting

Dernier outil indispensable a installé,  un clavier virtuel. Il en existe plusieurs, ma préférence c'est tournée vers le clavier par défaut de Ubuntu. Onboard  Une fois installé vous pourrez l'activer par le menu accés universel.

Pour l'installer suivez cette commande depuis votre console.

sudo apt-get install onboard

 Onboard

 

Installation du logiciel bCNC

 

 

bCNC est un logiciel qui permet de lire les Gcode destinés à une machine Gbrl. J'utilise cBCNC avant tout pour sa fonctionnalité de Mappage qui permet de compenser les problèmes de planéité de l'objet que l'on veut graver. Cette fonctionnalité est indispensable pour la réalisation de  PCB réussis.

Il est programmé en language Python, nous allons donc suivre les conseils des créateurs et utiliser l'utilitaire  pip.  Il a noté que lors de l'installation de l'OS Pi il y a plusieurs versions de python qui sont installés. Pour installer bCNC sur la version 3 (comme conseiller) il faut utiliser la commande pip3, dans le cas contraire bCNC serait installé sur la version 2 de Python.

sudo pip3 install --upgrade bCNC

Bcnc est maintenant installé sur votre Raspberry. Maintenant il est possible de le lancer (depuis la console du raspberry et non celle de votre PC) avec la commande.

sudo python3 -m bCNC

Pas très pratique, pour simplifier le lancement de l'application nous allons ajouter un raccourci sur le bureau en créant un fichier du nom de bCNC.desktop, puis ienregistrer les informations suivantes qui permettront d'ouvrir bCNC en pleine écran (pensez à activer le clavier virtuel avant ;-)). Vous pouvez le créer soit avec l'interface graphique, soit en créant le fichier depuis votre console ici home/pi/Desktop/bCNC.desktop

sudo nano home/pi/Desktop/bCNC.desktop

 

[Desktop Entry]
Type=Application
Name=bCNC
Comment=The CNC interface
NoDisplay=false
Exec=python3 -m bCNC --fullscreen  
Icon= /usr/local/lib/python3.7/dist-packages/bCNC/bCNC.png
Terminal=true

 

Ctrl+S pour enregistrer suivit de Ctrl+X pour sortir.

Ce tuto n'a pas pour but d'apprendre à utiliser bCNC, je vais donc m'arrêter ici pour cette partie. Pensez à activer le clavier virtuel avant de lancer bCNC, vous pourriez en avoir besoin ;-)

 

 

 

 

Partager un dossier

 

Afin de pouvoir déposer facilement nos Gcode, nous allons créer un dossier partagé qui sera accessible depuis n'importe quel ordinateur.

Dans un premier temps nous allons créer un utilisateur qui pourra accéder au répertoire où ce trouveront nos Gcode. Pour cela nous allons utiliser la commande adduser suivit de l'identifiant. Ensuite le système demandera un mot de passe et des informations complémentaires. Un dossier /home/utilisateur est automatiquement créé. 

sudo adduser fabrice

Un repertoire sera créé pour cet utilisateur, vous pouvez y ajouter un repertoire pour ranger vos Gcode en exemple.

sudo mkdir /home/fabrice/gcode

Pour partager le dossier sur le réseau nous allons utiliser l'outil samba. Pour cela il faut l'installer. Durant l'installation il demandera si nous voulons utiliser la résolution WINS, nous répondrons oui, cela permet d'accéder au dossier depuis windows.

sudo apt-get install samba

Il est nécessaire de configurer des utilisateurs de Samba, il doivent t'être les mêmes que ceux de l'OS, avec les mêmes mots de passe. Malheureusement ils ne sont pas synchronisés entre eux.  Il faudra les mettre à jour  manuellement. Créons l'utilisateur fabrice, le même que celui de l'OS.

sudo smbpasswd -a fabrice

Nous allons maintenant configurer samba, pour cela il faut ouvrir le fichier de configuration, il ce trouve sous /etc/

sudo nano /etc/samba/smb.conf

Dans la rubrique #Authentification#  ajouter la ligne pour définir la méthode d'identification.

security = user

Puis informer à la fin du fichier les informations du dossier que l'on souhaite partagé. [nom du partage]

[innogreentech]
     path = /home/fabrice/gcode
     available = yes
     read only = no
     writable = yes
     browseable = yes
     valid users = fabrice

Pour nous connecter il nous suffira de créer une connexion réseau à l'adresse \\raspberrypi\innogreentech avec comme utilisateur fabrice. Cela permettra de travailler sur le contrôleur comme si les fichiers étaient installés sur le PC. 

Nous avons atteint notre objectif, vous pouvez maintenant piloter votre CNC grâce au Raspberry. De plus il vous sera possible de surveiller le travaille à distance grâce à VNC. Certains iront plus loin en y ajoutant une caméra par exemple. J'ai fait ce tuto de mémoire, j'espère n'avoir rien hormis, mais si c'est le cas vos commentaires me permettront de corriger les manques.

 

 

 

 

Veuillez vous connecter ou créer un compte pour pouvoir poster un commentaire.