BCNC : Différence entre versions

De fablabo
Aller à : navigation, rechercher
Ligne 215 : Ligne 215 :
 
*Inverser: Inverse les niveaux de gris du fichier. Donc l’intérieur et l’extérieur de l'image.
 
*Inverser: Inverse les niveaux de gris du fichier. Donc l’intérieur et l’extérieur de l'image.
 
*Single pass: Déactive le passage par passe et n'en fait qu'une seule.
 
*Single pass: Déactive le passage par passe et n'en fait qu'une seule.
*Image à graver: Selectione l'image
+
*Image à graver: Choisir l'image en png
  
 +
=====Box=====
 +
Génère des gcode de boites en découpant dans une plaque.
 +
 +
*Nom: Pour garder en mémoire des paramètres.
 +
*Dx, Dy, Dz: Dimension de la boite
 +
*Nx, Ny, Nz: Nombres de dents suivants les axes.
 +
*Profil: ?
 +
*Surcoupe: ?
 +
*Couper: ?
  
=====Box=====
 
 
=====Text=====
 
=====Text=====
 +
Génère des gcodes de texte de toutes les polices.
 +
 +
*Nom: Pour garder en mémoire des paramètres.
 +
*Texte à générer: Écrire son texte ici
 +
*Profondeur de travail: Profondeur de coupe suivant z (mm)
 +
*Taille de la police: en mm
 +
*Fichier de la police: Sélectionne le fichier contenant la police
 +
*Image vers Ascii: Sélectionne une image pour écrire le texte
 +
*Largeur des caractères de l'image: Choisi la taille de la police si le texte viens d'une image
 +
 
=====Gear=====
 
=====Gear=====
 +
Génère des gcode d'engrenages
 +
 +
*Nom: Pour garder en mémoire des paramètres
 +
*Nombre de dents: de l'engrenage
 +
*Angle de pression: permet de changer la forme de l'engrenage (°)
 +
*Pas d'une dent: Choisi le pas entre chaque dent (mm)
  
 
=====Halftone=====
 
=====Halftone=====
 +
 +
 +
 
=====Sketch=====
 
=====Sketch=====
 
=====Midi2CNC=====
 
=====Midi2CNC=====

Version du 20 mai 2016 à 17:09

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

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. Son

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: -La partie Contrôle: Commande, et visualisation de la position machine en temps réel -La partie Éditeur: Modification directe du gcode, paramétrages, et utilisation de moult plugins.

Partie Contrôle

Statuts

Not Connected: bCNC ne communique pas avec la machine. Connected: bCNC à lancer la communication avec la machine mais nécessite l'appui du bouton "débloquer" pour lancer des commandes. Idle: La machine est en attente d'une commande, elle est prête à fonctionner. Hold: La machine est en pause, elle bloque toute autre commande que reprendre ou annuler. Run: La machine est en mouvement. Alarm: Erreur machine, la machine arrive en butée, ou autre .... Elle attend un déblocage de l'opérateur. Error Abort during cycle: Arrêt du cycle ou arrêt d'urgence logiciel, ou problème avec bCNC..... Elle attend un déblocage de l'opérateur.

Connexion avec la carte

Dans l'onglet "File"

-Serial

  • Port:/dev/ttyACM0 ou /dev/ttACM1
  • Baud: 115200
  • Contrôleur: Smoothie

On ouvre le port pour se connecter à la machine, et on le ferme quand on a fini ou quand on a utilisé un bouton d’arrêt d'urgence.

Après on peu passer à l'onglet Control !

Contrôle de la machine

Dans l'onglet "Control"

Bandeau du haut:

  • Home:

Envoie la machine aux niveau des fins de courses. Et initialise l'origine machine.

  • Débloquer: Il désactive toute erreur, Il définit que l'opérateur est prêt à remettre la machine dans son état normal.
  • Remise à zéro: C'est l’arrêt d'urgence logiciel, il arrête les moteurs instantanément, interrompt le cycle, et dérègle les positions machines. Il est important de faire un "Home" après toute utilisation de ce bouton.
  • Scan: Déplace la tête en suivant le rectangle rose qui encadre le gcode. Sans gcode il va buter en fin de course.
  • 2,3,4,5,6:
  • Début: Lance le programme présent dans le logiciel, on peut le modifier avec l'onglet "éditor".
  • Pause: Il fini la ligne de gcode en cours et met en pause le cycle, pendant la pause la broche tourne encore, et on ne peu effectuer aucune manipulation avec la machine pendant la pause.
  • Arrêt: Il arrête la lecture du gcode à la fin de la ligne en cours.
  • Sortir: Quitte bCNC

-Status

  • Wpos: Ce sont les cordonnées par rapport au repère en cours, on modifie ce repère en utilisant les boutons X,Y,Z=0, Set WPOS ou encore avec une commande G92.
  • Mpos: Ce sont les cordonnées par rapport au zero machine, qui est initié via la commande "Home".
A chaque nouveau lancement de bCNC il est important de faire un "Home" pour initier les positions machines (Mpos)
  • Le Bouton "Move Gantry" permet de déplacer la tête directement en cliquant dans la zone voulu.
