Le Github du projet
Et la page wiki (en anglais)

Les sous-pages:
BCNC/edition
BCNC/controle
BCNC/Maintenance

Sommaire

Généralité

bCNC est un logiciel en cours de développement, dont le développement avance très vite. On a beaucoup d'espoir pour un logiciel ergonomique et puissant dans un futur proche. Il reste très puissant et relativement pratique, mais quelques coquilles sont présente du a son développement.

Pour le moment il est opérationnel pour :

  • Lire et modifier du gcode, importer du dxf, importer des images
  • Contrôler la CNC en temps réel avec les visuels
  • Scanner la zone à usiner
  • Compenser le diamètre de la broche
  • Évider des surfaces
  • Faire des perçages
  • Faire des attaches
  • Converti des images en Heightmap (discrétisation par ligne)
  • Converti des images en Halftone (discrétisation en cercle)
  • Lit des fichiers midi pour les jouer avec la CNC
  • Possibilité d'implémenter des plugins facilement
  • .....

Dans les mises à jours à venir: Import des .svg et .stl, amélioration de l'ergonomie, ...

Utilisation de bCNC

L'utilisation de bCNC se divise en deux grandes parties distinctes:

Fonctionnement global de bCNC

Fichier et sauvegarde

On peu créer, ouvrir ou sauvegarder un fichier via les onglets en haut à droite BCNCNewOpenSave.png.

Pour le moment bCNC ouvre du

  • Gcode: .g, .gcode, .nc, .ngc
  • Dxf: .dxf

Et sauvegarde en

  • Gcode: .g, .gcode, .nc, .ngc

Pour les fichiers: .png, .midi On passera directement par des Plugins

Interface

BCNCScreenInfo.png

On y retrouvera

  1. Un bandeau d'onglet, pour accéder aux menus
  2. Un bandeau en haut et à gauche pour accéder aux fonctions
  3. Un bandeau a gauche de fonctions
  • Un écran de visualisation 2D et 3D, gcode, position fraise, avancement ...
  • Un petit rectangle correspondant à la zone utile de la fraiseuse
  • Un petit menu de Commande Gcode, afin de rentrer des commandes manuels Gcode.
  • Un dernier bandeau indiquant les coordonnées correspondant, à la position de la souris.

Mode d'emploi

Prérequis

Avant toute chose nous avons besoin de:

  • Votre fichier prêt
  • Les paramètres d'usinage choisi (voir cette page)

Import d'un fichier

Gcode

Il suffit d'ouvrir son fichier avec l’icône BCNCOpen.png

Fichier 2D (dxf, svg ...)

Fichier dxf

Comme pour le gcode, il suffit d'ouvrir son fichier via BCNCOpen.png

Fichier svg

On ouvre depuis inkscape et on l'enregistre au format "DXF pour bCNC (.dxf)"
Si le format n'est pas disponible voir exportation dxf depuis inkscape

Puis on ouvre le dxf directement sur bCNC via: BCNCOpen.png

Fichier 3D (png, stl ...)

Fichier Stl

Le tant que bCNC implémente l'import de fichier stl. On transforme le fichier STL en PNG avec des niveaux de gris via : (on cherche encore)

Puis on ouvre le fichier png via bCNC pour cela, on regardera la section Fichier png juste en bas.

Fichier png

Ici quatres solutions sont possibles, généralement on utilisera le principal Img Heightmap Il adapte les niveaux de gris en profondeur suivant Z, et travail suivant X et Y en ligne.

Les trois autres sont pour des "effets artistiques", on regardera les pages associés
ImgHalftone qui transforme l'image en petits ronds plus ou moins profond en suivant les niveaux de gris
ImgPyrograph Utilisé pour la pyrogravure, il transforme l'image en "raster" avec des niveaux de Z différant
ImgSketch Il permet de dessiner avec un crayon, le rendu est plutôt intéressant.

Préparation du gcode pour l'usinage

Maintenant que le fichier est importé on rentre dans la partie modification du gcode pour la CNC.

Premièrement il va s'agir de donner au logiciel les différents paramètres de notre usinage.

Paramétrage de la vitesse de rotation

Pour changer la vitesse de rotation de la broche on ira dans l'onglet Img(Editor)

  1. On ouvre le block "Header"
  2. On change le 255 de la ligne "M3 S255" par la vitesse que l'on souhaite, de 0 à 255, correspondant à 0 - 24000 tr/min

Database

On retrouve cette section dans l'onglet Img(tools) à gauche.

Nous allons modifier les menus: Imgs Fraise, Materiau et Stock

Nous allons rentrer les paramètres de notre usinage. L’intérêt c'est que certaines fonctionnalités de bCNC les demanderons directement et d'autre se réfèrerons à celles stockés ici. (C'est pas très bien foutu mais c'est normal)

Fraise

Img Ici il s'agit simplement de sélectionner la fraise que nous allons utiliser via le menu déroulant "Nom"

Si la fraise n'existe pas, on la créera.

Matériau

Img Ici comme les paramètres changent à chaque coupe. On rentrera

  • La vitesse d'avance en mm/min
  • La vitesse de plongée mm/min
  • La hauteur prévu d'une passe (maxi 1,5x le diamètre de la broche)

Stock

Img Comme pour Matériau les paramètres changent tout le temps. On sélectionnera:

  • Le matériau utilisé juste au dessus.

On rentrera la:

  • Sécurité en Z: correspond à la hauteur de passage hors dans les trajets hors usinages.
  • Surface Z = 0 (correspond à la position du haut de la surface)
  • Épaisseur du matériau

Modification basique

