CNC

De Centre de Ressources Numériques - Labomedia
Aller à : navigation, rechercher
Install-cnc.JPG

CNC 6040

Après quelques recherches cette machine se nommerai CNC 6040, quelques spécifications sont disponibles ici.

Caractéristiques

  • Zone de travail effectif 400x600x75
  • Broche à refroidissement liquide
  • Diamètre de queue d'outils 8mm, 6mm, 5mm; 4mm, 3.175mm

Outils

Usages et précautions

  • Pince et écrou de serrage

Pour un serrage optimal il est important de vérifier le bon positionnement de la fraise dans la pince. La queue doit affleurer le bout de la pince. Pour cela on peut marquer la fraise pour ne pas avoir à sortir la pince à chaque changement d'outils.
Pour placer la pince dans l’écrou de serrage il faut incliner légèrement la pince pour quelle ce positionne correctement dans l'écrou. Il y à un ergot dans l'écrou qui permet d'ajuster correctement l'ensemble.

pince et fraise
pince et écrou de serrage



Quel fraise pour quel matériau

  • Fraise 1 dent hélicoïdale (finition) -> plexiglas, PVC et autres matières plastique
  • Fraise 2 dents hélicoïdales (surfaçage rapide) -> bois, plastiques, aluminium
  • Fraise 2 dents droites (rainurage) -> bois
  • Fraise 3 dents hélicoïdales -> aluminium, cuivre, laiton, plastiques durs
  • Fraise 4 dents -> bois ébauche rapide
  • Fraise denture diamant -> fibre de verre, fibre de carbone, bois, pcb
  • Fraise spirale denté -> fibre de verre, fibre de carbone, pcb

Outils disponibles

  • queue diamètre 3.17mm (1/8 pouces)
-1 dent : 3.17mm, 2mm, 1.4mm
-2 dents hélicoïdales : 3.17mm(x3), 2.5mm, 2mm, 1.5mm
-2 dents droites : 3.17mm (x2)
-diamants : 3.17mm, 2.5mm
-javelot : 45°, 60°, 90°
  • queue diamètre 6mm
-1 dent : 6mm
-2 dents hélicoïdales : 6mm
-2 dents droites : 6mm
-3 dents hélicoïdales : 6mm, 5mm, 3mm
  • queue diamètre 8mm
-2 dents droites : 8mm


Qu'est-ce qu'il y a dedans?

1 alimentation 24V 10A S-250-24 de la marque SUWEI
1 variateur de vitesse pour le moteur de broche G5M-2.2S2-1A de la marque ZECHUAN
1 platine de commande des moteurs X Y Z dont la doc est plutôt inconnue... des ponts en H quoi...

CommandeCNC.JPG CarteCNC.JPG VariateurCNC.JPG

Fonctionnement sous linux

linuxCNC

Depuis la mise à disposition de linuxcnc version debian wheezy, nous allons peut-être avoir quelque chose qui roule, un genre de workflow efficace avec Heekscnc

Installation du nouveau système

Sudo

mise en place de Sudo, ouvrir un terminal avec les doit administrateurs

#adduser cnc sudo
#visudo

ajouter la ligne

cnc     ALL=(ALL:ALL) ALL

ctrl o puis ctrl x

$sudo test

si tout va bien, mot de passe et pas de message d'erreur

Recherche rapide dans synaptic

sudo apt-get install apt-xapian-index
sudo update-apt-xapian-index -vf

Installation de inkscape et dépendances

sudo apt-get install inkscape python-lxml

Ça marche !!!

Premiers test avec les configurations de notre ancien système sous ubuntu rtai 10.04, la machine répond bien!!!


bientôt les configurations...

fichiers temporaires http://wiki.labomedia.org/index.php/Fichier:CNC-6040.ini.zip

Quelques sources :
http://linuxcnc.org/
http://blog.f1oat.org/linuxcnc/
http://www.roboticus.org/cnc-robotique/60-emcs-une-solution-open-source-pour-la-cnc

Contrôle avec un Joystick


CNC-gamepad.png

  • Voilà les caractéristique de notre joystick selon la commande : less /proc/bus/input/devices
I: Bus=0003 Vendor=06a3 Product=040b Version=0100
N: Name="Saitek P990 Dual Analog Pad"
P: Phys=usb-0000:00:1d.2-1/input0
S: Sysfs=/devices/pci0000:00/0000:00:1d.2/usb4/4-1/4-1:1.0/input/input4
U: Uniq=
H: Handlers=event4 js0 
B: EV=1b
B: KEY=3fff 0 0 0 0 0 0 0 0 0
B: ABS=30027
B: MSC=10

