|
From: John T. <gi...@gi...> - 2011-12-17 15:39:18
|
Docs: markup fixes Signed-off-by: John Thornton <jth...@gn...> http://git.linuxcnc.org/?p=emc2.git;a=commitdiff;h=982af1f --- docs/src/config/stepper.txt | 100 ++++++---- docs/src/config/stepper_de.txt | 100 ++++++---- docs/src/config/stepper_es.txt | 100 ++++++---- docs/src/config/stepper_pl.txt | 100 ++++++---- docs/src/drivers/AX5214H.txt | 21 ++- docs/src/drivers/AX5214H_de.txt | 21 ++- docs/src/drivers/AX5214H_es.txt | 21 ++- docs/src/drivers/AX5214H_pl.txt | 20 +- docs/src/hal/pyvcp.txt | 253 +++++++++++++----------- docs/src/hal/pyvcp_de.txt | 254 +++++++++++++----------- docs/src/hal/pyvcp_es.txt | 254 +++++++++++++----------- docs/src/hal/pyvcp_examples.txt | 387 ++++++++++++++++++------------------ docs/src/hal/pyvcp_examples_de.txt | 387 ++++++++++++++++++------------------ docs/src/hal/pyvcp_examples_es.txt | 387 ++++++++++++++++++------------------ docs/src/hal/pyvcp_examples_pl.txt | 387 ++++++++++++++++++------------------ docs/src/hal/pyvcp_pl.txt | 255 +++++++++++++----------- 16 files changed, 1630 insertions(+), 1417 deletions(-) diff --git a/docs/src/config/stepper.txt b/docs/src/config/stepper.txt index 82f1663..60f9439 100644 --- a/docs/src/config/stepper.txt +++ b/docs/src/config/stepper.txt @@ -1,4 +1,7 @@ -= Basic Configuration +:lang: en +:toc: + += Stepper Configuration[[stepper-config]] == Introduction[[sec:Introduction]] @@ -20,7 +23,7 @@ configured properly so the motors don't stall or lose steps. Most of this chapter is based on the sample config released along with EMC2. The config is called stepper(((stepper))), and usually it is -found in `/etc/emc2/sample-configs/stepper`. +found in '/etc/emc2/sample-configs/stepper'. == Maximum step rate[[sec:Maximum-step-rate]](((step rate))) @@ -56,11 +59,14 @@ HAL. As it is described in the HAL Introduction and tutorial, we have signals, pins and parameters inside the HAL. -The ones relevant for our pinout are: footnote:[Note: we are only -presenting one axis to keep it short, all others are similar.] +NOTE: We are presenting one axis to keep it short, all others are similar. + +The ones relevant for our pinout are: - signals: Xstep, Xdir & Xen - pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- +signals: Xstep, Xdir & Xen +pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- Depending on what you have chosen in your .ini file you are using either standard_pinout.hal or xylotex_pinout.hal. These are two files @@ -71,7 +77,7 @@ on we'll investigate the standard_pinout.hal. This file contains several HAL commands, and usually looks like this: ----------------------------------------- +---- # standard pinout config file for 3-axis steppers # using a parport for I/O # @@ -150,25 +156,25 @@ net spindle-on motion.spindle-on => parport.0.pin-09-out # net Xlimits parport.0.pin-13-in => axis.0.neg-lim-sw-in axis.0.pos-lim-sw-in ----------------------------------------- +---- The lines starting with '#' are comments, and their only purpose is to guide the reader through the file. -=== Overview of the standard_pinout.hal[[sub:Overview-standard_pinout.hal]] +=== Overview[[sub:Overview-standard_pinout.hal]] There are a couple of operations that get executed when the -standard_pinout.hal gets executed / interpreted: +standard_pinout.hal gets executed/interpreted: - . The Parport driver gets loaded (see the Parport section of +* The Parport driver gets loaded (see the Parport section of the HAL Manual for details) - . The read & write functions of the parport driver get assigned to the +* The read & write functions of the parport driver get assigned to the base thread footnote:[the fastest thread in the EMC2 setup, usually the code gets executed every few tens of microseconds] - . The step & direction signals for axes X,Y,Z get linked to pins on the +* The step & direction signals for axes X,Y,Z get linked to pins on the parport - . Further I/O signals get connected (estop loopback, toolchanger loopback) - . A spindle-on signal gets defined and linked to a parport pin +* Further I/O signals get connected (estop loopback, toolchanger loopback) +* A spindle-on signal gets defined and linked to a parport pin === Changing the standard_pinout.hal[[sub:Changing-standard_pinout.hal]] @@ -179,44 +185,52 @@ If you want for example to change the pin for the X-axis Step & Directions signals, all you need to do is to change the number in the 'parport.0.pin-XX-out' name: - net Xstep parport.0.pin-03-out - net Xdir parport.0.pin-02-out +---- +net Xstep parport.0.pin-03-out +net Xdir parport.0.pin-02-out +---- can be changed to: - net Xstep parport.0.pin-02-out - net Xdir parport.0.pin-03-out +---- +net Xstep parport.0.pin-02-out +net Xdir parport.0.pin-03-out +---- -or basically any other numbers you like. +or basically any other 'out' pin you like. Hint: make sure you don't have more than one signal connected to the same pin. -=== Changing the polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) +=== Changing polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) If external hardware expects an âactive lowâ signal, set the -corresponding `-invert` parameter. For instance, to invert the spindle +corresponding '-invert' parameter. For instance, to invert the spindle control signal: - setp parport.0.pin-09-invert TRUE +---- +setp parport.0.pin-09-invert TRUE +---- === Adding PWM Spindle Speed Control[[sub:PWM-Spindle-Speed]](((spindle speed control))) -If your spindle can be controlled by a PWM signal, use the `pwmgen` +If your spindle can be controlled by a PWM signal, use the 'pwmgen' component to create the signal: - loadrt pwmgen output_type=0 - addf pwmgen.update servo-thread - addf pwmgen.make-pulses base-thread - net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value - net spindle-on motion.spindle-on => pwmgen.0.enable - net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out - setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- +loadrt pwmgen output_type=0 +addf pwmgen.update servo-thread +addf pwmgen.make-pulses base-thread +net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value +net spindle-on motion.spindle-on => pwmgen.0.enable +net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out +setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- This assumes that the spindle controller's response to PWM is simple: 0% PWM gives 0 RPM, 10% PWM gives 180 RPM, etc. If there is a minimum PWM required to get the spindle to turn, follow the example in the -'nist-lathe' sample configuration to use a `scale` component. +'nist-lathe' sample configuration to use a 'scale' component. === Adding an enable signal[[sub:Adding-enable-signal]](((enable signal))) @@ -226,7 +240,9 @@ defined signals called 'Xen', 'Yen', 'Zen'. To connect them use the following example: - net Xen parport.0.pin-08-out +---- +net Xen parport.0.pin-08-out +---- You can either have one single pin that enables all drives; or several, depending on the setup you have. Note, however, that usually @@ -234,20 +250,24 @@ when one axis faults, all the other drives will be disabled as well, so having only one enable signal / pin for all drives is a common practice. -=== Adding an external ESTOP button(((ESTOP))) +=== External ESTOP button(((ESTOP))) -As you can see in <<sub:standard_pinout.hal>> by default the stepper -configuration assumes no external ESTOP button. footnote:[An extensive -explanation of hooking up ESTOP circuitry is explained in -the wiki.linuxcnc.org and elsewhere in the Integrator Manual] +As you can see in the <<sub:standard_pinout.hal,standard_pinout.hal>> file +by default the stepper configuration assumes no external ESTOP button. +footnote:[An extensive explanation of hooking up ESTOP circuitry is explained +in the wiki.linuxcnc.org and elsewhere in the Integrator Manual] To add a simple external button you need to replace the line: - net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- with - net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- +net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- This assumes an ESTOP switch connected to pin 01 on the parport. As long as the switch will stay pushedfootnote:[make sure you use a diff --git a/docs/src/config/stepper_de.txt b/docs/src/config/stepper_de.txt index 82f1663..ffc430e 100644 --- a/docs/src/config/stepper_de.txt +++ b/docs/src/config/stepper_de.txt @@ -1,4 +1,7 @@ -= Basic Configuration +:lang: de +:toc: + += Stepper Configuration[[stepper-config]] == Introduction[[sec:Introduction]] @@ -20,7 +23,7 @@ configured properly so the motors don't stall or lose steps. Most of this chapter is based on the sample config released along with EMC2. The config is called stepper(((stepper))), and usually it is -found in `/etc/emc2/sample-configs/stepper`. +found in '/etc/emc2/sample-configs/stepper'. == Maximum step rate[[sec:Maximum-step-rate]](((step rate))) @@ -56,11 +59,14 @@ HAL. As it is described in the HAL Introduction and tutorial, we have signals, pins and parameters inside the HAL. -The ones relevant for our pinout are: footnote:[Note: we are only -presenting one axis to keep it short, all others are similar.] +NOTE: We are presenting one axis to keep it short, all others are similar. + +The ones relevant for our pinout are: - signals: Xstep, Xdir & Xen - pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- +signals: Xstep, Xdir & Xen +pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- Depending on what you have chosen in your .ini file you are using either standard_pinout.hal or xylotex_pinout.hal. These are two files @@ -71,7 +77,7 @@ on we'll investigate the standard_pinout.hal. This file contains several HAL commands, and usually looks like this: ----------------------------------------- +---- # standard pinout config file for 3-axis steppers # using a parport for I/O # @@ -150,25 +156,25 @@ net spindle-on motion.spindle-on => parport.0.pin-09-out # net Xlimits parport.0.pin-13-in => axis.0.neg-lim-sw-in axis.0.pos-lim-sw-in ----------------------------------------- +---- The lines starting with '#' are comments, and their only purpose is to guide the reader through the file. -=== Overview of the standard_pinout.hal[[sub:Overview-standard_pinout.hal]] +=== Overview[[sub:Overview-standard_pinout.hal]] There are a couple of operations that get executed when the -standard_pinout.hal gets executed / interpreted: +standard_pinout.hal gets executed/interpreted: - . The Parport driver gets loaded (see the Parport section of +* The Parport driver gets loaded (see the Parport section of the HAL Manual for details) - . The read & write functions of the parport driver get assigned to the +* The read & write functions of the parport driver get assigned to the base thread footnote:[the fastest thread in the EMC2 setup, usually the code gets executed every few tens of microseconds] - . The step & direction signals for axes X,Y,Z get linked to pins on the +* The step & direction signals for axes X,Y,Z get linked to pins on the parport - . Further I/O signals get connected (estop loopback, toolchanger loopback) - . A spindle-on signal gets defined and linked to a parport pin +* Further I/O signals get connected (estop loopback, toolchanger loopback) +* A spindle-on signal gets defined and linked to a parport pin === Changing the standard_pinout.hal[[sub:Changing-standard_pinout.hal]] @@ -179,44 +185,52 @@ If you want for example to change the pin for the X-axis Step & Directions signals, all you need to do is to change the number in the 'parport.0.pin-XX-out' name: - net Xstep parport.0.pin-03-out - net Xdir parport.0.pin-02-out +---- +net Xstep parport.0.pin-03-out +net Xdir parport.0.pin-02-out +---- can be changed to: - net Xstep parport.0.pin-02-out - net Xdir parport.0.pin-03-out +---- +net Xstep parport.0.pin-02-out +net Xdir parport.0.pin-03-out +---- -or basically any other numbers you like. +or basically any other 'out' pin you like. Hint: make sure you don't have more than one signal connected to the same pin. -=== Changing the polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) +=== Changing polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) If external hardware expects an âactive lowâ signal, set the -corresponding `-invert` parameter. For instance, to invert the spindle +corresponding '-invert' parameter. For instance, to invert the spindle control signal: - setp parport.0.pin-09-invert TRUE +---- +setp parport.0.pin-09-invert TRUE +---- === Adding PWM Spindle Speed Control[[sub:PWM-Spindle-Speed]](((spindle speed control))) -If your spindle can be controlled by a PWM signal, use the `pwmgen` +If your spindle can be controlled by a PWM signal, use the 'pwmgen' component to create the signal: - loadrt pwmgen output_type=0 - addf pwmgen.update servo-thread - addf pwmgen.make-pulses base-thread - net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value - net spindle-on motion.spindle-on => pwmgen.0.enable - net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out - setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- +loadrt pwmgen output_type=0 +addf pwmgen.update servo-thread +addf pwmgen.make-pulses base-thread +net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value +net spindle-on motion.spindle-on => pwmgen.0.enable +net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out +setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- This assumes that the spindle controller's response to PWM is simple: 0% PWM gives 0 RPM, 10% PWM gives 180 RPM, etc. If there is a minimum PWM required to get the spindle to turn, follow the example in the -'nist-lathe' sample configuration to use a `scale` component. +'nist-lathe' sample configuration to use a 'scale' component. === Adding an enable signal[[sub:Adding-enable-signal]](((enable signal))) @@ -226,7 +240,9 @@ defined signals called 'Xen', 'Yen', 'Zen'. To connect them use the following example: - net Xen parport.0.pin-08-out +---- +net Xen parport.0.pin-08-out +---- You can either have one single pin that enables all drives; or several, depending on the setup you have. Note, however, that usually @@ -234,20 +250,24 @@ when one axis faults, all the other drives will be disabled as well, so having only one enable signal / pin for all drives is a common practice. -=== Adding an external ESTOP button(((ESTOP))) +=== External ESTOP button(((ESTOP))) -As you can see in <<sub:standard_pinout.hal>> by default the stepper -configuration assumes no external ESTOP button. footnote:[An extensive -explanation of hooking up ESTOP circuitry is explained in -the wiki.linuxcnc.org and elsewhere in the Integrator Manual] +As you can see in the <<sub:standard_pinout.hal,standard_pinout.hal>> file +by default the stepper configuration assumes no external ESTOP button. +footnote:[An extensive explanation of hooking up ESTOP circuitry is explained +in the wiki.linuxcnc.org and elsewhere in the Integrator Manual] To add a simple external button you need to replace the line: - net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- with - net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- +net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- This assumes an ESTOP switch connected to pin 01 on the parport. As long as the switch will stay pushedfootnote:[make sure you use a diff --git a/docs/src/config/stepper_es.txt b/docs/src/config/stepper_es.txt index 82f1663..9f1a23d 100644 --- a/docs/src/config/stepper_es.txt +++ b/docs/src/config/stepper_es.txt @@ -1,4 +1,7 @@ -= Basic Configuration +:lang: es +:toc: + += Stepper Configuration[[stepper-config]] == Introduction[[sec:Introduction]] @@ -20,7 +23,7 @@ configured properly so the motors don't stall or lose steps. Most of this chapter is based on the sample config released along with EMC2. The config is called stepper(((stepper))), and usually it is -found in `/etc/emc2/sample-configs/stepper`. +found in '/etc/emc2/sample-configs/stepper'. == Maximum step rate[[sec:Maximum-step-rate]](((step rate))) @@ -56,11 +59,14 @@ HAL. As it is described in the HAL Introduction and tutorial, we have signals, pins and parameters inside the HAL. -The ones relevant for our pinout are: footnote:[Note: we are only -presenting one axis to keep it short, all others are similar.] +NOTE: We are presenting one axis to keep it short, all others are similar. + +The ones relevant for our pinout are: - signals: Xstep, Xdir & Xen - pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- +signals: Xstep, Xdir & Xen +pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- Depending on what you have chosen in your .ini file you are using either standard_pinout.hal or xylotex_pinout.hal. These are two files @@ -71,7 +77,7 @@ on we'll investigate the standard_pinout.hal. This file contains several HAL commands, and usually looks like this: ----------------------------------------- +---- # standard pinout config file for 3-axis steppers # using a parport for I/O # @@ -150,25 +156,25 @@ net spindle-on motion.spindle-on => parport.0.pin-09-out # net Xlimits parport.0.pin-13-in => axis.0.neg-lim-sw-in axis.0.pos-lim-sw-in ----------------------------------------- +---- The lines starting with '#' are comments, and their only purpose is to guide the reader through the file. -=== Overview of the standard_pinout.hal[[sub:Overview-standard_pinout.hal]] +=== Overview[[sub:Overview-standard_pinout.hal]] There are a couple of operations that get executed when the -standard_pinout.hal gets executed / interpreted: +standard_pinout.hal gets executed/interpreted: - . The Parport driver gets loaded (see the Parport section of +* The Parport driver gets loaded (see the Parport section of the HAL Manual for details) - . The read & write functions of the parport driver get assigned to the +* The read & write functions of the parport driver get assigned to the base thread footnote:[the fastest thread in the EMC2 setup, usually the code gets executed every few tens of microseconds] - . The step & direction signals for axes X,Y,Z get linked to pins on the +* The step & direction signals for axes X,Y,Z get linked to pins on the parport - . Further I/O signals get connected (estop loopback, toolchanger loopback) - . A spindle-on signal gets defined and linked to a parport pin +* Further I/O signals get connected (estop loopback, toolchanger loopback) +* A spindle-on signal gets defined and linked to a parport pin === Changing the standard_pinout.hal[[sub:Changing-standard_pinout.hal]] @@ -179,44 +185,52 @@ If you want for example to change the pin for the X-axis Step & Directions signals, all you need to do is to change the number in the 'parport.0.pin-XX-out' name: - net Xstep parport.0.pin-03-out - net Xdir parport.0.pin-02-out +---- +net Xstep parport.0.pin-03-out +net Xdir parport.0.pin-02-out +---- can be changed to: - net Xstep parport.0.pin-02-out - net Xdir parport.0.pin-03-out +---- +net Xstep parport.0.pin-02-out +net Xdir parport.0.pin-03-out +---- -or basically any other numbers you like. +or basically any other 'out' pin you like. Hint: make sure you don't have more than one signal connected to the same pin. -=== Changing the polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) +=== Changing polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) If external hardware expects an âactive lowâ signal, set the -corresponding `-invert` parameter. For instance, to invert the spindle +corresponding '-invert' parameter. For instance, to invert the spindle control signal: - setp parport.0.pin-09-invert TRUE +---- +setp parport.0.pin-09-invert TRUE +---- === Adding PWM Spindle Speed Control[[sub:PWM-Spindle-Speed]](((spindle speed control))) -If your spindle can be controlled by a PWM signal, use the `pwmgen` +If your spindle can be controlled by a PWM signal, use the 'pwmgen' component to create the signal: - loadrt pwmgen output_type=0 - addf pwmgen.update servo-thread - addf pwmgen.make-pulses base-thread - net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value - net spindle-on motion.spindle-on => pwmgen.0.enable - net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out - setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- +loadrt pwmgen output_type=0 +addf pwmgen.update servo-thread +addf pwmgen.make-pulses base-thread +net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value +net spindle-on motion.spindle-on => pwmgen.0.enable +net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out +setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- This assumes that the spindle controller's response to PWM is simple: 0% PWM gives 0 RPM, 10% PWM gives 180 RPM, etc. If there is a minimum PWM required to get the spindle to turn, follow the example in the -'nist-lathe' sample configuration to use a `scale` component. +'nist-lathe' sample configuration to use a 'scale' component. === Adding an enable signal[[sub:Adding-enable-signal]](((enable signal))) @@ -226,7 +240,9 @@ defined signals called 'Xen', 'Yen', 'Zen'. To connect them use the following example: - net Xen parport.0.pin-08-out +---- +net Xen parport.0.pin-08-out +---- You can either have one single pin that enables all drives; or several, depending on the setup you have. Note, however, that usually @@ -234,20 +250,24 @@ when one axis faults, all the other drives will be disabled as well, so having only one enable signal / pin for all drives is a common practice. -=== Adding an external ESTOP button(((ESTOP))) +=== External ESTOP button(((ESTOP))) -As you can see in <<sub:standard_pinout.hal>> by default the stepper -configuration assumes no external ESTOP button. footnote:[An extensive -explanation of hooking up ESTOP circuitry is explained in -the wiki.linuxcnc.org and elsewhere in the Integrator Manual] +As you can see in the <<sub:standard_pinout.hal,standard_pinout.hal>> file +by default the stepper configuration assumes no external ESTOP button. +footnote:[An extensive explanation of hooking up ESTOP circuitry is explained +in the wiki.linuxcnc.org and elsewhere in the Integrator Manual] To add a simple external button you need to replace the line: - net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- with - net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- +net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- This assumes an ESTOP switch connected to pin 01 on the parport. As long as the switch will stay pushedfootnote:[make sure you use a diff --git a/docs/src/config/stepper_pl.txt b/docs/src/config/stepper_pl.txt index 82f1663..1feb0f5 100644 --- a/docs/src/config/stepper_pl.txt +++ b/docs/src/config/stepper_pl.txt @@ -1,4 +1,7 @@ -= Basic Configuration +:lang: pl +:toc: + += Stepper Configuration[[stepper-config]] == Introduction[[sec:Introduction]] @@ -20,7 +23,7 @@ configured properly so the motors don't stall or lose steps. Most of this chapter is based on the sample config released along with EMC2. The config is called stepper(((stepper))), and usually it is -found in `/etc/emc2/sample-configs/stepper`. +found in '/etc/emc2/sample-configs/stepper'. == Maximum step rate[[sec:Maximum-step-rate]](((step rate))) @@ -56,11 +59,14 @@ HAL. As it is described in the HAL Introduction and tutorial, we have signals, pins and parameters inside the HAL. -The ones relevant for our pinout are: footnote:[Note: we are only -presenting one axis to keep it short, all others are similar.] +NOTE: We are presenting one axis to keep it short, all others are similar. + +The ones relevant for our pinout are: - signals: Xstep, Xdir & Xen - pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- +signals: Xstep, Xdir & Xen +pins: parport.0.pin-XX-out & parport.0.pin-XX-in +---- Depending on what you have chosen in your .ini file you are using either standard_pinout.hal or xylotex_pinout.hal. These are two files @@ -71,7 +77,7 @@ on we'll investigate the standard_pinout.hal. This file contains several HAL commands, and usually looks like this: ----------------------------------------- +---- # standard pinout config file for 3-axis steppers # using a parport for I/O # @@ -150,25 +156,25 @@ net spindle-on motion.spindle-on => parport.0.pin-09-out # net Xlimits parport.0.pin-13-in => axis.0.neg-lim-sw-in axis.0.pos-lim-sw-in ----------------------------------------- +---- The lines starting with '#' are comments, and their only purpose is to guide the reader through the file. -=== Overview of the standard_pinout.hal[[sub:Overview-standard_pinout.hal]] +=== Overview[[sub:Overview-standard_pinout.hal]] There are a couple of operations that get executed when the -standard_pinout.hal gets executed / interpreted: +standard_pinout.hal gets executed/interpreted: - . The Parport driver gets loaded (see the Parport section of +* The Parport driver gets loaded (see the Parport section of the HAL Manual for details) - . The read & write functions of the parport driver get assigned to the +* The read & write functions of the parport driver get assigned to the base thread footnote:[the fastest thread in the EMC2 setup, usually the code gets executed every few tens of microseconds] - . The step & direction signals for axes X,Y,Z get linked to pins on the +* The step & direction signals for axes X,Y,Z get linked to pins on the parport - . Further I/O signals get connected (estop loopback, toolchanger loopback) - . A spindle-on signal gets defined and linked to a parport pin +* Further I/O signals get connected (estop loopback, toolchanger loopback) +* A spindle-on signal gets defined and linked to a parport pin === Changing the standard_pinout.hal[[sub:Changing-standard_pinout.hal]] @@ -179,44 +185,52 @@ If you want for example to change the pin for the X-axis Step & Directions signals, all you need to do is to change the number in the 'parport.0.pin-XX-out' name: - net Xstep parport.0.pin-03-out - net Xdir parport.0.pin-02-out +---- +net Xstep parport.0.pin-03-out +net Xdir parport.0.pin-02-out +---- can be changed to: - net Xstep parport.0.pin-02-out - net Xdir parport.0.pin-03-out +---- +net Xstep parport.0.pin-02-out +net Xdir parport.0.pin-03-out +---- -or basically any other numbers you like. +or basically any other 'out' pin you like. Hint: make sure you don't have more than one signal connected to the same pin. -=== Changing the polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) +=== Changing polarity of a signal[[sub:Changing-the-polarity]](((signal polarity))) If external hardware expects an âactive lowâ signal, set the -corresponding `-invert` parameter. For instance, to invert the spindle +corresponding '-invert' parameter. For instance, to invert the spindle control signal: - setp parport.0.pin-09-invert TRUE +---- +setp parport.0.pin-09-invert TRUE +---- === Adding PWM Spindle Speed Control[[sub:PWM-Spindle-Speed]](((spindle speed control))) -If your spindle can be controlled by a PWM signal, use the `pwmgen` +If your spindle can be controlled by a PWM signal, use the 'pwmgen' component to create the signal: - loadrt pwmgen output_type=0 - addf pwmgen.update servo-thread - addf pwmgen.make-pulses base-thread - net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value - net spindle-on motion.spindle-on => pwmgen.0.enable - net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out - setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- +loadrt pwmgen output_type=0 +addf pwmgen.update servo-thread +addf pwmgen.make-pulses base-thread +net spindle-speed-cmd motion.spindle-speed-out => pwmgen.0.value +net spindle-on motion.spindle-on => pwmgen.0.enable +net spindle-pwm pwmgen.0.pwm => parport.0.pin-09-out +setp pwmgen.0.scale 1800 # Change to your spindleâs top speed in RPM +---- This assumes that the spindle controller's response to PWM is simple: 0% PWM gives 0 RPM, 10% PWM gives 180 RPM, etc. If there is a minimum PWM required to get the spindle to turn, follow the example in the -'nist-lathe' sample configuration to use a `scale` component. +'nist-lathe' sample configuration to use a 'scale' component. === Adding an enable signal[[sub:Adding-enable-signal]](((enable signal))) @@ -226,7 +240,9 @@ defined signals called 'Xen', 'Yen', 'Zen'. To connect them use the following example: - net Xen parport.0.pin-08-out +---- +net Xen parport.0.pin-08-out +---- You can either have one single pin that enables all drives; or several, depending on the setup you have. Note, however, that usually @@ -234,20 +250,24 @@ when one axis faults, all the other drives will be disabled as well, so having only one enable signal / pin for all drives is a common practice. -=== Adding an external ESTOP button(((ESTOP))) +=== External ESTOP button(((ESTOP))) -As you can see in <<sub:standard_pinout.hal>> by default the stepper -configuration assumes no external ESTOP button. footnote:[An extensive -explanation of hooking up ESTOP circuitry is explained in -the wiki.linuxcnc.org and elsewhere in the Integrator Manual] +As you can see in the <<sub:standard_pinout.hal,standard_pinout.hal>> file +by default the stepper configuration assumes no external ESTOP button. +footnote:[An extensive explanation of hooking up ESTOP circuitry is explained +in the wiki.linuxcnc.org and elsewhere in the Integrator Manual] To add a simple external button you need to replace the line: - net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- +net estop-loop iocontrol.0.user-enable-out iocontrol.0.emc-enable-in +---- with - net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- +net estop-loop parport.0.pin-01-in iocontrol.0.emc-enable-in +---- This assumes an ESTOP switch connected to pin 01 on the parport. As long as the switch will stay pushedfootnote:[make sure you use a diff --git a/docs/src/drivers/AX5214H.txt b/docs/src/drivers/AX5214H.txt index 09d995b..a4340a7 100644 --- a/docs/src/drivers/AX5214H.txt +++ b/docs/src/drivers/AX5214H.txt @@ -1,3 +1,6 @@ +:lang: en +:toc: + = AX5214H The Axiom Measurement & Control AX5214H is a 48 channel digital I/O @@ -8,7 +11,9 @@ of the work is already done. == Installing - loadrt hal_ax5214h cfg="<config-string>" +---- +loadrt hal_ax5214h cfg="<config-string>" +---- The config string consists of a hex port address, followed by an 8 character string of "I" and "O" which sets groups of pins as inputs and @@ -17,7 +22,7 @@ bit blocks of pins (0-7 and 8-15). The next two set blocks of 4 pins (16-19 and 20-23). The pattern then repeats, two more blocks of 8 bits (24-31 and 32-39) and two blocks of 4 bits (40-43 and 44-47). If more than one board is installed, the data for the second board follows the -first. As an example, the string `"0x220 IIIOIIOO 0x300 OIOOIOIO"` +first. As an example, the string '"0x220 IIIOIIOO 0x300 OIOOIOIO"' installs drivers for two boards. The first board is at address 0x220, and has 36 inputs (0-19 and 24-39) and 12 outputs (20-23 and 40-47). The second board is at address 0x300, and has 20 inputs (8-15, 24-31, @@ -26,9 +31,9 @@ boards may be used in one system. == Pins - - `(bit) ax5214.<boardnum>.out-<pinnum>` -- Drives a physical output pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>` -- Tracks a physical input pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>-not` -- Tracks a physical input pin, inverted. +* '(bit) ax5214.<boardnum>.out-<pinnum>' -- Drives a physical output pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>' -- Tracks a physical input pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>-not' -- Tracks a physical input pin, inverted. For each pin, <boardnum> is the board number (starts at zero), and <pinnum> is the I/O channel number (0 to 47). @@ -45,7 +50,7 @@ other, the user can determine the state of the input. == Parameters - - `(bit) ax5214.<boardnum>.out-<pinnum>-invert` -- Inverts an output pin. +* '(bit) ax5214.<boardnum>.out-<pinnum>-invert' -- Inverts an output pin. The -invert parameter determines whether an output pin is active high or active low. If -invert is FALSE, setting the HAL out- pin TRUE @@ -56,7 +61,7 @@ high and turn the module OFF. == Functions - - `(funct) ax5214.<boardnum>.read` -- Reads all digital inputs on one board. - - `(funct) ax5214.<boardnum>.write` -- Writes all digital outputs on one board. +* '(funct) ax5214.<boardnum>.read' -- Reads all digital inputs on one board. +* '(funct) ax5214.<boardnum>.write' -- Writes all digital outputs on one board. diff --git a/docs/src/drivers/AX5214H_de.txt b/docs/src/drivers/AX5214H_de.txt index 09d995b..d577de3 100644 --- a/docs/src/drivers/AX5214H_de.txt +++ b/docs/src/drivers/AX5214H_de.txt @@ -1,3 +1,6 @@ +:lang: de +:toc: + = AX5214H The Axiom Measurement & Control AX5214H is a 48 channel digital I/O @@ -8,7 +11,9 @@ of the work is already done. == Installing - loadrt hal_ax5214h cfg="<config-string>" +---- +loadrt hal_ax5214h cfg="<config-string>" +---- The config string consists of a hex port address, followed by an 8 character string of "I" and "O" which sets groups of pins as inputs and @@ -17,7 +22,7 @@ bit blocks of pins (0-7 and 8-15). The next two set blocks of 4 pins (16-19 and 20-23). The pattern then repeats, two more blocks of 8 bits (24-31 and 32-39) and two blocks of 4 bits (40-43 and 44-47). If more than one board is installed, the data for the second board follows the -first. As an example, the string `"0x220 IIIOIIOO 0x300 OIOOIOIO"` +first. As an example, the string '"0x220 IIIOIIOO 0x300 OIOOIOIO"' installs drivers for two boards. The first board is at address 0x220, and has 36 inputs (0-19 and 24-39) and 12 outputs (20-23 and 40-47). The second board is at address 0x300, and has 20 inputs (8-15, 24-31, @@ -26,9 +31,9 @@ boards may be used in one system. == Pins - - `(bit) ax5214.<boardnum>.out-<pinnum>` -- Drives a physical output pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>` -- Tracks a physical input pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>-not` -- Tracks a physical input pin, inverted. +* '(bit) ax5214.<boardnum>.out-<pinnum>' -- Drives a physical output pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>' -- Tracks a physical input pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>-not' -- Tracks a physical input pin, inverted. For each pin, <boardnum> is the board number (starts at zero), and <pinnum> is the I/O channel number (0 to 47). @@ -45,7 +50,7 @@ other, the user can determine the state of the input. == Parameters - - `(bit) ax5214.<boardnum>.out-<pinnum>-invert` -- Inverts an output pin. +* '(bit) ax5214.<boardnum>.out-<pinnum>-invert' -- Inverts an output pin. The -invert parameter determines whether an output pin is active high or active low. If -invert is FALSE, setting the HAL out- pin TRUE @@ -56,7 +61,7 @@ high and turn the module OFF. == Functions - - `(funct) ax5214.<boardnum>.read` -- Reads all digital inputs on one board. - - `(funct) ax5214.<boardnum>.write` -- Writes all digital outputs on one board. +* '(funct) ax5214.<boardnum>.read' -- Reads all digital inputs on one board. +* '(funct) ax5214.<boardnum>.write' -- Writes all digital outputs on one board. diff --git a/docs/src/drivers/AX5214H_es.txt b/docs/src/drivers/AX5214H_es.txt index 09d995b..f1dc282 100644 --- a/docs/src/drivers/AX5214H_es.txt +++ b/docs/src/drivers/AX5214H_es.txt @@ -1,3 +1,6 @@ +:lang: es +:toc: + = AX5214H The Axiom Measurement & Control AX5214H is a 48 channel digital I/O @@ -8,7 +11,9 @@ of the work is already done. == Installing - loadrt hal_ax5214h cfg="<config-string>" +---- +loadrt hal_ax5214h cfg="<config-string>" +---- The config string consists of a hex port address, followed by an 8 character string of "I" and "O" which sets groups of pins as inputs and @@ -17,7 +22,7 @@ bit blocks of pins (0-7 and 8-15). The next two set blocks of 4 pins (16-19 and 20-23). The pattern then repeats, two more blocks of 8 bits (24-31 and 32-39) and two blocks of 4 bits (40-43 and 44-47). If more than one board is installed, the data for the second board follows the -first. As an example, the string `"0x220 IIIOIIOO 0x300 OIOOIOIO"` +first. As an example, the string '"0x220 IIIOIIOO 0x300 OIOOIOIO"' installs drivers for two boards. The first board is at address 0x220, and has 36 inputs (0-19 and 24-39) and 12 outputs (20-23 and 40-47). The second board is at address 0x300, and has 20 inputs (8-15, 24-31, @@ -26,9 +31,9 @@ boards may be used in one system. == Pins - - `(bit) ax5214.<boardnum>.out-<pinnum>` -- Drives a physical output pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>` -- Tracks a physical input pin. - - `(bit) ax5214.<boardnum>.in-<pinnum>-not` -- Tracks a physical input pin, inverted. +* '(bit) ax5214.<boardnum>.out-<pinnum>' -- Drives a physical output pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>' -- Tracks a physical input pin. +* '(bit) ax5214.<boardnum>.in-<pinnum>-not' -- Tracks a physical input pin, inverted. For each pin, <boardnum> is the board number (starts at zero), and <pinnum> is the I/O channel number (0 to 47). @@ -45,7 +50,7 @@ other, the user can determine the state of the input. == Parameters - - `(bit) ax5214.<boardnum>.out-<pinnum>-invert` -- Inverts an output pin. +* '(bit) ax5214.<boardnum>.out-<pinnum>-invert' -- Inverts an output pin. The -invert parameter determines whether an output pin is active high or active low. If -invert is FALSE, setting the HAL out- pin TRUE @@ -56,7 +61,7 @@ high and turn the module OFF. |