Dans l'onglet Img(Editor) on peu accéder au gcode en direct avec le visuel associé, et quelques fonctionnalités.

Positionnement

On peu changer le positionnement du fichier avec les outils de la section "Déplacer"

Outil "Déplacer

Permet de prendre son tracé avec la souris et de le déplacer ayeur toujours avec la souris.

Positionnement par rapport aux zero

Img(cadres bleu) Ces outils permettent de positionner les tracés via le cadre rose qui entoure le fichier (représenté par le cadre bleu) au niveau du zéro actuel (représenté par le point rouge)

Les plugins

Il existe un bon nombre de plugins dans inkscapes, il peuvent modifier ou générer directement du gcode. Ici on parlera des plugins essentiels sinon pour les autres vous pouvez vous référer à la page Plugins bCNC

On va donc dans l'onglet Img(Tools)

Profil

Img Ce plugin sert à adapter le rayon de l'outil par rapport au tracé, cela contracte ou dilate directement le tracé.

Ainsi on sélectionne les tracés, on rentre les paramètres:

  • Fraise: on choisit la fraise.
  • Direction: Inside pour intérieur et outside pour extérieur.
  • Distance supplémentaire: Ajoute une longueur (mm) supplémentaire au rayon de l'outil dans le décalage.

Enfin Img(Executer)

Couper

Img Ce plugin permet de générer des passes à partir du gcode préalablement sélectionné. Il est essentiel pour faire des découpes depuis un fichier 2D.

Ainsi on sélectionne les tracés, on rentre les paramètres:

  • Surface Z = 0 (correspond à la position du haut de la surface)
  • Profondeur finale (mm) (négative)
  • Hauteur de passage (mm): C'est la profondeur d'une passe
  • Coupe d'abord: On choisit si il génère un tracé à la hauteur de la surface ou non

Enfin Img(Executer)

Sécurité

Avant de passer à l'utilisation de la machine, voici quelques consignes de sécurité.

En cas de problème !

Au moindre truc anormal => Bouton d’Arrêt d'Urgence ! => Suivre les procédures en cas de problème

Pareil si la machine heurte une fin de course voir la page en cas de problème

Lancement de l'usinage

On retrouvera le détail du contrôle et problèmes dans la page contrôle de bCNC

Positionnement du materiel

On positionne sa plaque sur le plateau de la CNC.

Pour ça on a a notre disposition:

  1. Un cadre noir sur le plateau avec des côtes représentant la surface utile de la fraiseuse.
  2. Des cales en bois permettant de faire le parallélisme de la plaque avec la machine. On placera en longueur entre le matériau et le support vert de la CNC.
  3. Des vis pour visser le matériau sur le martyr.

Commande de la fraiseuse

Changement de fraise

Pour changer la fraise.

  1. On appui sur l’arrêt d'urgence, afin d'éviter toute erreur de manipulation.
  2. On désert avec les deux clef disponibles (Gif ?)
  3. On place l'outil via son mandrin associé (bien regarder les diamètres correspondants.
  4. On sert avec les deux clefs disponibles
  5. On peu poursuivre les manipulations

Connexion avec la carte

En tout premier lieu dans l'onglet Img(File)

On connectera la machine avec Img(Ouvir) Les paramètres sont:

  • Port: /dev/ttyACM0 ou ACM1
  • aud: 115200
  • Contrôleur: Smoothie

Home home home

Tout de suite après on effectuera un Img(Home)

C'est essentiel, cela fera comprendre à la machine où elle se trouve, ce qui évitera des erreurs d'usinage.

Réglage des Zeros

Pour positionner la tête au début de l'usinage:

  1. On déplace la tête avec le "Joystick" ou avec le bouton Img(MoveGantry)
    • On fait attention pour le réglage de l'axe Z, aussi on pourra s'aider d'une feuille de papier entre la fraise et la surface du matériau pour être précis.
  2. On appui en suite sur les boutons Img(X,Y,Z=0)

On peut vérifier que les bonnes dimensions du tracé avec Img(Scan). Cela aura pour effet de déplacer la tête en suivant le cadre rose visible sur bCNC.

On prendra soin de relever la tête d'au moins 10mm avant de lancer le scan.

Lancement du gcode

On n’oubliera pas de placer la jupe d'aspiration de la CNC, pour ce faire il faut que la tête soit un minimum baissé suivant Z de 10mm par rapport à la position du "Home".
  1. On allume ensuite l'aspirateur
  2. On vérifie que personne ne se situe autour
  3. On lance avec Img(début)

Ce qui n'est pas possible

Faire pause => changer de fraise => reprendre

En cas de problème

Après avoir utilisé l’arrêt d'urgence

Etat: bCNC ne la pas vu il continue de fonctionné. Il a donc perdu les coordonnées de la machine (Mpos).

Il faut déconnecter la bCNC avec la CNC en appuyant sur Img(Sortir)
  1. On peu ensuite redémarrer la machine avec bouton Rouge.
  2. Puis ouvrir la liaison avec bCNC
  3. Faire un Img(Home) !

Enfin on peu reprendre son utilisation.

Fin de courses

Si la machine heurte une fin de course Il apparait: Img(erreurfindecourse)

A ce moment là les moteurs sont à l’arrêt. Ici deux cas sont possibles

1. Fraise dégagé

Si la fraise ne va pas percuter d'objet lors de son déplacement vers l'origine machine.

Il suffit d'appuyer sur Img(Home)
2. Fraise Bloqué

Si la fraise est entouré d'objets qu'elle peut percuter.

  1. On appuiera sur Img(Débloquer)
  2. On remontra la fraise en fessant un déplacement en haut sur l'axe Z
  3. On appuiera sur Img(Home)