Après quelques recherches cette machine se nommerai CNC 6040, quelques spécifications sont disponibles ici.
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
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
sudo apt-get install apt-xapian-index sudo update-apt-xapian-index -vf
sudo apt-get install inkscape python-lxml
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 :
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
# for remote joypad loadusr -W hal_input -KRAL Dual
HALUI = halui
# 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?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: