Outils pour utilisateurs

Outils du site


cnc

Ceci est une ancienne révision du document !


CNC

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
  • Pince de serrage de type ER11 A (Collet en anglais)
  • Écrou de serrage de type M14

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



*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

cnc.1538494282.txt.gz · Dernière modification: 2018/10/02 17:31 de guillaume