Il est important quand on l'utilise de bien se situer dans la zone en pointillés orange.

-State

  • G5x: Ces boutons corresponde à des référentiels différant, cela permet de garder en mémoire les origines de plusieurs Wpos.

Distance: Absolute ou Incrémental. Permet de travailler en suivant des cordonnées ou des incréments. (G0 X10 déplacement à la position X10, ou déplacement de 10 suivant l'axe X) Unités: mm ou inch (en mm par défaut) Outil: Numéro de l'outil, inutile avec notre fraiseuse. Plan: XY, XZ, YZ, par défaut XY Vitesse: 3 000mm/min, c'est la vitesse des déplacements hors usinages (G0) Mode: unit/min, 1/time, unit/rev. unit/min par défaut. Vitesse d'adaptation: Inutile pour le moment, c'est sensadapte en pourcentage la vitesse réglée précédemment. Broche: Démarrage manuel de la broche, utile seulement pour l'utilisation avec le joystick (s'éteint au démarrage d'un gcode).

-Control Joystick incrémental: Il permet le déplacement suivant X, Y, Z et XY. Les incréments sont à régler à chaque déplacement.

Sonde

Partie inutilisé avec SentierBattu

Partie éditeur

Database/Paramétrage

Dans l'onglet "Tools"

Matériau
  • Nom: Permet de sauvegarder des configurations.
  • Vitesse: Vitesse d'avance de l'outil sur XY (mm/min)
  • Vitesse de plongée: Vitesse d'avance de l'outil sur Z (mm/min)
  • Hauteur de passage: Hauteur d'une passe (mm)
Fraise
  • Nom: On sélectionne la configuration associé à la fraise, on peu en rajouter.
  • Type: Type coupe de la fraise (Downcutting par défaut)
  • Forme: Forme de la fin de la fraise
  • Matériau: Solid Carbide pour toutes nos fraises. (Aucune importance)
  • Couche: Composition du revêtement (Aucune importance)
  • Diamètre: Diamètre de l'outil en (mm)
  • Axe: Diamètre de l'axe de broche (mm)
  • Tranchants: Nombres de dents
  • Longueur: Longueur utile de la fraise (mm)
  • Angle: Angle de la fraise pour les fraises coniques (°)

% de fraise engagée: Taux de recouvrement (%)

Machines

On ne touche jamais à ces configs

  • Unités du gcode en pouce ou mm
  • Option pour l'utilisation sur une découpeuse laser
  • Accélérations: (Aucune importance c'est réglé dans la smoothie)
  • Vitesse de déplacement maximales: (mm/min)
  • Déplacements: Taille de la zone utile de la fraiseuse (pointillés oranges)
  • Nombre de décimales: dans le gcode
  • Précision du tracé: dans le gcode
  • Démarrage: Code exécuté à la connexion avec la machine.
  • Rotation (tr/min): Plage de rotation dans l'onglet Control
  • G-code à exécuter: Définition des header et footer

Plugins

Ce sont des ajout à bCNC, on peu en faire sois même

Couper

Il permet de couper la forme sélectionner suivant l'axe Z, on choisit ainsi le:

  • Nom: pour garder en mémoire des paramètres
  • Surface Z: Définit la hauteur initiale de la surface du matériau (position en mm)
  • Profondeur Finale: Profondeur de la coupe voulu (valeur négative en mm)
  • Hauteur de passage: Profondeur maximale d'une passe en mm)
  • Coupe d'abord à la hauteur de la surface: Savoir si il fait le passage au niveau de la surface ou non.
Profils

Il permet de prendre en compte de rayon de l'outil et génère un tracer plus grand ou plus petit.

  • Nom: Pour garder en mémoire des paramètres
  • Fraise: Choisir la fraise à prendre en compte
  • Direction: Choisir si on veut un offset à l’intérieur ou extérieur de l'objet sélectionné.
  • Distance supplémentaire: Choisir si l'on veut augmenter l'offset de l'outil par rapport au rayon de la l'outil.
  • Surcoupe: (Aucune importance)
Poche

Permet de remplir l'objet de passages, donc d'usiner tout l’intérieur d'un objet.

  • Nom: Pour garder en mémoire des paramètres
  • Fraise: Choisir l'outil utilisé, notamment le diamètre.
Percer

Permet de faire des perçages Honnêtement je n'ai pas compris à quoi ça sert puisqu'on peu les faire manuellement à suffisamment de précision..

Attaches

Permet de créer des attaches, dans les faits il génère des espaces dans le quel la fraise ne coupera pas. Donc il faut généralement l'executer pour la dernière passe.

  • Nom: Pour garder en mémoire des paramètres.
  • Nombre d'attaches: elles se répartissent toutes seules sur le chemin.
  • Distance minimum entre deux attaches: Cela correspond à la distance en ligne droite entre le centre de deux attaches.
  • Dx:Taille de la largeur des attaches (mm).
  • Dy:Taille de la longueur des attaches (mm).
  • Hauteur: Hauteur de l'attache (mm)
Driller

Permet de faire des perçages en suivant l'objet sélectionné

On règle:

  • Nom: Pour garder en mémoire des paramètres.
  • Distance entre les trous: c'est la distance entre chaque centre de trou (mm)
  • Profondeur finale: Des trous (mm)
  • Palier: Profondeur de une passe (mm)
  • Durée de temporisation: Pause entre deux passes (s)
Flatten

Permet de générer surfaçage rectangulaire sur une surface. Il prend en compte le diamètre de l'outil sélectionné dans la database fraise.

  • Départ: Définit les cordonnées de début de surfaçage (mm)
  • Largeur et Hauteur à surfacer: Définit la longueur et la largeur suivant X et Y de la zone à surfacer (mm).
  • Profondeur à surfacer: définit la profondeur de la surface (mm)
  • Trame de bordure: active ou non le passage de la fraise sur le bord de la zone définit.
  • Direction de coupe: (Aucune importance pour le moment)
  • Type de poche: Offset pour des rectangles imbriqué et Raster pour faire des zig-zags.
Tile

Permet de répéter le motif sélectionné suivant X et Y

  • Nom: Pour garder en mémoire des paramètres.
  • Nx: Nombre de motifs suivant X
  • Ny: Nombre de motifs suivant Y
  • Dx: Espace entre chaque motifs suivant X (mm)
  • Dy: Espace entre chaque motifs suivant Y (mm)
Bowl

Permet de générer un bol (demi sphère) il utilise les paramètres de diamètre de fraise et de profondeurs dans la Database.

  • Nom: Pour garder en mémoire des paramètres.
  • Diamètre: diamètre de la sphere en (mm)
  • Résolution: Ajuste la finesse de réalisation (°)
  • Progressif: active ou non une interpolation progressive ou non de la réalisation du bol.
Heightmap

Permet de transformer une image en niveaux de gris en gcode 3D. Il utilise les paramètres de la fraise dans la database

  • Nom: Pour garder en mémoire des paramètres.
  • Profondeur de travail: Profondeur maximale voulue
  • Taille maximum: Sélectionne l'échelle de l'image, par X ou Y selon la valeur maximale donnée (mm)
  • Scanner: Choisi la direction des passes, X, Y ou XY
  • ScanDir: Choisi le sens des passes, positif ou négatif ou les deux
  • Coupe du Haut: ??
  • Coupe du bord: Fait une découpe sur tout le tour de l'image.
  • Inverser: Inverse les niveaux de gris du fichier. Donc l’intérieur et l’extérieur de l'image.
  • Single pass: Déactive le passage par passe et n'en fait qu'une seule.
  • Image à graver: Choisir l'image en png
Box

Génère des gcode de boites en découpant dans une plaque.

  • Nom: Pour garder en mémoire des paramètres.
  • Dx, Dy, Dz: Dimension de la boite
  • Nx, Ny, Nz: Nombres de dents suivants les axes.
  • Profil: ?
  • Surcoupe: ?
  • Couper: ?
Text

Génère des gcodes de texte de toutes les polices.

  • Nom: Pour garder en mémoire des paramètres.
  • Texte à générer: Écrire son texte ici
  • Profondeur de travail: Profondeur de coupe suivant z (mm)
  • Taille de la police: en mm
  • Fichier de la police: Sélectionne le fichier contenant la police
  • Image vers Ascii: Sélectionne une image pour écrire le texte
  • Largeur des caractères de l'image: Choisi la taille de la police si le texte viens d'une image
Gear

Génère des gcode d'engrenages

  • Nom: Pour garder en mémoire des paramètres
  • Nombre de dents: de l'engrenage
  • Angle de pression: permet de changer la forme de l'engrenage (°)
  • Pas d'une dent: Choisi le pas entre chaque dent (mm)
Halftone
Sketch
Midi2CNC
Spirograph
Pyrograph

Éditeur

Dans l'onglet "Editor"

Sélection Edit Order Déplacement Transformation Type d'usinage (conventionnel ...)

Maintenance de bCNC

Dernière mise à jour: 05/2016 par Quentin

Problèmes identifiés

  • Au dela de 80 000 ligne de gcode, BCNC ne les affiches plus mais il les lit correctement au lancement de l'usinage ce qui pose un problème pour le cadre rose et son positionnement.

Modification faites pour PlateformeC

2 modif python

Amélioration à prévoir

  • Réglage de la vitesse de rotation dans les gcodes (autrement qu'avec M3 Sxxx)
  • Permettre la pause puis utilisation, puis reprise.
  • Arret d'urgence => Arret bCNC ?? (pb: bCNC tourne toujours après l'arret d'urgence)
  • Ajouter une variable dans les paramétrages pour, changer la commande de démarrage du laser (histoire que ça sois modulable pour tout les utilisateur de bCNC)
  • Ajouter une variable pour le réglage de la vitesse de la broche (avoir une règle de trois, pour les utilisateurs ayant une commande qui fonctionne autrement que en tr/min)


Smoothie

Ligne grbl_enable dans le fichier config de la smoothie (firmware récent requis (04/2016))