Outils pour utilisateurs

Outils du site


cnc

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
cnc [2018/11/28 12:42] sergecnc [2018/11/28 12:49] – [Contrôle avec un Joystick] serge
Ligne 1: Ligne 1:
 ======CNC====== ======CNC======
- 
-<WRAP center round box 60%> 
 {{:tag:install-cnc.jpg?400|}} {{:tag:install-cnc.jpg?400|}}
-</WRAP> 
  
 ===== CNC 6040 ===== ===== CNC 6040 =====
- +Après quelques recherches cette machine se nommerai CNC 6040, quelques spécifications sont disponibles  [[http://mambohead.com/wp-content/uploads/2010/12/CNC-6040-Router-Engraver-System-Installation-Manual.pdf|ici]].
-Après quelques recherches cette machine se nommerai CNC 6040, quelques spécifications sont disponibles [[http://mambohead.com/wp-content/uploads/2010/12/CNC-6040-Router-Engraver-System-Installation-Manual.pdf|ici]].+
  
 ==== Caractéristiques ==== ==== Caractéristiques ====
- 
   * Zone de travail effectif 400x600x75   * Zone de travail effectif 400x600x75
   * Broche à refroidissement liquide   * Broche à refroidissement liquide
Ligne 19: Ligne 14:
 ==== Qu'est-ce qu'il y a dedans? ==== ==== Qu'est-ce qu'il y a dedans? ====
  
-''1 alimentation 24V 10A S-250-24 de la marque SUWEI''\\ +  * 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 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...''+  1 platine de commande des moteurs X Y Z dont la doc est plutôt inconnue... des ponts en H quoi...
  
 {{:tag:CommandeCNC.JPG?300}} {{:tag:CarteCNC.JPG?300}} {{:tag:VariateurCNC.JPG?300}} {{:tag:CommandeCNC.JPG?300}} {{:tag:CarteCNC.JPG?300}} {{:tag:VariateurCNC.JPG?300}}
  
 ===== Fonctionnement sous linux ===== ===== Fonctionnement sous linux =====
- 
 ==== linuxCNC ==== ==== 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]]\\ 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 ==== ==== Installation du nouveau système ====
- 
 === Sudo === === Sudo ===
 +Mise en place de Sudo, ouvrir un terminal avec les doit administrateurs
  
-mise en place de Sudo, ouvrir un terminal avec les doit administrateurs +  adduser cnc sudo 
- +  visudo
-''#adduser cnc sudo''\\ +
-''#visudo''+
  
 ajouter la ligne ajouter la ligne
  
-''cnc     ALL=(ALL:ALL) ALL''+  cnc     ALL=(ALL:ALL) ALL
  
 ctrl o puis ctrl x ctrl o puis ctrl x
  
-''$sudo test''+  sudo test
  
 si tout va bien, mot de passe et pas de message d'erreur si tout va bien, mot de passe et pas de message d'erreur
Ligne 53: Ligne 43:
 === Recherche rapide dans synaptic === === Recherche rapide dans synaptic ===
  
-''sudo apt-get install apt-xapian-index''\\ +  sudo apt-get install apt-xapian-index 
-''sudo update-apt-xapian-index -vf''+  sudo update-apt-xapian-index -vf
  
 === Installation de inkscape et dépendances === === Installation de inkscape et dépendances ===
  
-''sudo apt-get install inkscape python-lxml''+  sudo apt-get install inkscape python-lxml
  
 === Ça marche !!! === === Ça marche !!! ===
Ligne 68: Ligne 58:
 fichiers temporaires {{CNC-6040.ini.zip}} fichiers temporaires {{CNC-6040.ini.zip}}
  
-Quelques sources :\\ +Quelques sources : 
-http://linuxcnc.org/\\ +  http://linuxcnc.org/ 
-http://blog.f1oat.org/linuxcnc/\\ +  http://blog.f1oat.org/linuxcnc/ 
-http://www.roboticus.org/cnc-robotique/60-emcs-une-solution-open-source-pour-la-cnc\\ +  http://www.roboticus.org/cnc-robotique/60-emcs-une-solution-open-source-pour-la-cnc
  
 ===== Contrôle avec un Joystick ===== ===== Contrôle avec un Joystick =====
 +{{:tag:CNC-gamepad.png?400}}
  
-\\ 
-{{:tag:CNC-gamepad.png?400}}\\ 
 *Voilà les caractéristique de notre joystick selon la commande : less /proc/bus/input/devices *Voilà les caractéristique de notre joystick selon la commande : less /proc/bus/input/devices
- +<code> 
-''I: Bus=0003 Vendor=06a3 Product=040b Version=0100''\\ +I: Bus=0003 Vendor=06a3 Product=040b Version=0100  \\ 
-''N: Name="Saitek P990 Dual Analog Pad"''\\ +N: Name="Saitek P990 Dual Analog Pad"  \\ 
-''P: Phys=usb-0000:00:1d.2-1/input0''\\ +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''\\ +S: Sysfs=/devices/pci0000:00/0000:00:1d.2/usb4/4-1/4-1:1.0/input/input4  \\ 
-''U: Uniq=''\\ +U: Uniq=  \\ 
-''H: Handlers=event4 js0 ''\\ +H: Handlers=event4 js0   \\ 
-''B: EV=1b''\\ +B: EV=1b  \\ 
-''B: KEY=3fff 0 0 0 0 0 0 0 0 0''\\ +B: KEY=3fff 0 0 0 0 0 0 0 0 0  \\ 
-''B: ABS=30027''\\ +B: ABS=30027  \\ 
-''B: MSC=10'' +B: MSC=10  
 +</code>
 ==== Configuration ==== ==== Configuration ====
  
   * Ajouter les ligne suivante dans le fichier .hal de la machine   * Ajouter les ligne suivante dans le fichier .hal de la machine
  
-'' # for remote joypad''\\ +<code> 
-''loadusr -W hal_input -KRAL Dual''+ # for remote joypad  \\ 
 +loadusr -W hal_input -KRAL Dual  
  
-  * Ajouter la ligne suivante dans le fichier .ini dans la partie [HAL]+* Ajouter la ligne suivante dans le fichier .ini dans la partie [HAL]
  
-''HALUI = halui''+HALUI = halui  
  
-  * Voilà le fichier de configuration de la manette de jeu, celui-ci se nomme {{Custom_postgui.hal.zip|custom_postgui.hal}} (il suffit de renommer le fichier sans le .zip)+* Voilà le fichier de configuration de la manette de jeu, celui-ci se nomme {{Custom_postgui.hal.zip|custom_postgui.hal}} (il suffit de renommer le fichier sans le .zip)
  
-''# Inclure vos commandes HAL personnalisées ici''\\ +# 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é.''\\ +# 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'']]\\ +#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://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''\\ +#http://www.linuxcnc.org/docs/2.5/html/gui/halui.html#sec:Halui-pin-reference  \\ 
-''#https://www.youtube.com/watch?v=i0nB1kCrGEc''\\ +#https://www.youtube.com/watch?v=i0nB1kCrGEc  \\ 
-''#''\\ + \\ 
-''sets spindle-at-speed true''\\ +sets spindle-at-speed true  \\ 
-''#''\\ + \\ 
-''#Jog-Speed/Vitesse de déplacement''\\ +#Jog-Speed/Vitesse de déplacement  \\ 
-''loadrt or2 count=2''\\ +loadrt or2 count=2  \\ 
-''loadrt mux8 count=1''\\ +loadrt mux8 count=1  \\ 
-''loadrt toggle count=2''\\ +loadrt toggle count=2  \\ 
-''loadrt not count=4 ''\\ +loadrt not count=4   \\ 
-''#''\\ + \\ 
-''#Fonctions utilisées''\\ +#Fonctions utilisées  \\ 
-''addf or2.0 servo-thread''\\ +addf or2.0 servo-thread  \\ 
-''addf or2.1 servo-thread''\\ +addf or2.1 servo-thread  \\ 
-''addf mux8.0 servo-thread''\\ +addf mux8.0 servo-thread  \\ 
-''addf toggle.0 servo-thread''\\ +addf toggle.0 servo-thread  \\ 
-''addf toggle.1 servo-thread''\\ +addf toggle.1 servo-thread  \\ 
-''addf not.0 servo-thread ''\\ +addf not.0 servo-thread   \\ 
-''addf not.1 servo-thread''\\ +addf not.1 servo-thread  \\ 
-''addf not.2 servo-thread''\\ +addf not.2 servo-thread  \\ 
-''#''\\ + \\ 
-''# set the jog speed for the joypad again use numbers that make sense for your machine''\\ +# set the jog speed for the joypad again use numbers that make sense for your machine  \\ 
-''# Différentes vitesse en fonction dese boutons disponnibles''\\ +# 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.in0 0 # this one must be 0 to prevent motion unless a button is pressed  \\ 
-''setp mux8.0.in1 25''\\ +setp mux8.0.in1 25  \\ 
-''setp mux8.0.in2 100''\\ +setp mux8.0.in2 100  \\ 
-''setp mux8.0.in3 300''\\ +setp mux8.0.in3 300  \\ 
-''setp mux8.0.in4 800''\\ +setp mux8.0.in4 800  \\ 
-''setp mux8.0.in5 0''\\ +setp mux8.0.in5 0  \\ 
-''setp mux8.0.in6 0''\\ +setp mux8.0.in6 0  \\ 
-''setp mux8.0.in7 0''\\ +setp mux8.0.in7 0  \\ 
-''#''\\ + \\ 
-''# the following does the magic of setting the jog speeds/Script magique de changement de vitesse''\\ +# 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-slow or2.0.in0 input.0.btn-joystick  \\ 
-''net remote-speed-medium or2.1.in0 input.0.btn-thumb''\\ +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 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-1 mux8.0.sel0 <= or2.0.out #vitesse1  \\ 
-''net joy-speed-2 mux8.0.sel1 <= or2.1.out #vitesse2''\\ +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-3 mux8.0.sel2 <= input.0.btn-top #vitesse3  \\ 
-''#''\\ + \\ 
-''net joy-speed-final halui.jog-speed <= mux8.0.out #vitesse4''\\ +net joy-speed-final halui.jog-speed <= mux8.0.out #vitesse4  \\ 
-''############################''\\ +############################  \\ 
-''#Axis/Déplacement selon les joystick implémentés''\\ +#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-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-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''\\ +net joy-z-jog halui.jog.2.analog <= input.0.abs-y-position #axeZ  \\ 
-''#''\\ + \\ 
-''# Revert axis''\\ +# Revert axis  \\ 
-''setp input.0.abs-hat0y-scale -1 #inversion de l'axe Y''\\ +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''\\ +setp input.0.abs-y-scale -127.5 #inversion de l'axe Z  \\ 
-''#############''\\ +#############  \\ 
-''#Control CNC#''\\ +#Control CNC#  \\ 
-''#############''\\ +#############  \\ 
-''#run/stop''\\ +#run/stop  \\ 
-''net joy-run-auto input.0.key-300 => toggle.0.in halui.mode.auto''\\ +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 => halui.program.run  \\ 
-''net run-link toggle.0.out => not.1.in''\\ +net run-link toggle.0.out => not.1.in  \\ 
-''net stop-prog halui.program.stop => not.1.out halui.mode.manual''\\ +net stop-prog halui.program.stop => not.1.out halui.mode.manual  \\ 
-''##############################''\\ +##############################  \\ 
-''#machine on/off''\\ +#machine on/off  \\ 
-''net joy-machine-off halui.machine.off <= input.0.btn-base4''\\ +net joy-machine-off halui.machine.off <= input.0.btn-base4  \\ 
-''net joy-machine-on halui.machine.on <= input.0.btn-base3''\\ +net joy-machine-on halui.machine.on <= input.0.btn-base3  \\ 
-''##############################''\\ +##############################  \\ 
-''#machine pause/resume''\\ +#machine pause/resume  \\ 
-''net joy-run-pause input.0.key-301 => toggle.1.in ''\\ +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-link not.2.in <= toggle.1.out => halui.program.pause  \\ 
-''net pause-resume not.2.out => halui.program.resume''\\ +net pause-resume not.2.out => halui.program.resume  \\ 
-''################################''\\ +################################  \\ 
-''#POM des axes''\\ +#POM des axes  \\ 
-''net joy-home-x halui.joint.0.home <= input.0.btn-base # retour maison axe X''\\ +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-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''\\ +net joy-home-z halui.joint.2.home <= input.0.btn-base2 # retour maison axe Z  \\ 
-''#############################################################################''+#############################################################################   
 +</code>
  
-sources+**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://wiki.linuxcnc.org/cgi-bin/wiki.pl?Using_A_Joypad_To_Move_Your_CNC_Machine\\
Ligne 190: Ligne 180:
   * https://www.youtube.com/watch?v=i0nB1kCrGEc   * https://www.youtube.com/watch?v=i0nB1kCrGEc
  
 +{{tag>fraiseuse}}
  
- 
-{{tag>fraiseuse}} 
cnc.txt · Dernière modification : 2020/10/20 11:18 de serge