Configuration

  • Ajouter les ligne suivante dans le fichier .hal de la machine
 # for remote joypad
loadusr -W hal_input -KRAL Dual
  • Ajouter la ligne suivante dans le fichier .ini dans la partie [HAL]
HALUI = halui
  • Voilà le fichier de configuration de la manette de jeu, celui-ci se nomme custom_postgui.hal (il suffit de renommer le fichier sans le .zip)
# Inclure vos commandes HAL personnalisées ici
# Les commandes contenues dans ce fichier seront lancées après que l'interface graphique AXIS (PyVCP inclus) aura démarré.
#
#Sources :  http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Simple_Remote_Pendant
#http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Using_A_Joypad_To_Move_Your_CNC_Machine
#http://www.linuxcnc.org/docs/2.5/html/gui/halui.html#sec:Halui-pin-reference
#https://www.youtube.com/watch?v=i0nB1kCrGEc
#
sets spindle-at-speed true
#
#Jog-Speed/Vitesse de déplacement
loadrt or2 count=2
loadrt mux8 count=1
loadrt toggle count=2
loadrt not count=4 
#
#Fonctions utilisées
addf or2.0 servo-thread
addf or2.1 servo-thread
addf mux8.0 servo-thread
addf toggle.0 servo-thread
addf toggle.1 servo-thread
addf not.0 servo-thread 
addf not.1 servo-thread
addf not.2 servo-thread
#
# set the jog speed for the joypad again use numbers that make sense for your machine
# Différentes vitesse en fonction dese boutons disponnibles
setp mux8.0.in0 0 # this one must be 0 to prevent motion unless a button is pressed
setp mux8.0.in1 25
setp mux8.0.in2 100
setp mux8.0.in3 300
setp mux8.0.in4 800
setp mux8.0.in5 0
setp mux8.0.in6 0
setp mux8.0.in7 0
#
# the following does the magic of setting the jog speeds/Script magique de changement de vitesse
net remote-speed-slow or2.0.in0 input.0.btn-joystick
net remote-speed-medium or2.1.in0 input.0.btn-thumb
net remote-speed-fast or2.0.in1 or2.1.in1 input.0.btn-thumb2
#
net joy-speed-1 mux8.0.sel0 <= or2.0.out #vitesse1
net joy-speed-2 mux8.0.sel1 <= or2.1.out #vitesse2
net joy-speed-3 mux8.0.sel2 <= input.0.btn-top #vitesse3
#
net joy-speed-final halui.jog-speed <= mux8.0.out #vitesse4
############################
#Axis/Déplacement selon les joystick implémentés
net joy-x-jog halui.jog.0.analog <= input.0.abs-hat0x-position #axe X
net joy-y-jog halui.jog.1.analog <= input.0.abs-hat0y-position #axe Y
net joy-z-jog halui.jog.2.analog <= input.0.abs-y-position #axeZ
#
# Revert axis
setp input.0.abs-hat0y-scale -1 #inversion de l'axe Y
setp input.0.abs-y-scale -127.5 #inversion de l'axe Z
#############
#Control CNC#
#############
#run/stop
net joy-run-auto input.0.key-300 => toggle.0.in halui.mode.auto
net run-link toggle.0.out => halui.program.run
net run-link toggle.0.out => not.1.in
net stop-prog halui.program.stop => not.1.out halui.mode.manual
##############################
#machine on/off
net joy-machine-off halui.machine.off <= input.0.btn-base4
net joy-machine-on halui.machine.on <= input.0.btn-base3
##############################
#machine pause/resume
net joy-run-pause input.0.key-301 => toggle.1.in 
net pause-link not.2.in <= toggle.1.out => halui.program.pause
net pause-resume not.2.out => halui.program.resume
################################
#POM des axes
net joy-home-x halui.joint.0.home <= input.0.btn-base # retour maison axe X
net joy-home-y halui.joint.1.home <= input.0.btn-top2 # retour maison axe Y
net joy-home-z halui.joint.2.home <= input.0.btn-base2 # retour maison axe Z
#############################################################################

sources : http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Simple_Remote_Pendant
http://wiki.linuxcnc.org/cgi-bin/wiki.pl?Using_A_Joypad_To_Move_Your_CNC_Machine
http://www.linuxcnc.org/docs/2.5/html/gui/halui.html#sec:Halui-pin-reference
https://www.youtube.com/watch?v=i0nB1kCrGEc