Compare commits
No commits in common. "2.7" and "uspace-mp-array" have entirely different histories.
2.7
...
uspace-mp-
360 changed files with 22110 additions and 21099 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -39,4 +39,3 @@ oprofile*
|
|||
*.log
|
||||
position.txt
|
||||
*.9
|
||||
*.glade.h
|
||||
|
|
|
|||
2
VERSION
2
VERSION
|
|
@ -1 +1 @@
|
|||
2.7.14
|
||||
2.7.8
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@
|
|||
<child>
|
||||
<object class="HAL_Button" id="hal_button1">
|
||||
<property name="label" translatable="yes"> Pass speed as
|
||||
parameter in MDI
|
||||
paramter in MDI
|
||||
command</property>
|
||||
<property name="visible">True</property>
|
||||
<property name="can_focus">True</property>
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ To find the onboard parallel port address open a terminal and type in:
|
|||
|
||||
cat /proc/ioports | grep parport
|
||||
|
||||
usually it will be parport0
|
||||
usually it will be paraport0
|
||||
|
||||
0378-037a : parport0
|
||||
|
||||
|
|
|
|||
|
|
@ -2,4 +2,4 @@ This configuration is to show how to connect the Mesa THCAD card with LinuxCNC o
|
|||
|
||||
There are two configurations, the plasma-5i20 that requires you to have a Mesa 5i20 installed and the plasma-demo using parallel port. The plasma-demo version is just to show how this config looks and is not a good candidate for the THCAD card due to the slow update speed when using a software encoder with the parallel port.
|
||||
|
||||
The subroutine touchoff.ngc is used with a floating head and the probe input to set the torch to the initial height of the cut. The example files x-trim.ngc and touchtest.ngc demonstrate the use of touchoff.ngc. The usage of touchoff.ngc requires you to have the probe input and and Arc Ok input. It uses M66 to wait for the Arc Ok input after lighting off the torch. Three parameters are passed to touchoff pierce height, pierce delay, and cut height. In actual use you will need to adjust the height to raise the torch after touch off to Z0 to match your actual setup.
|
||||
The subroutine touchoff.ngc is used with a floating head and the probe input to set the torch to the inital height of the cut. The example files x-trim.ngc and touchtest.ngc demonstrate the use of touchoff.ngc. The usage of touchoff.ngc requires you to have the probe input and and Arc Ok input. It uses M66 to wait for the Arc Ok input after lighting off the torch. Three parameters are passed to touchoff pierce height, pierce delay, and cut height. In actual use you will need to adjust the height to raise the torch after touch off to Z0 to match your actual setup.
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@ a .demo file is usable.
|
|||
-------------------------------------------------------
|
||||
|
||||
The configuraton picker (pickconfig.tcl) walks through
|
||||
existing _user_ configurations in ~/linuxcnc/configs and the
|
||||
existing _user_ configurations in ~linuxcnc/configs and the
|
||||
distribution's root/configs directory. It presents both
|
||||
existing user configurations and sample configurations.
|
||||
When a sample configuration is selected the configuration
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
; restore metric/inch absolute/relative, feed as per parameter values
|
||||
; restore metric/inch absolute/relative, feed as per paramter values
|
||||
; call as 'O<restore> call [originalmetric] [originalabs] [originalfeed]
|
||||
;
|
||||
O<restore> sub
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ The simtcl configuration files make use of the tcl language for configuration in
|
|||
Configurations in this directory also demonstrate the use of a twopass method of processing ".hal" and ".tcl" files. This method is enabled by the ini file setting of [HAL]TWOPASS=anything. With twopass processing, the loadrt specifiers for a module can be specified in multiple places.
|
||||
|
||||
o twopass_compat
|
||||
verify compatibility with .hal halfiles
|
||||
verify compatibilty with .hal halfiles
|
||||
|
||||
o twopass_demo
|
||||
use single haltcl file with
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ HOME = 0 0 0 0 0 0
|
|||
LINEAR_UNITS = mm
|
||||
ANGULAR_UNITS = deg
|
||||
CYCLE_TIME = 0.010
|
||||
DEFAULT_VELOCITY = 30.0
|
||||
DEFAULT_VELOCITY = 1.0
|
||||
MAX_VELOCITY = 100.0
|
||||
DEFAULT_ACCELERATION = 100.0
|
||||
MAX_ACCELERATION = 200.0
|
||||
|
|
@ -150,8 +150,8 @@ MAX_ACCELERATION = 200.0
|
|||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -160.0
|
||||
MAX_LIMIT = 160.0
|
||||
MIN_LIMIT = -180.0
|
||||
MAX_LIMIT = 180.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
|
|
@ -170,11 +170,11 @@ MAX_ACCELERATION = 200.0
|
|||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -225.0
|
||||
MAX_LIMIT = 45.0
|
||||
MIN_LIMIT = -360.0
|
||||
MAX_LIMIT = 360.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_OFFSET = -90.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_USE_INDEX = NO
|
||||
|
|
@ -190,11 +190,11 @@ MAX_ACCELERATION = 200.0
|
|||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -225.0
|
||||
MAX_LIMIT = 45.0
|
||||
MIN_LIMIT = -215.0
|
||||
MAX_LIMIT = 35.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
HOME_OFFSET = -90.0
|
||||
HOME_SEARCH_VEL = 0.0
|
||||
HOME_LATCH_VEL = 0.0
|
||||
HOME_USE_INDEX = NO
|
||||
|
|
@ -210,8 +210,8 @@ MAX_ACCELERATION = 200.0
|
|||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -170.0
|
||||
MAX_LIMIT = 170.0
|
||||
MIN_LIMIT = -360.0
|
||||
MAX_LIMIT = 360.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
|
|
@ -224,14 +224,14 @@ HOME_SEQUENCE = 0
|
|||
#+ Fifth axis
|
||||
[AXIS_4]
|
||||
TYPE = ANGULAR
|
||||
HOME = 0.000
|
||||
HOME = 90.000
|
||||
MAX_VELOCITY = 30.0
|
||||
MAX_ACCELERATION = 200.0
|
||||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -135.0
|
||||
MAX_LIMIT = 135.0
|
||||
MIN_LIMIT = -360.0
|
||||
MAX_LIMIT = 360.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
|
|
@ -250,8 +250,8 @@ MAX_ACCELERATION = 200.0
|
|||
BACKLASH = 0.000
|
||||
INPUT_SCALE = 4000
|
||||
OUTPUT_SCALE = 1.000
|
||||
MIN_LIMIT = -170.0
|
||||
MAX_LIMIT = 170.0
|
||||
MIN_LIMIT = -360.0
|
||||
MAX_LIMIT = 360.0
|
||||
FERROR = 2.000
|
||||
MIN_FERROR = 0.200
|
||||
HOME_OFFSET = 0.0
|
||||
|
|
|
|||
|
|
@ -129,9 +129,3 @@ net J5scaled scale.5.out pumagui.joint6
|
|||
#net j4 axis.4.joint-pos-fb pumagui.joint5
|
||||
#net j5 axis.5.joint-pos-fb pumagui.joint6
|
||||
#net j6 axis.6.joint-pos-fb pumagui.grip
|
||||
|
||||
setp pumakins.A2 400
|
||||
setp pumakins.A3 50
|
||||
setp pumakins.D3 100
|
||||
setp pumakins.D4 400
|
||||
setp pumakins.D6 95
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ INCREMENTS = 1.000 mm, 0.100 mm, 0.010 mm, 0.001 mm ,1.2345 in
|
|||
# detailed information about the markup language can be found at
|
||||
# https://developer.gnome.org/pango/stable/PangoMarkupFormat.html
|
||||
|
||||
# MESSAGE_TEXT = The text to be displayed, may be pango markup formatted
|
||||
# MESSAGE_TEXT = The text to be displayed, may be pango markup formated
|
||||
# MESSAGE_TYPE = one of "status" , "okdialog" , "yesnodialog"
|
||||
# status : Will just display a message as popup window, using the messsaging system of gmoccapy
|
||||
# okdialog : Will hold focus on the message dialog and will activate a "-waiting" Hal_Pin OUT.
|
||||
|
|
|
|||
|
|
@ -76,7 +76,6 @@
|
|||
<object class="HAL_LED" id="led-pos-limit">
|
||||
<property name="visible">True</property>
|
||||
<property name="pick_color_on">#ffff00000000</property>
|
||||
<property name="pick_color_off">#7d7d7d7d7d7d</property>
|
||||
<property name="led_size">7</property>
|
||||
</object>
|
||||
<packing>
|
||||
|
|
@ -89,7 +88,6 @@
|
|||
<object class="HAL_LED" id="led-neg-limit">
|
||||
<property name="visible">True</property>
|
||||
<property name="pick_color_on">#ffff00000000</property>
|
||||
<property name="pick_color_off">#7d7d7d7d7d7d</property>
|
||||
<property name="led_size">7</property>
|
||||
</object>
|
||||
<packing>
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ _compat = {
|
|||
emccanon.CANON_PLANE_VW : (("u","r"),_xyz,"VW"),
|
||||
emccanon.CANON_PLANE_UW : (("v","r"),_xyz,"UW")}
|
||||
|
||||
# extract and pass parameters from current block, merged with extra parameters on a continuation line
|
||||
# extract and pass parameters from current block, merged with extra paramters on a continuation line
|
||||
# keep tjose parameters across invocations
|
||||
# export the parameters into the oword procedure
|
||||
def cycle_prolog(self,**words):
|
||||
|
|
|
|||
295
debian/changelog
vendored
295
debian/changelog
vendored
|
|
@ -1,294 +1,3 @@
|
|||
linuxcnc (1:2.7.14) unstable; urgency=medium
|
||||
|
||||
* docs: improve motion.requested-vel description
|
||||
|
||||
* stepconf: fix wrong stepgen number in lathe config
|
||||
|
||||
* pncconf: only put firmware directory info for cards that need it
|
||||
* pncconf: fix typo for loading second 7i80
|
||||
* pncconf: fix firmware data typo 7i92-7i76_with one 7i76
|
||||
* pncconf: add 7i92-7i77_7i76 firmware data
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Mon, 18 Jun 2018 12:22:48 -0600
|
||||
|
||||
linuxcnc (1:2.7.13) unstable; urgency=medium
|
||||
|
||||
* docs: correct g33.1 warning and text
|
||||
* docs: describe motion.program-line in motion manpage
|
||||
* docs: remove last mention of pins from PID description in rtcomps
|
||||
* docs: update the PID section of rtcomps (#388)
|
||||
* docs: add missing num_sserials info to hm2 manpage
|
||||
* docs: add missing .tool-prep-index parameter to io manpage
|
||||
* docs: add some docstrings to the linuxcnc python module
|
||||
* docs: make the tool table docs more findable
|
||||
* docs: fix a spelling error in bldc manpage
|
||||
* docs: M19 is no longer an unused M-code
|
||||
|
||||
* axis GUI: fix file open dialog with recent py/tcl (#414)
|
||||
|
||||
* gscreen industrial GUI: fix DRO display if VCP panel added
|
||||
* gscreen GUI: fix error if gstreamer library missing
|
||||
|
||||
* stepconf: fix lathe configs; Z axis must be 2 not 1
|
||||
|
||||
* pncconf: fix lathe configs z axis should be 2 not 1
|
||||
* pncconf: fix tandem stepper command signals
|
||||
* pncconf: fix control type with tandem axes
|
||||
|
||||
* gladevcp: fix a warning about icon size
|
||||
|
||||
* interp: require < after # for named parameters (#424)
|
||||
|
||||
* hm2 7i90: fix indentation for legibility
|
||||
* halrmt: fix confusing indentation
|
||||
* classicladder: fix indentation
|
||||
|
||||
* io: fix a misleading comment
|
||||
* io: update the status buffer when prepping the loaded tool
|
||||
* io: set the HAL pins/params even for the loaded tool
|
||||
* io: remove an incorrect debug message
|
||||
|
||||
* test: add tests of reloading the loaded tool
|
||||
* test: add a test for interp variable name bug (#424)
|
||||
|
||||
* packaging: use dh_prep instead of deprecated 'dh_clean -k'
|
||||
* packaging: remove trailing whitespace in changelog
|
||||
* packaging: note copyright on yapps
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Tue, 08 May 2018 21:12:41 -0600
|
||||
|
||||
linuxcnc (1:2.7.12) unstable; urgency=medium
|
||||
|
||||
* docs: clean up net commands in orient docs
|
||||
* docs: fix hyphen/minus confusion in manpages
|
||||
* docs: fix axis name error in gmoccapy "Probe Information"
|
||||
* docs: add G20/G21 unit info to G-code Quick Ref
|
||||
* docs: make G96/G97 comments consistent
|
||||
* docs: [TRAJ]HOME is ignored on trivial kinematics machines
|
||||
* docs: fix a typo in mux_generic manpage
|
||||
* docs: improve docstring for `linuxcnc.wait_complete()`
|
||||
* docs: improve .motion-type pin info in motion manpage
|
||||
* docs: add G99 to G-code Quick Ref
|
||||
* docs: new Chinese translations
|
||||
* docs: fixup capitalization of variables in Homing docs
|
||||
* docs: clarify valid values of HOME_OFFSET
|
||||
* docs: add Chinese translation
|
||||
* docs: improve milltask manpage
|
||||
* docs: remove mention of ancient "bfloat" program from hm2_7i43 manpage
|
||||
* docs: fix typos here and there
|
||||
|
||||
* axis gui: remove a startup-time debug message
|
||||
* axis gui: fix cursor keys in MDI window
|
||||
* axis gui: add 'Select Max velocity' key bindings in quick ref
|
||||
* axis gui: fix jog speed key bindings (#268)
|
||||
* axis gui: don't try to convert unicode to unicode
|
||||
* gmoccapy gui: fix bug with lathe DRO size and missing gst
|
||||
* gscreen gui: fix DRO display with VCP in 'industrial' config
|
||||
|
||||
* limit3: complete rewrite, much better behavior
|
||||
|
||||
* stepconf: restore translation
|
||||
|
||||
* pncconf: fix stepgen MAXVEL and MAXACCEL setting with backlash
|
||||
* pncconf: add internal firmware for g540x2
|
||||
* pncconf: add internal data for 7i92 and 7i80HD cards
|
||||
* pncconf: restore translation
|
||||
|
||||
* hm2: stop a spurious "IOPort ignored" warning
|
||||
* hm2: fix a copy/paste bug in an error message
|
||||
* hm2 sserial: quiet excessive warning messages
|
||||
* hm2 sserial: fix bug with spurious port shutdown
|
||||
* hm2 dpll: fix even-numbered timers (#211)
|
||||
* hm2 7i34, 7i90: don't silently fail with blank config strings
|
||||
|
||||
* puma: update puma kins, vismach model, and configs for D6 joint
|
||||
|
||||
* glcanon: fix a "DRO disappears" bug with wrapped rotaries
|
||||
|
||||
* linuxcnctop: decrease CPU usage and memory leakiness
|
||||
* linuxcnctop: split long lines at whitespace
|
||||
* linuxcnctop: fix display of some sequence-type data
|
||||
|
||||
* sim_pin: improve help for signals with no writers
|
||||
|
||||
* motion: cancel unlock requests when motion disabled
|
||||
|
||||
* rtapi: fix a sched_setaffinity error on uspace with old glibc
|
||||
|
||||
* tests: protect sim.var file, dpkg removes *.orig
|
||||
* tests: increased coverage of limit3 tests
|
||||
|
||||
* src/configure: verify python's pango & cairo modules are installed
|
||||
|
||||
* build: rebuild gmoccapy.pot
|
||||
* fix a typo in maintainer docs
|
||||
|
||||
* packaging: add Keywords to all .desktop files
|
||||
* packaging: validate desktop files
|
||||
* packaging: update debian/copyright to conform to DEP-5
|
||||
* packaging: improve short descriptions
|
||||
* packaging: build-depend on intltool (for buiding gmoccapy.pot)
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Wed, 24 Jan 2018 21:59:53 -0700
|
||||
|
||||
linuxcnc (1:2.7.11) unstable; urgency=medium
|
||||
|
||||
* doc changes for the transition to github
|
||||
* carousel: fix a bug with tool number of zero
|
||||
* axis/gremlin: a better way to avoid leaking files
|
||||
* test that the Python interpreter prints the right errors
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Thu, 27 Jul 2017 22:36:58 -0600
|
||||
|
||||
linuxcnc (1:2.7.10) unstable; urgency=medium
|
||||
|
||||
* docs: document [EMCMOT]COMM_TIMEOUT
|
||||
* docs: teach buildsystem to generate manpages from asciidoc source
|
||||
* docs: add info about the Touchy radio buttons
|
||||
* docs: improve some hm2_bspi manpages
|
||||
|
||||
* gmoccapy: added Num_Pad jogging
|
||||
* image-to-gcode: work around gratuitous breakage in PIL
|
||||
|
||||
* GladeVCP: don't exit if CombiDRO fails to poll status
|
||||
|
||||
* hy_vfd: add --motor-poles, to set PD143
|
||||
* hy_vfd: add --base-frequency to set PD004 on the VFD
|
||||
* hy_vfd: document PD004/base-freq better in the manpage
|
||||
* hy_vfd: fix some typos in --help output and comments
|
||||
|
||||
* add a driver for the Huanyang GT series VFD
|
||||
|
||||
* hm2_eth: add support for Mesa 7i93 AnyIO ethernet board
|
||||
* hm2_sserial: Fix a bug where the second port would not work if the
|
||||
first was disabled
|
||||
|
||||
* gcodemodule: make interp really close part program
|
||||
* pluto: use rtapi's fabs() instead of the kernel's abs()
|
||||
* steptest: don't change position-cmd when not running
|
||||
|
||||
* uspace: find top online CPU
|
||||
|
||||
* tests: make timeouts simpler & smarter in halui/jogging test
|
||||
|
||||
* build: fix building linuxcnc.1 when docs not requested
|
||||
* build: don't fail when requested not to build documentation
|
||||
* build: ensure asciidoc manpages are built before checklink is run
|
||||
* build: build-depend on asciidoc-dblatex on debian stretch
|
||||
* build: on Debian Stretch and newer, depend on gstreamer 1.0
|
||||
* build: add debian/configure stanza for debian stretch
|
||||
* build: rename the GS2 VFD Makefile variables for clarity
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Tue, 18 Jul 2017 21:02:57 -0600
|
||||
|
||||
linuxcnc (1:2.7.9) unstable; urgency=medium
|
||||
|
||||
* support "auxiliary apps", distributed separately from LinuxCNC
|
||||
|
||||
* docs: add a bit more info to position feedback ini setting
|
||||
* docs: sort board list in hm2_eth manpage
|
||||
* docs: fix pyvcp multi label description
|
||||
* docs: fix pyvcp example so it runs
|
||||
* docs: clarify return value in hal_pin_new(3) manpage
|
||||
* docs: add missing var section to index header
|
||||
* docs: add machine building info to integrator document
|
||||
* docs: add manpage for hal_parport realtime component
|
||||
* docs: add units info to halui max-velocity pins in manpage
|
||||
* docs: flesh out max-velocity pins in halui manpage
|
||||
* docs: fix incorrect info for stat.motion_type and stat.motion_mode
|
||||
* docs: code notes: a pose has 9 coordinates, not 6
|
||||
* docs: add hal_manualtoolchange manpage
|
||||
* docs: add info about remap debug messages
|
||||
* docs: fix paraport/parport typos
|
||||
* docs: fix pin names in thcud manpage example HAL config
|
||||
* docs: clean up the note about T0 handling
|
||||
* docs: add some info for the hal python module
|
||||
* docs: clarify an ambiguity about siggen in the HAL documentation
|
||||
* docs: add information about addf command in the HAL documentation
|
||||
* docs: add details on epp_dir command line parameter of hal_ppmc
|
||||
* docs: remove a footnote about the behavior of emc2 v2.4
|
||||
* docs: add or2 example
|
||||
* docs: fix description of USER_DEFINED_FUNCTION_MAX_DIRS in ini-config
|
||||
* docs: clarify g28/30 description
|
||||
* docs: add link to G54-G59.3 User Coordinates section
|
||||
* docs: clean up Machine Coordinate System section
|
||||
* docs: remove M6 from modal group description
|
||||
* docs: add links to machine origin from several places
|
||||
* docs: fix typos and markup problems all over
|
||||
* docs: add more information about the addf command
|
||||
* docs: sorted gmoccapy video links with headlines
|
||||
* docs: add a known problem with macros to gmoccapy docs
|
||||
* docs: fix cut-n-paste bug in mb2hal manpage
|
||||
* docs: expand on different ways of starting LinuxCNC
|
||||
* docs: document some features of the Axis GUI
|
||||
* docs: add info about the basic directory structure
|
||||
* docs: correct misleading descriptions of named parameters
|
||||
* docs: update info about 'save' command in halcmd manpage & help
|
||||
|
||||
* Axis GUI: avoid unbounded memory growth in text widgets on stretch
|
||||
* Axis GUI: make tool info display widget larger
|
||||
* Axis GUI: remove unused .info.offset widget
|
||||
* Axis GUI: shorten tool touch off widget title text
|
||||
* gmoccapy GUI: removed unused code
|
||||
* gmoccapy GUI: added get_joints_amount() for compatibility 2.7 and master
|
||||
* gmoccapy GUI: new hal pin gmoccapy.ignore-limits
|
||||
* gmoccapy GUI: bug if no macros in ini file
|
||||
* gmoccapy GUI: bug in macro button handling
|
||||
* gmoccapy GUI: G96 bug solved
|
||||
* gscreen GUI: fix missing .themes folder error
|
||||
* halui: fix halui.program.run
|
||||
|
||||
* gladeVCP: make CombiDRO compatible for both 2.7 and master
|
||||
* gladeVCP: fix delta scale pin not updating if wheel scroll used
|
||||
* gladeVCP: add missing icon image for hal_dial
|
||||
|
||||
* pncconf: fix spindle command using wrong signal name
|
||||
* pncconf: fix sserial mode setting in HAL file
|
||||
|
||||
* hal_ppmc: add command line arg to turn on/off port direction change
|
||||
|
||||
* mitsub_vfd: add a driver for Mitsubishi VFDs
|
||||
|
||||
* classicladder: fix sequential variable access
|
||||
* classicladder: fix whitespace errors
|
||||
|
||||
* ilowpass: round the output instead of truncating
|
||||
|
||||
* halcmd: waitusr: avoid race condition
|
||||
|
||||
* hm2: better error message on unexpected pin descriptors
|
||||
* hm2_eth: don't segfault on interfaces without addresses
|
||||
|
||||
* linuxcnc python module: add doc string for stat.motion_mode
|
||||
* linuxcnc python module: add doc string for stat.motion_type
|
||||
* linuxcnc python module: add a doc string for stat.queued_mdi_commands
|
||||
* linuxcnc python module: add EMC_MOTION_TYPE_* constants
|
||||
|
||||
* hal python module: better doc strings for connect() and new_sig()
|
||||
|
||||
* Interp: fix a typo in a cutter-comp error message
|
||||
* Task: set the stat struct member queuedMDIcommands
|
||||
|
||||
* example g-code: fix Z value reported by rectangle_probe.ngc
|
||||
* example configs: fix hal pin names in gmoccapy_plasma
|
||||
* example configs: limit led without off color in gmoccapy_plasma
|
||||
* example configs: xhc-hb04.tcl: if prior connects, continue with msg
|
||||
|
||||
* rtapi: better error message when failing to connect
|
||||
|
||||
* uspace: allow calculated parameter array sizes
|
||||
|
||||
* tests: let introspection complete before continuing in the t0 tests
|
||||
* tests: fixup hm2-idrom test to match new hm2 PD error message
|
||||
* tests: add a test of ilowpass with low gain
|
||||
* tests: reorg ilowpass test so i can add a low-gain test next to it
|
||||
* tests: add a test of stat.queued_mdi_commands
|
||||
* travis: manually uninstall gpl3 readline
|
||||
* build: fix link error on i686 with gcc, or maybe objcopy 2.27
|
||||
* packaging: add the new LinuxCNC_Integrator pdf to the doc package
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Fri, 02 Jun 2017 12:49:44 -0600
|
||||
|
||||
linuxcnc (1:2.7.8) unstable; urgency=medium
|
||||
|
||||
* docs: fix pdf duplicate history listing
|
||||
|
|
@ -435,7 +144,7 @@ linuxcnc (1:2.7.5) unstable; urgency=medium
|
|||
* carousel comp: Fix a bad initialisation in index mode
|
||||
* gantry comp: fix typo in docs
|
||||
* wj200 comp: warn on unhandled command-line arguments
|
||||
* xhc-hb04: accommodate prior connections to the
|
||||
* xhc-hb04: accomodate prior connections to the
|
||||
motion.spindle-speed-out-rps-abs pin
|
||||
|
||||
* shuttlexpress: clean up the manpage & asciidocs
|
||||
|
|
@ -1238,7 +947,7 @@ linuxcnc (1:2.6.12) unstable; urgency=low
|
|||
* tests: test homing in halui/jogging
|
||||
* tests: add a motion-logger test of a remap bug
|
||||
* packaging: use "set -e" to fail on error in the postinst script
|
||||
* buildbot: don't try to build on Jessie RTAI
|
||||
* buildbot: dont try to build on Jessie RTAI
|
||||
* build: verify links in the gcode Quick Reference (English & French)
|
||||
|
||||
-- Sebastian Kuzminsky <seb@highlab.com> Sun, 10 Jan 2016 10:07:09 -0700
|
||||
|
|
|
|||
9
debian/configure
vendored
9
debian/configure
vendored
|
|
@ -91,7 +91,6 @@ else
|
|||
fi
|
||||
|
||||
PYTHON_PACKAGING=dh_pysupport
|
||||
PYTHON_GST=python-gst0.10,gstreamer0.10-plugins-base
|
||||
|
||||
case $DISTRIB_NAME in
|
||||
Ubuntu-14.*|Ubuntu-15.04|LinuxMint-17.*) # Trusty Tahr (LTS) through Vivid
|
||||
|
|
@ -121,13 +120,6 @@ Debian-testing)
|
|||
EXTRA_BUILD=dvipng,texlive-extra-utils,texlive-latex-recommended,texlive-fonts-recommended,ghostscript,imagemagick,texlive-lang-polish,texlive-font-utils,kmod,dh-python
|
||||
TCLTK_VERSION=8.6
|
||||
PYTHON_PACKAGING=dh_python2
|
||||
PYTHON_GST=python-gst-1.0,gstreamer1.0-plugins-base
|
||||
;;
|
||||
Debian-9.*)
|
||||
EXTRA_BUILD=dvipng,texlive-extra-utils,texlive-latex-recommended,texlive-fonts-recommended,ghostscript,imagemagick,texlive-lang-polish,texlive-font-utils,kmod,dh-python,asciidoc-dblatex
|
||||
TCLTK_VERSION=8.6
|
||||
PYTHON_PACKAGING=dh_python2
|
||||
PYTHON_GST=python-gst-1.0,gstreamer1.0-plugins-base
|
||||
;;
|
||||
Debian-8.*)
|
||||
EXTRA_BUILD=dvipng,texlive-extra-utils,texlive-latex-recommended,texlive-fonts-recommended,ghostscript,imagemagick,texlive-lang-polish,texlive-font-utils,kmod,dh-python
|
||||
|
|
@ -209,7 +201,6 @@ sed -e "s|@MODULE_PATH@|$MODULE_PATH|g" \
|
|||
-e "s|@PYTHON_VERSION@|$PYTHON_VERSION|g" \
|
||||
-e "s|@TCLTK_VERSION@|$TCLTK_VERSION|g" \
|
||||
-e "s|@PYTHON_VERSION_NEXT@|$PYTHON_VERSION_NEXT|g" \
|
||||
-e "s|@PYTHON_GST@|$PYTHON_GST|g" \
|
||||
-e "s|@PYTHON_PACKAGING@|$PYTHON_PACKAGING|g" \
|
||||
$*
|
||||
}
|
||||
|
|
|
|||
16
debian/control.in
vendored
16
debian/control.in
vendored
|
|
@ -14,9 +14,7 @@ Build-Depends: debhelper (>= 6),
|
|||
texlive-lang-cyrillic, texlive-lang-french,
|
||||
texlive-lang-spanish, texlive-lang-german, netcat,
|
||||
libmodbus-dev (>= 3.0), libusb-1.0-0-dev, procps, psmisc,
|
||||
graphviz, inkscape,
|
||||
intltool,
|
||||
desktop-file-utils,
|
||||
graphviz, inkscape
|
||||
Standards-Version: 2.1.0
|
||||
|
||||
Package: @MAIN_PACKAGE_NAME@-dev
|
||||
|
|
@ -28,7 +26,7 @@ Depends: g++, @KERNEL_HEADERS@,
|
|||
@MAIN_PACKAGE_NAME@ (= ${binary:Version}),
|
||||
yapps2-runtime
|
||||
Section: libs
|
||||
Description: motion controller for CNC machines and robots (development files)
|
||||
Description: PC based motion controller for real-time Linux
|
||||
LinuxCNC is the next-generation Enhanced Machine Controller which
|
||||
provides motion control for CNC machine tools and robotic
|
||||
applications (milling, cutting, routing, etc.).
|
||||
|
|
@ -52,11 +50,11 @@ Depends: ${shlibs:Depends}, @KERNEL_DEPENDS@,
|
|||
python@PYTHON_VERSION@-imaging-tk | python-imaging-tk,
|
||||
python-gtksourceview2,
|
||||
python-vte,
|
||||
@PYTHON_GST@,
|
||||
python-gst0.10, gstreamer0.10-plugins-base,
|
||||
python-xlib, python-gtkglext1, python-configobj,
|
||||
tclreadline, procps, psmisc, module-init-tools | kmod, tclx,
|
||||
mesa-utils, blt
|
||||
Description: motion controller for CNC machines and robots
|
||||
Description: PC based motion controller for real-time Linux
|
||||
LinuxCNC is the next-generation Enhanced Machine Controller which
|
||||
provides motion control for CNC machine tools and robotic
|
||||
applications (milling, cutting, routing, etc.).
|
||||
|
|
@ -66,7 +64,7 @@ Provides: linuxcnc-doc
|
|||
Architecture: all
|
||||
Depends: ${misc:Depends}
|
||||
Suggests: pdf-viewer
|
||||
Description: motion controller for CNC machines and robots (English documentation)
|
||||
Description: PC based motion controller for real-time Linux
|
||||
LinuxCNC is the next-generation Enhanced Machine Controller which
|
||||
provides motion control for CNC machine tools and robotic
|
||||
applications (milling, cutting, routing, etc.).
|
||||
|
|
@ -78,7 +76,7 @@ Provides: linuxcnc-doc
|
|||
Architecture: all
|
||||
Depends: ${misc:Depends}
|
||||
Suggests: pdf-viewer
|
||||
Description: motion controller for CNC machines and robots (French documentation)
|
||||
Description: PC based motion controller for real-time Linux
|
||||
LinuxCNC is the next-generation Enhanced Machine Controller which
|
||||
provides motion control for CNC machine tools and robotic
|
||||
applications (milling, cutting, routing, etc.).
|
||||
|
|
@ -90,7 +88,7 @@ Provides: linuxcnc-doc
|
|||
Architecture: all
|
||||
Depends: ${misc:Depends}
|
||||
Suggests: pdf-viewer
|
||||
Description: motion controller for CNC machines and robots (Spanish documentation)
|
||||
Description: PC based motion controller for real-time Linux
|
||||
LinuxCNC is the next-generation Enhanced Machine Controller which
|
||||
provides motion control for CNC machine tools and robotic
|
||||
applications (milling, cutting, routing, etc.).
|
||||
|
|
|
|||
134
debian/copyright
vendored
134
debian/copyright
vendored
|
|
@ -1,8 +1,21 @@
|
|||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: LinuxCNC
|
||||
Upstream-Contact: emc-developers@lists.sourceforge.net
|
||||
Source: https://github.com/linuxcnc/linuxcnc
|
||||
Comment:
|
||||
This package was debianized by Alex Joni on
|
||||
Sat, 01 Jan 2006,
|
||||
also debianized by Paul Corner on
|
||||
Thur, 14 Oct 2004
|
||||
|
||||
Copyright:
|
||||
|
||||
LinuxCNC is distributed in the hope that it will be useful, but
|
||||
WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
****************************************************************
|
||||
|
||||
Notice: Most of LinuxCNC is covered by the GNU General Public
|
||||
License. Some portions are covered by the GNU Lesser
|
||||
General Public License (mostly interface definitions).
|
||||
Both licenses are included in their entirety below.
|
||||
|
||||
Much of LinuxCNC is derived from EMC1, a work of Fred Proctor, Tom Kramer,
|
||||
Will Shackleford, and others. That work was originally released into
|
||||
the public domain. It was used as the basis of LinuxCNC, but received
|
||||
|
|
@ -10,112 +23,7 @@ Comment:
|
|||
to use the public domain code in a way that is not compatible with the
|
||||
(L)GPL must locate the original EMC1 code - they may NOT use LinuxCNC.
|
||||
|
||||
Files: *
|
||||
Copyright: the LinuxCNC developers
|
||||
License: GPL-2+
|
||||
******************************************************************
|
||||
|
||||
Files: src/hal/classicladder/*
|
||||
Copyright: the LinuxCNC developers
|
||||
License: LGPL-2.1+
|
||||
|
||||
Files: src/hal/utils/yapps.py
|
||||
Copyright: 1999-2003 Amit J. Patel <amitp@cs.stanford.edu>
|
||||
License: MIT
|
||||
|
||||
Files: src/libnml/*
|
||||
Copyright: the LinuxCNC developers
|
||||
License: LGPL-2
|
||||
|
||||
Files: src/libnml/inifile*
|
||||
Copyright: the LinuxCNC developers
|
||||
License: GPL-2
|
||||
|
||||
Files: src/rtapi/*
|
||||
Copyright: the LinuxCNC developers
|
||||
License: LGPL-2.1+
|
||||
|
||||
License: GPL-2
|
||||
This package is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; version 2 of the License.
|
||||
.
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
||||
|
||||
License: GPL-2+
|
||||
This package is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
.
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
||||
|
||||
License: LGPL-2
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; version 2.0 of the license.
|
||||
.
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program. If not, see <https://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU Lesser General Public
|
||||
License version 2.1 can be found in ‘/usr/share/common-licenses/LGPL-2’.
|
||||
|
||||
License: LGPL-2.1+
|
||||
This program is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU Lesser General Public License as published by
|
||||
the Free Software Foundation; either version 2.1, or (at your option)
|
||||
any later version.
|
||||
.
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU Lesser General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU Lesser General Public License along
|
||||
with this program. If not, see <https://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU Lesser General Public
|
||||
License version 2.1 can be found in ‘/usr/share/common-licenses/LGPL-2.1’.
|
||||
|
||||
License: MIT
|
||||
Permission is hereby granted, free of charge, to any person obtaining
|
||||
a copy of this software and associated documentation files (the
|
||||
"Software"), to deal in the Software without restriction, including
|
||||
without limitation the rights to use, copy, modify, merge, publish,
|
||||
distribute, sublicense, and/or sell copies of the Software, and to
|
||||
permit persons to whom the Software is furnished to do so, subject to
|
||||
the following conditions:
|
||||
.
|
||||
The above copyright notice and this permission notice shall be included
|
||||
in all copies or substantial portions of the Software.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
||||
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
|
||||
NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
|
||||
DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
|
||||
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR
|
||||
THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
The complete text of GPL version 2 can be found in the file
|
||||
/usr/share/common-licenses/GPL-2 on Debian systems.
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_Documentation.pdf
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,4 @@ Name=Documentation
|
|||
Comment=LinuxCNC Documentation
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
GenericName=
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/x-www-browser /usr/share/doc/linuxcnc/gcode_fr.html
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=French G-Code Quick Reference
|
|||
Comment=Quick reference for G, M and O codes in LinuxCNC
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/x-www-browser /usr/share/doc/linuxcnc/gcode.html
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=G-Code Quick Reference
|
|||
Comment=Quick reference for G, M, and O codes in LinuxCNC
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Version=
|
||||
Encoding=UTF-8
|
||||
Name=French Getting Started Guide
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_Getting_Started_fr.pdf
|
||||
|
|
@ -9,4 +10,4 @@ Terminal=false
|
|||
Comment=Information on how to download and install LinuxCNC
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
GenericName[en_US]=
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Version=
|
||||
Encoding=UTF-8
|
||||
Name=Getting Started Guide
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_Getting_Started.pdf
|
||||
|
|
@ -9,4 +10,4 @@ Terminal=false
|
|||
Comment=Information on how to download and install LinuxCNC
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
GenericName[en_US]=
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Version=
|
||||
Encoding=UTF-8
|
||||
Name=French HAL Manual
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_HAL_User_Manual_fr.pdf
|
||||
|
|
@ -9,4 +10,4 @@ Terminal=false
|
|||
Comment=Details about the Hardware Abstract Layer.
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
GenericName[en_US]=
|
||||
|
|
|
|||
|
|
@ -1,12 +1,14 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Version=
|
||||
Encoding=UTF-8
|
||||
Name=French Integrator Manual
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_Integrator_Manual_fr.pdf
|
||||
Icon=linuxcncicon
|
||||
X-GNOME-DocPath=
|
||||
Terminal=false
|
||||
Comment=Installation and Configuration Manual (French)
|
||||
Comment=Configuration Information
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
GenericName[en_US]=
|
||||
Comment[en_US]=Installation and Configuration Manual (French)
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/latency-test
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=Latency Test
|
|||
Comment=Test your computers's latency
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/pncconf
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Comment=Configuration Wizard For Mesa I/O Cards
|
|||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Name=Pncconf Wizard
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/stepconf
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=Stepconf Wizard
|
|||
Comment=Stepper Configuration Wizard
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/see /usr/share/doc/linuxcnc/LinuxCNC_User_Manual_fr.pdf
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=French User Manual
|
|||
Comment=The LinuxCNC User Manual
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
[Desktop Entry]
|
||||
Version=1.0
|
||||
Encoding=UTF-8
|
||||
Version=
|
||||
Type=Application
|
||||
Exec=/usr/bin/linuxcnc
|
||||
Icon=linuxcncicon
|
||||
|
|
@ -9,4 +10,3 @@ Name=LinuxCNC
|
|||
Comment=Configuration Launcher
|
||||
StartupNotify=false
|
||||
Categories=X-CNC;
|
||||
Keywords=cnc;linuxcnc;
|
||||
|
|
|
|||
1
debian/linuxcnc-doc-en.files.in
vendored
1
debian/linuxcnc-doc-en.files.in
vendored
|
|
@ -1,4 +1,3 @@
|
|||
usr/share/doc/linuxcnc/LinuxCNC_Getting_Started.pdf
|
||||
usr/share/doc/linuxcnc/LinuxCNC_Manual_Pages.pdf
|
||||
usr/share/doc/linuxcnc/LinuxCNC_Documentation.pdf
|
||||
usr/share/doc/linuxcnc/LinuxCNC_Integrator.pdf
|
||||
|
|
|
|||
11
debian/rules.in
vendored
11
debian/rules.in
vendored
|
|
@ -65,19 +65,10 @@ endif
|
|||
install: build
|
||||
dh_testdir
|
||||
dh_testroot
|
||||
dh_prep
|
||||
dh_clean -k
|
||||
dh_installdirs
|
||||
# start the install
|
||||
mkdir -p debian/tmp
|
||||
|
||||
# Version 0.22 and newer of the desktop-file-validate program
|
||||
# (in Jessie and newer) can deal with multiple files specified
|
||||
# on the command line. Version 0.20 (in Wheezy) says it can,
|
||||
# but can't. So feed it the files one by one.
|
||||
for F in $(shell find debian/extras/ -name *.desktop); do \
|
||||
desktop-file-validate $$F; \
|
||||
done
|
||||
|
||||
-(cd debian/@EXTRAS@ && cp -a * ../tmp)
|
||||
(cd src; export DESTDIR=`pwd`/../debian/tmp; $(MAKE) $@)
|
||||
mkdir -p debian/tmp/usr/lib debian/tmp/usr/include/linuxcnc
|
||||
|
|
|
|||
46
docs/SubmittingPatches
Normal file
46
docs/SubmittingPatches
Normal file
|
|
@ -0,0 +1,46 @@
|
|||
To improve tracking of who did what, we use the "sign-off" procedure
|
||||
introduced by the Linux kernel. The sign-off is a simple line at the
|
||||
end of the explanation for the patch, which certifies that you wrote
|
||||
it or otherwise have the right to pass it on as an open-source patch.
|
||||
The rules are pretty simple: if you can certify the Developer's
|
||||
Certificate of Origin 1.1 with GPLv2+ clause (see the
|
||||
developer-certificate-of-origin file), then you just add a line saying
|
||||
|
||||
Signed-off-by: Random J Developer <random@developer.example.org>
|
||||
|
||||
using your real name (sorry, no pseudonyms or anonymous
|
||||
contributions). This line can be automatically added by git if you
|
||||
run the git-commit command with the -s option.
|
||||
|
||||
If you like, you can put extra tags at the end:
|
||||
|
||||
1. "Reported-by:" is used to credit someone who found the bug that
|
||||
the patch attempts to fix.
|
||||
2. "Acked-by:" says that the person who is more familiar with the area
|
||||
the patch attempts to modify liked the patch.
|
||||
3. "Reviewed-by:", unlike the other tags, can only be offered by the
|
||||
reviewer and means that she is completely satisfied that the patch
|
||||
is ready for application. It is usually offered only after a
|
||||
detailed review.
|
||||
4. "Tested-by:" is used to indicate that the person applied the patch
|
||||
and found it to have the desired effect.
|
||||
|
||||
You can also create your own tag or use one that's in common usage
|
||||
such as "Thanks-to:", "Based-on-patch-by:", or "Mentored-by:".
|
||||
|
||||
Sometimes you need to slightly modify patches you receive in order to
|
||||
merge them, because the code is not exactly the same in your tree and
|
||||
the submitters'. If you stick strictly to rule (c), you should ask the
|
||||
submitter to rediff, but this is a totally counter-productive waste of
|
||||
time and energy. Rule (b) allows you to adjust the code, but then it
|
||||
is very impolite to change one submitter's code and make him endorse
|
||||
your bugs. To solve this problem, it is recommended that you add a
|
||||
line between the last Signed-off-by header and yours, indicating the
|
||||
nature of your changes. While there is nothing mandatory about this,
|
||||
it seems like prepending the description with your mail and/or name,
|
||||
all enclosed in square brackets, is noticeable enough to make it
|
||||
obvious that you are responsible for last-minute changes. Example :
|
||||
|
||||
Signed-off-by: Random J Developer <random@developer.example.org>
|
||||
[lucky@maintainer.example.org: struct foo moved from foo.c to foo.h]
|
||||
Signed-off-by: Lucky K Maintainer <lucky@maintainer.example.org>
|
||||
|
|
@ -136,15 +136,6 @@ paragraph style.
|
|||
Styles include
|
||||
NOTE TIP IMPORTANT WARNING CAUTION
|
||||
|
||||
Tables
|
||||
======
|
||||
[options="header, width="80%"]
|
||||
|=======
|
||||
|1 |2 |A
|
||||
|3 |4 |B
|
||||
|5 |6 |C
|
||||
|=======
|
||||
|
||||
Escaping a character
|
||||
====================
|
||||
Normally characters like ' and * would not print unless you use \' or \* then
|
||||
|
|
|
|||
43
docs/developer-certificate-of-origin
Normal file
43
docs/developer-certificate-of-origin
Normal file
|
|
@ -0,0 +1,43 @@
|
|||
Developer Certificate of Origin
|
||||
Version 1.1
|
||||
|
||||
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
|
||||
660 York Street, Suite 102,
|
||||
San Francisco, CA 94110 USA
|
||||
|
||||
Everyone is permitted to copy and distribute verbatim copies of this
|
||||
license document, but changing it is not allowed.
|
||||
|
||||
Developer's Certificate of Origin 1.1
|
||||
|
||||
By making a contribution to this project, I certify that:
|
||||
|
||||
(a) The contribution was created in whole or in part by me and I
|
||||
have the right to submit it under the open source license
|
||||
indicated in the file; or
|
||||
|
||||
(b) The contribution is based upon previous work that, to the best
|
||||
of my knowledge, is covered under an appropriate open source
|
||||
license and I have the right under that license to submit that
|
||||
work with modifications, whether created in whole or in part
|
||||
by me, under the same open source license (unless I am
|
||||
permitted to submit under a different license), as indicated
|
||||
in the file; or
|
||||
|
||||
(c) The contribution was provided directly to me by some other
|
||||
person who certified (a), (b) or (c) and I have not modified
|
||||
it.
|
||||
|
||||
(d) I understand and agree that this project and the contribution
|
||||
are public and that a record of the contribution (including all
|
||||
personal information I submit with it, including my sign-off) is
|
||||
maintained indefinitely and may be redistributed consistent with
|
||||
this project or the open source license(s) involved.
|
||||
|
||||
[verbatim copy of Developer's Certificate of Origin 1.1 ends just above
|
||||
this line]
|
||||
|
||||
In addition, by making a contribution to this project, I certify that:
|
||||
|
||||
(e) The contribution is covered under a license that is compatible
|
||||
with the GNU GPL version 2 with the "or later" clause.
|
||||
|
|
@ -98,7 +98,7 @@ tr.head td, tr.head th { background: black; color: white; }
|
|||
<TR><TD><A HREF="gcode/m-code.html#mcode:m60">M60</A><TD><TD>Pallet Change Pause</TR>
|
||||
|
||||
<TR><TH COLSPAN=3>Units </TR>
|
||||
<TR><TD><A HREF="gcode/g-code.html#gcode:g20-g21">G20, G21</A><TD> <TD>Units (inch, mm)</TR>
|
||||
<TR><TD><A HREF="gcode/g-code.html#gcode:g20-g21">G20, G21</A><TD> <TD>Units</TR>
|
||||
|
||||
<TR><TH>Plane Selection <TD COLSPAN=2>(affects G2, G3, G81…G89, G40…G42) </TR>
|
||||
<TR><TD><A HREF="gcode/g-code.html#gcode:g17-g19.1">G17 - G19.1</A><TD><TD>Plane Select</TR>
|
||||
|
|
@ -113,7 +113,7 @@ tr.head td, tr.head th { background: black; color: white; }
|
|||
<TR><TD><A HREF="gcode/g-code.html#gcode:g64">G64</A><TD>P Q<TD>Path Blending</TR>
|
||||
|
||||
<TR><TH COLSPAN=3>Return Mode in Canned Cycles </TR>
|
||||
<TR><TD><A HREF="gcode/g-code.html#gcode:g98-g99">G98, G99</A><TD><TD>Canned Cycle Return Level</TR>
|
||||
<TR><TD><A HREF="gcode/g-code.html#gcode:g98-g99">G98</A><TD><TD>Canned Cycle Return Level</TR>
|
||||
|
||||
<TR><TH COLSPAN=3>Other Modal Codes </TR>
|
||||
<TR><TD><A HREF="gcode/other-code.html#sec:set-feed-rate">F</A><TD><TD>Set Feed Rate</TR>
|
||||
|
|
|
|||
1
docs/man/.gitignore
vendored
1
docs/man/.gitignore
vendored
|
|
@ -6,7 +6,6 @@ cat1/
|
|||
cat3/
|
||||
cat9/
|
||||
|
||||
man1/hy_gt_vfd.1
|
||||
man1/linuxcnc.1
|
||||
|
||||
man9/abs.9
|
||||
|
|
|
|||
|
|
@ -25,30 +25,30 @@
|
|||
.\"
|
||||
.TH axis-remote "1" "2007-04-01" "LinuxCNC Documentation" "The Enhanced Machine Controller"
|
||||
.SH NAME
|
||||
axis\-remote \- AXIS Remote Interface
|
||||
axis-remote \- AXIS Remote Interface
|
||||
.SH SYNOPSIS
|
||||
.B axis\-remote \fIOPTIONS\fR|\fIFILENAME\fR
|
||||
.B axis-remote \fIOPTIONS\fR|\fIFILENAME\fR
|
||||
.SH DESCRIPTION
|
||||
\fBaxis\-remote\fR is a small script that triggers commands in a running AXIS GUI.
|
||||
Use \fBaxis\-remote \-\-help\fR for further information.
|
||||
\fBaxis-remote\fR is a small script that triggers commands in a running AXIS GUI.
|
||||
Use \fBaxis-remote --help\fR for further information.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-\-ping\fR, \fB\-p\fR
|
||||
\fB--ping\fR, \fB-p\fR
|
||||
Check whether AXIS is running.
|
||||
.TP
|
||||
\fB\-\-reload\fR, \fB\-r\fR
|
||||
\fB--reload\fR, \fB-r\fR
|
||||
Make AXIS reload the currently loaded file.
|
||||
.TP
|
||||
\fB\-\-clear\fR, \fB\-c\fR
|
||||
\fB--clear\fR, \fB-c\fR
|
||||
Make AXIS clear the backplot.
|
||||
.TP
|
||||
\fB\-\-quit\fR, \fB\-q\fR
|
||||
\fB--quit\fR, \fB-q\fR
|
||||
Make AXIS quit.
|
||||
.TP
|
||||
\fB\-\-help\fR, \fB\-h\fR, \fB\-?\fR
|
||||
Display a list of valid parameters for \fBaxis\-remote\fR.
|
||||
\fB--help\fR, \fB-h\fR, \fB-?\fR
|
||||
Display a list of valid parameters for \fBaxis-remote\fR.
|
||||
.TP
|
||||
\fB\-\-mdi COMMAND\fR, \fB\-m COMMAND\fR
|
||||
\fB--mdi COMMAND\fR, \fB-m COMMAND\fR
|
||||
Run the MDI command \fBCOMMAND\fR.
|
||||
.TP
|
||||
\fBFILENAME\fR
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
axis \- AXIS LinuxCNC Graphical User Interface
|
||||
.SH SYNOPSIS
|
||||
.B axis
|
||||
\fI\-ini\fR \fIINIFILE\fR
|
||||
\fI-ini\fR \fIINIFILE\fR
|
||||
.SH DESCRIPTION
|
||||
\fBaxis\fR is one of the Graphical User Interfaces (GUI) for LinuxCNC
|
||||
It gets run by the runscript usually.
|
||||
|
|
|
|||
|
|
@ -6,28 +6,28 @@ elbpcom \- Communicate with Mesa ethernet cards
|
|||
Common options:
|
||||
.RS
|
||||
.SY elbpcom
|
||||
.BI [\-\-ip= IP ]
|
||||
.BI [\-\-port= PORT ]
|
||||
.BI [\-\-timeout= TIMEOUT ]
|
||||
.BI [--ip= IP ]
|
||||
.BI [--port= PORT ]
|
||||
.BI [--timeout= TIMEOUT ]
|
||||
.RE
|
||||
|
||||
Reading data:
|
||||
.RS
|
||||
.SY elbpcom
|
||||
.BI [ common\ options ]
|
||||
.BI \-\-space= SPACE
|
||||
.B [\-\-info]
|
||||
.BI \-\-address= ADDRESS
|
||||
.BI \-\-read= LENGTH
|
||||
.BI --space= SPACE
|
||||
.B [--info]
|
||||
.BI --address= ADDRESS
|
||||
.BI --read= LENGTH
|
||||
.RE
|
||||
|
||||
Writing data:
|
||||
.RS
|
||||
.SY elbpcom
|
||||
.BI [ common\ options ]
|
||||
.BI \-\-space= SPACE
|
||||
.BI \-\-address= ADDRESS
|
||||
.BI \-\-write= HEXDATA
|
||||
.BI --space= SPACE
|
||||
.BI --address= ADDRESS
|
||||
.BI --write= HEXDATA
|
||||
.RE
|
||||
|
||||
Sending arbitrary packets:
|
||||
|
|
@ -51,16 +51,16 @@ is a more appropriate tool.
|
|||
|
||||
If not specified, the default values are
|
||||
.RS
|
||||
.BI \-\-ip= 192.168.1.121
|
||||
.BI \-\-port= 27181
|
||||
.BI \-\-timeout= .2
|
||||
.BI --ip= 192.168.1.121
|
||||
.BI --port= 27181
|
||||
.BI --timeout= .2
|
||||
.RE
|
||||
|
||||
This example demonstrates reading the HOSTMOT2 identifying string from the
|
||||
IDROM in space 0:
|
||||
.RS
|
||||
.nf
|
||||
$ elbpcom \-\-space 0 \-\-address 0x104 \-\-read 8
|
||||
$ elbpcom --space 0 --address 0x104 --read 8
|
||||
> 82420401
|
||||
< 484f53544d4f5432
|
||||
HOSTMOT2
|
||||
|
|
@ -71,9 +71,9 @@ Finally, the response is shown in ASCII, with "." replacing any non-ASCII
|
|||
characters. This is similar to the following invocations of mesaflash:
|
||||
.RS
|
||||
.nf
|
||||
$ ./mesaflash \-\-device 7i80 \-\-rpo 0x104
|
||||
$ ./mesaflash --device 7i80 --rpo 0x104
|
||||
54534F48
|
||||
$ ./mesaflash \-\-device 7i80 \-\-rpo 0x108
|
||||
$ ./mesaflash --device 7i80 --rpo 0x108
|
||||
32544F4D
|
||||
.fi
|
||||
.RE
|
||||
|
|
|
|||
|
|
@ -23,53 +23,53 @@
|
|||
.SH NAME
|
||||
gladevcp \- Virtual Control Panel for LinuxCNC based on Glade, Gtk and HAL widgets
|
||||
.SH SYNOPSIS
|
||||
\fBgladevcp\fR [\-g \fIWxH+X+Y\fR] [\-c \fIcomponent-name\fR] [\-u \fIhandler\fR] [\-U \fIuseroption\fR] [\-H \fIhalfile\fR] [\-d] \fImyfile.ui\fR
|
||||
\fBgladevcp\fR [-g \fIWxH+X+Y\fR] [-c \fIcomponent-name\fR] [-u \fIhandler\fR] [-U \fIuseroption\fR] [-H \fIhalfile\fR] [-d] \fImyfile.ui\fR
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-g\fR \fIWxH+X+Y\fR
|
||||
\fB-g\fR \fIWxH+X+Y\fR
|
||||
This sets the initial geometry of the root window.
|
||||
Use 'WxH' for just size, '+X+Y' for just position, or 'WxH+X+Y' for both.
|
||||
Size / position use pixel units. Position is referenced from top left.
|
||||
.TP
|
||||
\fB\-c\fR \fIcomponent-name\fR
|
||||
\fB-c\fR \fIcomponent-name\fR
|
||||
Use \fIcomponent-name\fR as the HAL component name. If the component name is
|
||||
not specified, the basename of the ui file is used.\fR
|
||||
.TP
|
||||
\fB\-u\fR \fIhandler\fR
|
||||
\fB-u\fR \fIhandler\fR
|
||||
Instructs gladevcp to inspect the Python script \fIhandler\fR for event handlers,
|
||||
and connect them to signals in the ui file.\fR
|
||||
.TP
|
||||
\fB\-U\fR \fIuseroption\fR
|
||||
\fB-U\fR \fIuseroption\fR
|
||||
gladevcp collects all \fIuseroption\fR strings and passes them to the handler init()
|
||||
method as a list of strings without further inspection.\fR
|
||||
.TP
|
||||
\fB\-x\fR \fIXID\fR
|
||||
\fB-x\fR \fIXID\fR
|
||||
Reparent gladevcp into an existing window \fIXID\fR instead of
|
||||
creating a new top level window.\fR
|
||||
.TP
|
||||
\fB\-H\fR \fIhalfile\fR
|
||||
gladevcp runs \fIhalfile\fR - a list of HAL commands - by executing \fIhalcmd \-c halfile\fR
|
||||
\fB-H\fR \fIhalfile\fR
|
||||
gladevcp runs \fIhalfile\fR - a list of HAL commands - by executing \fIhalcmd -c halfile\fR
|
||||
after the HAL component is finalized.\fR
|
||||
|
||||
.TP
|
||||
\fB\-d\fR
|
||||
\fB-d\fR
|
||||
enable debug output.
|
||||
|
||||
.TP
|
||||
\fB\-R\fR \fIgtkrcfile\fR
|
||||
\fB-R\fR \fIgtkrcfile\fR
|
||||
explicitly load a gtkrc file.\fR
|
||||
|
||||
.TP
|
||||
\fB\-t\fR \fITHEME\fR
|
||||
\fB-t\fR \fITHEME\fR
|
||||
set gtk theme. Default is \fIsystem\fR theme. Different panels can have different themes.
|
||||
|
||||
.TP
|
||||
\fB\-m\fR \fIMAXIMUM\fR
|
||||
force panel window to maxumize. Together with the \fI\-g geometry\fR option
|
||||
\fB-m\fR \fIMAXIMUM\fR
|
||||
force panel window to maxumize. Together with the \fI-g geometry\fR option
|
||||
one can move the panel to a second monitor and force it to use all of the screen
|
||||
|
||||
.TP
|
||||
\fB\-R\fR
|
||||
\fB-R\fR
|
||||
explicitly deactivate workaround for a gtk bug which makes matches of widget and widget_class
|
||||
matches in gtk theme and gtkrc files fail. Normally not needed.
|
||||
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@
|
|||
.TH gs2_vfd "1" "January 1, 2009" "GS2 VFD" "LinuxCNC Documentation"
|
||||
|
||||
.SH NAME
|
||||
\fBgs2_vfd\fR \- HAL userspace component for Automation Direct GS2 VFD's
|
||||
\fBgs2_vfd\fR - HAL userspace component for Automation Direct GS2 VFD's
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B gs2_vfd
|
||||
|
|
@ -42,44 +42,44 @@ component. This component reads and writes to the GS2 via a modbus connection.
|
|||
|
||||
.SH OPTIONS
|
||||
.B
|
||||
.IP \-b,\ \-\-bits\ <n>
|
||||
.IP -b,\ --bits\ <n>
|
||||
(default 8) Set number of data bits to <n>, where n must be from 5 to 8 inclusive
|
||||
.B
|
||||
.IP \-d,\ \-\-device\ <path>
|
||||
.IP -d,\ --device\ <path>
|
||||
(default /dev/ttyS0) Set the name of the serial device node to use.
|
||||
.B
|
||||
.IP \-v,\ \-\-verbose
|
||||
.IP -v,\ --verbose
|
||||
Turn on verbose mode.
|
||||
.B
|
||||
.IP \-g,\ \-\-debug
|
||||
.IP -g,\ --debug
|
||||
Turn on debug messages. Note that if there are serial errors, this may
|
||||
become annoying. Debug mode will cause all modbus messages to be printed
|
||||
in hex on the terminal.
|
||||
.B
|
||||
.IP \-n,\ \-\-name\ <string>
|
||||
.IP -n,\ --name\ <string>
|
||||
(default gs2_vfd) Set the name of the HAL module. The HAL comp name will be set to <string>, and all pin and parameter names will begin with <string>.
|
||||
.B
|
||||
.IP \-p,\ \-\-parity\ [even,odd,none]
|
||||
.IP -p,\ --parity\ [even,odd,none]
|
||||
(default odd) Set serial parity to even, odd, or none.
|
||||
.B
|
||||
.IP \-r,\ \-\-rate\ <n>
|
||||
.IP -r,\ --rate\ <n>
|
||||
(default 38400) Set baud rate to <n>. It is an error if the rate is not one of the following: 110, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
|
||||
.B
|
||||
.IP \-s,\ \-\-stopbits\ [1,2]
|
||||
.IP -s,\ --stopbits\ [1,2]
|
||||
(default 1) Set serial stop bits to 1 or 2
|
||||
.B
|
||||
.IP \-t,\ \-\-target\ <n>
|
||||
.IP -t,\ --target\ <n>
|
||||
(default 1) Set MODBUS target (slave) number. This must match the device number you set on the GS2.
|
||||
.B
|
||||
.IP \-A,\ \-\-accel\-seconds\ <n>
|
||||
.IP -A,\ --accel-seconds\ <n>
|
||||
(default 10.0) Seconds to accelerate the spindle from 0 to Max RPM.
|
||||
.B
|
||||
.IP \-D,\ \-\-decel\-seconds\ <n>
|
||||
.IP -D,\ --decel-seconds\ <n>
|
||||
(default 0.0) Seconds to decelerate the spindle from Max RPM to 0.
|
||||
If set to 0.0 the spindle will be allowed to coast to a stop without
|
||||
controlled deceleration.
|
||||
.B
|
||||
.IP \-R,\ \-\-braking\-resistor
|
||||
.IP -R,\ --braking-resistor
|
||||
This argument should be used when a braking resistor is installed on the
|
||||
GS2 VFD (see Appendix A of the GS2 manual). It disables deceleration
|
||||
over-voltage stall prevention (see GS2 modbus Parameter 6.05), allowing
|
||||
|
|
@ -90,74 +90,74 @@ braking resistor.
|
|||
|
||||
.SH PINS
|
||||
.B
|
||||
.IP <name>.DC\-bus\-volts\ (float,\ out)
|
||||
.IP <name>.DC-bus-volts\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.at\-speed\ (bit,\ out)
|
||||
.IP <name>.at-speed\ (bit,\ out)
|
||||
when drive is at commanded speed
|
||||
.B
|
||||
.IP <name>.err\-reset\ (bit,\ in)
|
||||
.IP <name>.err-reset\ (bit,\ in)
|
||||
reset errors sent to VFD
|
||||
.B
|
||||
.IP <name>.firmware\-revision\ (s32,\ out)
|
||||
.IP <name>.firmware-revision\ (s32,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.frequency\-command\ (float,\ out)
|
||||
.IP <name>.frequency-command\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.frequency\-out\ (float,\ out)
|
||||
.IP <name>.frequency-out\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.is\-stopped\ (bit,\ out)
|
||||
.IP <name>.is-stopped\ (bit,\ out)
|
||||
when the VFD reports 0 Hz output
|
||||
.B
|
||||
.IP <name>.load\-percentage\ (float,\ out)
|
||||
.IP <name>.load-percentage\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.motor\-RPM\ (float,\ out)
|
||||
.IP <name>.motor-RPM\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.output\-current\ (float,\ out)
|
||||
.IP <name>.output-current\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.output\-voltage\ (float,\ out)
|
||||
.IP <name>.output-voltage\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.power\-factor\ (float,\ out)
|
||||
.IP <name>.power-factor\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.scale\-frequency\ (float,\ out)
|
||||
.IP <name>.scale-frequency\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.speed\-command\ (float,\ in)
|
||||
.IP <name>.speed-command\ (float,\ in)
|
||||
speed sent to VFD in RPM It is an error to send a speed faster than the Motor Max RPM as set in the VFD
|
||||
.B
|
||||
.IP <name>.spindle\-fwd\ (bit,\ in)
|
||||
.IP <name>.spindle-fwd\ (bit,\ in)
|
||||
1 for FWD and 0 for REV sent to VFD
|
||||
.B
|
||||
.IP <name>.spindle\-on\ (bit,\ in)
|
||||
.IP <name>.spindle-on\ (bit,\ in)
|
||||
1 for ON and 0 for OFF sent to VFD, only on when running
|
||||
.B
|
||||
.IP <name>.spindle\-rev\ (bit,\ in)
|
||||
.IP <name>.spindle-rev\ (bit,\ in)
|
||||
1 for ON and 0 for OFF, only on when running
|
||||
.B
|
||||
.IP <name>.status\-1\ (s32,\ out)
|
||||
.IP <name>.status-1\ (s32,\ out)
|
||||
Drive Status of the VFD (see the GS2 manual)
|
||||
.B
|
||||
.IP <name>.status\-2\ (s32,\ out)
|
||||
.IP <name>.status-2\ (s32,\ out)
|
||||
Drive Status of the VFD (see the GS2 manual) Note that the value is a sum of all the bits that are on. So a 163 which means the drive is in the run mode is the sum of 3 (run) + 32 (freq set by serial) + 128 (operation set by serial).
|
||||
|
||||
.SH PARAMETERS
|
||||
.B
|
||||
.IP <name>.error\-count\ (s32,\ RW)
|
||||
.IP <name>.error-count\ (s32,\ RW)
|
||||
.B
|
||||
.IP <name>.loop\-time\ (float,\ RW)
|
||||
.IP <name>.loop-time\ (float,\ RW)
|
||||
how often the modbus is polled (default 0.1)
|
||||
.B
|
||||
.IP <name>.nameplate\-HZ\ (float,\ RW)
|
||||
.IP <name>.nameplate-HZ\ (float,\ RW)
|
||||
Nameplate Hz of motor (default 60)
|
||||
.B
|
||||
.IP <name>.nameplate\-RPM\ (float,\ RW)
|
||||
.IP <name>.nameplate-RPM\ (float,\ RW)
|
||||
Nameplate RPM of motor (default 1730)
|
||||
.B
|
||||
.IP <name>.retval\ (s32,\ RW)
|
||||
|
|
@ -166,8 +166,8 @@ the return value of an error in HAL
|
|||
.IP <name>.tolerance\ (float,\ RW)
|
||||
speed tolerance (default 0.01)
|
||||
.B
|
||||
.IP <name>.ack\-delay\ (s32,\ RW)
|
||||
number of read/write cycles before checking at\-speed (default 2)
|
||||
.IP <name>.ack-delay\ (s32,\ RW)
|
||||
number of read/write cycles before checking at-speed (default 2)
|
||||
|
||||
.SH SEE ALSO
|
||||
\fIGS2 Driver\fR in the LinuxCNC documentation for a full description of the \fBGS2\fR syntax
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@
|
|||
.SH NAME
|
||||
hal_input \- control HAL pins with any Linux input device, including USB HID devices
|
||||
.SH SYNOPSIS
|
||||
\fIloadusr\fR \fBhal_input\fR \fI[\-KRAL] inputspec ...\fR
|
||||
\fIloadusr\fR \fBhal_input\fR \fI[-KRAL] inputspec ...\fR
|
||||
.SH DESCRIPTION
|
||||
hal_input is an interface between HAL and any Linux input device, including USB
|
||||
HID devices. For each device named, \fBhal_input\fR creates pins corresponding
|
||||
|
|
@ -51,81 +51,81 @@ If the first character of the \fIinputspec\fR is a "+", then \fBhal_input\fR
|
|||
requests exclusive access to the device. The first device matching an
|
||||
\fIinputspec\fR is used. Any number of \fIinputspec\fRs may be used.
|
||||
.PP
|
||||
A \fIsubset option\fI may precede each \fIinputspec\fR. The subset option
|
||||
A \fIsubset option\fI may preceed each \fIinputspec\fR. The subset option
|
||||
begins with a dash. Each letter in the subset option specifies a device
|
||||
feature to \fBinclude\fR. Features that are not specified are excluded.
|
||||
For instance, to export keyboard LEDs to HAL without exporting keys, use
|
||||
.RS 12
|
||||
hal_input \-L \fIkeyboard\fR ...
|
||||
hal_input -L \fIkeyboard\fR ...
|
||||
.RE
|
||||
|
||||
.SH DEVICE FEATURES SUPPORTED
|
||||
.IP \(bu 4
|
||||
EV_KEY (buttons and keys). Subset \-K
|
||||
EV_KEY (buttons and keys). Subset -K
|
||||
.IP \(bu 4
|
||||
EV_ABS (absolute analog inputs). Subset \-A
|
||||
EV_ABS (absolute analog inputs). Subset -A
|
||||
.IP \(bu 4
|
||||
EV_REL (relative analog inputs). Subset \-R
|
||||
EV_REL (relative analog inputs). Subset -R
|
||||
.IP \(bu 4
|
||||
EV_LED (LED outputs). Subset \-L
|
||||
EV_LED (LED outputs). Subset -L
|
||||
.SH HAL PINS AND PARAMETERS
|
||||
.SS For buttons
|
||||
.TP
|
||||
.B input.\fIN\fB.btn\-\fIname\fR bit out
|
||||
.B input.\fIN\fB.btn-\fIname\fR bit out
|
||||
.TQ
|
||||
.B input.\fIN\fB.btn\-\fIname\fB\-not\fR bit out
|
||||
.B input.\fIN\fB.btn-\fIname\fB-not\fR bit out
|
||||
Created for each button on the device.
|
||||
.SS For keys
|
||||
.TP
|
||||
.B input.\fIN\fB.key\-\fIname\fB
|
||||
.B input.\fIN\fB.key-\fIname\fB
|
||||
.TQ
|
||||
.B input.\fIN\fB.key\-\fIname\fB\-not
|
||||
.B input.\fIN\fB.key-\fIname\fB-not
|
||||
Created for each key on the device.
|
||||
.SS For absolute axes
|
||||
.TP
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-counts\fR s32 out
|
||||
.B input.\fIN\fB.abs-\fIname\fB-counts\fR s32 out
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-position\fR float out
|
||||
.B input.\fIN\fB.abs-\fIname\fB-position\fR float out
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-scale\fR parameter float rw
|
||||
.B input.\fIN\fB.abs-\fIname\fB-scale\fR parameter float rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-offset\fR parameter float rw
|
||||
.B input.\fIN\fB.abs-\fIname\fB-offset\fR parameter float rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-fuzz\fR parameter s32 rw
|
||||
.B input.\fIN\fB.abs-\fIname\fB-fuzz\fR parameter s32 rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-flat\fR parameter s32 rw
|
||||
.B input.\fIN\fB.abs-\fIname\fB-flat\fR parameter s32 rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-min\fR parameter s32 r
|
||||
.B input.\fIN\fB.abs-\fIname\fB-min\fR parameter s32 r
|
||||
.TQ
|
||||
.B input.\fIN\fB.abs\-\fIname\fB\-max\fR parameter s32 r
|
||||
.B input.\fIN\fB.abs-\fIname\fB-max\fR parameter s32 r
|
||||
Created for each absolute axis on the device. Device positions closer than
|
||||
\fBflat\fR to \fBoffset\fR are reported as \fBoffset\fR in \fBcounts\fR, and
|
||||
\fBcounts\fR does not change until the device position changes by at least
|
||||
\fBfuzz\fR. The position is computed as \fBposition\fR = (\fBcounts\fR \-
|
||||
\fBfuzz\fR. The position is computed as \fBposition\fR = (\fBcounts\fR -
|
||||
\fBoffset\fR) / \fBscale\fR. The default value of \fBscale\fR and \fBoffset\fR
|
||||
map the range of the axis reported by the operating system to [\-1,1]. The
|
||||
map the range of the axis reported by the operating system to [-1,1]. The
|
||||
default values of \fBfuzz\fR and \fBflat\fR are those reported by the operating
|
||||
system. The values of \fBmin\fR and \fBmax\fR are those reported by the
|
||||
operating system.
|
||||
.SS For relative axes
|
||||
.TP
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-counts\fR s32 out
|
||||
.B input.\fIN\fB.rel-\fIname\fB-counts\fR s32 out
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-position\fR float out
|
||||
.B input.\fIN\fB.rel-\fIname\fB-position\fR float out
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-reset\fR bit in
|
||||
.B input.\fIN\fB.rel-\fIname\fB-reset\fR bit in
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-scale\fR parameter float rw
|
||||
.B input.\fIN\fB.rel-\fIname\fB-scale\fR parameter float rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-absolute\fR parameter s32 rw
|
||||
.B input.\fIN\fB.rel-\fIname\fB-absolute\fR parameter s32 rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-precision\fR parameter s32 rw
|
||||
.B input.\fIN\fB.rel-\fIname\fB-precision\fR parameter s32 rw
|
||||
.TQ
|
||||
.B input.\fIN\fB.rel\-\fIname\fB\-last\fR parameter s32 rw
|
||||
.B input.\fIN\fB.rel-\fIname\fB-last\fR parameter s32 rw
|
||||
Created for each relative axis on the device. As long as \fBreset\fR is true,
|
||||
\fBcounts\fR is reset to zero regardless of any past or current axis movement.
|
||||
Otherwise, \fBcounts\fR increases or decreases according to the motion of the
|
||||
axis. \fBcounts\fR is divided by \fRposition\-scale\fR to give \fBposition\fR.
|
||||
axis. \fBcounts\fR is divided by \fRposition-scale\fR to give \fBposition\fR.
|
||||
The default value of \fBposition\fR is 1. There are some devices, notably
|
||||
scroll wheels, which return signed values with less resolution than 32 bits.
|
||||
The default value of \fBprecision\fR is 32. \fBprecision\fR can be set to 8
|
||||
|
|
@ -136,9 +136,9 @@ correctly. \fBlast\fR shows the most recent count value returned by the
|
|||
device, and is used in the implementation of \fBabsolute\fR.
|
||||
.SS For LEDs
|
||||
.TP
|
||||
.B input.\fIN\fB.led\-\fIname\fR bit out
|
||||
.B input.\fIN\fB.led-\fIname\fR bit out
|
||||
.TQ
|
||||
.B input.\fIN\fB.led\-\fIname\fB\-invert\fR parameter bit rw
|
||||
.B input.\fIN\fB.led-\fIname\fB-invert\fR parameter bit rw
|
||||
Created for each LED on the device.
|
||||
.SH PERMISSIONS AND UDEV
|
||||
By default, the input devices may not be accessible to regular
|
||||
|
|
|
|||
|
|
@ -1,77 +0,0 @@
|
|||
.\" Man page for hal_manualtoolchange userspace component.
|
||||
.\" Written 05 APR 2017 by Joe Hildreth (joeh@threerivershospital.com)
|
||||
.\"
|
||||
.\" This is free documentation; you can redistribute it and/or
|
||||
.\" modify it under the terms of the GNU General Public License as
|
||||
.\" published by the Free Software Foundation; either version 2 of
|
||||
.\" the License, or (at your option) any later version.
|
||||
.\"
|
||||
.\" The GNU General Public License's references to "object code"
|
||||
.\" and "executables" are to be interpreted as the output of any
|
||||
.\" document formatting or typesetting system, including
|
||||
.\" intermediate and printed output.
|
||||
.\"
|
||||
.\" This manual is distributed in the hope that it will be useful,
|
||||
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
.\" GNU General Public License for more details.
|
||||
.\"
|
||||
.\" You should have received a copy of the GNU General Public
|
||||
.\" License along with this manual; if not, write to the Free
|
||||
.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
|
||||
.\" USA.
|
||||
.TH hal_manualtoolchange 1 "04 APR 2017" "LinuxCNC Documentation" "HAL Userspace Component"
|
||||
.SH NAME
|
||||
hal_manualtoolchange \- HAL userspace component to enable manual tool changes.
|
||||
.SH SYNOPSIS
|
||||
loadusr hal_manualtoolchange
|
||||
.SH DESCRIPTION
|
||||
hal_manualtoolchange is a LinuxCNC userspace component that allows users with machines lacking automatic tool changers to make manual tool changes. In use when a M6 tool change is encountered, the motion component will stop the spindle and pause the program. The hal_manualtoolchange component will then receive a signal from the motion component causing it to display a tool change window prompting the user which tool number to load based on the last T\- number programmed. The dialog will stay active until the "continue" button is pressed. When the "continue" button is pressed, hal_manualtoolchange will then signal the motion component that the tool change is complete thus allowing motion to turn the spindle back on and resume program execution.
|
||||
.PP
|
||||
Additionally, The hal_manualtoolchange component includes a hal pin for a button that can be connected to a physical button to complete the tool change and remove the window prompt (hal_manualtoolchange.change_button).
|
||||
.PP
|
||||
hal_manualtoolchange can be used even when AXIS is not used as the GUI. This component is most useful if you have presettable tools and you use the tool table.
|
||||
.SH PINS
|
||||
.TP
|
||||
.B hal_manualtoolchange.number\fR s32 in\fR
|
||||
Receives last programmed T\- number.
|
||||
.TP
|
||||
.B hal_manualtoolchange.change\fR bit in\fR
|
||||
Receives signal to do tool change.
|
||||
.TP
|
||||
.B hal_manualtoolchange.changed\fR bit out\fR
|
||||
Signifies that the tool change is complete.
|
||||
.TP
|
||||
.B hal_manualtoolchange.change_button\fR bit in\fR
|
||||
Pin to allow an external switch to signify that the tool change is complete.
|
||||
.SH USAGE
|
||||
Normal usage is to load the component in your HAL file and net the appropriate pins from the\fI motion\fR and\fI io\fR components. The following lines are typical in a HAL file when using the hal_manualtoolchange userspace component.
|
||||
.TP
|
||||
.B loadusr \-W hal_manualtoolchange
|
||||
This will load the hal_manualtoolchange userspace component waiting for the component to be ready before continuing.
|
||||
.TP
|
||||
.B net tool\-change iocontrol.0.tool\-change => hal_manualtoolchange.change
|
||||
When an M6 code is run, motion sets \fI iocontrol.0.tool\-change \fR to high indicating a tool change. This pin should be netted to \fI hal_manualtoolchange.change\fR. This causes the Tool change dialog to be displayed on screen and wait for the user to either click the continue button on the dialog or press an externally connected button.
|
||||
.TP
|
||||
.B net tool\-changed iocontrol.0.tool\-changed <= hal_manualtoolchange.changed
|
||||
When the Tool change dialog's continue button is pressed, it will set the
|
||||
.I hal_manualtoolchange.changed
|
||||
pin to high, this should be netted to the
|
||||
.I iocontrol.0.tool\-changed
|
||||
pin, indicating to the motion controller that the tool change has been completed and can continue with the execution of the G-code program.
|
||||
.TP
|
||||
.B net tool\-number iocontrol.0.tool\-prep\-number => hal_manualtoolchange.number
|
||||
When a T\- command is executed in a G-code program, the tool number will held in the
|
||||
.I iocontrol.0.tool\-prep\-number\fR. \fR
|
||||
This pin should be netted to
|
||||
.I hal_manualtoolchange.number\fR. \fR
|
||||
The value of this pin, the tool number is displayed in the Tool change dialog to let the user know which tool should be loaded.
|
||||
.TP
|
||||
.B net tool\-prepare\-loopback iocontrol.0.tool\-prepare => iocontrol.0.tool\-prepared
|
||||
The \fI iocontrol.0.tool\-prepare \fR pin will go true when a Tn tool prepare is requested. Since there is not automated tool changer this pin should be netted to \fI iocontrol.0.tool\-prepared \fR to indocate that the tool has been prepared.
|
||||
.PP
|
||||
If you wish to use an external button to signal the hal_manualtoolchange component that the tool change is complete simply bring the button into HAL (via a parport input pin or a hostmot2 gpio input or similar), and wire it directly to the \fI hal_manualtoolchange.change_button \fR pin. For Example:
|
||||
.PP
|
||||
.B net tool\-changed\-btn hal_manualtoolchange.change_button <= parport.0.pin\-15\-in
|
||||
.SH SEE ALSO
|
||||
motion(1) iocontrol(1) halcmd(1)
|
||||
|
|
@ -1,178 +0,0 @@
|
|||
.\" Man page for hal_manualtoolchange userspace component.
|
||||
.\" Written 12 APR 2017 by Joe Hildreth (joeh@threerivershospital.com)
|
||||
.\"
|
||||
.\" This is free documentation; you can redistribute it and/or
|
||||
.\" modify it under the terms of the GNU General Public License as
|
||||
.\" published by the Free Software Foundation; either version 2 of
|
||||
.\" the License, or (at your option) any later version.
|
||||
.\"
|
||||
.\" The GNU General Public License's references to "object code"
|
||||
.\" and "executables" are to be interpreted as the output of any
|
||||
.\" document formatting or typesetting system, including
|
||||
.\" intermediate and printed output.
|
||||
.\"
|
||||
.\" This manual is distributed in the hope that it will be useful,
|
||||
.\" but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
.\" MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
.\" GNU General Public License for more details.
|
||||
.\"
|
||||
.\" You should have received a copy of the GNU General Public
|
||||
.\" License along with this manual; if not, write to the Free
|
||||
.\" Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111,
|
||||
.\" USA.
|
||||
.TH hal_parport 1 "12 APR 2017" "LinuxCNC Documentation" "HAL Realtime Component"
|
||||
.SH NAME
|
||||
hal_parport \- Realtime HAL component to communicate with one or more pc parallel ports.
|
||||
.SH SYNOPSIS
|
||||
.B loadrt hal_parport cfg="\fIport_addr \fR[\fItype\fR] [[\fIport_addr \fR[\fItype\fR] ...]\fB"
|
||||
.SH DESCRIPTION
|
||||
The hal_parport component is a realtime component that provides connections from HAL via halpins to the physical pins of one or more parallel ports. It provides a read and write function to send and receive data to the attached parallel port(s).
|
||||
.PP
|
||||
The hal_parport component supports up to \fB8 \fRphysical parallel ports.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.B cfg="port_addr [type] [[port_addr [type] ...]"
|
||||
|
||||
The cfg string tells hal_parport the address(es) of the parallel port(s) and whether the port(s) is/are used as an input or output port(s). Up to eight parallel ports are supported by the component.
|
||||
|
||||
The \fBport_addr \fRparameter of the configuration string may be either the physical base address of a parallel port or specified as the detected parallel port via Linux parport_pc driver. In which case, a \fBport_addr \fRof \fI0 \fRis the first parallel port detected on the system, \fI1 \fRis the next, and so on.
|
||||
|
||||
The \fBtype \fRparameter of the configuration string determines how the I/O bits of the port are used. There are four possible options and if none is specified will default to out.
|
||||
|
||||
\fIin \fR\- Sets the 8 bits of the data port to input. In this mode the parallel port has a total of 13 input pins and 4 output pins.
|
||||
|
||||
\fIout \fR\- Sets the 8 bits of the data port to output. In this mode the parallel port has a total of 5 input pins and 12 output pins.
|
||||
|
||||
\fIepp \fR\- This option is the same as setting to out, but can cause the computer to change the electrical characteristics of the port. (\fISee USAGE below\fR.)
|
||||
|
||||
\fIx \fR\- The option allows ports with open collectorts on the control group pins to be configured as inputs resulting in 8 output pins and 9 input pins. (\fISee USAGE below\fR.)
|
||||
.SH PINS
|
||||
.TP
|
||||
The pins created by the hal_parport component depends on how it is configured in the \fBcfg="" \fRstring passed to it. (\fISee OPTIONS\fR.)
|
||||
|
||||
\fBparport.<p>.pin\-<n>\-out (bit) \fRDrives a physical output pin.
|
||||
|
||||
\fBparport.<p>.pin\-<n>\-in (bit) \fRTracks a physical input pin.
|
||||
|
||||
\fBparport.<p>.pin\-<n>\-in\-not (bit) \fRTracks a physical input pin, but inverted.
|
||||
|
||||
For each pin created, \fB<p> \fRis the port number, and \fB<n> \fRis the physical pin number in the 25 pin D\-shell connector.
|
||||
|
||||
For each physical output pin, the driver creates a single HAL pin, for example: \fBparport.0.pin\-14\-out\fR.
|
||||
|
||||
For each physical input pin, the driver creates two HAL pins, for example: \fBparport.0.pin\-12\-in \fRand \fBparport.0.pin\-12\-in\-not\fR.
|
||||
|
||||
The \fB\-in \fRHAL pin is TRUE if the physical pin is high, and FALSE if the physical pin is low. The \fB\-in\-not \fRHAL pin is inverted and is FALSE if the physical pin is high.
|
||||
|
||||
The following lists the input and output pins by the type setting used in the cfg="" string.
|
||||
|
||||
\fBin\fR: Pins 2,3,4,5,6,7,8,9,10,11,12,13,15 are input pins and pins 1,14,16 and 17 are output pins.
|
||||
|
||||
\fBout/epp\fR: Pins 10,11,12,13 and 15 are input pins and pins 1,2,3,4,5,6,7,8,9,14,16 and 17 are output pins.
|
||||
|
||||
\fBx\fR: Pins 1,10,11,12,13,14,15,16 and 17 are input pins and pins 2,3,4,5,6,7,8,9 are output pins. (\fISee USAGE section\fR.)
|
||||
.SH PARAMETERS
|
||||
.TP
|
||||
\fBparport.<p>.pin\-<n>\-out\-invert (bit)
|
||||
\fRInverts an output pin.
|
||||
.TP
|
||||
\fBparport.<p>.pin\-<n>\-out\-reset (bit)
|
||||
\fR(only for out pins) TRUE if this pin should be reset when the .reset function is executed.
|
||||
.TP
|
||||
\fBparport.<p>.reset\-time' (U32)
|
||||
\fRThe time (in nanoseconds) between a pin is set by write and reset by the reset function if it is enabled.
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
\fBparport.<p>.read(funct)
|
||||
\fRReads physical input pins of port <portnum> and updates HAL \-in and \-in\-not pins.
|
||||
.TP
|
||||
\fBparport.read\-all (funct)
|
||||
Reads physical input pins of all ports and updates HAL \-in and \-in\-not pins.
|
||||
.TP
|
||||
\fBparport.<p>.write (funct)
|
||||
Reads HAL \-out pins of port <p> and updates that port’s physical output pins.
|
||||
.TP
|
||||
\fBparport.write\-all (funct)
|
||||
Reads HAL \-out pins of all ports and updates all physical output pins.
|
||||
.TP
|
||||
\fBparport.<p>.reset (funct)
|
||||
Waits until \fIreset\-time \fRhas elapsed since the associated write, then resets pins to values indicated by \fI\-out\-reset \fRand \fI\-out\-invert \fRsettings. reset must be later in the same thread as write. 'If '\fI\-out\-reset \fRis TRUE, then the reset function will set the pin to the value of \fI\-out\-invert\fR. This can be used in conjunction with stepgen’s doublefreq to produce one step per period. The stepgen stepspace for that pin must be set to 0 to enable doublefreq.
|
||||
.SH USAGE
|
||||
The hal_parport component is a driver for the traditional PC parallel port. The port has a total of 25 physical pins of which 17 are used for signals. The original parallel port divided those pins into three groups: data, control, and status. The data group consists of 8 output pins, the control group consists of 4 output pins, and the status group consists of 5 input pins.
|
||||
|
||||
In the early 1990’s, the bidirectional parallel port was introduced, which allows the data group to be used for output or input. The HAL driver supports the bidirectional port, and allows the user to set the data group as either input or output. If configured as \fIout\fR, a port provides a total of 12 outputs and 5 inputs. If configured as \fIin\fR, it provides 4 outputs and 13 inputs.
|
||||
|
||||
In some parallel ports, the control group pins are open collectors, which may also be driven low by an external gate. On a board with open collector control pins, if configured as \fIx\fR, it provides 8 outputs, and 9 inputs.
|
||||
|
||||
In some parallel ports, the control group has push-pull drivers and cannot be used as an input.
|
||||
.TP
|
||||
\fBNote: HAL and Open Collectors
|
||||
HAL cannot automatically determine if the x mode bidirectional pins are actually open collectors (OC). If they are not, they cannot be used as inputs, and attempting to drive them LOW from an external source can damage the hardware.
|
||||
|
||||
To determine whether your port has open collector pins, load hal_parport in x mode. With no device attached, HAL should read the pin as TRUE. Next, insert a 470 ohm resistor from one of the control pins to GND. If the resulting voltage on the control pin is close to 0V, and HAL now reads the pin as FALSE, then you have an OC port. If the resulting voltage is far from 0V, or HAL does not read the pin as FALSE, then your port cannot be used in x mode.
|
||||
|
||||
The external hardware that drives the control pins should also use open collector gates (e.g., 74LS05).
|
||||
|
||||
On some computers, BIOS settings may affect whether x mode can be used. SPP mode is most likely to work.
|
||||
.PP
|
||||
No other combinations are supported, and a port cannot be changed from input to output once the driver is installed.
|
||||
|
||||
The parport driver can control up to 8 ports (defined by MAX_PORTS in hal_parport.c). The ports are numbered starting at zero.
|
||||
.TP
|
||||
\fBLoading the hal_parport component
|
||||
|
||||
The hal_parport driver is a real time component so it must be loaded into the real time thread with loadrt. The configuration string describes the parallel ports to be used, and (optionally) their types. If the configuration string does not describe at least one port, it is an error.
|
||||
|
||||
\fBloadrt hal_parport cfg="port [type] [port [type] ...]"
|
||||
.TP
|
||||
\fBSpecifying the Port
|
||||
|
||||
Numbers below 16 refer to parallel ports detected by the system. This is the simplest way to configure the hal_parport driver, and cooperates with the Linux parport_pc driver if it is loaded. A port of 0 is the first parallel port detected on the system, 1 is the next, and so on.
|
||||
.TP
|
||||
\fBBasic configuration
|
||||
|
||||
This will use the first parallel port Linux detects:
|
||||
|
||||
\fBloadrt hal_parport cfg="0"
|
||||
.TP
|
||||
\fBUsing the Port Address
|
||||
|
||||
Instead, the port address may be specified using the hex notation 0x then the address.
|
||||
|
||||
\fBloadrt hal_parport cfg="0x378"
|
||||
.TP
|
||||
\fBSpecifying a port Type
|
||||
|
||||
For each parallel port handled by the hal_parport driver, a type can optionally be specified. The type is one of in, out, epp, or x.
|
||||
|
||||
If the type is not specified, the default is out.
|
||||
|
||||
A type of epp is the same as out, but the hal_parport driver requests that the port switch into EPP mode. The hal_parport driver does not use the EPP bus protocol, but on some systems EPP mode changes the electrical characteristics of the port in a way that may make some marginal hardware work better. The Gecko G540’s charge pump is known to require this on some parallel ports.
|
||||
|
||||
See the Note above about mode x.
|
||||
.TP
|
||||
\fBExample with two parallel ports
|
||||
|
||||
This will enable two system-detected parallel ports, the first in output mode and the second in input mode:
|
||||
|
||||
\fBloadrt hal_parport cfg="0 out 1 in"
|
||||
.TP
|
||||
\fBFunctions single port
|
||||
|
||||
You must also direct LinuxCNC to run the read and write functions.
|
||||
|
||||
\fBaddf parport.read\-all base\-thread
|
||||
\fBaddf parport.write\-all base\-thread
|
||||
.TP
|
||||
\fBFunctions multiple ports
|
||||
|
||||
You can direct LinuxCNC to ruin the read and write functions for all the attached ports.
|
||||
|
||||
\fBaddf parport.0.read base\-thread
|
||||
\fBaddf parport.0.write base\-thread
|
||||
|
||||
\fRThe individual functions are provided for situations where one port needs to be updated in a very fast thread, but other ports can be updated in a slower thread to save CPU time. It is probably not a good idea to use both an \-all function and an individual function at the same time.
|
||||
.SH SEE ALSO
|
||||
Parallel Port Driver (Hardware Drivers Section of LinuxCNC Docs) PCI Parallel Port Example (Hardware Examples Section of LinuxCNC Docs)
|
||||
.SH AUTHOR
|
||||
This man page written by Joe Hildreth as part of the LinuxCNC project. Most of this information was taken from the parallel-port docs located in the Hardware Drivers section of the documentation. To the best of my knowledge that documentation was written by Sebastian Kuzminsky and Chris Radek.
|
||||
|
|
@ -46,31 +46,31 @@ interactively. Use the up arrow to recall previous commands, and press tab to
|
|||
complete the names of items such as pins and signals.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-I\fR
|
||||
\fB-I\fR
|
||||
Before tearing down the realtime environment, run an interactive halcmd.
|
||||
\fBhalrun\fR only. If \fB\-I\fR is used, it must precede all other
|
||||
\fBhalrun\fR only. If \fB-I\fR is used, it must precede all other
|
||||
commandline arguments.
|
||||
.TP
|
||||
\fB\\-f\fR [\fIfile\fR]
|
||||
\fB\-f\fR [\fIfile\fR]
|
||||
Ignore commands on command line, take input from \fIfile\fR
|
||||
instead. If \fIfile\fR is not specified, take input from
|
||||
\fIstdin\fR.
|
||||
.TP
|
||||
\fB\-i \fIinifile\fR
|
||||
\fB-i \fIinifile\fR
|
||||
Use variables from \fIinifile\fR for substitutions. See \fBSUBSTITUTION\fR
|
||||
below.
|
||||
.TP
|
||||
\fB\\-k\fR
|
||||
\fB\-k\fR
|
||||
Keep going after failed command(s). The default is to stop
|
||||
and return failure if any command fails.
|
||||
.TP
|
||||
\fB\\-q\fR
|
||||
\fB\-q\fR
|
||||
display errors only (default)
|
||||
.TP
|
||||
\fB\\-Q\fR
|
||||
\fB\-Q\fR
|
||||
display nothing, execute commands silently
|
||||
.TP
|
||||
\fB\\-s\fR
|
||||
\fB\-s\fR
|
||||
Script-friendly mode. In this mode, \fIshow\fR will not output titles for the items
|
||||
shown. Also, module names will be printed instead of ID codes in pin, param, and funct
|
||||
listings. Threads are printed on a single line, with the thread period, FP usage and
|
||||
|
|
@ -78,22 +78,22 @@ name first, followed by all of the functions in the thread, in execution order.
|
|||
are printed on a single line, with the type, value, and signal name first, followed by
|
||||
a list of pins connected to the signal, showing both the direction and the pin name.
|
||||
.TP
|
||||
\fB\-R\fR
|
||||
\fB-R\fR
|
||||
Release the HAL mutex. This is useful for recovering when a HAL component has crashed
|
||||
while holding the HAL mutex.
|
||||
.TP
|
||||
\fB\\-v\fR
|
||||
\fB\-v\fR
|
||||
display results of each command
|
||||
.TP
|
||||
\fB\\-V\fR
|
||||
\fB\-V\fR
|
||||
display lots of debugging junk
|
||||
.TP
|
||||
\fB\\-h\fR [\fIcommand\fR]
|
||||
\fB\-h\fR [\fIcommand\fR]
|
||||
display a help screen and exit, displays extended help on \fIcommand\fR if specified
|
||||
.SH COMMANDS
|
||||
Commands tell \fBhalcmd\fR what to do. Normally \fBhalcmd\fR
|
||||
reads a single command from the command line and executes it.
|
||||
If the '\fB\-f\fR' option is used to read commands from a file,
|
||||
If the '\fB-f\fR' option is used to read commands from a file,
|
||||
\fBhalcmd\fR reads each line of the file as a new command.
|
||||
Anything following '\fB#\fR' on a line is a comment.
|
||||
.TP
|
||||
|
|
@ -131,21 +131,21 @@ also works by execing \fBlinuxcnc_module_helper\fR or \fBrtapi_app\fR, just like
|
|||
\fI[flags]\fR may be one or more of:
|
||||
.RS
|
||||
.IP \(bu 4
|
||||
\fB\-W\fR to wait for the component to become ready. The component
|
||||
\fB-W\fR to wait for the component to become ready. The component
|
||||
is assumed to have the same name as the first argument of the command.
|
||||
.IP \(bu 4
|
||||
\fB\-Wn name\fR to wait for the component, which will have the given
|
||||
\fB-Wn name\fR to wait for the component, which will have the given
|
||||
name.
|
||||
.IP \(bu 4
|
||||
\fB\-w\fR to wait for the program to exit
|
||||
\fB-w\fR to wait for the program to exit
|
||||
.IP \(bu 4
|
||||
\fB\-i\fR to ignore the program return value (with \-w)
|
||||
\fB-i\fR to ignore the program return value (with -w)
|
||||
.RE
|
||||
.TP
|
||||
\fBwaitusr\fR \fIname\fR
|
||||
(\fIwait\fR for \fIUs\fRe\fIr\fRspace component) Waits for user
|
||||
space component \fIname\fR to disconnect from HAL (usually on exit).
|
||||
The component must already be loaded. Useful near the end of a
|
||||
The component must already be loaded. Usefull near the end of a
|
||||
HAL file to wait until the user closes some user interface component
|
||||
before cleaning up and exiting.
|
||||
.TP
|
||||
|
|
@ -279,7 +279,7 @@ Prints HAL items to \fIstdout\fR in human readable format.
|
|||
\fIitem\fR can be one of "\fBcomp\fR" (components), "\fBpin\fR",
|
||||
"\fBsig\fR" (signals), "\fBparam\fR" (parameters), "\fBfunct\fR"
|
||||
(functions), "\fBthread\fR", or "\fBalias\fR". The type "\fBall\fR"
|
||||
can be used to show matching items of all the preceding types.
|
||||
can be used to show matching items of all the preceeding types.
|
||||
If \fIitem\fR is omitted, \fBshow\fR will print everything.
|
||||
.TP
|
||||
\fBitem\fR
|
||||
|
|
@ -289,7 +289,7 @@ This is equivalent to \fBshow all [item]\fR.
|
|||
\fBsave\fR [\fIitem\fR]
|
||||
Prints HAL items to \fIstdout\fR in the form of HAL commands.
|
||||
These commands can be redirected to a file and later executed
|
||||
using \fBhalcmd \-f\fR to restore the saved configuration.
|
||||
using \fBhalcmd -f\fR to restore the saved configuration.
|
||||
\fIitem\fR can be one of the following:
|
||||
|
||||
"\fBcomp\fR" generates
|
||||
|
|
@ -350,7 +350,7 @@ Removes any alias from the pin or parameter alias.
|
|||
those names that match the pattern, which may be a
|
||||
'shell glob'.
|
||||
For '\fBsig\fR', '\fBpin\fR' and '\fBparam\fR', the first pattern may be
|
||||
\-t\fBdatatype\fR where datatype is the data type (e.g., 'float')
|
||||
-t\fBdatatype\fR where datatype is the data type (e.g., 'float')
|
||||
in this case, the listed pins, signals, or parameters
|
||||
are restricted to the given data type
|
||||
Names are printed on a single line, space separated.
|
||||
|
|
@ -385,7 +385,7 @@ Environment variables have the following formats:
|
|||
\fB$(ENVVAR)\fR
|
||||
.SS Inifile Variables
|
||||
Inifile variables are available only when an inifile was specified with the
|
||||
halcmd \fB\-i\fR flag. They have the following formats:
|
||||
halcmd \fB-i\fR flag. They have the following formats:
|
||||
.IP
|
||||
\fB[SECTION]VAR\fR followed by end-of-line or whitespace
|
||||
.IP
|
||||
|
|
|
|||
|
|
@ -29,39 +29,39 @@ halcompile \- Build, compile and install LinuxCNC HAL components
|
|||
.PD 0
|
||||
.RS 5
|
||||
.PP
|
||||
\fBhalcompile\fR [\fB\-\-compile\fR|\fB\-\-preprocess\fR|\fB\-\-document\fR|\fB\-\-view\-doc\fR] compfile...
|
||||
\fBhalcompile\fR [\fB--compile\fR|\fB--preprocess\fR|\fB--document\fR|\fB--view-doc\fR] compfile...
|
||||
.RE
|
||||
.PP
|
||||
\fIsudo\fR \fBhalcompile\fR [\fB\-\-install\fR|\fB\-\-install\-doc\fR] compfile...
|
||||
\fIsudo\fR \fBhalcompile\fR [\fB--install\fR|\fB--install-doc\fR] compfile...
|
||||
.RS 5
|
||||
.PP
|
||||
\fBhalcompile\fR \fB\-\-compile\fR \fB\-\-userspace\fR cfile...
|
||||
\fBhalcompile\fR \fB--compile\fR \fB--userspace\fR cfile...
|
||||
.RE
|
||||
.PP
|
||||
\fIsudo\fR \fBhalcompile\fR \fB\-\-install\fR \fB\-\-userspace\fR cfile...
|
||||
\fIsudo\fR \fBhalcompile\fR \fB--install\fR \fB--userspace\fR cfile...
|
||||
.PP
|
||||
\fIsudo\fR \fBhalcompile\fR \fB\-\-install\fR \fB\-\-userspace\fR pyfile...
|
||||
\fIsudo\fR \fBhalcompile\fR \fB--install\fR \fB--userspace\fR pyfile...
|
||||
.PD
|
||||
.SH DESCRIPTION
|
||||
\fBhalcompile\fR performs many different functions:
|
||||
.IP \(bu 4
|
||||
Compile \fB.comp\fR and \fB.c\fR files into \fB.so\fR or \fB.ko\fR HAL realtime components (the \fB\-\-compile\fR flag)
|
||||
Compile \fB.comp\fR and \fB.c\fR files into \fB.so\fR or \fB.ko\fR HAL realtime components (the \fB--compile\fR flag)
|
||||
.IP \(bu 4
|
||||
Compile \fB.comp\fR and \fB.c\fR files into HAL userspace components (the \fB\-\-compile \-\-userspace\fR flag)
|
||||
Compile \fB.comp\fR and \fB.c\fR files into HAL userspace components (the \fB--compile --userspace\fR flag)
|
||||
.IP \(bu 4
|
||||
Preprocess \fB.comp\fR files into \fB.c\fR files (the \fB\-\-preprocess\fR flag)
|
||||
Preprocess \fB.comp\fR files into \fB.c\fR files (the \fB--preprocess\fR flag)
|
||||
.IP \(bu 4
|
||||
Extract documentation from \fB.comp\fR files into \fB.9\fR manpage files (the \fB\-\-document\fR flag)
|
||||
Extract documentation from \fB.comp\fR files into \fB.9\fR manpage files (the \fB--document\fR flag)
|
||||
.IP \(bu 4
|
||||
Display documentation from \fB.comp\fR files onscreen (the \fB\-\-view\-doc\fR flag)
|
||||
Display documentation from \fB.comp\fR files onscreen (the \fB--view-doc\fR flag)
|
||||
.IP \(bu 4
|
||||
Compile and install \fB.comp\fR and \fB.c\fR files into the proper directory for HAL realtime components (the \fB\-\-install\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
Compile and install \fB.comp\fR and \fB.c\fR files into the proper directory for HAL realtime components (the \fB--install\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
.IP \(bu 4
|
||||
Install \fB.c\fR and \fB.py\fR files into the proper directory for HAL userspace components (the \fB\-\-install \-\-userspace\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
Install \fB.c\fR and \fB.py\fR files into the proper directory for HAL userspace components (the \fB--install --userspace\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
.IP \(bu 4
|
||||
Extract documentation from \fB.comp\fR files into \fB.9\fR manpage files in the proper system directory (the \fB\-\-install\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
Extract documentation from \fB.comp\fR files into \fB.9\fR manpage files in the proper system directory (the \fB--install\fR flag), which may require \fIsudo\fR to write to system directories.
|
||||
.IP \(bu 4
|
||||
Preprocess \fB.comp\fR files into \fB.c\fR files (the \fB\-\-preprocess\fR flag)
|
||||
Preprocess \fB.comp\fR files into \fB.c\fR files (the \fB--preprocess\fR flag)
|
||||
.SH "SEE ALSO"
|
||||
\fIHalcompile HAL Component Generator\fR in the LinuxCNC documentation for a full description of the \fB.comp\fR syntax, along with examples
|
||||
|
||||
|
|
|
|||
|
|
@ -28,7 +28,7 @@
|
|||
halmeter \- observe HAL pins, signals, and parameters
|
||||
.SH SYNOPSIS
|
||||
.B halmeter
|
||||
[\fB\-s\fR] [\fBpin\fR|\fBsig\fR|\fBparam\fR \fIname\fR] [\fB\-g\fR \fIX-positon Y-position [Width]\fR]
|
||||
[\fB-s\fR] [\fBpin\fR|\fBsig\fR|\fBparam\fR \fIname\fR] [\fB-g\fR \fIX-positon Y-position [Width]\fR]
|
||||
.SH DESCRIPTION
|
||||
\fBhalmeter\fR is used to observe HAL (Hardware Abstraction
|
||||
Layer) pins, signals, or parameters. It serves the same
|
||||
|
|
@ -47,20 +47,20 @@ display the HAL parameter \fIname\fR.
|
|||
If neither \fBpin\fR, \fBsig\fR, or \fBparam\fR are specified, the
|
||||
window starts out blank and the user must select an item to observe.
|
||||
.TP
|
||||
\fB\\-s\fR
|
||||
\fB\-s\fR
|
||||
small window. Non-interactive, must be used with \fBpin\fR, \fBsig\fR,
|
||||
or \fBparam\fR to select the item to display. The item name is displayed
|
||||
in the title bar instead of the window, and there are no "Select" or "Exit"
|
||||
buttons. Handy when you want a lot of meters in a small space.
|
||||
.TP
|
||||
\fB\\-g\fR
|
||||
geometry position. allows one to specify the initial starting position
|
||||
\fB\-g\fR
|
||||
geometry position. allows one to specify the intial starting position
|
||||
and optionally the width of the meter. Referenced from top left of screen
|
||||
in pixel units.
|
||||
Handy when you want to load a lot of meters in a script with out them
|
||||
displaying on top of each other.
|
||||
.SH USAGE
|
||||
Unless \fB\\-s\fR is specified, there are two buttons, "Select" and "Exit".
|
||||
Unless \fB\-s\fR is specified, there are two buttons, "Select" and "Exit".
|
||||
"Select" opens a dialog box to select the item (pin, signal, or parameter)
|
||||
to be observed. "Exit" does what you expect.
|
||||
|
||||
|
|
@ -82,24 +82,24 @@ Open a meter window, with nothing initially displayed. Use the "Select"
|
|||
button to choose an item. Runs in the background leaving the shell
|
||||
free for other commands.
|
||||
.TP
|
||||
\fBhalmeter pin\fR \fIparport.0.pin\-03\-out\fR \fB&\fR
|
||||
Open a meter window, initially displaying HAL pin \fIparport.0.pin\-03\-out\fR.
|
||||
\fBhalmeter pin\fR \fIparport.0.pin-03-out\fR \fB&\fR
|
||||
Open a meter window, initially displaying HAL pin \fIparport.0.pin-03-out\fR.
|
||||
The "Select" button can be used to display other items. Runs in background.
|
||||
|
||||
.TP
|
||||
\fBhalmeter \-s pin\fR \fIparport.0.pin\-03\-out\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin\-03\-out\fR.
|
||||
\fBhalmeter -s pin\fR \fIparport.0.pin-03-out\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin-03-out\fR.
|
||||
The displayed item cannot be changed. Runs in background.
|
||||
|
||||
.TP
|
||||
\fBhalmeter \-s pin\fR \fIparport.0.pin\-03\-out\fR \fB\-g\fR \fI100 500\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin\-03\-out\fR.
|
||||
\fBhalmeter -s pin\fR \fIparport.0.pin-03-out\fR \fB-g\fR \fI100 500\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin-03-out\fR.
|
||||
places it 100 pixels to the left and 500 pixels down from top of screen.
|
||||
The displayed item cannot be changed. Runs in background.
|
||||
|
||||
.TP
|
||||
\fBhalmeter \-s pin\fR \fIparport.0.pin\-03\-out\fR \fB\-g\fR \fI100 500 400\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin\-03\-out\fR.
|
||||
\fBhalmeter -s pin\fR \fIparport.0.pin-03-out\fR \fB-g\fR \fI100 500 400\fR \fB&\fR
|
||||
Open a small meter window, displaying HAL pin \fIparport.0.pin-03-out\fR.
|
||||
places it 100 pixels to the left and 500 pixels down from top of screen.
|
||||
The width will be 400 pixels (270 is default)
|
||||
The displayed item cannot be changed. Runs in background.
|
||||
|
|
|
|||
|
|
@ -31,13 +31,13 @@
|
|||
.SH NAME
|
||||
halrun \- manipulate the LinuxCNC HAL from the command line
|
||||
.SH SYNOPSIS
|
||||
.B halrun \fI\-h\fR
|
||||
.B halrun \fI-h\fR
|
||||
.PP
|
||||
.B halrun [\fI\-I\fR] [\fIhalcmd_opts\fR] [\fIfilename[.hal|.tcl]\fR]
|
||||
.B halrun [\fI-I\fR] [\fIhalcmd_opts\fR] [\fIfilename[.hal|.tcl]\fR]
|
||||
.PP
|
||||
.B halrun \fI\-T\fR [\fIhalcmd_opts\fR] [\fIfilename[.hal|.tcl]\fR]
|
||||
.B halrun \fI-T\fR [\fIhalcmd_opts\fR] [\fIfilename[.hal|.tcl]\fR]
|
||||
.PP
|
||||
.B halrun \fI\-U\fR
|
||||
.B halrun \fI-U\fR
|
||||
.SH DESCRIPTION
|
||||
\fBhalrun\fR is a convenience script used to manipulate the HAL (Hardware
|
||||
Abstraction Layer) from the command line. When invoked, \fBhalrun\fR:
|
||||
|
|
@ -48,41 +48,41 @@ Abstraction Layer) from the command line. When invoked, \fBhalrun\fR:
|
|||
Tears down the realtime environment.
|
||||
|
||||
If no filename is specified, an interactive session is started.
|
||||
The session will use \fBhalcmd\fR(1) unless \-T is specified in
|
||||
The session will use \fBhalcmd\fR(1) unless -T is specified in
|
||||
which case \fBhaltcl\fR(1) will be used.
|
||||
|
||||
If a filename is specified and neither the \-I nor the \-T option
|
||||
If a filename is specifed and neither the -I nor the -T option
|
||||
is included, the filename will be processed by the command
|
||||
interpreter corresponding to the filename extension (\fBhalcmd\fR
|
||||
or \fBhaltcl\fR). After processing, the realtime environment
|
||||
will be torn down.
|
||||
|
||||
If a filename is specified and the \-I or \-T option is included,
|
||||
If a filename is specifed and the -I or -T option is included,
|
||||
the file is processed by the appropriate command interpreter and
|
||||
then an interactive session is started for \fBhalcmd\fR or
|
||||
\fBhaltcl\fR according to the \-I or \-T option.
|
||||
\fBhaltcl\fR according to the -I or -T option.
|
||||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fBhalcmd_opts\fR
|
||||
When a .hal file is specified, the \fBhalcmd_opts\fR are
|
||||
When a .hal file is specifed, the \fBhalcmd_opts\fR are
|
||||
passed to \fBhalcmd\fR. See the man page for \fBhalcmd\fR(1).
|
||||
When a .tcl file is specified, the only valid options are:
|
||||
\-i inifile
|
||||
\-f filename[.tcl|.hal] (alternate means of specifying a file)
|
||||
-i inifile
|
||||
-f filename[.tcl|.hal] (alternate means of specifying a file)
|
||||
.TP
|
||||
\fB\-I\fR
|
||||
\fB-I\fR
|
||||
Run an interactive \fBhalcmd\fR session
|
||||
.TP
|
||||
\fB\-T\fR
|
||||
\fB-T\fR
|
||||
Run an interactive \fBhaltcl\fR session.
|
||||
.TP
|
||||
\fB\-U\fR
|
||||
\fB-U\fR
|
||||
Forcibly cause the realtime environment to exit. It releases the HAL mutex,
|
||||
requests that all HAL components unload, and stops the realtime system.
|
||||
\fB\-U\fR must be the only commandline argument.
|
||||
\fB-U\fR must be the only commandline argument.
|
||||
.TP
|
||||
\fB\\-h\fR
|
||||
\fB\-h\fR
|
||||
display a brief help screen and exit
|
||||
.SH EXAMPLES
|
||||
.SH HISTORY
|
||||
|
|
|
|||
|
|
@ -43,7 +43,7 @@ be redirected to a file or piped to some other program.
|
|||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BI "\-c " CHAN
|
||||
.BI "-c " CHAN
|
||||
instructs
|
||||
.B halsampler
|
||||
to read from FIFO
|
||||
|
|
@ -51,18 +51,18 @@ to read from FIFO
|
|||
FIFOs are numbered from zero, and the default value is zero, so
|
||||
this option is not needed unless multiple FIFOs have been created.
|
||||
.TP
|
||||
.BI "\-n " COUNT
|
||||
.BI "-n " COUNT
|
||||
instructs
|
||||
.B halsampler
|
||||
to read
|
||||
.I COUNT
|
||||
samples from the FIFO, then exit. If
|
||||
.B \-n
|
||||
.B -n
|
||||
is not specified,
|
||||
.B halsampler
|
||||
will read continuously until it is killed.
|
||||
.TP
|
||||
.B \-t
|
||||
.B -t
|
||||
instructs
|
||||
.B halsampler
|
||||
to tag each line by printing the sample number in the first column.
|
||||
|
|
@ -83,21 +83,21 @@ command in a .hal file. Then
|
|||
can be invoked to begin printing data from the FIFO to stdout.
|
||||
.P
|
||||
Data is printed one line per sample. If
|
||||
.B \-t
|
||||
.B -t
|
||||
was specified, the sample number is printed first. The data follows, in the
|
||||
order that the pins were defined in the config string. For example, if the
|
||||
.B sampler
|
||||
config string was "ffbs" then a typical line of output (without
|
||||
.BR \-t )
|
||||
.BR -t )
|
||||
would look like:
|
||||
.P
|
||||
123.55 33.4 0 \-12
|
||||
123.55 33.4 0 -12
|
||||
.P
|
||||
.B halsampler
|
||||
prints data as fast as possible until the FIFO is empty, then it retries at regular intervals, until it is either killed or has printed
|
||||
.I COUNT
|
||||
samples as requested by
|
||||
.BR \-n .
|
||||
.BR -n .
|
||||
Usually, but not always, data printed by
|
||||
.B halsampler
|
||||
will be redirected to a file or piped to some other program.
|
||||
|
|
@ -109,7 +109,7 @@ is forced to overwrite old data,
|
|||
.B halsampler
|
||||
will print 'overrun' on a line by itself to mark each gap in the sampled
|
||||
data. If
|
||||
.B \-t
|
||||
.B -t
|
||||
was specified, gaps in the sequential sample numbers in the first column
|
||||
can be used to determine exactly how many samples were lost.
|
||||
.P
|
||||
|
|
@ -122,7 +122,7 @@ input, so 'waveforms' captured with
|
|||
can be replayed using
|
||||
.BR halstreamer .
|
||||
The
|
||||
.B \-t
|
||||
.B -t
|
||||
option should not be used in this case.
|
||||
|
||||
.SH "EXIT STATUS"
|
||||
|
|
@ -133,11 +133,11 @@ prints a message to stderr and returns failure.
|
|||
Upon printing
|
||||
.I COUNT
|
||||
samples (if
|
||||
.B \-n
|
||||
.B -n
|
||||
was specified) it will shut down and return success. If it is terminated
|
||||
before printing the specified number of samples, it returns failure. This
|
||||
means that when
|
||||
.B \-n
|
||||
.B -n
|
||||
is not specified, it will always return failure when terminated.
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
|
|
|||
|
|
@ -44,7 +44,7 @@ can write it to the HAL pins.
|
|||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
.BI "\-c " CHAN
|
||||
.BI "-c " CHAN
|
||||
instructs
|
||||
.B halstreamer
|
||||
to write to FIFO
|
||||
|
|
@ -77,7 +77,7 @@ config string was "ffbs" then each
|
|||
line of input must consist of two floats, a bit, and a signed integer, in that
|
||||
order and separated by whitespace. Floats must be formatted as required by
|
||||
.BR strtod (3),
|
||||
signed and unsigned integers must be formatted as required by
|
||||
signed and unsigned integers must be formated as required by
|
||||
.BR strtol (3)
|
||||
and
|
||||
.BR strtoul (3),
|
||||
|
|
|
|||
|
|
@ -30,10 +30,10 @@
|
|||
.TH HALTCL "1" "2012-01-31" "LinuxCNC Documentation" "HAL User's Manual"
|
||||
.SH NAME
|
||||
haltcl \- manipulate the LinuxCNC HAL from the command line using a tcl
|
||||
interpreter.
|
||||
interpeter.
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B haltcl [\fI\-i inifile\fR] [\fIfilename\fR\]
|
||||
.B haltcl [\fI-i inifile\fR] [\fIfilename\fR\]
|
||||
.PP
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
|
@ -44,7 +44,7 @@ complex HAL configurations to be set up with a single command.
|
|||
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-i\fR \fIinifile\fR
|
||||
\fB-i\fR \fIinifile\fR
|
||||
If specified, the inifile is read and used to create tcl global variable
|
||||
arrays. An array is created for each SECTION of the inifile with
|
||||
elements for each ITEM in the section.
|
||||
|
|
@ -59,7 +59,7 @@ elements for each ITEM in the section.
|
|||
SECTION_A(ITEM_2) = 2
|
||||
SECTION_B(ITEM_1) = 10
|
||||
.TP
|
||||
\fB\-ini\fR \fIinifile\fR -- declining usage, use \fB\-i\fR \fIinifile\fR
|
||||
\fB-ini\fR \fIinifile\fR -- declining usage, use \fB-i\fR \fIinifile\fR
|
||||
.TP
|
||||
\fBfilename\fR
|
||||
If specified, the tcl commands of \fBfilename\fR are executed. If no filename
|
||||
|
|
@ -70,7 +70,7 @@ is specified, haltcl opens an interactive session.
|
|||
commands for the hal language as described for \fBhalcmd\fR(1). The augmented
|
||||
commands can be listed with the command:
|
||||
|
||||
haltcl: hal \-\-commands
|
||||
haltcl: hal --commands
|
||||
|
||||
addf alias delf delsig getp gets ptype stype help linkpp linkps linksp list loadrt loadusr lock net newsig save setexact_for_test_suite_only setp sets show source start status stop unalias unlinkp unload unloadrt unloadusr unlock waitusr
|
||||
|
||||
|
|
|
|||
|
|
@ -28,14 +28,14 @@
|
|||
halui \- observe HAL pins and command LinuxCNC through NML
|
||||
.SH SYNOPSIS
|
||||
.B halui
|
||||
[\fB\-ini <path-to-ini>\fR]
|
||||
[\fB-ini <path-to-ini>\fR]
|
||||
.SH DESCRIPTION
|
||||
\fBhalui\fR is used to build a User Interface using hardware knobs
|
||||
and switches. It exports a big number of pins, and acts accordingly
|
||||
when these change.
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-ini name\fR
|
||||
\fB-ini name\fR
|
||||
use the \fIname\fR as the configuration file. Note: halui must find the
|
||||
nml file specified in the ini, usually that file is in the same
|
||||
folder as the ini, so it makes sense to run halui from that folder.
|
||||
|
|
@ -55,31 +55,31 @@ pin for clearing most errors
|
|||
|
||||
.SS tool
|
||||
.TP
|
||||
.B halui.tool.length\-offset.a\fR float out \fR
|
||||
.B halui.tool.length-offset.a\fR float out \fR
|
||||
current applied tool length offset for the A axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.b\fR float out \fR
|
||||
.B halui.tool.length-offset.b\fR float out \fR
|
||||
current applied tool length offset for the B axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.c\fR float out \fR
|
||||
.B halui.tool.length-offset.c\fR float out \fR
|
||||
current applied tool length offset for the C axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.u\fR float out \fR
|
||||
.B halui.tool.length-offset.u\fR float out \fR
|
||||
current applied tool length offset for the U axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.v\fR float out \fR
|
||||
.B halui.tool.length-offset.v\fR float out \fR
|
||||
current applied tool length offset for the V axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.w\fR float out \fR
|
||||
.B halui.tool.length-offset.w\fR float out \fR
|
||||
current applied tool length offset for the W axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.x\fR float out \fR
|
||||
.B halui.tool.length-offset.x\fR float out \fR
|
||||
current applied tool length offset for the X axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.y\fR float out \fR
|
||||
.B halui.tool.length-offset.y\fR float out \fR
|
||||
current applied tool length offset for the Y axis
|
||||
.TP
|
||||
.B halui.tool.length\-offset.z\fR float out \fR
|
||||
.B halui.tool.length-offset.z\fR float out \fR
|
||||
current applied tool length offset for the Z axis
|
||||
.TP
|
||||
.B halui.tool.number\fR u32 out \fR
|
||||
|
|
@ -87,13 +87,13 @@ current selected tool
|
|||
|
||||
.SS spindle
|
||||
.TP
|
||||
.B halui.spindle.brake\-is\-on\fR bit out \fR
|
||||
.B halui.spindle.brake-is-on\fR bit out \fR
|
||||
status pin that tells us if brake is on
|
||||
.TP
|
||||
.B halui.spindle.brake\-off\fR bit in \fR
|
||||
.B halui.spindle.brake-off\fR bit in \fR
|
||||
pin for deactivating the spindle brake
|
||||
.TP
|
||||
.B halui.spindle.brake\-on\fR bit in \fR
|
||||
.B halui.spindle.brake-on\fR bit in \fR
|
||||
pin for activating the spindle brake
|
||||
.TP
|
||||
.B halui.spindle.decrease\fR bit in \fR
|
||||
|
|
@ -105,16 +105,16 @@ a rising edge on this pin makes the spindle go forward
|
|||
.B halui.spindle.increase\fR bit in \fR
|
||||
a rising edge on this pin increases the current spindle speed by 100
|
||||
.TP
|
||||
.B halui.spindle.is\-on\fR bit out \fR
|
||||
.B halui.spindle.is-on\fR bit out \fR
|
||||
status pin telling if the spindle is on
|
||||
.TP
|
||||
.B halui.spindle.reverse\fR bit in \fR
|
||||
a rising edge on this pin makes the spindle go reverse
|
||||
.TP
|
||||
.B halui.spindle.runs\-backward\fR bit out \fR
|
||||
.B halui.spindle.runs-backward\fR bit out \fR
|
||||
status pin telling if the spindle is running backward
|
||||
.TP
|
||||
.B halui.spindle.runs\-forward\fR bit out \fR
|
||||
.B halui.spindle.runs-forward\fR bit out \fR
|
||||
status pin telling if the spindle is running forward
|
||||
.TP
|
||||
.B halui.spindle.start\fR bit in \fR
|
||||
|
|
@ -125,54 +125,54 @@ a rising edge on this pin stops the spindle
|
|||
|
||||
.SS spindle override
|
||||
.TP
|
||||
.B halui.spindle\-override.count\-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
.B halui.spindle-override.count-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
When TRUE, modify spindle override when counts changes.
|
||||
.TP
|
||||
.B halui.spindle\-override.counts\fR s32 in \fR
|
||||
.B halui.spindle-override.counts\fR s32 in \fR
|
||||
counts X scale = spindle override percentage
|
||||
.TP
|
||||
.B halui.spindle\-override.decrease\fR bit in \fR
|
||||
pin for decreasing the SO (\-=scale)
|
||||
.B halui.spindle-override.decrease\fR bit in \fR
|
||||
pin for decreasing the SO (-=scale)
|
||||
.TP
|
||||
.B halui.spindle\-override.direct\-value\fR bit in \fR
|
||||
.B halui.spindle-override.direct-value\fR bit in \fR
|
||||
pin to enable direct spindle override value input
|
||||
.TP
|
||||
.B halui.spindle\-override.increase\fR bit in \fR
|
||||
.B halui.spindle-override.increase\fR bit in \fR
|
||||
pin for increasing the SO (+=scale)
|
||||
.TP
|
||||
.B halui.spindle\-override.scale\fR float in \fR
|
||||
.B halui.spindle-override.scale\fR float in \fR
|
||||
pin for setting the scale of counts for SO
|
||||
.TP
|
||||
.B halui.spindle\-override.value\fR float out \fR
|
||||
.B halui.spindle-override.value\fR float out \fR
|
||||
current FO value
|
||||
|
||||
.SS program
|
||||
.TP
|
||||
.B halui.program.block\-delete.is\-on\fR bit out \fR
|
||||
.B halui.program.block-delete.is-on\fR bit out \fR
|
||||
status pin telling that block delete is on
|
||||
.TP
|
||||
.B halui.program.block\-delete.off\fR bit in \fR
|
||||
.B halui.program.block-delete.off\fR bit in \fR
|
||||
pin for requesting that block delete is off
|
||||
.TP
|
||||
.B halui.program.block\-delete.on\fR bit in \fR
|
||||
.B halui.program.block-delete.on\fR bit in \fR
|
||||
pin for requesting that block delete is on
|
||||
.TP
|
||||
.B halui.program.is\-idle\fR bit out \fR
|
||||
.B halui.program.is-idle\fR bit out \fR
|
||||
status pin telling that no program is running
|
||||
.TP
|
||||
.B halui.program.is\-paused\fR bit out \fR
|
||||
.B halui.program.is-paused\fR bit out \fR
|
||||
status pin telling that a program is paused
|
||||
.TP
|
||||
.B halui.program.is\-running\fR bit out \fR
|
||||
.B halui.program.is-running\fR bit out \fR
|
||||
status pin telling that a program is running
|
||||
.TP
|
||||
.B halui.program.optional\-stop.is\-on\fR bit out \fR
|
||||
.B halui.program.optional-stop.is-on\fR bit out \fR
|
||||
status pin telling that the optional stop is on
|
||||
.TP
|
||||
.B halui.program.optional\-stop.off\fR bit in \fR
|
||||
.B halui.program.optional-stop.off\fR bit in \fR
|
||||
pin requesting that the optional stop is off
|
||||
.TP
|
||||
.B halui.program.optional\-stop.on\fR bit in \fR
|
||||
.B halui.program.optional-stop.on\fR bit in \fR
|
||||
pin requesting that the optional stop is on
|
||||
.TP
|
||||
.B halui.program.pause\fR bit in \fR
|
||||
|
|
@ -196,19 +196,19 @@ pin for stopping a program
|
|||
.B halui.mode.auto\fR bit in \fR
|
||||
pin for requesting auto mode
|
||||
.TP
|
||||
.B halui.mode.is\-auto\fR bit out \fR
|
||||
.B halui.mode.is-auto\fR bit out \fR
|
||||
pin for auto mode is on
|
||||
.TP
|
||||
.B halui.mode.is\-joint\fR bit out \fR
|
||||
.B halui.mode.is-joint\fR bit out \fR
|
||||
pin showing joint by joint jog mode is on
|
||||
.TP
|
||||
.B halui.mode.is\-manual\fR bit out \fR
|
||||
.B halui.mode.is-manual\fR bit out \fR
|
||||
pin for manual mode is on
|
||||
.TP
|
||||
.B halui.mode.is\-mdi\fR bit out \fR
|
||||
.B halui.mode.is-mdi\fR bit out \fR
|
||||
pin for mdi mode is on
|
||||
.TP
|
||||
.B halui.mode.is\-teleop\fR bit out \fR
|
||||
.B halui.mode.is-teleop\fR bit out \fR
|
||||
pin showing coordinated jog mode is on
|
||||
.TP
|
||||
.B halui.mode.joint\fR bit in \fR
|
||||
|
|
@ -225,16 +225,16 @@ pin for requesting coordinated jog mode
|
|||
|
||||
.SS mdi \fR(optional)
|
||||
.TP
|
||||
.B halui.mdi\-command\-XX\fR bit in
|
||||
.B halui.mdi-command-XX\fR bit in
|
||||
\fBhalui\fR looks for ini variables named [HALUI]MDI_COMMAND, and
|
||||
exports a pin for each command it finds. When the pin is driven TRUE,
|
||||
\fBhalui\fR runs the specified MDI command. XX is a two digit number
|
||||
starting at 00. If no [HALUI]MDI_COMMAND variables are set in the ini
|
||||
file, no halui.mdi\-command\-XX pins will be exported by halui.
|
||||
file, no halui.mdi-command-XX pins will be exported by halui.
|
||||
|
||||
.SS mist
|
||||
.TP
|
||||
.B halui.mist.is\-on\fR bit out \fR
|
||||
.B halui.mist.is-on\fR bit out \fR
|
||||
pin for mist is on
|
||||
.TP
|
||||
.B halui.mist.off\fR bit in \fR
|
||||
|
|
@ -243,45 +243,32 @@ pin for stopping mist
|
|||
.B halui.mist.on\fR bit in \fR
|
||||
pin for starting mist
|
||||
|
||||
.SS max\-velocity
|
||||
.SS max-velocity
|
||||
.TP
|
||||
.B halui.max\-velocity.count\-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
When True, modify max velocity when halui.max\-velocity.counts changes.
|
||||
.B halui.max-velocity.count-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
When TRUE, modify max velocity when counts changes.
|
||||
.TP
|
||||
.B halui.max\-velocity.counts\fR s32 in \fR
|
||||
When .count\-enable is True, halui changes the max velocity in response
|
||||
to changes to this pin. It's usually connected to an MPG encoder on
|
||||
an operator's panel or jog pendant. When .count\-enable is False, halui
|
||||
ignores this pin.
|
||||
.B halui.max-velocity.counts\fR s32 in \fR
|
||||
counts from an encoder for example to change maximum velocity
|
||||
.TP
|
||||
.B halui.max\-velocity.direct\-value\fR bit in \fR
|
||||
When this pin is True, halui commands the max velocity directly to
|
||||
(.counts * .scale). When this pin is False, halui commands the max
|
||||
velocity in a relative way: change max velocity by an amount equal to
|
||||
(change in .counts * .scale).
|
||||
.B halui.max-velocity.decrease\fR bit in \fR
|
||||
pin for decreasing the maximum velocity (-=scale)
|
||||
.TP
|
||||
.B halui.max\-velocity.increase\fR bit in \fR
|
||||
A positive edge (a False to True transition) on this pin increases the
|
||||
max velocity by the value of the .scale pin. (Note that halui always
|
||||
responds to this pin, independent of the .count\-enable pin.)
|
||||
.B halui.max-velocity.direct-value\fR bit in \fR
|
||||
pin for using a direct value for max velocity
|
||||
.TP
|
||||
.B halui.max\-velocity.decrease\fR bit in \fR
|
||||
A positive edge (a False to True transition) on this pin decreases the
|
||||
max velocity by the value of the .scale pin. (Note that halui always
|
||||
responds to this pin, independent of the .count\-enable pin.)
|
||||
.B halui.max-velocity.increase\fR bit in \fR
|
||||
pin for increasing the maximum velocity (+=scale)
|
||||
.TP
|
||||
.B halui.max\-velocity.scale\fR float in \fR
|
||||
This pin controls the scale of changes to the max velocity. Each unit
|
||||
change in .counts, and each positive edge on .increase and .decrease,
|
||||
changes the max velocity by .scale. The units of the .scale pin are
|
||||
machine\-units per second.
|
||||
.B halui.max-velocity.scale\fR float in \fR
|
||||
pin for setting the scale on changing the maximum velocity
|
||||
.TP
|
||||
.B halui.max\-velocity.value\fR float out \fR
|
||||
Current value for maximum velocity, in machine\-units per second.
|
||||
.B halui.max-velocity.value\fR float out \fR
|
||||
Current value for maximum velocity
|
||||
|
||||
.SS machine
|
||||
.TP
|
||||
.B halui.machine.is\-on\fR bit out \fR
|
||||
.B halui.machine.is-on\fR bit out \fR
|
||||
pin for machine is On/Off
|
||||
.TP
|
||||
.B halui.machine.off\fR bit in \fR
|
||||
|
|
@ -292,7 +279,7 @@ pin for setting machine On
|
|||
|
||||
.SS lube
|
||||
.TP
|
||||
.B halui.lube.is\-on\fR bit out \fR
|
||||
.B halui.lube.is-on\fR bit out \fR
|
||||
pin for lube is on
|
||||
.TP
|
||||
.B halui.lube.off\fR bit in \fR
|
||||
|
|
@ -303,28 +290,28 @@ pin for starting lube
|
|||
|
||||
.SS joint
|
||||
.TP
|
||||
.B halui.joint.N.has\-fault\fR bit out \fR
|
||||
.B halui.joint.N.has-fault\fR bit out \fR
|
||||
status pin telling that joint N has a fault
|
||||
.TP
|
||||
.B halui.joint.N.home\fR bit in \fR
|
||||
pin for homing joint N
|
||||
.TP
|
||||
.B halui.joint.N.is\-homed\fR bit out \fR
|
||||
.B halui.joint.N.is-homed\fR bit out \fR
|
||||
status pin telling that joint N is homed
|
||||
.TP
|
||||
.B halui.joint.N.is\-selected\fR bit out \fR
|
||||
.B halui.joint.N.is-selected\fR bit out \fR
|
||||
status pin that joint N is selected
|
||||
.TP
|
||||
.B halui.joint.N.on\-hard\-max\-limit\fR bit out \fR
|
||||
.B halui.joint.N.on-hard-max-limit\fR bit out \fR
|
||||
status pin telling that joint N is on the positive hardware limit
|
||||
.TP
|
||||
.B halui.joint.N.on\-hard\-min\-limit\fR bit out \fR
|
||||
.B halui.joint.N.on-hard-min-limit\fR bit out \fR
|
||||
status pin telling that joint N is on the negative hardware limit
|
||||
.TP
|
||||
.B halui.joint.N.on\-soft\-max\-limit\fR bit out \fR
|
||||
.B halui.joint.N.on-soft-max-limit\fR bit out \fR
|
||||
status pin telling that joint N is on the positive software limit
|
||||
.TP
|
||||
.B halui.joint.N.on\-soft\-min\-limit\fR bit out \fR
|
||||
.B halui.joint.N.on-soft-min-limit\fR bit out \fR
|
||||
status pin telling that joint N is on the negative software limit
|
||||
.TP
|
||||
.B halui.joint.N.select\fR bit in \fR
|
||||
|
|
@ -339,25 +326,25 @@ pin for unhoming joint N
|
|||
.B halui.joint.selected\fR u32 out \fR
|
||||
The number of the currently selected joint (default: joint 0).
|
||||
.TP
|
||||
.B halui.joint.selected.has\-fault\fR bit out \fR
|
||||
.B halui.joint.selected.has-fault\fR bit out \fR
|
||||
status pin selected joint is faulted
|
||||
.TP
|
||||
.B halui.joint.selected.home\fR bit in \fR
|
||||
pin for homing the selected joint
|
||||
.TP
|
||||
.B halui.joint.selected.is\-homed\fR bit out \fR
|
||||
.B halui.joint.selected.is-homed\fR bit out \fR
|
||||
status pin telling that the selected joint is homed
|
||||
.TP
|
||||
.B halui.joint.selected.on\-hard\-max\-limit\fR bit out \fR
|
||||
.B halui.joint.selected.on-hard-max-limit\fR bit out \fR
|
||||
status pin telling that the selected joint is on the positive hardware limit
|
||||
.TP
|
||||
.B halui.joint.selected.on\-hard\-min\-limit\fR bit out \fR
|
||||
.B halui.joint.selected.on-hard-min-limit\fR bit out \fR
|
||||
status pin telling that the selected joint is on the negative hardware limit
|
||||
.TP
|
||||
.B halui.joint.selected.on\-soft\-max\-limit\fR bit out \fR
|
||||
.B halui.joint.selected.on-soft-max-limit\fR bit out \fR
|
||||
status pin telling that the selected joint is on the positive software limit
|
||||
.TP
|
||||
.B halui.joint.selected.on\-soft\-min\-limit\fR bit out \fR
|
||||
.B halui.joint.selected.on-soft-min-limit\fR bit out \fR
|
||||
status pin telling that the selected joint is on the negative software limit
|
||||
.TP
|
||||
.B halui.joint.selected.unhome\fR bit in \fR
|
||||
|
|
@ -368,45 +355,45 @@ pin for unhoming the selected joint
|
|||
.B halui.jog.deadband\fR float in \fR
|
||||
pin for setting jog analog deadband (jog analog inputs smaller/slower than this are ignored)
|
||||
.TP
|
||||
.B halui.jog\-speed\fR float in \fR
|
||||
.B halui.jog-speed\fR float in \fR
|
||||
pin for setting jog speed for plus/minus jogging.
|
||||
.TP
|
||||
.B halui.jog.N.analog\fR float in \fR
|
||||
pin for jogging the axis N using an float value (e.g. joystick)
|
||||
.TP
|
||||
.B halui.jog.N.increment\fR float in \fR
|
||||
pin for setting the jog increment for axis N when using increment\-plus/minus
|
||||
pin for setting the jog increment for axis N when using increment-plus/minus
|
||||
.TP
|
||||
.B halui.jog.N.increment\-minus\fR bit in \fR
|
||||
.B halui.jog.N.increment-minus\fR bit in \fR
|
||||
a rising edge will will make axis N jog in the negative direction by the increment amount
|
||||
.TP
|
||||
.B halui.jog.N.increment\-plus\fR bit in \fR
|
||||
.B halui.jog.N.increment-plus\fR bit in \fR
|
||||
a rising edge will will make axis N jog in the positive direction by the increment amount
|
||||
.TP
|
||||
.B halui.jog.N.minus\fR bit in \fR
|
||||
pin for jogging axis N in negative direction at the halui.jog\-speed velocity
|
||||
pin for jogging axis N in negative direction at the halui.jog-speed velocity
|
||||
.TP
|
||||
.B halui.jog.N.plus\fR bit in \fR
|
||||
pin for jogging axis N in positive direction at the halui.jog\-speed velocity
|
||||
pin for jogging axis N in positive direction at the halui.jog-speed velocity
|
||||
.TP
|
||||
.B halui.jog.selected.increment\fR float in \fR
|
||||
pin for setting the jog increment for the selected axis when using increment\-plus/minus
|
||||
pin for setting the jog increment for the selected axis when using increment-plus/minus
|
||||
.TP
|
||||
.B halui.jog.selected.increment\-minus\fR bit in \fR
|
||||
.B halui.jog.selected.increment-minus\fR bit in \fR
|
||||
a rising edge will will make the selected axis jog in the negative direction by the increment amount
|
||||
.TP
|
||||
.B halui.jog.selected.increment\-plus\fR bit in \fR
|
||||
.B halui.jog.selected.increment-plus\fR bit in \fR
|
||||
a rising edge will will make the selected axis jog in the positive direction by the increment amount
|
||||
.TP
|
||||
.B halui.jog.selected.minus\fR bit in \fR
|
||||
pin for jogging the selected axis in negative direction at the halui.jog\-speed velocity
|
||||
pin for jogging the selected axis in negative direction at the halui.jog-speed velocity
|
||||
.TP
|
||||
.B halui.jog.selected.plus\fR
|
||||
pin for jogging the selected axis bit in \fRin positive direction at the halui.jog\-speed velocity
|
||||
pin for jogging the selected axis bit in \fRin positive direction at the halui.jog-speed velocity
|
||||
|
||||
.SS flood
|
||||
.TP
|
||||
.B halui.flood.is\-on\fR bit out \fR
|
||||
.B halui.flood.is-on\fR bit out \fR
|
||||
pin for flood is on
|
||||
.TP
|
||||
.B halui.flood.off\fR bit in \fR
|
||||
|
|
@ -417,48 +404,48 @@ pin for starting flood
|
|||
|
||||
.SS feed override
|
||||
.TP
|
||||
.B halui.feed\-override.count\-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
.B halui.feed-override.count-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
When TRUE, modify feed override when counts changes.
|
||||
.TP
|
||||
.B halui.feed\-override.counts\fR s32 in \fR
|
||||
.B halui.feed-override.counts\fR s32 in \fR
|
||||
counts X scale = feed override percentage
|
||||
.TP
|
||||
.B halui.feed\-override.decrease\fR bit in \fR
|
||||
pin for decreasing the FO (\-=scale)
|
||||
.B halui.feed-override.decrease\fR bit in \fR
|
||||
pin for decreasing the FO (-=scale)
|
||||
.TP
|
||||
.B halui.feed\-override.direct\-value\fR bit in \fR
|
||||
.B halui.feed-override.direct-value\fR bit in \fR
|
||||
pin to enable direct value feed override input
|
||||
.TP
|
||||
.B halui.feed\-override.increase\fR bit in \fR
|
||||
.B halui.feed-override.increase\fR bit in \fR
|
||||
pin for increasing the FO (+=scale)
|
||||
.TP
|
||||
.B halui.feed\-override.scale\fR float in \fR
|
||||
.B halui.feed-override.scale\fR float in \fR
|
||||
pin for setting the scale on changing the FO
|
||||
.TP
|
||||
.B halui.feed\-override.value\fR float out \fR
|
||||
.B halui.feed-override.value\fR float out \fR
|
||||
current Feed Override value
|
||||
|
||||
.SS rapid override
|
||||
.TP
|
||||
.B halui.rapid\-override.count\-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
.B halui.rapid-override.count-enable\fR bit in \fR (default: \fBTRUE\fR)
|
||||
When TRUE, modify Rapid Override when counts changes.
|
||||
.TP
|
||||
.B halui.rapid\-override.counts\fR s32 in \fR
|
||||
.B halui.rapid-override.counts\fR s32 in \fR
|
||||
counts X scale = Rapid Override percentage
|
||||
.TP
|
||||
.B halui.rapid\-override.decrease\fR bit in \fR
|
||||
pin for decreasing the Rapid Override (\-=scale)
|
||||
.B halui.rapid-override.decrease\fR bit in \fR
|
||||
pin for decreasing the Rapid Override (-=scale)
|
||||
.TP
|
||||
.B halui.rapid\-override.direct\-value\fR bit in \fR
|
||||
.B halui.rapid-override.direct-value\fR bit in \fR
|
||||
pin to enable direct value Rapid Override input
|
||||
.TP
|
||||
.B halui.rapid\-override.increase\fR bit in \fR
|
||||
.B halui.rapid-override.increase\fR bit in \fR
|
||||
pin for increasing the Rapid Override (+=scale)
|
||||
.TP
|
||||
.B halui.rapid\-override.scale\fR float in \fR
|
||||
.B halui.rapid-override.scale\fR float in \fR
|
||||
pin for setting the scale on changing the Rapid Override
|
||||
.TP
|
||||
.B halui.rapid\-override.value\fR float out \fR
|
||||
.B halui.rapid-override.value\fR float out \fR
|
||||
current Rapid Override value
|
||||
|
||||
.SS estop
|
||||
|
|
@ -466,7 +453,7 @@ current Rapid Override value
|
|||
.B halui.estop.activate\fR bit in \fR
|
||||
pin for setting Estop (LinuxCNC internal) On
|
||||
.TP
|
||||
.B halui.estop.is\-activated\fR bit out \fR
|
||||
.B halui.estop.is-activated\fR bit out \fR
|
||||
pin for displaying Estop state (LinuxCNC internal) On/Off
|
||||
.TP
|
||||
.B halui.estop.reset\fR bit in \fR
|
||||
|
|
@ -474,19 +461,19 @@ pin for resetting Estop (LinuxCNC internal) Off
|
|||
|
||||
.SS axis
|
||||
.TP
|
||||
.B halui.axis.N.pos\-commanded\fR float out \fR float out \fR
|
||||
.B halui.axis.N.pos-commanded\fR float out \fR float out \fR
|
||||
Commanded axis position in machine coordinates
|
||||
.TP
|
||||
.B halui.axis.N.pos\-feedback\fR float out \fR float out \fR
|
||||
.B halui.axis.N.pos-feedback\fR float out \fR float out \fR
|
||||
Feedback axis position in machine coordinates
|
||||
.TP
|
||||
.B halui.axis.N.pos\-relative\fR float out \fR float out \fR
|
||||
.B halui.axis.N.pos-relative\fR float out \fR float out \fR
|
||||
Commanded axis position in relative coordinates
|
||||
|
||||
.SS home
|
||||
.TP
|
||||
.B halui.home\-all\fR bit in \fR
|
||||
pin for requesting home\-all
|
||||
.B halui.home-all\fR bit in \fR
|
||||
pin for requesting home-all
|
||||
(only available when a valid homing sequence is specified)
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@
|
|||
.TH hy_vfd "1" "April 25, 2015" "Huanyang VFD" "LinuxCNC Documentation"
|
||||
|
||||
.SH NAME
|
||||
\fBhy_vfd\fR \- HAL userspace component for Huanyang VFDs
|
||||
\fBhy_vfd\fR - HAL userspace component for Huanyang VFDs
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B hy_vfd
|
||||
|
|
@ -46,11 +46,6 @@ Set register PD001 (source of run commands) to 2 (communication port).
|
|||
Set register PD002 (source of operating frequency) to 2 (communication
|
||||
port).
|
||||
.B
|
||||
.IP PD004
|
||||
.br
|
||||
Set register PD004 (Base Frequency) according to motor specs. This is
|
||||
the rated frequency of the motor from the motor's name plate, in Hz.
|
||||
.B
|
||||
.IP PD005
|
||||
.br
|
||||
Set register PD005 (max frequency) according to motor specs. This is
|
||||
|
|
@ -71,10 +66,6 @@ This is the motor's maximum voltage, in Volts.
|
|||
Set register PD142 (rated motor current) according to motor name plate.
|
||||
This is the motor's maximum current, in Amps.
|
||||
.B
|
||||
.IP PD143
|
||||
.br
|
||||
Set register PD143 (Number of Motor Poles) according to motor name plate.
|
||||
.B
|
||||
.IP PD144
|
||||
.br
|
||||
Set register PD144 (rated motor revolutions) according to motor name
|
||||
|
|
@ -100,78 +91,72 @@ plate to program the VFDs registers, and alternative values for the
|
|||
above registers.
|
||||
.SH OPTIONS
|
||||
.B
|
||||
.IP \-d,\ \-\-device\ <path>
|
||||
.IP -d,\ --device\ <path>
|
||||
(default /dev/ttyS0) Set the name of the serial device node to use.
|
||||
.B
|
||||
.IP \-g,\ \-\-debug
|
||||
.IP -g,\ --debug
|
||||
Turn on debug messages. Note that if there are serial errors, this may
|
||||
become annoying. Debug mode will cause all serial communication messages
|
||||
to be printed in hex on the terminal.
|
||||
.B
|
||||
.IP \-n,\ \-\-name\ <string>
|
||||
.IP -n,\ --name\ <string>
|
||||
(default hy_vfd) Set the name of the HAL module. The HAL comp name will be
|
||||
set to <string>, and all pin and parameter names will begin with <string>.
|
||||
.B
|
||||
.IP \-b,\ \-\-bits\ <n>
|
||||
.IP -b,\ --bits\ <n>
|
||||
(default 8) Set number of data bits to <n>, where n must be from 5
|
||||
to 8 inclusive. This must match the setting in register PD165 of the
|
||||
Huanyang VFD.
|
||||
.B
|
||||
.IP \-p,\ \-\-parity\ [even,odd,none]
|
||||
.IP -p,\ --parity\ [even,odd,none]
|
||||
(default odd) Set serial parity to even, odd, or none. This must match
|
||||
the setting in register PD165 of the Huanyang VFD.
|
||||
.B
|
||||
.IP \-r,\ \-\-rate\ <n>
|
||||
.IP -r,\ --rate\ <n>
|
||||
(default 38400) Set baud rate to <n>. It is an error if the rate is
|
||||
not one of the following: 110, 300, 600, 1200, 2400, 4800, 9600, 19200,
|
||||
38400, 57600, 115200. This must match the setting in register PD164 of
|
||||
the Huanyang VFD.
|
||||
.B
|
||||
.IP \-s,\ \-\-stopbits\ [1,2]
|
||||
.IP -s,\ --stopbits\ [1,2]
|
||||
(default 1) Set serial stop bits to 1 or 2. This must match the setting
|
||||
in register PD165 of the HuanyangVFD.
|
||||
.B
|
||||
.IP \-t,\ \-\-target\ <n>
|
||||
.IP -t,\ --target\ <n>
|
||||
(default 1) Set HYCOMM target (slave) number. This must match the device
|
||||
number you set on the Hyanyang VFD in register PD163.
|
||||
.B
|
||||
.IP \-F,\ \-\-max\-frequency\ <n>
|
||||
.IP -F,\ --max-frequency\ <n>
|
||||
(default: read from VFD) If specified, program register PD005 of the VFD
|
||||
with the specified max frequency of <n> Hz (and use the same max frequency
|
||||
in the hy_vfd driver). If not specified, read the max frequency to use
|
||||
from register PD005 of the VFD.
|
||||
.B
|
||||
.IP \-f,\ \-\-min\-frequency\ <n>
|
||||
.IP -f,\ --min-frequency\ <n>
|
||||
(default: read from VFD) If specified, program register PD011 of the
|
||||
VFD with the specified minimum frequency of <n> Hz (and use the same
|
||||
minimum frequency in the hy_vfd driver). If not specified, read the
|
||||
minimum frequency to use from register PD011 of the VFD.
|
||||
.B
|
||||
.IP \-V,\ \-\-motor\-voltage\ <n>
|
||||
.IP -V,\ --motor-voltage\ <n>
|
||||
(default: read from VFD) If specified, program register PD141 of the VFD
|
||||
with the specified max motor voltage of <n> Volts. If not specified,
|
||||
read the max motor voltage from register PD141 of the VFD.
|
||||
.B
|
||||
.IP \-I,\ \-\-motor\-current\ <n>
|
||||
.IP -I,\ --motor-current\ <n>
|
||||
(default: read from VFD) If specified, program register PD142 of the
|
||||
VFD with the specified max motor current of <n> Amps. If not specified,
|
||||
read the max motor current from register PD142 of the VFD.
|
||||
.B
|
||||
.IP \-S,\ \-\-motor\-speed\ <n>
|
||||
.IP -S,\ --motor-speed\ <n>
|
||||
(default: compute from value read from VFD P144) This command-line
|
||||
argument is the motor's max speed. If specified, compute the motor's
|
||||
speed at 50 Hz from this argument and from the motor's max frequency
|
||||
(from the \-\-max\-frequency argument or from P011 if \-\-max\-frequency is
|
||||
(from the --max-frequency argument or from P011 if --max-frequency is
|
||||
not specified) and program register PD144 of the VFD. If not specified,
|
||||
read the motor's speed at 50 Hz from register P144 of the VFD, and use
|
||||
that and the max frequency to compute the motor's max speed.
|
||||
.B
|
||||
.IP \-P,\ \-\-motor\-poles\ <n>
|
||||
(default: read value from VFD P143) This command-line argument is the
|
||||
number of poles in the motor. If specified, this value is sent to the
|
||||
VFD's register PD143. If not specified, the value is read from PD143
|
||||
and reported on the corresponding HAL pin.
|
||||
.B
|
||||
.SH PINS
|
||||
.B
|
||||
.IP <name>.enable
|
||||
|
|
@ -201,13 +186,13 @@ and reported on the corresponding HAL pin.
|
|||
.IP <name>.Tmp
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.spindle\-forward
|
||||
.IP <name>.spindle-forward
|
||||
(bit, in)
|
||||
.B
|
||||
.IP <name>.spindle\-reverse
|
||||
.IP <name>.spindle-reverse
|
||||
(bin, in)
|
||||
.B
|
||||
.IP <name>.spindle\-on
|
||||
.IP <name>.spindle-on
|
||||
(bin, in)
|
||||
.B
|
||||
.IP <name>.CNTR
|
||||
|
|
@ -216,78 +201,71 @@ and reported on the corresponding HAL pin.
|
|||
.IP <name>.CNST
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.CNST\-run
|
||||
.IP <name>.CNST-run
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-jog
|
||||
.IP <name>.CNST-jog
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-command\-rf
|
||||
.IP <name>.CNST-command-rf
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-running
|
||||
.IP <name>.CNST-running
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-jogging
|
||||
.IP <name>.CNST-jogging
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-running\-rf
|
||||
.IP <name>.CNST-running-rf
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-bracking
|
||||
.IP <name>.CNST-bracking
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.CNST\-track\-start
|
||||
.IP <name>.CNST-track-start
|
||||
(bit, out)
|
||||
.B
|
||||
.IP <name>.speed\-command
|
||||
.IP <name>.speed-command
|
||||
(float, in)
|
||||
.B
|
||||
.IP <name>.spindle\-speed\-fb
|
||||
.IP <name>.spindle-speed-fb
|
||||
(float, out) Current spindle speed as reported by Huanyang VFD.
|
||||
.B
|
||||
.IP <name>.spindle\-at\-speed\-tolerance
|
||||
.IP <name>.spindle-at-speed-tolerance
|
||||
(float, in) Spindle speed error tolerance. If the actual spindle
|
||||
speed is within .spindle\-at\-speed\-tolerance of the commanded speed,
|
||||
then the .spindle\-at\-speed pin will go True. The
|
||||
default .spindle\-at\-speed\-tolerance is 0.02, which means the actual
|
||||
speed is within .spindle-at-speed-tolerance of the commanded speed,
|
||||
then the .spindle-at-speed pin will go True. The
|
||||
default .spindle-at-speed-tolerance is 0.02, which means the actual
|
||||
speed must be within 2% of the commanded spindle speed.
|
||||
.B
|
||||
.IP <name>.spindle\-at\-speed
|
||||
.IP <name>.spindle-at-speed
|
||||
(bit, out) True when the current spindle speed is
|
||||
within .spindle\-at\-speed\-tolerance of the commanded speed.
|
||||
within .spindle-at-speed-tolerance of the commanded speed.
|
||||
.B
|
||||
.IP <name>.frequency\-command
|
||||
.IP <name>.frequency-command
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.max\-freq
|
||||
.IP <name>.max-freq
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.base\-freq
|
||||
.IP <name>.freq-lower-limit
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.freq\-lower\-limit
|
||||
.IP <name>.rated-motor-voltage
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.rated\-motor\-voltage
|
||||
.IP <name>.rated-motor-current
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.rated\-motor\-current
|
||||
.IP <name>.rated-motor-rev
|
||||
(float, out)
|
||||
.B
|
||||
.IP <name>.rated\-motor\-rev
|
||||
(float, out)
|
||||
.B
|
||||
.B
|
||||
.IP <name>.motor\-poles
|
||||
(u32, out)
|
||||
.B
|
||||
.IP <name>.hycomm\-ok
|
||||
.IP <name>.hycomm-ok
|
||||
(bit, out)
|
||||
|
||||
.SH PARAMETERS
|
||||
.B
|
||||
.IP <name>.error\-count
|
||||
.IP <name>.error-count
|
||||
(s32, RW)
|
||||
.B
|
||||
.IP <name>.retval
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@
|
|||
iocontrol \- accepts NML I/O commands, interacts with HAL in userspace
|
||||
|
||||
.SH SYNOPSIS
|
||||
\fBloadusr io [\-ini \fIinifile\fB]
|
||||
\fBloadusr io [-ini \fIinifile\fB]
|
||||
|
||||
|
||||
.SH DESCRIPTION
|
||||
|
|
@ -22,15 +22,15 @@ The inifile is searched for in the directory from which halcmd was run, unless a
|
|||
.SH PINS
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.coolant\-flood
|
||||
\fBiocontrol.0.coolant-flood
|
||||
(Bit, Out) TRUE when flood coolant is requested
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.coolant\-mist
|
||||
\fBiocontrol.0.coolant-mist
|
||||
(Bit, Out) TRUE when mist coolant is requested
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.emc\-enable\-in
|
||||
\fBiocontrol.0.emc-enable-in
|
||||
(Bit, In) Should be driven FALSE when an external estop condition exists.
|
||||
|
||||
.TP
|
||||
|
|
@ -45,54 +45,41 @@ into E-stop, and when the "Lube Off" command gets sent to the controller.
|
|||
(Bit, In) Should be driven FALSE when lubrication tank is empty.
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-change
|
||||
\fBiocontrol.0.tool-change
|
||||
(Bit, Out) TRUE when a tool change is requested
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-changed
|
||||
\fBiocontrol.0.tool-changed
|
||||
(Bit, In) Should be driven TRUE when a tool change is completed.
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-number
|
||||
\fBiocontrol.0.tool-number
|
||||
(s32, Out) Current tool number
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-prep\-number
|
||||
\fBiocontrol.0.tool-prep-number
|
||||
(s32, Out) The number of the next tool, from the RS274NGC T-word
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-prep\-pocket
|
||||
(s32, Out) This is the pocket number (location in the tool storage
|
||||
mechanism) of the tool requested by the most recent T-word.
|
||||
\fBiocontrol.0.tool-prep-pocket
|
||||
(s32, Out) The pocket number (location in tool storage mechanism) of the next tool, as described in the tool table
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-prepare
|
||||
\fBiocontrol.0.tool-prepare
|
||||
(Bit, Out) TRUE when a T\fIn\fR tool prepare is requested
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-prepared
|
||||
\fBiocontrol.0.tool-prepared
|
||||
(Bit, In) Should be driven TRUE when a tool prepare is completed.
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.user\-enable\-out
|
||||
\fBiocontrol.0.user-enable-out
|
||||
(Bit, Out) FALSE when an internal estop condition exists
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.user\-request\-enable
|
||||
\fBiocontrol.0.user-request-enable
|
||||
(Bit, Out) TRUE when the user has requested that estop be cleared
|
||||
|
||||
.SH PARAMETERS
|
||||
|
||||
.TP
|
||||
\fBiocontrol.0.tool\-prep\-index
|
||||
(s32, RO) IO's internal array index of the prepped tool requested
|
||||
by the most recent T-word. 0 if no tool is prepped. On Random
|
||||
toolchanger machines this is tool's pocket number (ie, the same as the
|
||||
tool\-prep\-pocket pin), on Non-random toolchanger machines this is
|
||||
a small integer corresponding to the tool's location in the internal
|
||||
representation of the tool table. This parameter returns to 0 after a
|
||||
successful tool change (M6).
|
||||
|
||||
.SH SEE ALSO
|
||||
\fBmotion\fR(9)
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
linuxcncrsh \- text-mode interface for commanding LinuxCNC over the network
|
||||
.SH SYNOPSIS
|
||||
.B
|
||||
linuxcncrsh [OPTIONS] [\-\- LINUXCNC_OPTIONS]
|
||||
linuxcncrsh [OPTIONS] [-- LINUXCNC_OPTIONS]
|
||||
.br
|
||||
.SH DESCRIPTION
|
||||
\fBlinuxcncrsh\fP is a user interface for LinuxCNC. Instead of popping up a GUI
|
||||
|
|
@ -15,20 +15,20 @@ All features of LinuxCNC are available via the \fBlinuxcncrsh\fP interface.
|
|||
.SH OPTIONS
|
||||
.P
|
||||
.B
|
||||
\-p,\-\-port PORT_NUMBER
|
||||
-p,--port PORT_NUMBER
|
||||
.RS
|
||||
Specify the port for linuxcncrsh to listen on. Defaults to 5007 if omitted.
|
||||
.RE
|
||||
.P
|
||||
.B
|
||||
\-n,\-\-name SERVER_NAME
|
||||
-n,--name SERVER_NAME
|
||||
.RS
|
||||
Sets the server name that linuxcncrsh will use to identify itself during
|
||||
handshaking with a new client. Defaults to EMCNETSVR if omitted.
|
||||
.RE
|
||||
.P
|
||||
.B
|
||||
\-w,\-\-connectpw PASSWORD
|
||||
-w,--connectpw PASSWORD
|
||||
.RS
|
||||
Specify the connection password to use during handshaking with a new
|
||||
client. Note that the password is sent in the clear, so it can be read
|
||||
|
|
@ -37,7 +37,7 @@ the client. Defaults to EMC if omitted.
|
|||
.RE
|
||||
.P
|
||||
.B
|
||||
\-e,\-\-enablepw PASSWORD
|
||||
-e,--enablepw PASSWORD
|
||||
.RS
|
||||
Specify the password required to enable LinuxCNC via linuxcncrsh. Note that the
|
||||
password is sent in the clear, so it can be read by anyone who can read
|
||||
|
|
@ -46,9 +46,9 @@ EMCTOO if omitted.
|
|||
.RE
|
||||
.P
|
||||
.B
|
||||
\-s,\-\-sessions MAX_SESSIONS
|
||||
-s,--sessions MAX_SESSIONS
|
||||
.RS
|
||||
Specify the maximum number of simultaneous connections. Defaults to \-1
|
||||
Specify the maximum number of simultaneous connections. Defaults to -1
|
||||
(no limit) if not specified.
|
||||
.RE
|
||||
.P
|
||||
|
|
@ -56,10 +56,10 @@ In addition to the options listed above, linuxcncrsh accepts an optional
|
|||
special LINUXCNC_OPTION at the end:
|
||||
.P
|
||||
.B
|
||||
\-ini LINUXCNC_INI_FILE
|
||||
-ini LINUXCNC_INI_FILE
|
||||
.RS
|
||||
LinuxCNC .ini file to use. The \-ini option \fBmust\fP be preceded by two
|
||||
dashes: "\-\-". Defaults to emc.ini if omitted.
|
||||
LinuxCNC .ini file to use. The -ini option \fBmust\fP be preceeded by two
|
||||
dashes: "--". Defaults to emc.ini if omitted.
|
||||
.RE
|
||||
.SH Starting linuxcncrsh
|
||||
.P
|
||||
|
|
@ -78,13 +78,13 @@ at the end of your .hal file, or run it by hand in a terminal window.
|
|||
To start it from hal, add a line like this to the end of your .hal file:
|
||||
.RS
|
||||
.P
|
||||
.B loadusr linuxcncrsh [OPTIONS] [\-\- LINUXCNC_OPTIONS]
|
||||
.B loadusr linuxcncrsh [OPTIONS] [-- LINUXCNC_OPTIONS]
|
||||
.RE
|
||||
.P
|
||||
To start it from the terminal, run linuxcncrsh manually like this:
|
||||
.RS
|
||||
.P
|
||||
.B linuxcncrsh [OPTIONS] [\-\- LINUXCNC_OPTIONS]
|
||||
.B linuxcncrsh [OPTIONS] [-- LINUXCNC_OPTIONS]
|
||||
.RE
|
||||
.SH Connecting
|
||||
.P
|
||||
|
|
@ -96,11 +96,11 @@ Once LinuxCNC is up and linuxcncrsh is running, you can connect to it using
|
|||
.RS
|
||||
HOST is the hostname or IP address of the computer running linuxcncrsh, and
|
||||
PORT is the port it's listening on (5007 if you did not give linuxcncrsh the
|
||||
\-\-port option).
|
||||
--port option).
|
||||
.RE
|
||||
.SH Network protocol
|
||||
.P
|
||||
linuxcncrsh accepts TCP connections on the port specified by the \-\-port option,
|
||||
linuxcncrsh accepts TCP connections on the port specified by the --port option,
|
||||
or 5007 if not specified.
|
||||
.P
|
||||
The client sends requests, and the linuxcncrsh server returns replies.
|
||||
|
|
@ -117,7 +117,7 @@ The supported commands are as follows:
|
|||
\fBhello <password> <client> <version>\fR
|
||||
.RS
|
||||
<password> must match linuxcncrsh's connect password, or "EMC" if no
|
||||
\-\-connectpw was supplied. The three arguments may not contain whitespace.
|
||||
--connectpw was supplied. The three arguments may not contain whitespace.
|
||||
If a valid password was entered the server will respond with:
|
||||
.RS
|
||||
\fIHELLO ACK <ServerName> <ServerVersion>\fR
|
||||
|
|
@ -192,7 +192,7 @@ and starts out OFF on new connections.
|
|||
The session's enable state indicates whether the current connection is
|
||||
enabled to perform control functions. With get, any parameter is ignored,
|
||||
and the current enable state is returned. With set and a valid password
|
||||
matching linuxcncrsh's \-\-enablepw (EMCTOO if not specified), the current
|
||||
matching linuxcncrsh's --enablepw (EMCTOO if not specified), the current
|
||||
connection is enabled for control functions. "OFF" may not be used as
|
||||
a password and disables control functions for this connection.
|
||||
.RE
|
||||
|
|
@ -402,7 +402,7 @@ override as specified.
|
|||
\fBspindle_override <percent>\fR
|
||||
.RS
|
||||
With get, any parameter is ignored and the current spindle override
|
||||
is returned (as a percentage of commanded speed). With set, sets the
|
||||
is returnd (as a percentage of commanded speed). With set, sets the
|
||||
spindle override as specified.
|
||||
.RE
|
||||
.P
|
||||
|
|
@ -489,7 +489,7 @@ the linuxcnc working directory (the directory of the active .ini file).
|
|||
.RS
|
||||
With set, runs the opened program. If no StartLine is specified, runs
|
||||
from the beginning. If a StartLine is specified, start line, runs from
|
||||
that line. A start line of \-1 runs in verify mode.
|
||||
that line. A start line of -1 runs in verify mode.
|
||||
.RE
|
||||
.P
|
||||
\fBpause\fR
|
||||
|
|
@ -677,7 +677,7 @@ Connected to 127.0.0.1
|
|||
.br
|
||||
Escape character is '^]'.
|
||||
.br
|
||||
\fBhello EMC user\-typing\-at\-telnet 1.0\fR
|
||||
\fBhello EMC user-typing-at-telnet 1.0\fR
|
||||
.br
|
||||
HELLO ACK EMCNETSVR 1.1
|
||||
.br
|
||||
|
|
|
|||
|
|
@ -33,7 +33,7 @@
|
|||
MB2HAL is a generic userspace HAL component to communicate with one or more
|
||||
Modbus devices.
|
||||
.PP
|
||||
See the Documents for more information on mb2hal
|
||||
See the Documents for more infomation on mb2hal
|
||||
.SH AUTHOR
|
||||
John Thornton
|
||||
.SH LICENSE
|
||||
|
|
|
|||
|
|
@ -1,25 +1,11 @@
|
|||
|
||||
.TH milltask 1 "September 30, 2014" "" "The Enhanced Machine Controller"
|
||||
.SH NAME
|
||||
\fBmilltask\fR \- Userspace task controller for LinuxCNC
|
||||
milltask \- Userspace task controller for LinuxCNC
|
||||
.SH DESCRIPTION
|
||||
|
||||
\fBmilltask\fR is an internal process of LinuxCNC. It is generally not
|
||||
invoked directly but by an inifile setting: \fB[TASK]TASK=milltask\fR.
|
||||
The \fBmilltask\fR process creates the \fBini.*\fR hal pins listed below
|
||||
and owned by the \fBinihal\fR user component. These pins may be modified
|
||||
while LinuxCnC is running to alter values that are typically specified
|
||||
in an inifile.
|
||||
|
||||
The \fBinihal\fR pins are sampled in every task cycle, however, commands
|
||||
affected by their values typically use the value present at the time
|
||||
when the command is processed. Such commands include all codes handled
|
||||
by the interpreter (\fBGcode\fR programs and \fBMDI\fR commands) and NML
|
||||
\fBjogging\fR commands issued by a GUI (including \fBhalui\fR).
|
||||
\fBWheel jogging\fR is implemented in the realtime motion module so
|
||||
\fBinihal\fR pin changes (e.g., ini.*.max_velocity,
|
||||
ini.*.max_acceleration) may be honored as soon as altered values are
|
||||
propagated to the motion module.
|
||||
|
||||
milltask is an internal process of LinuxCNC. It is generally not invoked directly.
|
||||
It creates the pins shown as owned by the "inihal" component, which allow
|
||||
runtime modification of certain values from the inifile.
|
||||
.SH PINS
|
||||
.SS Per-axis pins
|
||||
.TP
|
||||
|
|
@ -75,14 +61,4 @@ Allows adjustment of \fB[TRAJ]ARC_BLEND_GAP_CYCLES
|
|||
Allows adjustment of \fB[TRAJ]ARC_BLEND_RAMP_FREQ
|
||||
|
||||
.SH NOTES
|
||||
|
||||
The \fBinihal\fR pins cannot be linked or set in a halfile that is
|
||||
specified by an inifile \fB[HAL]HALFILE\fR item because they are not created
|
||||
until \fBmilltask\fR is started. The \fBinihal\fR pin values can be
|
||||
altered by independent halcmd programs specified by
|
||||
\fB[APPLICATION]APP\fR items or by GUIs that support a
|
||||
\fB[HAL]POSTGUI_HALFILE\fR.
|
||||
|
||||
The inifile is not automatically updated with values altered by
|
||||
\fBinihal\fR pin settings but can be updated using the calibration
|
||||
program (emccalib.tcl) when using a \fB[HAL]POSTGUI_HALFILE\fR.
|
||||
These pins cannot be linked or set in a halfile specified by \fB[HAL]HALFILE\fR. They can be altered by independent halcmd programs or by GUIs that support \fB[HAL]POSTGUI_HALFILE\fR. The inifile is not automatically updated with these values but can be updated using the calibration program (emccalib.tcl) when using a \fB[HAL]POSTGUI_HALFILE\fR.
|
||||
|
|
|
|||
|
|
@ -27,7 +27,7 @@
|
|||
moveoff_gui \- a gui for the moveoff component
|
||||
|
||||
.SH SYNOPSIS
|
||||
.B moveoff_gui \fB[\-\-help | \-\- \-h | \-?]\fR
|
||||
.B moveoff_gui \fB[--help | -- -h | -?]\fR
|
||||
|
||||
.PP
|
||||
.B moveoff_gui [\fBoptions\fR]
|
||||
|
|
@ -42,11 +42,11 @@ limitations and warnings\fR.
|
|||
.SH OPTIONS
|
||||
|
||||
.TP
|
||||
\fB\-\-help | \-? | \-\- \-h\fR
|
||||
\fB--help | -? | -- -h\fR
|
||||
Show options and exit
|
||||
|
||||
.TP
|
||||
\fB\-mode\fR \fBonpause\fR | always
|
||||
\fB-mode\fR \fBonpause\fR | always
|
||||
.br
|
||||
onpause: popup gui to control offsets when program paused
|
||||
.br
|
||||
|
|
@ -55,46 +55,46 @@ always: show gui to control offsets always
|
|||
Default: \fBonpause\fR
|
||||
|
||||
.TP
|
||||
\fB\-axes\fR axisnames
|
||||
\fB-axes\fR axisnames
|
||||
.br
|
||||
Letters from set of {x y z a b c u v w}
|
||||
.br
|
||||
Examples: \-axes x, \-axes xyz, \-axes xz (no spaces)
|
||||
Examples: -axes x, -axes xyz, -axes xz (no spaces)
|
||||
.br
|
||||
Default: \fBxyz\fR
|
||||
|
||||
.TP
|
||||
\fB\-inc\fR incrementvalue
|
||||
\fB-inc\fR incrementvalue
|
||||
.br
|
||||
Specify one increment value per \-inc (up to 4)
|
||||
Specify one increment value per -inc (up to 4)
|
||||
.br
|
||||
Defaults: \fB 0.001 0.01 0.10 1.0\fR
|
||||
|
||||
.TP
|
||||
\fB\-size\fR integer
|
||||
\fB-size\fR integer
|
||||
.br
|
||||
Overall gui size is based on font size, typically 8 - 20
|
||||
.br
|
||||
Default: \fB14\fR
|
||||
|
||||
.TP
|
||||
\fB\-loc\fR center | +x+y
|
||||
\fB-loc\fR center | +x+y
|
||||
.br
|
||||
Initial location on screen
|
||||
.br
|
||||
Examples: \-loc center, \-loc +20+100
|
||||
Examples: -loc center, -loc +20+100
|
||||
.br
|
||||
Default: \fBcenter\fR
|
||||
|
||||
.TP
|
||||
\fB\-autoresume\fR
|
||||
\fB-autoresume\fR
|
||||
.br
|
||||
Resume program when move-enable deasserted
|
||||
.br
|
||||
Default: notused
|
||||
|
||||
.TP
|
||||
\fB\-delay\fR delay secs
|
||||
\fB-delay\fR delay secs
|
||||
.br
|
||||
Delay for autoresume (allow time to restore spindle speed etc)
|
||||
Default: \fB5\fR
|
||||
|
|
@ -103,35 +103,35 @@ Default: \fB5\fR
|
|||
These options are available for special cases:
|
||||
|
||||
.TP
|
||||
\fB\-noentry\fR
|
||||
\fB-noentry\fR
|
||||
.br
|
||||
Disables creation of entry widgets
|
||||
.br
|
||||
Default: notused
|
||||
|
||||
.TP
|
||||
\fB\-no_resume_inhibit\fR
|
||||
\fB-no_resume_inhibit\fR
|
||||
.br
|
||||
Disable use of resume\-inhibit to controlling gui
|
||||
Disable use of resume-inhibit to controlling gui
|
||||
.br
|
||||
Default: notused
|
||||
|
||||
.TP
|
||||
\fB\-no_pause_requirement
|
||||
\fB-no_pause_requirement
|
||||
.br
|
||||
Disable check for halui.program.is\-paused
|
||||
Disable check for halui.program.is-paused
|
||||
.br
|
||||
Default: notused
|
||||
|
||||
.TP
|
||||
\fB\-no_cancel_autoresume
|
||||
\fB-no_cancel_autoresume
|
||||
.br
|
||||
Useful for retracting offsets with simple external controls
|
||||
.br
|
||||
Default: notused
|
||||
|
||||
.TP
|
||||
\fB\-no_display
|
||||
\fB-no_display
|
||||
.br
|
||||
Use when both external controls and and external displays are in use
|
||||
.br
|
||||
|
|
@ -147,21 +147,21 @@ The moveoff component must be loaded with the name 'mv' as:
|
|||
.br
|
||||
\fBloadrt moveoff names=mv personality=number_of_axes\fR
|
||||
.P
|
||||
If the pin mv.motion\-enable is \fBnot\fR connected when moveoff_gui is
|
||||
If the pin mv.motion-enable is \fBnot\fR connected when moveoff_gui is
|
||||
started, \fBcontrols will be provided\fR to enable offsets and set
|
||||
offset values. If the pin \fBis\fR connected, \fBonly a display\fR
|
||||
of offsets is shown and control must be made by \fBexternal\fR
|
||||
Hal connections.
|
||||
.P
|
||||
If a pin named *.resume\-inhibit exists and is not connected, it will
|
||||
If a pin named *.resume-inhibit exists and is not connected, it will
|
||||
be set while offsets are applied. This pin may be provided by the
|
||||
controlling linuxcnc gui in use. Use of the pin may be disabled
|
||||
with the option \-no_resume_inhibit.
|
||||
with the option -no_resume_inhibit.
|
||||
.P
|
||||
The \-autoresume option uses halui.program.resume to automatically
|
||||
resume program execution when the move\-enable pin is deactivated
|
||||
The -autoresume option uses halui.program.resume to automatically
|
||||
resume program execution when the move-enable pin is deactivated
|
||||
and all offsets are removed. The resume pin is not activated
|
||||
until an additional interval (\-delay delay_secs) elapses. This
|
||||
until an additional interval (-delay delay_secs) elapses. This
|
||||
delay interval may be useful for restarting related equipment
|
||||
(a spindle motor for example) While timing the delay, a popup is
|
||||
offered to cancel the automatic program resumption.
|
||||
|
|
@ -219,7 +219,7 @@ stanza of the ini file, for example:
|
|||
.br
|
||||
DELAY = delay_in_secs_to_allow_hal_connections
|
||||
.br
|
||||
\fBAPP = moveoff_gui \-option1 \-option2 ...\fR
|
||||
\fBAPP = moveoff_gui -option1 -option2 ...\fR
|
||||
.P
|
||||
|
||||
.SH "SEE ALSO"
|
||||
|
|
|
|||
|
|
@ -23,15 +23,15 @@
|
|||
.SH NAME
|
||||
pyvcp \- Virtual Control Panel for LinuxCNC
|
||||
.SH SYNOPSIS
|
||||
\fBpyvcp\fR [\-g \fIWxH+X+Y\fR] [\-c \fIcomponent\-name\fR] \fImyfile.xml\fR
|
||||
\fBpyvcp\fR [-g \fIWxH+X+Y\fR] [-c \fIcomponent-name\fR] \fImyfile.xml\fR
|
||||
.SH OPTIONS
|
||||
.TP
|
||||
\fB\-g\fR \fIWxH+X+Y\fR
|
||||
\fB-g\fR \fIWxH+X+Y\fR
|
||||
This sets the initial geometry of the root window.
|
||||
Use 'WxH' for just size, '+X+Y' for just position, or 'WxH+X+Y' for both.
|
||||
Size / position use pixel units. Position is referenced from top left.
|
||||
.TP
|
||||
\fB\-c\fR \fIcomponent-name\fR
|
||||
\fB-c\fR \fIcomponent-name\fR
|
||||
Use \fIcomponent-name\fR as the HAL component name. If the component name is
|
||||
not specified, the basename of the xml file is used.\fR
|
||||
.SH "SEE ALSO"
|
||||
|
|
|
|||
|
|
@ -26,7 +26,7 @@ returns to center when released.
|
|||
.SH UDEV
|
||||
The shuttlexpress module needs read permission to the ShuttleXpress
|
||||
/dev/hidraw* device files. This can be accomplished by adding a file
|
||||
\fB/etc/udev/rules.d/99\-shuttlexpress.rules\fR, with the following
|
||||
\fB/etc/udev/rules.d/99-shuttlexpress.rules\fR, with the following
|
||||
contents:
|
||||
|
||||
SUBSYSTEM=="hidraw", ATTRS{idVendor}=="0b33", ATTRS{idProduct}=="0020", MODE="0444"
|
||||
|
|
@ -52,25 +52,25 @@ notice the first click.
|
|||
|
||||
.SH Pins
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-0\fR
|
||||
(bit out) \fIshuttlexpress.0.button-0\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-0\-not\fR
|
||||
(bit out) \fIshuttlexpress.0.button-0-not\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-1\fR
|
||||
(bit out) \fIshuttlexpress.0.button-1\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-1\-not\fR
|
||||
(bit out) \fIshuttlexpress.0.button-1-not\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-2\fR
|
||||
(bit out) \fIshuttlexpress.0.button-2\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-2\-not\fR
|
||||
(bit out) \fIshuttlexpress.0.button-2-not\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-3\fR
|
||||
(bit out) \fIshuttlexpress.0.button-3\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-3\-not\fR
|
||||
(bit out) \fIshuttlexpress.0.button-3-not\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-4\fR
|
||||
(bit out) \fIshuttlexpress.0.button-4\fR
|
||||
.TP
|
||||
(bit out) \fIshuttlexpress.0.button\-4\-not\fR
|
||||
(bit out) \fIshuttlexpress.0.button-4-not\fR
|
||||
|
||||
The five buttons around the outside, starting with the
|
||||
counter-clockwise-most one.
|
||||
|
|
@ -81,18 +81,18 @@ notice the first click.
|
|||
Accumulated counts from the jog wheel (the inner wheel).
|
||||
|
||||
.TP
|
||||
(s32 out) \fIshuttlexpress.0.spring\-wheel\-s32\fR
|
||||
(s32 out) \fIshuttlexpress.0.spring-wheel-s32\fR
|
||||
|
||||
The current deflection of the spring-wheel (the outer wheel).
|
||||
It's 0 at rest, and ranges from \-7 at the counter-clockwise
|
||||
It's 0 at rest, and ranges from -7 at the counter-clockwise
|
||||
extreme to +7 at the clockwise extreme.
|
||||
|
||||
.TP
|
||||
(float out) \fIshuttlexpress.0.spring\-wheel\-f\fR
|
||||
(float out) \fIshuttlexpress.0.spring-wheel-f\fR
|
||||
|
||||
The current deflection of the spring-wheel (the outer wheel).
|
||||
It's 0.0 at rest, \-1.0 at the counter-clockwise extreme, and +1.0
|
||||
It's 0.0 at rest, -1.0 at the counter-clockwise extreme, and +1.0
|
||||
at the clockwise extreme. (The ShuttleXpress device reports the
|
||||
spring-wheel position as an integer from \-7 to +7, so this pin
|
||||
spring-wheel position as an integer from -7 to +7, so this pin
|
||||
reports only 15 discrete values in its range.)
|
||||
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ If the named input is a \fBnumerical\fR type, the gui displays:
|
|||
\fBReset\fR Button to reset to the value present on initiation
|
||||
|
||||
If the input is a \fBbit\fR type, the gui shows a single pushbutton
|
||||
that is controlled by the radio-button selectors:
|
||||
that is controlled by the radio\-button selectors:
|
||||
.P
|
||||
\fBOnePulse\fR Pulse input to 1 for each pushbutton press
|
||||
.br
|
||||
|
|
@ -55,7 +55,7 @@ LinuxCNC must be running
|
|||
A named item can specify a \fBpin\fR, \fBparam\fR, or \fBsignal\fR.
|
||||
The named item must be writable:
|
||||
.P
|
||||
\fBpin IN or I/O\fR (and not connected to a signal with a writer)
|
||||
\fBpin IN or I/O\fR (and not connected to a signal)
|
||||
.br
|
||||
\fBparam RW\fR
|
||||
.br
|
||||
|
|
@ -76,5 +76,5 @@ Example for ini file usage:
|
|||
.br
|
||||
ini.traj_arc_blend_enable \\
|
||||
.br
|
||||
motion\-command\-handler\-tmax
|
||||
motion-command-handler-tmax
|
||||
|
||||
|
|
|
|||
|
|
@ -64,28 +64,28 @@ to 3 (control from Modbus, with Stop enabled on the keypad).
|
|||
|
||||
.SH OPTIONS
|
||||
.B
|
||||
.IP \-n\ \-\-name\ <halname>
|
||||
.IP -n\ --name\ <halname>
|
||||
set the HAL component name
|
||||
.B
|
||||
.IP \-d\ \-\-debug
|
||||
.IP -d\ --debug
|
||||
Turn on debugging messages. Also toggled by sending a USR1 signal to the
|
||||
vfdb_vfd process.
|
||||
.B
|
||||
.IP \-m\ \-\-modbus\-debug
|
||||
.IP -m\ --modbus-debug
|
||||
Turn on Modbus debugging messages. This will cause all Modbus messages to
|
||||
be printed in hex on the terminal. Also toggled by sending a USR2 signal
|
||||
to the vfdb_vfd process.
|
||||
.B
|
||||
.IP \-I\ \-\-ini\ <inifilename>
|
||||
.IP -I\ --ini\ <inifilename>
|
||||
take configuration from this ini
|
||||
file. Defaults to environment variable INI_FILE_NAME. Most vfdb_vfd
|
||||
configuration comes from the ini file, not from command-line arguments.
|
||||
.B
|
||||
.IP \-S\ \-\-section\ <section\ name>
|
||||
.IP -S\ --section\ <section\ name>
|
||||
take configuration from this
|
||||
section in the ini file. Defaults to 'VFD-B'.
|
||||
.B
|
||||
.IP \-r\ \-\-report\-device
|
||||
.IP -r\ --report-device
|
||||
report device propertiers on console at startup
|
||||
|
||||
.SH INI CONFIG VARIABLES
|
||||
|
|
@ -132,107 +132,107 @@ and is generally printed on the motor's name plate.
|
|||
|
||||
.SH PINS
|
||||
.B
|
||||
.IP <name>.at\-speed\ (bit,\ out)
|
||||
.IP <name>.at-speed\ (bit,\ out)
|
||||
True when drive is at commanded speed (see
|
||||
.I
|
||||
speed\-tolerance
|
||||
speed-tolerance
|
||||
below)
|
||||
.B
|
||||
.IP <name>.enable\ (bit,\ in)
|
||||
Enable the VFD. If False, all operating parameters are still read but
|
||||
control is released and panel control is enabled (subject to VFD setup).
|
||||
.B
|
||||
.IP <name>.frequency\-command\ (float,\ out)
|
||||
Current target frequency in HZ as set through speed\-command (which is in
|
||||
.IP <name>.frequency-command\ (float,\ out)
|
||||
Current target frequency in HZ as set through speed-command (which is in
|
||||
RPM), from the VFD.
|
||||
.B
|
||||
.IP <name>.frequency\-out\ (float,\ out)
|
||||
.IP <name>.frequency-out\ (float,\ out)
|
||||
Current output frequency of the VFD.
|
||||
.B
|
||||
.IP <name>.inverter\-load\-percentage\ (float,\ out)
|
||||
.IP <name>.inverter-load-percentage\ (float,\ out)
|
||||
Current load report from VFD.
|
||||
.B
|
||||
.IP <name>.is\-e\-stopped\ (bit,\ out)
|
||||
.IP <name>.is-e-stopped\ (bit,\ out)
|
||||
The VFD is in emergency stop status (blinking "E" on panel).
|
||||
.B
|
||||
.IP <name>.is\-stopped\ (bit,\ out)
|
||||
.IP <name>.is-stopped\ (bit,\ out)
|
||||
True when the VFD reports 0 Hz output.
|
||||
.B
|
||||
.IP <name>.jog\-mode\ (bit,\ in)
|
||||
.IP <name>.jog-mode\ (bit,\ in)
|
||||
1 for ON and 0 for OFF, enables the VFD-B 'jog mode'. Speed control
|
||||
is disabled. This might be useful for spindle orientation.
|
||||
.B
|
||||
.IP <name>.max\-rpm\ (float,\ out)
|
||||
.IP <name>.max-rpm\ (float,\ out)
|
||||
Actual RPM limit based on maximum frequency the VFD may generate, and
|
||||
the motors nameplate values. For instance, if
|
||||
.I nameplate\-HZ
|
||||
.I nameplate-HZ
|
||||
is 50, and
|
||||
.I nameplate\-RPM
|
||||
.I nameplate-RPM
|
||||
is 1410, but the VFD may generate up to 80Hz, then
|
||||
.I max\-rpm
|
||||
.I max-rpm
|
||||
would read as 2256 (80*1410/50). The frequency limit is read from the VFD
|
||||
at startup. To increase the upper frequency limit, the UL and FH
|
||||
parameters must be changed on the panel. See the VFD-B manual for
|
||||
instructions how to set the maximum frequency.
|
||||
.B
|
||||
.IP <name>.modbus\-ok\ (bit,\ out)
|
||||
.IP <name>.modbus-ok\ (bit,\ out)
|
||||
True when the Modbus session is successfully established and the last 10
|
||||
transactions returned without error.
|
||||
.B
|
||||
.IP <name>.motor\-RPM\ (float,\ out)
|
||||
.IP <name>.motor-RPM\ (float,\ out)
|
||||
Estimated current RPM value, from the VFD.
|
||||
.B
|
||||
.IP <name>.motor\-RPS\ (float,\ out)
|
||||
.IP <name>.motor-RPS\ (float,\ out)
|
||||
Estimated current RPS value, from the VFD.
|
||||
.B
|
||||
.IP <name>.output\-voltage\ (float,\ out)
|
||||
.IP <name>.output-voltage\ (float,\ out)
|
||||
From the VFD.
|
||||
.B
|
||||
.IP <name>.output\-current\ (float,\ out)
|
||||
.IP <name>.output-current\ (float,\ out)
|
||||
From the VFD.
|
||||
.B
|
||||
.IP <name>.speed\-command\ (float,\ in)
|
||||
.IP <name>.speed-command\ (float,\ in)
|
||||
Speed sent to VFD in RPM. It is an error to send a speed faster than the
|
||||
Motor Max RPM as set in the VFD.
|
||||
.B
|
||||
.IP <name>.spindle\-on\ (bit,\ in)
|
||||
.IP <name>.spindle-on\ (bit,\ in)
|
||||
1 for ON and 0 for OFF sent to VFD, only on when running.
|
||||
.B
|
||||
.IP <name>.max\-speed\ (bit,\ in)
|
||||
Ignore the loop-time parameter and run Modbus at maximum
|
||||
.IP <name>.max-speed\ (bit,\ in)
|
||||
Ignore the loop-time paramater and run Modbus at maximum
|
||||
speed, at the expense of higher CPU usage. Suggested use
|
||||
during spindle positioning.
|
||||
.B
|
||||
.IP <name>.status\ (s32,\ out)
|
||||
Drive Status of the VFD (see the VFD manual). A bitmap.
|
||||
.B
|
||||
.IP <name>.error\-count\ (s32,\ out)
|
||||
.IP <name>.error-count\ (s32,\ out)
|
||||
Total number of transactions returning a Modbus error.
|
||||
.B
|
||||
.IP <name>.error\-code\ (s32,\ out)
|
||||
.IP <name>.error-code\ (s32,\ out)
|
||||
Most recent Error Code from VFD.
|
||||
.B
|
||||
.IP <name>.frequency\-limit\ (float,\ out)
|
||||
.IP <name>.frequency-limit\ (float,\ out)
|
||||
Upper limit read from VFD setup.
|
||||
.B
|
||||
|
||||
.SH PARAMETERS
|
||||
.B
|
||||
.IP <name>.loop\-time\ (float,\ RW)
|
||||
.IP <name>.loop-time\ (float,\ RW)
|
||||
How often the Modbus is polled (default interval 0.1 seconds).
|
||||
.B
|
||||
.IP <name>.nameplate\-HZ\ (float,\ RW)
|
||||
.IP <name>.nameplate-HZ\ (float,\ RW)
|
||||
Nameplate Hz of motor (default 50). Used to calculate target frequency
|
||||
(together with
|
||||
.I nameplate\-RPM
|
||||
) for a target RPM value as given by speed\-command.
|
||||
.I nameplate-RPM
|
||||
) for a target RPM value as given by speed-command.
|
||||
.B
|
||||
.IP <name>.nameplate\-RPM\ (float,\ RW)
|
||||
.IP <name>.nameplate-RPM\ (float,\ RW)
|
||||
Nameplate RPM of motor (default 1410)
|
||||
.B
|
||||
.IP <name>.rpm\-limit\ (float,\ RW)
|
||||
.IP <name>.rpm-limit\ (float,\ RW)
|
||||
Do-not-exceed soft limit for motor RPM (defaults to
|
||||
.I nameplate\-RPM
|
||||
.I nameplate-RPM
|
||||
).
|
||||
.B
|
||||
.IP <name>.tolerance\ (float,\ RW)
|
||||
|
|
|
|||
|
|
@ -43,155 +43,155 @@ component. This component reads and writes to the vfs11 via a Modbus connection.
|
|||
|
||||
.SH OPTIONS
|
||||
.B
|
||||
.IP \-n\ \-\-name\ <halname>
|
||||
.IP -n\ --name\ <halname>
|
||||
set the HAL component name
|
||||
.B
|
||||
.IP \-d\ \-\-debug
|
||||
.IP -d\ --debug
|
||||
Turn on debugging messages. Also toggled by sending a USR1 signal to the vfs11_vfd process.
|
||||
.B
|
||||
.IP \-m\ \-\-modbus\-debug
|
||||
.IP -m\ --modbus-debug
|
||||
Turn on Modbus debugging messages. This will cause all Modbus messages to be printed in hex on the terminal.
|
||||
Also toggled by sending a USR2 signal to the vfs11_vfd process.
|
||||
.B
|
||||
.IP \-I\ \-\-ini\ <inifilename>
|
||||
.IP -I\ --ini\ <inifilename>
|
||||
take configuration from this ini
|
||||
file. Defaults to environment variable INI_FILE_NAME.
|
||||
.B
|
||||
.IP \-S\ \-\-section\ <section\ name>
|
||||
.IP -S\ --section\ <section\ name>
|
||||
take configuration from this
|
||||
section in the ini file. Defaults to 'VFS11'.
|
||||
.B
|
||||
.IP \-r\ \-\-report\-device
|
||||
.IP -r\ --report-device
|
||||
report device propertiers on console at startup
|
||||
|
||||
.SH PINS
|
||||
.B
|
||||
.IP <name>.acceleration\-pattern\ (bit,\ in)
|
||||
.IP <name>.acceleration-pattern\ (bit,\ in)
|
||||
when true, set acceleration and deceleration times as defined in registers F500 and F501 respecitvely. Used in PID loops to choose shorter ramp times to avoid oscillation.
|
||||
.B
|
||||
.IP <name>.alarm\-code\ (s32,\ out)
|
||||
.IP <name>.alarm-code\ (s32,\ out)
|
||||
non-zero if drive is in alarmed state. Bitmap describing alarm information (see register FC91 description). Use
|
||||
.I err\-reset
|
||||
.I err-reset
|
||||
(see below) to clear the alarm.
|
||||
.B
|
||||
.IP <name>.at\-speed\ (bit,\ out)
|
||||
.IP <name>.at-speed\ (bit,\ out)
|
||||
when drive is at commanded speed (see
|
||||
.I
|
||||
speed\-tolerance
|
||||
speed-tolerance
|
||||
below)
|
||||
.B
|
||||
.IP <name>.current\-load\-percentage\ (float,\ out)
|
||||
.IP <name>.current-load-percentage\ (float,\ out)
|
||||
reported from the VFD
|
||||
.B
|
||||
.IP <name>.dc\-brake\ \ (bit,\ in)
|
||||
engage the DC brake. Also turns off spindle\-on.
|
||||
.IP <name>.dc-brake\ \ (bit,\ in)
|
||||
engage the DC brake. Also turns off spindle-on.
|
||||
.B
|
||||
.IP <name>.enable\ (bit,\ in)
|
||||
enable the VFD. If false, all operating parameters are still read but control is released and panel control is enabled (subject to VFD setup).
|
||||
.B
|
||||
.IP <name>.err\-reset\ (bit,\ in)
|
||||
.IP <name>.err-reset\ (bit,\ in)
|
||||
reset errors (alarms a.k.a Trip and e-stop status). Resetting the VFD may cause a 2-second delay until it's rebooted and Modbus is up again.
|
||||
.B
|
||||
.IP <name>.estop\ (bit,\ in)
|
||||
put the VFD into emergency-stopped status. No operation possible until cleared with
|
||||
.I
|
||||
err\-reset
|
||||
err-reset
|
||||
or powercycling.
|
||||
.B
|
||||
.IP <name>.frequency\-command\ (float,\ out)
|
||||
current target frequency in HZ as set through speed\-command (which is in RPM), from the VFD
|
||||
.IP <name>.frequency-command\ (float,\ out)
|
||||
current target frequency in HZ as set through speed-command (which is in RPM), from the VFD
|
||||
.B
|
||||
.IP <name>.frequency\-out\ (float,\ out)
|
||||
.IP <name>.frequency-out\ (float,\ out)
|
||||
current output frequency of the VFD
|
||||
.B
|
||||
.IP <name>.inverter\-load\-percentage\ (float,\ out)
|
||||
.IP <name>.inverter-load-percentage\ (float,\ out)
|
||||
current load report from VFD
|
||||
.B
|
||||
.IP <name>.is\-e\-stopped\ (bit,\ out)
|
||||
.IP <name>.is-e-stopped\ (bit,\ out)
|
||||
the VFD is in emergency stop status (blinking "E" on panel). Use
|
||||
.I
|
||||
err\-reset
|
||||
to reboot the VFD and clear the e\-stop status.
|
||||
err-reset
|
||||
to reboot the VFD and clear the e-stop status.
|
||||
.B
|
||||
.IP <name>.is\-stopped\ (bit,\ out)
|
||||
.IP <name>.is-stopped\ (bit,\ out)
|
||||
true when the VFD reports 0 Hz output
|
||||
.B
|
||||
.IP <name>.jog\-mode\ (bit,\ in)
|
||||
.IP <name>.jog-mode\ (bit,\ in)
|
||||
1 for ON and 0 for OFF, enables the VF-S11 'jog mode'. Speed control is disabled, and the output frequency is determined by register F262 (preset to 5Hz). This might be useful for spindle orientation.
|
||||
.B
|
||||
.IP <name>.max\-rpm\ (float,\ R)
|
||||
.IP <name>.max-rpm\ (float,\ R)
|
||||
actual RPM limit based on maximum frequency the VFD may generate, and the motors nameplate values. For instance, if
|
||||
.I nameplate\-HZ
|
||||
.I nameplate-HZ
|
||||
is 50, and
|
||||
.I nameplate\-RPM_
|
||||
.I nameplate-RPM_
|
||||
is 1410, but the VFD may generate up to 80Hz, then
|
||||
.I max\-rpm
|
||||
.I max-rpm
|
||||
would read as 2256 (80*1410/50). The frequency limit is read from the VFD at startup.
|
||||
To increase the upper frequency limit, the UL and FH parameters must be changed on the panel.
|
||||
See the VF\-S11 manual for instructions how to set the maximum frequency.
|
||||
See the VF-S11 manual for instructions how to set the maximum frequency.
|
||||
.B
|
||||
.IP <name>.modbus\-ok\ (bit,\ out)
|
||||
.IP <name>.modbus-ok\ (bit,\ out)
|
||||
true when the Modbus session is successfully established and the last 10 transactions returned without error.
|
||||
.B
|
||||
.IP <name>.motor\-RPM\ (float,\ out)
|
||||
.IP <name>.motor-RPM\ (float,\ out)
|
||||
estimated current RPM value, from the VFD
|
||||
.B
|
||||
.IP <name>.output\-current\-percentage\ (float,\ out)
|
||||
.IP <name>.output-current-percentage\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.output\-voltage\-percentage\ (float,\ out)
|
||||
.IP <name>.output-voltage-percentage\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.output\-voltage\ (float,\ out)
|
||||
.IP <name>.output-voltage\ (float,\ out)
|
||||
from the VFD
|
||||
.B
|
||||
.IP <name>.speed\-command\ (float,\ in)
|
||||
.IP <name>.speed-command\ (float,\ in)
|
||||
speed sent to VFD in RPM. It is an error to send a speed faster than the Motor Max RPM as set in the VFD
|
||||
.B
|
||||
.IP <name>.spindle\-fwd\ (bit,\ in)
|
||||
.IP <name>.spindle-fwd\ (bit,\ in)
|
||||
1 for FWD and 0 for REV, sent to VFD
|
||||
.B
|
||||
.IP <name>.spindle\-on\ (bit,\ in)
|
||||
.IP <name>.spindle-on\ (bit,\ in)
|
||||
1 for ON and 0 for OFF sent to VFD, only on when running
|
||||
.B
|
||||
.IP <name>.spindle\-rev\ (bit,\ in)
|
||||
.IP <name>.spindle-rev\ (bit,\ in)
|
||||
1 for ON and 0 for OFF, only on when running
|
||||
.B
|
||||
|
||||
.IP <name>.max\-speed\ (bit,\ in)
|
||||
ignore the loop\-time parameter and run Modbus at maximum
|
||||
.IP <name>.max-speed\ (bit,\ in)
|
||||
ignore the loop-time paramater and run Modbus at maximum
|
||||
speed, at the expense of higher CPU usage. Suggested use
|
||||
during spindle positioning.
|
||||
.B
|
||||
.IP <name>.status\ (s32,\ out)
|
||||
Drive Status of the VFD (see the TOSVERT VF-S11 Communications Function Instruction Manual, register FD01). A bitmap.
|
||||
.B
|
||||
.IP <name>.trip\-code\ (s32,\ out)
|
||||
.IP <name>.trip-code\ (s32,\ out)
|
||||
trip code if VF-S11 is in tripped state.
|
||||
.B
|
||||
.IP <name>.error\-count\ (s32,\ RW)
|
||||
.IP <name>.error-count\ (s32,\ RW)
|
||||
total number of transactions returning a Modbus error
|
||||
.B
|
||||
|
||||
.SH PARAMETERS
|
||||
.B
|
||||
.IP <name>.frequency\-limit\ (float,\ RO)
|
||||
.IP <name>.frequency-limit\ (float,\ RO)
|
||||
upper limit read from VFD setup.
|
||||
.B
|
||||
.IP <name>.loop\-time\ (float,\ RW)
|
||||
.IP <name>.loop-time\ (float,\ RW)
|
||||
how often the Modbus is polled (default interval 0.1 seconds)
|
||||
.B
|
||||
.IP <name>.nameplate\-HZ\ (float,\ RW)
|
||||
.IP <name>.nameplate-HZ\ (float,\ RW)
|
||||
Nameplate Hz of motor (default 50). Used to calculate target frequency (together with
|
||||
.I nameplate\-RPM
|
||||
) for a target RPM value as given by speed\-command.
|
||||
.I nameplate-RPM
|
||||
) for a target RPM value as given by speed-command.
|
||||
.B
|
||||
.IP <name>.nameplate\-RPM\ (float,\ RW)
|
||||
.IP <name>.nameplate-RPM\ (float,\ RW)
|
||||
Nameplate RPM of motor (default 1410)
|
||||
.B
|
||||
.IP <name>.rpm\-limit\ (float,\ RW)
|
||||
.IP <name>.rpm-limit\ (float,\ RW)
|
||||
do-not-exceed soft limit for motor RPM (defaults to
|
||||
.I nameplate\-RPM
|
||||
.I nameplate-RPM
|
||||
).
|
||||
.B
|
||||
.IP <name>.tolerance\ (float,\ RW)
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
.TH XHC-HB04 "1" "2015-03-06" "LinuxCNC Documentation" "HAL User's Manual"
|
||||
.SH NAME
|
||||
xhc\-hb04 \- User-space HAL component for the xhc-hb04 pendant.
|
||||
xhc-hb04 \- User-space HAL component for the xhc-hb04 pendant.
|
||||
|
||||
.SH DESCRIPTION
|
||||
The xhc-hb04 component supports a common USB pendant that provides a
|
||||
|
|
@ -26,13 +26,13 @@ a machine configured as XYZA, the pins can be assigned independently
|
|||
as required in a HAL configuration.
|
||||
|
||||
.SH UDEV
|
||||
The xhc\-hb04 executable needs permission for reading the pendant's
|
||||
The xhc-hb04 executable needs permission for reading the pendant's
|
||||
USB device. Debian package installs (debs) handle this automatically
|
||||
but Run-In-Place (RIP) builds may need a udev rules file. This file
|
||||
should be created (using sudo and a text editor) as:
|
||||
|
||||
.nf
|
||||
\fB/etc/udev/rules.d/99\-xhc\-hb04.rules\fR with the single line:
|
||||
\fB/etc/udev/rules.d/99-xhc-hb04.rules\fR with the single line:
|
||||
|
||||
ATTR{idProduct}=="eb70", ATTR{idVendor}=="10ce", MODE="0666", OWNER="root", GROUP="plugdev"
|
||||
.fi
|
||||
|
|
@ -42,25 +42,25 @@ The xhc-hb04 program can be run from the command line without LinuxCNC
|
|||
to test a pendant in a simulation mode. This standalone mode is used to
|
||||
identify the button codes produced for each button press and to verify
|
||||
proper counting of the jog wheel. The identified button codes can be
|
||||
used to create a \fBbutton\-cfg\-file\fR. When a \fBbutton\-cfg\-file\fR
|
||||
exists, pendant operation can be verified using the \-I option to specify
|
||||
used to create a \fBbutton-cfg-file\fR. When a \fBbutton-cfg-file\fR
|
||||
exists, pendant operation can be verified using the -I option to specify
|
||||
the file.
|
||||
|
||||
Usage:
|
||||
|
||||
$ xhc\-hb04 [options]
|
||||
$ xhc-hb04 [options]
|
||||
|
||||
.SH Options
|
||||
.TP
|
||||
\fB\-h\fR list command line options and exit
|
||||
\fB-h\fR list command line options and exit
|
||||
.TP
|
||||
\fB\-I button\-cfg\-file\fR (see below for file format)
|
||||
\fB-I button-cfg-file\fR (see below for file format)
|
||||
.TP
|
||||
\fB\-H\fR run in real-time HAL mode (simulation mode is default)
|
||||
\fB-H\fR run in real-time HAL mode (simulation mode is default)
|
||||
.TP
|
||||
\fB\-x\fR wait for pendant detection before creating HAL pins.
|
||||
\fB-x\fR wait for pendant detection before creating HAL pins.
|
||||
.TP
|
||||
\fB\-s n\fR n is one of the following stepsize sequences
|
||||
\fB-s n\fR n is one of the following stepsize sequences
|
||||
.PP
|
||||
1: 1,10,100,1000 (default)
|
||||
2: 1,5,10,20
|
||||
|
|
@ -69,15 +69,15 @@ $ xhc\-hb04 [options]
|
|||
5: 1,10,50,100,1000
|
||||
The stepsize selected is always multiplied by 0.001
|
||||
|
||||
.SH button\-cfg\-file format
|
||||
.SH button-cfg-file format
|
||||
Standard configuration files are provided in the distribution for
|
||||
known button configurations:
|
||||
.nf
|
||||
/usr/share/linuxcnc/hallib/xhc\-hb04\-layout1.cfg
|
||||
/usr/share/linuxcnc/hallib/xhc\-hb04\-layout2.cfg
|
||||
/usr/share/linuxcnc/hallib/xhc-hb04-layout1.cfg
|
||||
/usr/share/linuxcnc/hallib/xhc-hb04-layout2.cfg
|
||||
or for a RIP build:
|
||||
rip_base_dir/lib/hallib/xhc\-hb04\-layout1.cfg
|
||||
rip_base_dir/lib/hallib/xhc\-hb04\-layout2.cfg
|
||||
rip_base_dir/lib/hallib/xhc-hb04-layout1.cfg
|
||||
rip_base_dir/lib/hallib/xhc-hb04-layout2.cfg
|
||||
.fi
|
||||
|
||||
layout1 describes the 16 button pendant,
|
||||
|
|
@ -88,193 +88,193 @@ but should use a file suffix of .cfg.
|
|||
|
||||
.nf
|
||||
File format:
|
||||
[XHC\-HB04]
|
||||
BUTTON=X1:button\-thename1
|
||||
BUTTON=X2:button\-thename2
|
||||
BUTTON=X3:button\-thename3
|
||||
[XHC-HB04]
|
||||
BUTTON=X1:button-thename1
|
||||
BUTTON=X2:button-thename2
|
||||
BUTTON=X3:button-thename3
|
||||
etc.
|
||||
.fi
|
||||
|
||||
XN is the code reported for a button press and button\-thenameN
|
||||
XN is the code reported for a button press and button-thenameN
|
||||
is the name to be assigned to the pin created for the button.
|
||||
|
||||
.SH Hal Usage
|
||||
Use the \-H option to specify HAL mode and other options as required:
|
||||
Use the -H option to specify HAL mode and other options as required:
|
||||
|
||||
\fIloadusr \-W \fR \fBxhc\-hb04\fR \fI\-H [Options]\fR
|
||||
\fIloadusr -W \fR \fBxhc-hb04\fR \fI-H [Options]\fR
|
||||
|
||||
Example:
|
||||
\fIloadusr \-W \fR \fBxhc\-hb04\fR \fI\-H \-I path_to_cfg_file \-s 2\fR
|
||||
\fIloadusr -W \fR \fBxhc-hb04\fR \fI-H -I path_to_cfg_file -s 2\fR
|
||||
|
||||
.SH Input Pins (Control)
|
||||
.TP
|
||||
(bit in) \fIxhc\-hb04.stepsize\-up\fR A 1 pulse on this pin changes the
|
||||
(bit in) \fIxhc-hb04.stepsize-up\fR A 1 pulse on this pin changes the
|
||||
stepsize to the next higher stepsize in the stepsize sequence specified
|
||||
in the xhc\-hb04 (loadusr) command.
|
||||
in the xhc-hb04 (loadusr) command.
|
||||
.TP
|
||||
(bit in) \fIxhc\-hb04.stepsize\-down\fR A 1 pulse on this pin changes the
|
||||
(bit in) \fIxhc-hb04.stepsize-down\fR A 1 pulse on this pin changes the
|
||||
stepsize to the next lower stepsize in the stepsize sequence specified
|
||||
in the xhc\-hb04 (loadusr) command.
|
||||
in the xhc-hb04 (loadusr) command.
|
||||
|
||||
.SH Input Pins (to the pendant LCD display)
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.[xyza].pos\-absolute\fR Absolule position display.
|
||||
(typically connect to: halui.axis.N.pos\-feedback). The LCD display
|
||||
for pos\-absolute is fixed format with a sign, 4 number digits and 3
|
||||
fraction digits (+XXXX.XXX), require: \-9999.999 <= value <= 9999.999.
|
||||
(float in) \fIxhc-hb04.[xyza].pos-absolute\fR Absolule position display.
|
||||
(typically connect to: halui.axis.N.pos-feedback). The LCD display
|
||||
for pos-absolute is fixed format with a sign, 4 number digits and 3
|
||||
fraction digits (+XXXX.XXX), require: -9999.999 <= value <= 9999.999.
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.[xyza].pos\-relative\fR Relative position display.
|
||||
(typically connect to: halui.axis.N.pos\-relative). The LCD display
|
||||
for pos\-relative is fixed format with a sign, 4 number digits and 3
|
||||
fraction digits (+XXXX.XXX), require: \-9999.999 <= value <= 9999.999.
|
||||
(float in) \fIxhc-hb04.[xyza].pos-relative\fR Relative position display.
|
||||
(typically connect to: halui.axis.N.pos-relative). The LCD display
|
||||
for pos-relative is fixed format with a sign, 4 number digits and 3
|
||||
fraction digits (+XXXX.XXX), require: -9999.999 <= value <= 9999.999.
|
||||
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.feed\-override\fR Feed\-override value.
|
||||
(float in) \fIxhc-hb04.feed-override\fR Feed-override value.
|
||||
The float value is converted to a 16 bit integer and multiplied by 100 in
|
||||
order to display as percent, require: 0 <= pinvalue <= 655
|
||||
(typically connect to: halui.feed\-override.value)
|
||||
(typically connect to: halui.feed-override.value)
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.feed\-value\fR Current Feed-value (units/sec).
|
||||
(float in) \fIxhc-hb04.feed-value\fR Current Feed-value (units/sec).
|
||||
The float value is converted to a 16 bit integer and multiplied by 60 in
|
||||
order to display as units-per-minute, require: 0 <= pinvalue <= 1092
|
||||
(65520 units-per-minute) (typically connect to: motion.current\-vel)
|
||||
(65520 units-per-minute) (typically connect to: motion.current-vel)
|
||||
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.spindle\-override\fR Spindle\-override value.
|
||||
(float in) \fIxhc-hb04.spindle-override\fR Spindle-override value.
|
||||
The float value is converted to a 16 bit integer and multiplied by 100 in
|
||||
order to display as percent, require: 0 <= pinvalue <= 655)
|
||||
(typically connect to: halui.spindle\-override.value)
|
||||
(typically connect to: halui.spindle-override.value)
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.spindle\-rps\fR Spindle speed in rps.
|
||||
(float in) \fIxhc-hb04.spindle-rps\fR Spindle speed in rps.
|
||||
(revolutions per second). The float value is converted to a 16 bit integer
|
||||
and multiplied by 60 in order to display as RPMs,
|
||||
require: 0 <= pinvalue <= 1092 (65520 RPM) (typically connect to:
|
||||
motion.spindle\-speed\-out\-rps\-abs)
|
||||
motion.spindle-speed-out-rps-abs)
|
||||
.TP
|
||||
(bit in) \fIxhc\-hb04.inch\-icon\fR Use inch icon (default is mm)
|
||||
(bit in) \fIxhc-hb04.inch-icon\fR Use inch icon (default is mm)
|
||||
|
||||
.SH Output Pins (Status)
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.sleeping\fR True when the driver receives a pendant
|
||||
(bit out) \fIxhc-hb04.sleeping\fR True when the driver receives a pendant
|
||||
inactive (sleeping) message.
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.jog.enable\-off\fR True when the pendant rotary
|
||||
(bit out) \fIxhc-hb04.jog.enable-off\fR True when the pendant rotary
|
||||
selector switch is in the OFF position or when the pendant is sleeping.
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.enable\-[xyza]\fR True when the pendant rotary
|
||||
(bit out) \fIxhc-hb04.enable-[xyza]\fR True when the pendant rotary
|
||||
selector switch is in the [xyza] position and not sleeping.
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.enable\-spindle\-override\fR True when the pendant
|
||||
(bit out) \fIxhc-hb04.enable-spindle-override\fR True when the pendant
|
||||
rotary selector switch is in the Spindle position and not sleeping.
|
||||
(typically connect to: halui.spindle\-override\-count\-enable)
|
||||
(typically connect to: halui.spindle-override-count-enable)
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.enable\-feed\-override\fR True when the pendant rotary
|
||||
(bit out) \fIxhc-hb04.enable-feed-override\fR True when the pendant rotary
|
||||
selector switch is in the Feed position and not sleeping.
|
||||
(typically connect to: halui.feed\-override\-count\-enable)
|
||||
(typically connect to: halui.feed-override-count-enable)
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.connected\fR True when connection to the pendant
|
||||
(bit out) \fIxhc-hb04.connected\fR True when connection to the pendant
|
||||
is established over the USB interface.
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.require_pendant\fR True if driver started with
|
||||
the \-x option.
|
||||
(bit out) \fIxhc-hb04.require_pendant\fR True if driver started with
|
||||
the -x option.
|
||||
.TP
|
||||
(s32 out) \fIxhc\-hb04.stepsize\fR Current stepsize in the stepsize sequence
|
||||
as controlled by the stepsize\-up and/or stepsize\-down pins.
|
||||
(s32 out) \fIxhc-hb04.stepsize\fR Current stepsize in the stepsize sequence
|
||||
as controlled by the stepsize-up and/or stepsize-down pins.
|
||||
|
||||
.SH Output Pins (for jogging using axis.N.jog\-counts)
|
||||
.SH Output Pins (for jogging using axis.N.jog-counts)
|
||||
.TP
|
||||
(s32 out) \fIxhc\-hb04.jog.counts\fR Number of counts of the wheel since
|
||||
start\-up (50 counts per wheel revolution).
|
||||
(typically connect to axis.N.jog\-counts (lowpass filtering may be helpful))
|
||||
(s32 out) \fIxhc-hb04.jog.counts\fR Number of counts of the wheel since
|
||||
start-up (50 counts per wheel revolution).
|
||||
(typically connect to axis.N.jog-counts (lowpass filtering may be helpful))
|
||||
.TP
|
||||
(s32 out) \fIxhc\-hb04.jog.counts\-neg\fR The value of the
|
||||
xhc\-hb04.jog.counts multipled by \-1.
|
||||
(s32 out) \fIxhc-hb04.jog.counts-neg\fR The value of the
|
||||
xhc-hb04.jog.counts multipled by -1.
|
||||
.TP
|
||||
(float out) \fIxhc\-hb04.jog.scale\fR Value is the current stepsize
|
||||
(float out) \fIxhc-hb04.jog.scale\fR Value is the current stepsize
|
||||
multipled by 0.001.
|
||||
(typically connect to axis.N.jog\-scale)
|
||||
(typically connect to axis.N.jog-scale)
|
||||
|
||||
.SH Experimental: Pins for halui plus/minus jogging
|
||||
These pins provide some support for non\-trivkins, world mode jogging.
|
||||
These pins provide some support for non-trivkins, world mode jogging.
|
||||
.TP
|
||||
(float in) \fIxhc\-hb04.jog.max\-velocity\fR Connect to halui.max\-velocity.value
|
||||
(float in) \fIxhc-hb04.jog.max-velocity\fR Connect to halui.max-velocity.value
|
||||
.TP
|
||||
(float out) \fIxhc\-hb04.jog.velocity\fR Connect to halui.jog\-speed
|
||||
(float out) \fIxhc-hb04.jog.velocity\fR Connect to halui.jog-speed
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.jog.plus\-[xyza]\fR Connect to halui.jog.N.plus
|
||||
(bit out) \fIxhc-hb04.jog.plus-[xyza]\fR Connect to halui.jog.N.plus
|
||||
.TP
|
||||
(bit out) \fIxhc\-hb04.jog.minus\-[xyza]\fR Connect to halui.jog.N.minus
|
||||
(bit out) \fIxhc-hb04.jog.minus-[xyza]\fR Connect to halui.jog.N.minus
|
||||
.TP
|
||||
(float out) \fIxhc\-hb04.jog.increment\fR Debug pin -- abs(delta_pos)
|
||||
(float out) \fIxhc-hb04.jog.increment\fR Debug pin -- abs(delta_pos)
|
||||
|
||||
.SH Button output pins (for the 18 button, layout2 pendant)
|
||||
The output bit type pins are TRUE when the button is pressed.
|
||||
|
||||
.nf
|
||||
ROW 1
|
||||
(bit out) xhc\-hb04.button\-reset
|
||||
(bit out) xhc\-hb04.button\-stop
|
||||
(bit out) xhc-hb04.button-reset
|
||||
(bit out) xhc-hb04.button-stop
|
||||
|
||||
ROW 2
|
||||
(bit out) xhc\-hb04.button\-goto\-zero
|
||||
(bit out) xhc\-hb04.button\-rewind
|
||||
(bit out) xhc\-hb04.button\-start\-pause
|
||||
(bit out) xhc\-hb04.button\-probe\-z
|
||||
(bit out) xhc-hb04.button-goto-zero
|
||||
(bit out) xhc-hb04.button-rewind
|
||||
(bit out) xhc-hb04.button-start-pause
|
||||
(bit out) xhc-hb04.button-probe-z
|
||||
|
||||
ROW 3
|
||||
(bit out) xhc\-hb04.button\-spindle
|
||||
(bit out) xhc\-hb04.button\-half
|
||||
(bit out) xhc\-hb04.button\-zero
|
||||
(bit out) xhc\-hb04.button\-safe\-z
|
||||
(bit out) xhc-hb04.button-spindle
|
||||
(bit out) xhc-hb04.button-half
|
||||
(bit out) xhc-hb04.button-zero
|
||||
(bit out) xhc-hb04.button-safe-z
|
||||
|
||||
ROW 4
|
||||
(bit out) xhc\-hb04.button\-home
|
||||
(bit out) xhc\-hb04.button\-macro\-1
|
||||
(bit out) xhc\-hb04.button\-macro\-2
|
||||
(bit out) xhc\-hb04.button\-macro\-3
|
||||
(bit out) xhc-hb04.button-home
|
||||
(bit out) xhc-hb04.button-macro-1
|
||||
(bit out) xhc-hb04.button-macro-2
|
||||
(bit out) xhc-hb04.button-macro-3
|
||||
|
||||
ROW 5
|
||||
(bit out) xhc\-hb04.button\-step
|
||||
(bit out) xhc\-hb04.button\-mode
|
||||
(bit out) xhc\-hb04.button\-macro\-6
|
||||
(bit out) xhc\-hb04.button\-macro\-7
|
||||
(bit out) xhc-hb04.button-step
|
||||
(bit out) xhc-hb04.button-mode
|
||||
(bit out) xhc-hb04.button-macro-6
|
||||
(bit out) xhc-hb04.button-macro-7
|
||||
.fi
|
||||
|
||||
.SH Synthesized button pins
|
||||
Additional buttons are synthesized for buttons named
|
||||
\fBzero\fR, \fBgoto\-zero\fR, and \fBhalf\fR. These synthesized
|
||||
buttons are active when the button is pressed AND the selector\-switch
|
||||
\fBzero\fR, \fBgoto-zero\fR, and \fBhalf\fR. These synthesized
|
||||
buttons are active when the button is pressed AND the selector-switch
|
||||
is set to the corresponding axis [xyza].
|
||||
|
||||
.nf
|
||||
(bit out) xhc\-hb04.button\-zero\-[xyza]
|
||||
(bit out) xhc\-hb04.button\-goto\-zero\-[xyza]
|
||||
(bit out) xhc\-hb04.button\-half\-[xyza]
|
||||
(bit out) xhc-hb04.button-zero-[xyza]
|
||||
(bit out) xhc-hb04.button-goto-zero-[xyza]
|
||||
(bit out) xhc-hb04.button-half-[xyza]
|
||||
.fi
|
||||
|
||||
.SH DEBUGGING
|
||||
For debugging USB activity, use environmental variable LIBUSB_DEBUG:
|
||||
.TP
|
||||
export LIBUSB_DEBUG=[2 | 3 | 4]; xhc\-hb04 [options]
|
||||
export LIBUSB_DEBUG=[2 | 3 | 4]; xhc-hb04 [options]
|
||||
2:warning, 3:info, 4:debug
|
||||
|
||||
.SH Sim Configs
|
||||
The distribution includes several simulation configurations in
|
||||
the directory:
|
||||
.nf
|
||||
/usr/share/doc/linuxcnc/examples/sample\-configs/sim/axis/xhc\-hb04/
|
||||
/usr/share/doc/linuxcnc/examples/sample-configs/sim/axis/xhc-hb04/
|
||||
or for a RIP build:
|
||||
rip_base_dir/configs/sim/axis/xhc\-hb04/
|
||||
rip_base_dir/configs/sim/axis/xhc-hb04/
|
||||
.fi
|
||||
.PP
|
||||
These configurations use a distribution-provided script (xhc\-hb04.tcl)
|
||||
These configurations use a distribution-provided script (xhc-hb04.tcl)
|
||||
to configure the pendant and make necessary HAL connections according
|
||||
to a number of ini file settings. The script uses an additional
|
||||
HAL component (xhc_hb04_util) to provide common functionality and
|
||||
includes support for a standard method for the start-pause button.
|
||||
.PP
|
||||
The settings available include:
|
||||
1) specify button\-cfg\-file for standard layout1 or layout2
|
||||
1) specify button-cfg-file for standard layout1 or layout2
|
||||
2) select axes (up to 4 axes from set of x y z a b c u v w)
|
||||
3) implement per-axis filtering coeficients
|
||||
4) implement per-axis acceleration for mpg jogging
|
||||
|
|
@ -285,7 +285,7 @@ The settings available include:
|
|||
9) option to require pendant on startup
|
||||
.PP
|
||||
The sim configs illustrate button connections that:
|
||||
1) connect pendant stepsize\-up button to the step input pin.
|
||||
1) connect pendant stepsize-up button to the step input pin.
|
||||
2) connect buttons to halui.* pins
|
||||
3) connect buttons to motion.* pins
|
||||
.PP
|
||||
|
|
@ -295,14 +295,14 @@ directory for usage.
|
|||
.PP
|
||||
\fBNote:\fR The sim configs use the axis gui but the scripts are
|
||||
available with any HAL configuration or gui. The same scripts can
|
||||
be used to adapt the xhc\-hb04 to existing configurations provided that
|
||||
be used to adapt the xhc-hb04 to existing configurations provided that
|
||||
the halui, motion, and axis.N pins needed are not otherwise claimed.
|
||||
Instructions are included in README file in the directory named above.
|
||||
.PP
|
||||
Use halcmd to display the pins and signals used by the xhc\-hb04.tcl
|
||||
Use halcmd to display the pins and signals used by the xhc-hb04.tcl
|
||||
script:
|
||||
.nf
|
||||
halcmd show pin xhc\-hb04 (show all xhc\-hb04 pins)
|
||||
halcmd show pin xhc-hb04 (show all xhc-hb04 pins)
|
||||
halcmd show pin pendant_util (show all pendant_util pins)
|
||||
halcmd show sig pendant: (show all pendant signals)
|
||||
.fi
|
||||
|
|
|
|||
|
|
@ -40,7 +40,7 @@ Elementwise equality and inequality operator
|
|||
.TP
|
||||
.B PM_CARTESIAN operator+(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN\fIv2\fB)
|
||||
.TQ
|
||||
.B PM_CARTESIAN operator\-(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN\fIv2\fB)
|
||||
.B PM_CARTESIAN operator-(PM_CARTESIAN \fIv1\fB, PM_CARTESIAN\fIv2\fB)
|
||||
Addition and subtraction of vectors
|
||||
.TP
|
||||
.B PM_CARTESIAN operator*(double \fIs\fB, PM_CARTESIAN \fIv\fB)
|
||||
|
|
|
|||
|
|
@ -22,8 +22,8 @@ The desired location within the thread. This determines when the function will
|
|||
run, in relation to other functions in the thread. A positive number indicates
|
||||
the desired location as measured from the beginning of the thread, and a
|
||||
negative is measured from the end. So +1 means this function will become the
|
||||
first one to run, +5 means it will be the fifth one to run, \-2 means it will be
|
||||
next to last, and \-1 means it will be last. Zero is illegal.
|
||||
first one to run, +5 means it will be the fifth one to run, -2 means it will be
|
||||
next to last, and -1 means it will be last. Zero is illegal.
|
||||
|
||||
.SH DESCRIPTION
|
||||
\fBhal_add_funct_to_thread\fR adds a function exported by a realtime HAL
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ The base address of the port (if port >= 16) or the linux port number of the
|
|||
port (if port < 16)
|
||||
.IP \fIbase_hi\fR
|
||||
The "high" address of the port (location of the ECP registers), 0 to use a
|
||||
probed high address, or \-1 to disable the high address
|
||||
probed high address, or -1 to disable the high address
|
||||
.IP \fImodes\fR
|
||||
Advise the driver of the desired port modes, from <linux/parport.h>. If a
|
||||
linux-detected port does not provide the requested modes, a warning is printed
|
||||
|
|
@ -35,7 +35,7 @@ before the component exits with \fBhal_exit\fR.
|
|||
If the port is a parallel port known to Linux, and Linux detected a high
|
||||
I/O address, this value is used. Otherwise, if base+0x400 is not registered
|
||||
to any device, it is used. Otherwise, no address is used. If no high address
|
||||
is detected, port\->base_hi is 0.
|
||||
is detected, port->base_hi is 0.
|
||||
.SH PARPORT STRUCTURE
|
||||
.in +4n
|
||||
.nf
|
||||
|
|
|
|||
|
|
@ -68,7 +68,6 @@ There are functions for each of the data types that the HAL supports. Pins may
|
|||
only be linked to signals of the same type.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success, or a negative errno value on failure.
|
||||
|
||||
Returns a HAL status code.
|
||||
.SH SEE ALSO
|
||||
\fBhal_type_t(3hal)\fR, \fBhal_link(3hal)\fR
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ typedef ... \fBhal_bit_t;
|
|||
A volatile type which may have a value of 0 or nonzero.
|
||||
.TP
|
||||
typedef ... \fBhal_s32_t\fR;
|
||||
A volatile type which may have a value from \-2147483648 to 2147483647.
|
||||
A volatile type which may have a value from -2147483648 to 2147483647.
|
||||
.TP
|
||||
typedef ... \fBhal_u32_t\fR;
|
||||
A volatile type which may have a value from 0 to 4294967295.
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ It should be called only when all the frames have been defined by calls to
|
|||
hm2_tram_add_bspi_frame().
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
|
|
|
|||
|
|
@ -11,33 +11,26 @@ of a hostmot2 buffered SPI driver.
|
|||
int hm2_bspi_set_read_function(char *name, void *func, void *subdata)
|
||||
|
||||
.SH DESCRIPTION
|
||||
\fBhm2_bspi_set_read_function\fR registers a function in an external driver
|
||||
to be called every time that the main Hostmot2
|
||||
driver calls the generic "process_tram_read" function.
|
||||
The names of the available channels are printed with rtapi_print_msg during the
|
||||
\fBhm2_bspi_set_read_function\fR Registers a function in an external driver
|
||||
(typically written in "comp") to be called every time that the main Hostmot2
|
||||
driver calls the generic "process_tram_read" functionsread.
|
||||
The names of the available channels are printed to standard output during the
|
||||
driver loading process and take the form:
|
||||
.RS
|
||||
hm2_<board name>.<board index>.bspi.<index>
|
||||
.RE
|
||||
For example hm2_5i23.0.bspi.0.
|
||||
|
||||
hm2_<board name>.<board index>.bspi.<index> For example hm2_5i23.0.bspi.0
|
||||
"func" should be a pointer to a function in the sub driver which is to be
|
||||
called to process the results of the BSPI TRAM read phase. The function must
|
||||
take a single argument, a pointer to an individual instance of the internal
|
||||
driver. If defined in comp then the function must \fBnot\fP use the FUNCTION()
|
||||
driver. If defined in comp then the function must /fBnot/fP use the FUNCTION()
|
||||
convenience macro, and the argument to the function in the definition must
|
||||
\fBalways\fP be (struct state *inst).
|
||||
|
||||
read/fBallways/fP be (struct state *inst).
|
||||
"subdata" is a pointer to the driver instance internal data. In the case of a
|
||||
driver written in comp this will always be "inst" in the function call and the
|
||||
call should be anywhere in the EXTRA_SETUP code.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
\fBhm2_bspi_setup_chan(3hm2)\fR,
|
||||
\fBhm2_bspi_write_chan(3hm2)\fR,
|
||||
\fBhm2_tram_add_bspi_frame(3hm2)\fR,
|
||||
\fBhm2_allocate_bspi_tram(3hm2)\fR,
|
||||
src/hal/drivers mesa_7i65.comp in the LinuxCNC source distribution.
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
man hm2_allocate_bspi_tram.
|
||||
See src/hal/drivers mesa_7i65.comp for an example usage.
|
||||
|
|
|
|||
|
|
@ -11,35 +11,27 @@ of a hostmot2 buffered SPI driver.
|
|||
int hm2_bspi_set_write_function(char *name, void *func, void *subdata)
|
||||
|
||||
.SH DESCRIPTION
|
||||
\fBhm2_bspi_set_write_function\fR registers a function in an external driver
|
||||
to be called every time that the main Hostmot2
|
||||
\fBhm2_bspi_set_write_function\fR Registers a function in an external driver
|
||||
(typically written in "comp") to be called every time that the main Hostmot2
|
||||
driver calls the generic "prepare_tram_write" functions.
|
||||
The names of the available channels are printed with rtapi_print_msg during the
|
||||
The names of the available channels are printed to standard output during the
|
||||
driver loading process and take the form:
|
||||
.RS
|
||||
hm2_<board name>.<board index>.bspi.<index>
|
||||
.RE
|
||||
For example hm2_5i23.0.bspi.0.
|
||||
|
||||
hm2_<board name>.<board index>.bspi.<index> For example hm2_5i23.0.bspi.0
|
||||
"func" should be a pointer to a function in the sub driver which is to be
|
||||
called to process the pins into BSPI write registers prior to the regular TRAM
|
||||
write phase. The function must take a single argument, a pointer to an
|
||||
individual instance of the internal driver. If defined in comp then the
|
||||
function must \fBnot\fP use the FUNCTION() convenience macro, and the argument
|
||||
to the function in the definition must \fBalways\fP be (struct state *inst).
|
||||
|
||||
function must /fBnot/fP use the FUNCTION() convenience macro, and the argument
|
||||
to the function in the definition must /fBallways/fP be (struct state *inst).
|
||||
"subdata" is a pointer to the driver instance internal data. In the case of a
|
||||
driver written in comp this will always be "inst" in the function call.
|
||||
|
||||
If using comp then the call to this function should be anywhere in the
|
||||
If using comp then the call to this function should be anywhare in the
|
||||
EXTRA_SETUP code.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
\fBhm2_bspi_setup_chan(3hm2)\fR,
|
||||
\fBhm2_bspi_read_chan(3hm2)\fR,
|
||||
\fBhm2_tram_add_bspi_frame(3hm2)\fR,
|
||||
\fBhm2_allocate_bspi_tram(3hm2)\fR,
|
||||
src/hal/drivers mesa_7i65.comp in the LinuxCNC source distribution.
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
man hm2_allocate_bspi_tram.
|
||||
See src/hal/drivers mesa_7i65.comp for an example usage.
|
||||
|
|
|
|||
|
|
@ -34,7 +34,7 @@ sense-inverted, it should be set to 1 for devices which do not return data (such
|
|||
as DACs).
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
|
|
|
|||
|
|
@ -23,7 +23,7 @@ the main loop for regular data transfers (but is appropriate to use for on-the-
|
|||
fly setup changes).
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ The read and write parameters must be pointers to pointers, as TRAM re-maps the
|
|||
buffers into contiguous memory.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns 0 on success and \-1 on failure.
|
||||
Returns 0 on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_bspi_setup_chan, man hm2_bspi_write_chan, man hm2_tram_add_bspi_frame
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ Note that the UART Receieve FIFO is only 16 bytes deep,(the transmit FIFO is 64
|
|||
bytes) and "data" needs to be at least that large or undefined mayhem will ensue.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns the number of bytes read on success and \-1 on failure.
|
||||
Returns the number of bytes read on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_uart_setup, man hm2_uart_send
|
||||
|
|
|
|||
|
|
@ -25,7 +25,7 @@ This function performs writes of data to the specified UART.It should be used
|
|||
inside a function in a realtime or userspace HAL component.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns the number of bytes sent on success and \-1 on failure.
|
||||
Returns the number of bytes sent on success and -1 on failure.
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_uart_setup, man hm2_uart_read
|
||||
|
|
|
|||
|
|
@ -49,11 +49,11 @@ rx_mode and tx_mode registers are currently write-only. There should possibly be
|
|||
a get-status function.
|
||||
|
||||
To write only to the tx_mode DriveEnable bit call this function with the bitrate
|
||||
unchanged and \-1 as the rx_mode
|
||||
To change bitrate without altering mode settings send \-1 to both modes.
|
||||
unchanged and -1 as the rx_mode
|
||||
To change bitrate without altering mode settings send -1 to both modes.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Returns0 on success and \-1 on failure
|
||||
Returns0 on success and -1 on failure
|
||||
|
||||
.SH SEE ALSO
|
||||
man hm2_uart_send, man hm2_uart_read
|
||||
|
|
|
|||
|
|
@ -18,7 +18,7 @@ generally consists of a call to rtapi_init or hal_init, followed by other
|
|||
component-specific initialization code.
|
||||
|
||||
.SH RETURN VALUE
|
||||
Return 0 for success. Return a negative errno value (e.g., \-EINVAL) on
|
||||
Return 0 for success. Return a negative errno value (e.g., -EINVAL) on
|
||||
error. Existing code also returns RTAPI or HAL error values, but using
|
||||
negative errno values gives better diagnostics from insmod.
|
||||
|
||||
|
|
|
|||
|
|
@ -20,8 +20,8 @@ hardware and RTOS limitations, the actual period may not be exactly what was
|
|||
requested. On success, the function will return the actual clock period if it
|
||||
is available, otherwise it returns the requested period. If the requested
|
||||
period is outside the limits imposed by the hardware or RTOS, it returns
|
||||
\fB\-EINVAL\fR and does not start the clock. Once the clock is started,
|
||||
subsequent calls with non-zero \fInsec\fR return \fB\-EINVAL\fR and have no
|
||||
\fB-EINVAL\fR and does not start the clock. Once the clock is started,
|
||||
subsequent calls with non-zero \fInsec\fR return \fB-EINVAL\fR and have no
|
||||
effect. Calling \fBrtapi_clock_set_period\fR with \fInsec\fR set to zero
|
||||
queries the clock, returning the current clock period, or zero if the clock has
|
||||
not yet been started.
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ especially in kernel space. Also note that rtapi_print() will NOT
|
|||
print \fIlong long\fRs. Most time measurements are relative, and should
|
||||
be done like this:
|
||||
.RS
|
||||
deltat = (long int)(end_time \- start_time);
|
||||
deltat = (long int)(end_time - start_time);
|
||||
.RE
|
||||
where end_time and start_time are longlong values returned from rtapi_get_time,
|
||||
and deltat is an ordinary long int (32 bits). This will work for times up to a
|
||||
|
|
@ -50,11 +50,11 @@ Returns the current time in nanoseconds or CPU clocks.
|
|||
Certain versions of the Linux kernel provide a global variable \fBcpu_khz\fR.
|
||||
Computing
|
||||
.RS
|
||||
deltat = (end_clocks \- start_clocks) / cpu_khz:
|
||||
deltat = (end_clocks - start_clocks) / cpu_khz:
|
||||
.RE
|
||||
gives the duration measured in milliseconds. Computing
|
||||
.RS
|
||||
deltat = (end_clocks \- start_clocks) * 1000000 / cpu_khz:
|
||||
deltat = (end_clocks - start_clocks) * 1000000 / cpu_khz:
|
||||
.RE
|
||||
gives the duration measured in nanoseconds for deltas less than about 9
|
||||
trillion clocks (e.g., 3000 seconds at 3GHz).
|
||||
|
|
|
|||
|
|
@ -61,20 +61,20 @@ hal_export_funct(3hal)
|
|||
.SH Interpretation of license strings
|
||||
|
||||
\fBMODULE_LICENSE\fR follows the kernel's definition of license strings. Notably,
|
||||
"GPL" indicates "GNU General Public License v2 \fIor later\fR". (emphasis ours).
|
||||
"GPL" indicates "GNU Public License v2 \fIor later\fR". (emphasis ours).
|
||||
|
||||
.IP \fB"GPL"\fR
|
||||
GNU General Public License v2 or later
|
||||
GNU Public License v2 or later
|
||||
.IP \fB"GPL\ v2"\fR
|
||||
GNU General Public License v2
|
||||
GNU Public License v2
|
||||
.IP \fB"GPL\ and\ additional\ rights"\fR
|
||||
GNU General Public License v2 rights and more
|
||||
GNU Public License v2 rights and more
|
||||
.IP \fB"Dual\ BSD/GPL"\fR
|
||||
GNU General Public License v2 or BSD license choice
|
||||
GNU Public License v2 or BSD license choice
|
||||
.IP \fB"Dual\ MIT/GPL"\fR
|
||||
GNU General Public License v2 or MIT license choice
|
||||
GNU Public License v2 or MIT license choice
|
||||
.IP \fB"Dual\ MPL/GPL"\fR
|
||||
GNU General Public License v2 or Mozilla license choice
|
||||
GNU Public License v2 or Mozilla license choice
|
||||
.IP \fB"Proprietary"\fR
|
||||
Non-free products
|
||||
.P
|
||||
|
|
|
|||
|
|
@ -41,7 +41,7 @@ The base address of the port (if port >= 16) or the linux port number of the
|
|||
port (if port < 16)
|
||||
.IP \fIbase_hi\fR
|
||||
The "high" address of the port (location of the ECP registers), 0 to use a
|
||||
probed high address, or \-1 to disable the high address
|
||||
probed high address, or -1 to disable the high address
|
||||
.IP \fImodes\fR
|
||||
Advise the driver of the desired port modes, from <linux/parport.h>. If a
|
||||
linux-detected port does not provide the requested modes, a warning is printed
|
||||
|
|
@ -58,7 +58,7 @@ exits with \fBrtapi_exit\fR.
|
|||
If the port is a parallel port known to Linux, and Linux detected a high
|
||||
I/O address, this value is used. Otherwise, if base+0x400 is not registered
|
||||
to any device, it is used. Otherwise, no address is used. If no high address
|
||||
is detected, port\->base_hi is 0.
|
||||
is detected, port->base_hi is 0.
|
||||
.SH PARPORT STRUCTURE
|
||||
.in +4n
|
||||
.nf
|
||||
|
|
|
|||
|
|
@ -27,6 +27,9 @@ and going for \fIsize\fR bytes.
|
|||
.SH REALTIME CONSIDERATIONS
|
||||
May be called from realtime init/cleanup code only.
|
||||
|
||||
.SH BUGS
|
||||
On kernels before 2.4.0, \fBrtapi_request_region\fR always suceeds.
|
||||
|
||||
.SH RETURN VALUE
|
||||
\fBrtapi_request_region\fR returns NULL if the allocation fails, and a non-NULL
|
||||
value otherwise.
|
||||
|
|
|
|||
|
|
@ -8,14 +8,14 @@ rtapi_task_self \- Retrieve ID of current task
|
|||
void rtapi_task_self()
|
||||
|
||||
.SH DESCRIPTION
|
||||
\fBrtapi_task_self\fR retrieves the current task, or \-EINVAL if not in a
|
||||
\fBrtapi_task_self\fR retrieves the current task, or -EINVAL if not in a
|
||||
realtime task (e.g., in startup or shutdown code).
|
||||
|
||||
.SH REALTIME CONSIDERATIONS
|
||||
May be called from init/cleanup code, and from within realtime tasks.
|
||||
|
||||
.SH RETURN VALUE
|
||||
The task number previously returned by \fBrtapi_task_new\fR or \-EINVAL.
|
||||
The task number previously returned by \fBrtapi_task_new\fR or -EINVAL.
|
||||
|
||||
.SH SEE ALSO
|
||||
\fBrtapi_task_new(3rtapi)\fR
|
||||
|
|
|
|||
|
|
@ -37,24 +37,24 @@ cycle to characterize the process. From this, \fBPgain/Igain/Dgain\fR or
|
|||
.P
|
||||
During auto tuning, the \fBcommand\fR input should not change. The limit
|
||||
cycle is setup around the commanded position. No initial tuning values are
|
||||
required to start auto tuning. Only \fBtune\-cycles\fR, \fBtune\-effort\fR
|
||||
and \fBtune\-mode\fR need be set before starting auto tuning. When auto tuning
|
||||
required to start auto tuning. Only \fBtune-cycles\fR, \fBtune-effort\fR
|
||||
and \fBtune-mode\fR need be set before starting auto tuning. When auto tuning
|
||||
completes, the tuning parameters will be set. If running from LinuxCNC, the
|
||||
FERROR setting for the axis being tuned may need to be loosened up as it must
|
||||
be larger than the limit cycle amplitude in order to avoid a following error.
|
||||
.P
|
||||
To perform auto tuning, take the following steps. Move the axis to be tuned,
|
||||
to somewhere near the center of it's travel. Set \fBtune\-cycles\fR (the
|
||||
default value should be fine in most cases) and \fBtune\-mode\fR. Set
|
||||
\fBtune\-effort\fR to a small value. Set \fBenable\fR to true. Set
|
||||
\fBtune\-mode\fR to true. Set \fBtune\-start\fR to true. If no oscillation
|
||||
occurs, or the oscillation is too small, slowly increase \fBtune\-effort\fR.
|
||||
to somewhere near the center of it's travel. Set \fBtune-cycles\fR (the
|
||||
default value should be fine in most cases) and \fBtune-mode\fR. Set
|
||||
\fBtune-effort\fR to a small value. Set \fBenable\fR to true. Set
|
||||
\fBtune-mode\fR to true. Set \fBtune-start\fR to true. If no oscillation
|
||||
occurs, or the oscillation is too small, slowly increase \fBtune-effort\fR.
|
||||
Auto tuning can be aborted at any time by setting \fBenable\fR or
|
||||
\fBtune\-mode\fR to false.
|
||||
\fBtune-mode\fR to false.
|
||||
|
||||
.SH NAMING
|
||||
The names for pins, parameters, and functions are prefixed as:
|
||||
\fBpid.N.\fR for N=0,1,...,num\-1 when using \fBnum_chan=num\fR
|
||||
\fBpid.N.\fR for N=0,1,...,num-1 when using \fBnum_chan=num\fR
|
||||
\fBnameN.\fR for nameN=name1,name2,... when using \fBnames=name1,name2,...\fR
|
||||
|
||||
The \fBpid.N.\fR format is shown in the following descriptions.
|
||||
|
|
@ -62,7 +62,7 @@ The \fBpid.N.\fR format is shown in the following descriptions.
|
|||
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
\fBpid.\fIN\fB.do\-pid\-calcs\fR (uses floating-point)
|
||||
\fBpid.\fIN\fB.do-pid-calcs\fR (uses floating-point)
|
||||
Does the PID calculations for control loop \fIN\fR.
|
||||
|
||||
.SH PINS
|
||||
|
|
@ -84,11 +84,11 @@ The output of the PID loop, which goes to some actuator such as a motor.
|
|||
When true, enables the PID calculations. When false, \fBoutput\fR is zero,
|
||||
and all internal integrators, etc, are reset.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.tune\-mode\fR bit in
|
||||
\fBpid.\fIN\fB.tune-mode\fR bit in
|
||||
When true, enables auto tune mode. When false, normal PID calculations are
|
||||
performed.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.tune\-start\fR bit io
|
||||
\fBpid.\fIN\fB.tune-start\fR bit io
|
||||
When set to true, starts auto tuning. Cleared when the auto tuning completes.
|
||||
|
||||
.SH PARAMETERS
|
||||
|
|
@ -188,18 +188,18 @@ Limit on command second derivative. The command second derivative used by
|
|||
used to prevent \fBFF2\fR from producing large output spikes if there is a
|
||||
step change on the command. Not normally needed.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.tune\-type\fR u32 rw
|
||||
\fBpid.\fIN\fB.tune-type\fR u32 rw
|
||||
When set to 0, \fBPgain/Igain/Dgain\fR are caclulated. When set to 1,
|
||||
\fBPgain/Igain/FF1\fR are calculated.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.tune\-cycles\fR u32 rw
|
||||
\fBpid.\fIN\fB.tune-cycles\fR u32 rw
|
||||
Determines the number of cycles to run to characterize the process.
|
||||
\fBtune\-cycles\fR actually sets the number of half cycles. More cycles results
|
||||
\fBtune-cycles\fR actually sets the number of half cycles. More cycles results
|
||||
in a more accurate characterization as the average of all cycles is used.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.tune\-effort\fR float rw
|
||||
\fBpid.\fIN\fB.tune-effort\fR float rw
|
||||
Determines the effor used in setting up the limit cycle in the process.
|
||||
\fBtune\-effort\fR should be set to a positive value less than \fBmaxoutput\fR.
|
||||
\fBtune-effort\fR should be set to a positive value less than \fBmaxoutput\fR.
|
||||
Start with something small and work up to a value that results in a good
|
||||
portion of the maximum motor current being used. The smaller the value, the
|
||||
smaller the amplitude of the limit cycle.
|
||||
|
|
@ -217,11 +217,11 @@ Derivative of command. This is the value that is multiplied by \fBFF1\fR to pro
|
|||
Second derivative of command. This is the value that is multiplied by
|
||||
\fBFF2\fR to produce the second order feed-forward term of the output.
|
||||
.TP
|
||||
\fBpid.\fIN\fB.ultimate\-gain\fR float ro (only if debug=1)
|
||||
Determined from process characterization. \fBultimate\-gain\fR is the ratio of
|
||||
\fBtune\-effort\fR to the limit cycle amplitude multipled by 4.0 divided by Pi.
|
||||
\fBpid.\fIN\fB.ultimate\-period\fR float ro (only if debug=1)
|
||||
Determined from process characterization. \fBultimate\-period\fR is the period
|
||||
\fBpid.\fIN\fB.ultimate-gain\fR float ro (only if debug=1)
|
||||
Determined from process characterization. \fBultimate-gain\fR is the ratio of
|
||||
\fBtune-effort\fR to the limit cycle amplitude multipled by 4.0 divided by Pi.
|
||||
\fBpid.\fIN\fB.ultimate-period\fR float ro (only if debug=1)
|
||||
Determined from process characterization. \fBultimate-period\fR is the period
|
||||
of the limit cycle.
|
||||
|
||||
.SH BUGS
|
||||
|
|
|
|||
|
|
@ -17,32 +17,32 @@ These pins and parameters are created by the realtime \fBclassicladder_rt\fR mod
|
|||
.SH PINS
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.in\-\fINN\fB\fR IN bit
|
||||
\fBclassicladder.0.in-\fINN\fB\fR IN bit
|
||||
These bit signal pins map to \fB%I\fINN\fR variables in classicladder
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.out\-\fINN\fB\fR OUT bit
|
||||
\fBclassicladder.0.out-\fINN\fB\fR OUT bit
|
||||
These bit signal pins map to \fB%Q\fINN\fR variables in classicladder
|
||||
Output from classicladder
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.s32in\-\fINN\fB\fR IN s32
|
||||
\fBclassicladder.0.s32in-\fINN\fB\fR IN s32
|
||||
Integer input from classicladder
|
||||
These s32 signal pins map to \fB%IW\fINN\fR variables in classicladder
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.s32out\-\fINN\fB\fR OUT s32
|
||||
\fBclassicladder.0.s32out-\fINN\fB\fR OUT s32
|
||||
Integer output from classicladder
|
||||
These s32 signal pins map to \fB%QW\fINN\fR variables in classicladder
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.floatin\-\fINN\fB\fR IN float
|
||||
\fBclassicladder.0.floatin-\fINN\fB\fR IN float
|
||||
Integer input from classicladder
|
||||
These float signal pins map to \fB%IF\fINN\fR variables in classicladder
|
||||
These are truncated to S32 values internally. eg 7.5 will be 7
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.floatout\-\fINN\fB\fR OUT float
|
||||
\fBclassicladder.0.floatout-\fINN\fB\fR OUT float
|
||||
Float output from classicladder
|
||||
These float signal pins map to \fB%QF\fINN\fR variables in classicladder
|
||||
|
||||
|
|
@ -63,7 +63,7 @@ Tells you how long the last refresh took
|
|||
Tells you how long the longest refresh took
|
||||
|
||||
.TP
|
||||
\fBclassicladder.0.ladder\-state\fR RO s32
|
||||
\fBclassicladder.0.ladder-state\fR RO s32
|
||||
Tells you if the program is running or not
|
||||
.SH FUNCTIONS
|
||||
|
||||
|
|
@ -74,9 +74,9 @@ You can added it to a faster thread but it
|
|||
Will update no faster than once every 1 millisecond (1000000 ns).
|
||||
|
||||
.SH BUGS
|
||||
See http://wiki.linuxcnc.org/cgi\-bin/wiki.pl?ClassicLadder_Ver_7.124 for the latest.
|
||||
See http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ClassicLadder_Ver_7.124 for the latest.
|
||||
|
||||
.SH SEE ALSO
|
||||
\fIClassicladder\fR chapters in the LinuxCNC documentation for a full description of the \fBClassicladder\fR syntax and examples
|
||||
|
||||
http://wiki.linuxcnc.org/cgi\-bin/wiki.pl?ClassicLadder_Ver_7.124
|
||||
http://wiki.linuxcnc.org/cgi-bin/wiki.pl?ClassicLadder_Ver_7.124
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ counter \- counts input pulses \fB(DEPRECATED)\fB
|
|||
.B loadrt counter [num_chan=\fIN\fB]
|
||||
.SH DESCRIPTION
|
||||
\fBcounter\fR is a deprecated HAL component and will be removed in a future
|
||||
release. Use the \fBencoder\fR component with encoder.X.counter\-mode set to
|
||||
release. Use the \fBencoder\fR component with encoder.X.counter-mode set to
|
||||
TRUE.
|
||||
|
||||
\fBcounter\fR is a HAL component that provides software-
|
||||
|
|
@ -21,9 +21,9 @@ based counting that is useful for spindle position sensing and
|
|||
maybe other things. Instead of using a real encoder that outputs
|
||||
quadrature, some lathes have a sensor that generates a simple pulse
|
||||
stream as the spindle turns and an index pulse once per revolution.
|
||||
This component simply counts up when a "count" pulse (phase\-A)
|
||||
This component simply counts up when a "count" pulse (phase-A)
|
||||
is received, and if reset is enabled, resets when the "index"
|
||||
(phase\-Z) pulse is received.
|
||||
(phase-Z) pulse is received.
|
||||
|
||||
This is of course only useful for a unidirectional spindle, as it
|
||||
is not possible to sense the direction of rotation.
|
||||
|
|
@ -32,25 +32,25 @@ is not possible to sense the direction of rotation.
|
|||
in the HAL manual.
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
.B \fBcounter.capture\-position\fR (uses floating-point)
|
||||
.B \fBcounter.capture-position\fR (uses floating-point)
|
||||
Updates the counts, position and velocity outputs based on internal counters.
|
||||
.TP
|
||||
.B \fBcounter.update\-counters\fR
|
||||
Samples the phase\-A and phase\-Z inputs and updates internal counters.
|
||||
.B \fBcounter.update-counters\fR
|
||||
Samples the phase-A and phase-Z inputs and updates internal counters.
|
||||
|
||||
|
||||
.SH PINS
|
||||
.TP
|
||||
.B \fBcounter.\fIN\fB.phase\-A\fR bit in
|
||||
.B \fBcounter.\fIN\fB.phase-A\fR bit in
|
||||
The primary input signal. The internal counter is incremented on each
|
||||
rising edge.
|
||||
.TP
|
||||
.B \fBcounter.\fIN\fB.phase\-Z\fR bit in
|
||||
The index input signal. When the \fBindex\-enable\fR pin is TRUE and a rising
|
||||
edge on \fBphase\-Z\fR is seen, \fBindex\-enable\fR is set to FALSE and the
|
||||
.B \fBcounter.\fIN\fB.phase-Z\fR bit in
|
||||
The index input signal. When the \fBindex-enable\fR pin is TRUE and a rising
|
||||
edge on \fBphase-Z\fR is seen, \fBindex-enable\fR is set to FALSE and the
|
||||
internal counter is reset to zero.
|
||||
.TP
|
||||
.B \fBcounter.\fIN\fB.index\-enable\fR bit io
|
||||
.B \fBcounter.\fIN\fB.index-enable\fR bit io
|
||||
.TQ
|
||||
.B \fBcounter.\fIN\fB.reset\fR bit io
|
||||
.TQ
|
||||
|
|
@ -61,11 +61,11 @@ internal counter is reset to zero.
|
|||
.B \fBcounter.\fIN\fB.velocity\fR float out
|
||||
These pins function according to the canonical digital encoder interface.
|
||||
.TP
|
||||
.B \fBcounter.\fIN\fB.position\-scale\fR float rw
|
||||
.B \fBcounter.\fIN\fB.position-scale\fR float rw
|
||||
This parameter functions according to the canonical digital encoder interface.
|
||||
.TP
|
||||
.B \fBcounter.\fIN\fB.rawcounts\fR signed ro
|
||||
The internal counts value, updated from \fBupdate\-counters\fR and reflected
|
||||
in the output pins at the next call to \fBcapture\-position\fR.
|
||||
The internal counts value, updated from \fBupdate-counters\fR and reflected
|
||||
in the output pins at the next call to \fBcapture-position\fR.
|
||||
.SH SEE ALSO
|
||||
\fBencoder(9)\fR. in the LinuxCNC documentation.
|
||||
|
|
|
|||
|
|
@ -29,28 +29,28 @@ If neither \fBnum_chan=\fR nor \fBnames=\fR are specified, or if
|
|||
\fBnum_chan=0\fR is specified, the default value is three.
|
||||
.P
|
||||
\fBencoder\fR has a one-phase, unidirectional mode called \fIcounter\fR.
|
||||
In this mode, the \fBphase\-B\fR input is ignored; the counts increase on
|
||||
each rising edge of \fBphase\-A\fR. This mode may be useful for counting
|
||||
In this mode, the \fBphase-B\fR input is ignored; the counts increase on
|
||||
each rising edge of \fBphase-A\fR. This mode may be useful for counting
|
||||
a unidirectional spindle with a single input line, though the noise-resistant
|
||||
characteristics of quadrature are lost.
|
||||
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
\fBencoder.update\-counters\fR (no floating-point)
|
||||
\fBencoder.update-counters\fR (no floating-point)
|
||||
Does the actual counting, by sampling the encoder signals and decoding
|
||||
the quadrature waveforms. Must be called as frequently as possible,
|
||||
preferably twice as fast as the maximum desired count rate. Operates
|
||||
on all channels at once.
|
||||
.TP
|
||||
\fBencoder.capture\-position\fR (uses floating point)
|
||||
Captures the raw counts from \fBupdate\-counters\fR and performs scaling
|
||||
\fBencoder.capture-position\fR (uses floating point)
|
||||
Captures the raw counts from \fBupdate-counters\fR and performs scaling
|
||||
and other necessary conversion, handles counter rollover, etc. Can
|
||||
(and should) be called less frequently than \fBupdate\-counters\fR.
|
||||
(and should) be called less frequently than \fBupdate-counters\fR.
|
||||
Operates on all channels at once.
|
||||
|
||||
.SH NAMING
|
||||
The names for pins and parameters are prefixed as:
|
||||
\fBencoder.N.\fR for N=0,1,...,num\-1 when using \fBnum_chan=num\fR
|
||||
\fBencoder.N.\fR for N=0,1,...,num-1 when using \fBnum_chan=num\fR
|
||||
\fBnameN.\fR for nameN=name1,name2,... when using \fBnames=name1,name2,...\fR
|
||||
|
||||
The \fBencoder.N.\fR format is shown in the following descriptions.
|
||||
|
|
@ -59,51 +59,51 @@ The \fBencoder.N.\fR format is shown in the following descriptions.
|
|||
.SH PINS
|
||||
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.counter\-mode\fR bit i/o
|
||||
\fBencoder.\fIN\fB.counter-mode\fR bit i/o
|
||||
Enables counter mode. When true, the counter counts each rising edge of the
|
||||
phase\-A input, ignoring the value on phase\-B. This is useful for counting
|
||||
phase-A input, ignoring the value on phase-B. This is useful for counting
|
||||
the output of a single channel (non-quadrature) sensor. When false (the
|
||||
default), it counts in quadrature mode.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.counts\fR s32 out
|
||||
Position in encoder counts.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.index\-enable\fR bit i/o
|
||||
\fBencoder.\fIN\fB.index-enable\fR bit i/o
|
||||
When true, \fBcounts\fR and \fBposition\fR are reset to zero on the next
|
||||
rising edge of \fBPhase\-Z\fR. At the same time, \fBindex\-enable\fR is reset
|
||||
rising edge of \fBPhase-Z\fR. At the same time, \fBindex-enable\fR is reset
|
||||
to zero to indicate that the rising edge has occurred.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.min\-speed\-estimate\fR float in (default: 1.0)
|
||||
\fBencoder.\fIN\fB.min-speed-estimate\fR float in (default: 1.0)
|
||||
Determine the minimum speed at which \fBvelocity\fR will be
|
||||
estimated as nonzero and \fBpostition\-interpolated\fR will be interpolated.
|
||||
The units of \fBmin\-speed\-estimate\fR are the same as the units of
|
||||
estimated as nonzero and \fBpostition-interpolated\fR will be interpolated.
|
||||
The units of \fBmin-speed-estimate\fR are the same as the units of
|
||||
\fBvelocity\fR. Setting this parameter too low will cause it to take a long
|
||||
time for \fBvelocity\fR to go to 0 after encoder pulses have stopped arriving.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.phase\-A\fR bit in
|
||||
\fBencoder.\fIN\fB.phase-A\fR bit in
|
||||
Quadrature input for encoder channel \fIN\fR.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.phase\-B\fR bit in
|
||||
\fBencoder.\fIN\fB.phase-B\fR bit in
|
||||
Quadrature input.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.phase\-Z\fR bit in
|
||||
\fBencoder.\fIN\fB.phase-Z\fR bit in
|
||||
Index pulse input.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.position\fR float out
|
||||
Position in scaled units (see \fBposition\-scale\fR)
|
||||
Position in scaled units (see \fBposition-scale\fR)
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.position\-interpolated\fR float out
|
||||
\fBencoder.\fIN\fB.position-interpolated\fR float out
|
||||
Position in scaled units, interpolated between encoder counts. Only valid when
|
||||
velocity is approximately constant and above \fBmin\-speed\-estimate\fR. Do
|
||||
velocity is approximately constant and above \fBmin-speed-estimate\fR. Do
|
||||
not use for position control.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.position\-scale\fR float i/o
|
||||
Scale factor, in counts per length unit. For example, if \fBposition\-scale\fR
|
||||
\fBencoder.\fIN\fB.position-scale\fR float i/o
|
||||
Scale factor, in counts per length unit. For example, if \fBposition-scale\fR
|
||||
is 500, then 1000 counts of the encoder will be reported as a position of 2.0
|
||||
units.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.rawcounts\fR s32 out
|
||||
The raw count, as determined by \fBupdate\-counters\fR. This value is updated
|
||||
The raw count, as determined by \fBupdate-counters\fR. This value is updated
|
||||
more frequently than \fBcounts\fR and \fBposition\fR. It is also unaffected
|
||||
by \fBreset\fR or the index pulse.
|
||||
.TP
|
||||
|
|
@ -114,32 +114,32 @@ When true, \fBcounts\fR and \fBposition\fR are reset to zero immediately.
|
|||
Velocity in scaled units per second. \fBencoder\fR uses an algorithm that
|
||||
greatly reduces quantization noise as compared to simply differentiating the
|
||||
\fBposition\fR output. When the magnitude of the true velocity is below
|
||||
\fRmin\-speed\-estimate\fR, the \fRvelocity\fR output is 0.
|
||||
\fRmin-speed-estimate\fR, the \fRvelocity\fR output is 0.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.x4\-mode\fR bit i/o
|
||||
Enables times\-4 mode. When true (the default), the counter counts each edge
|
||||
\fBencoder.\fIN\fB.x4-mode\fR bit i/o
|
||||
Enables times-4 mode. When true (the default), the counter counts each edge
|
||||
of the quadrature waveform (four counts per full cycle). When false, it only
|
||||
counts once per full cycle. In \fBcounter\-mode\fR, this parameter is ignored.
|
||||
counts once per full cycle. In \fBcounter-mode\fR, this parameter is ignored.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.latch\-input\fR bit in
|
||||
\fBencoder.\fIN\fB.latch-input\fR bit in
|
||||
.TQ
|
||||
\fBencoder.\fIN\fB.latch\-falling\fR bit in (default: \fBTRUE\fR)
|
||||
\fBencoder.\fIN\fB.latch-falling\fR bit in (default: \fBTRUE\fR)
|
||||
.TQ
|
||||
\fBencoder.\fIN\fB.latch\-rising\fR bit in (default: \fBTRUE\fR)
|
||||
\fBencoder.\fIN\fB.latch-rising\fR bit in (default: \fBTRUE\fR)
|
||||
.TQ
|
||||
\fBencoder.\fIN\fB.counts\-latched\fR s32 out
|
||||
\fBencoder.\fIN\fB.counts-latched\fR s32 out
|
||||
.TQ
|
||||
\fBencoder.\fIN\fB.position\-latched\fR float out
|
||||
Update \fBcounts\-latched\fR and \fBposition\-latched\fR on the rising and/or
|
||||
falling edges of \fBlatch\-input\fR as indicated by \fBlatch\-rising\fR and
|
||||
\fBlatch\-falling\fR.
|
||||
\fBencoder.\fIN\fB.position-latched\fR float out
|
||||
Update \fBcounts-latched\fR and \fBposition-latched\fR on the rising and/or
|
||||
falling edges of \fBlatch-input\fR as indicated by \fBlatch-rising\fR and
|
||||
\fBlatch-falling\fR.
|
||||
.TP
|
||||
\fBencoder.\fIN\fB.counter\-mode\fR bit rw
|
||||
\fBencoder.\fIN\fB.counter-mode\fR bit rw
|
||||
Enables counter mode. When true, the counter counts each rising edge of the
|
||||
phase\-A input, ignoring the value on phase\-B. This is useful for counting
|
||||
phase-A input, ignoring the value on phase-B. This is useful for counting
|
||||
the output of a single channel (non-quadrature) sensor. When false (the
|
||||
default), it counts in quadrature mode.
|
||||
\fBencoder.\fIN\fB.capture\-position.tmax\fR s32 rw
|
||||
\fBencoder.\fIN\fB.capture-position.tmax\fR s32 rw
|
||||
Maximum number of CPU cycles it took to execute this function.
|
||||
|
||||
.SH PARAMETERS
|
||||
|
|
|
|||
|
|
@ -27,32 +27,32 @@ If neither \fBnum_chan=\fR nor \fBnames=\fR are specified, the default value is
|
|||
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
.B encoder\-ratio.sample
|
||||
.B encoder-ratio.sample
|
||||
Read all input pins. Must be called at twice the maximum desired count rate.
|
||||
.TP
|
||||
.B encoder\-ratio.update (uses floating-point)
|
||||
.B encoder-ratio.update (uses floating-point)
|
||||
Updates all output pins. May be called from a slower thread.
|
||||
|
||||
.SH NAMING
|
||||
The names for pins and parameters are prefixed as:
|
||||
\fBencoder\-ratio.N.\fR for N=0,1,...,num\-1 when using \fBnum_chan=num\fR
|
||||
\fBencoder-ratio.N.\fR for N=0,1,...,num-1 when using \fBnum_chan=num\fR
|
||||
\fBnameN.\fR for nameN=name1,name2,... when using \fBnames=name1,name2,...\fR
|
||||
|
||||
The \fBencoder\-ratio.N.\fR format is shown in the following descriptions.
|
||||
The \fBencoder-ratio.N.\fR format is shown in the following descriptions.
|
||||
|
||||
.SH PINS
|
||||
|
||||
.TP
|
||||
.B encoder\-ratio.\fIN\fB.master\-A\fR bit in
|
||||
.B encoder-ratio.\fIN\fB.master-A\fR bit in
|
||||
.TQ
|
||||
.B encoder\-ratio.\fIN\fB.master\-B\fR bit in
|
||||
.B encoder-ratio.\fIN\fB.master-B\fR bit in
|
||||
.TQ
|
||||
.B encoder\-ratio.\fIN\fB.slave\-A\fR bit in
|
||||
.B encoder-ratio.\fIN\fB.slave-A\fR bit in
|
||||
.TQ
|
||||
.B encoder\-ratio.\fIN\fB.slave\-B\fR bit in
|
||||
.B encoder-ratio.\fIN\fB.slave-B\fR bit in
|
||||
The encoder channels of the master and slave axes
|
||||
.TP
|
||||
.B encoder\-ratio.\fIN\fB.enable\fR bit in
|
||||
.B encoder-ratio.\fIN\fB.enable\fR bit in
|
||||
When the enable pin is FALSE, the error pin simply reports the slave axis
|
||||
position, in revolutions. As such, it would normally be connected to the
|
||||
feedback pin of a PID block for closed loop control of the slave axis.
|
||||
|
|
@ -63,18 +63,18 @@ scale factor is the ratio of master teeth to slave teeth. As the master moves,
|
|||
error becomes non-zero, and the PID loop will drive the slave axis to track the
|
||||
master.
|
||||
.TP
|
||||
.B encoder\-ratio.\fIN\fB.error\fR float out
|
||||
.B encoder-ratio.\fIN\fB.error\fR float out
|
||||
The error in the position of the slave (in revolutions)
|
||||
.SH PARAMETERS
|
||||
.TP
|
||||
.B encoder\-ratio.N.master\-ppr\fR unsigned rw
|
||||
.B encoder-ratio.N.master-ppr\fR unsigned rw
|
||||
.TQ
|
||||
.B encoder\-ratio.N.slave\-ppr\fR unsigned rw
|
||||
.B encoder-ratio.N.slave-ppr\fR unsigned rw
|
||||
The number of pulses per revolution of the master and slave axes
|
||||
.TP
|
||||
.B encoder\-ratio.N.master\-teeth\fR unsigned rw
|
||||
.B encoder-ratio.N.master-teeth\fR unsigned rw
|
||||
.TQ
|
||||
.B encoder\-ratio.N.slave\-teeth\fR unsigned rw
|
||||
.B encoder-ratio.N.slave-teeth\fR unsigned rw
|
||||
The number of "teeth" on the master and slave gears.
|
||||
|
||||
.SH SEE ALSO
|
||||
|
|
|
|||
|
|
@ -61,10 +61,10 @@ None.
|
|||
|
||||
.SH PARAMETERS
|
||||
.TP
|
||||
.B gantrykins.joint\-\fIN\fR (s32)
|
||||
.B gantrykins.joint-\fIN\fR (s32)
|
||||
Specifies the axis mapped to joint \fIN\fR. The values 0 through
|
||||
8 correspond to the axes XYZABCUVW. It is preferable to use the
|
||||
"coordinates=" parameter at loadrt-time rather than setting the joint\-N
|
||||
"coordinates=" parameter at loadrt-time rather than setting the joint-N
|
||||
parameters later, because the gantrykins module prints the joint-to-axis
|
||||
mapping at loadrt-time, and having that output correct is nice.
|
||||
|
||||
|
|
|
|||
|
|
@ -9,15 +9,15 @@
|
|||
.SH NAME
|
||||
gladevcp \- displays Virtual control Panels built with GTK / GLADE
|
||||
.SH SYNOPSIS
|
||||
\fBloadusr gladevcp [\-c componentname0x\fIN\fB] [\-g WxH+Xoffset+Yoffset0x\fIN\fB] [\-H halcmdfile] [\-x windowid] gladefile.glade
|
||||
\fBloadusr gladevcp [-c componentname0x\fIN\fB] [-g WxH+Xoffset+Yoffset0x\fIN\fB] [-H halcmdfile] [-x windowid] gladefile.glade
|
||||
|
||||
.SH DESCRIPTION
|
||||
gladevcp parses a glade file and displays the widgets in a window.
|
||||
Then calls gladevcp_makepins which again parses the gladefile looking for specific HAL widgets
|
||||
then makes HAL pins and sets up updating for them.
|
||||
The HAL component name defaults to the basename of the glade file.
|
||||
The \-x option directs gladevcp to reparent itself under this X window id instead of creating its own toplevel window.
|
||||
The \-H option passes an input file for halcmd to be run after the gladevcp component is initialized. This is used in Axis when
|
||||
The -x option directs gladevcp to reparent itself under this X window id instead of creating its own toplevel window.
|
||||
The -H option passes an input file for halcmd to be run after the gladevcp component is initialized. This is used in Axis when
|
||||
running gladevcp under a tab with the EMBED_TAB_NAME/EMBED_TAB_COMMAND ini file feature.
|
||||
|
||||
gladevcp supports gtkbuilder or libglade files though some widgets are not fully supported in gtkbuilder yet.
|
||||
|
|
|
|||
|
|
@ -45,7 +45,8 @@ with the 7i43 will not be supported any time soon, since USB has poor
|
|||
real-time qualities.
|
||||
|
||||
The driver programs the board's FPGA with firmware when it registers
|
||||
the board with the hostmot2 driver. The firmware to load is specified
|
||||
the board with the hostmot2 driver. The old bfload(1) firmware loading
|
||||
method is not used anymore. Instead the firmware to load is specified
|
||||
in the \fBconfig\fR modparam, as described in the hostmot2(9) manpage,
|
||||
in the \fIconfig modparam\fR section.
|
||||
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ hm2_eth \- LinuxCNC HAL driver for the Mesa Electronics Ethernet Anything IO boa
|
|||
.SH SYNOPSIS
|
||||
|
||||
.HP
|
||||
.B loadrt hm2_eth [config=\fI"str[,str...]"\fB] [board_ip=\fIip[,ip...]\fB] [board_mac=\fImac[,mac...]\fB]
|
||||
.B loadrt hm2_eth [config=\fI"str[,str...]"\fB] [board_ip=\fIip[,ip...]\fB] [board_mac=\fImac[,mac...]\]fB]
|
||||
.RS 4
|
||||
.TP
|
||||
\fBconfig\fR [default: ""]
|
||||
|
|
@ -46,7 +46,7 @@ hm2_eth is a device driver that interfaces Mesa's ethernet
|
|||
based Anything I/O boards (with the HostMot2 firmware) to the LinuxCNC
|
||||
HAL.
|
||||
|
||||
The supported boards are: 7i76E, 7I80DB, 7I80HD, 7i92, 7i93.
|
||||
The supported boards are: 7I80DB, 7I80HD, 7i92, 7i76E.
|
||||
|
||||
The board must have its hardware loaded on the board by the mesaflash(1) program.
|
||||
|
||||
|
|
@ -88,7 +88,7 @@ static address:
|
|||
auto eth1
|
||||
iface eth1 inet static
|
||||
address 192.168.1.1
|
||||
hardware\-irq\-coalesce\-rx\-usecs 0
|
||||
hardware-irq-coalesce-rx-usecs 0
|
||||
.EE
|
||||
|
||||
.SH PACKET LOSS
|
||||
|
|
@ -98,9 +98,9 @@ The hm2_eth driver has a limited ability to deal with lost packets. Packet
|
|||
loss is detected by transmitting an expected read or write packet count with
|
||||
each request, and checking the value with each read response. When a lost
|
||||
packet is detected, the
|
||||
.B packet\-error
|
||||
.B packet-error
|
||||
pin is asserted in that cycle, the
|
||||
.B packet\-error\-level
|
||||
.B packet-error-level
|
||||
pin is increased, and if it reaches a threshold then a permanent low-level
|
||||
I/O error is signaled.
|
||||
|
||||
|
|
@ -118,7 +118,7 @@ instead of the stale feedback value, appears to improve tuning. This can be
|
|||
accomplished with a
|
||||
.B mux2(9)
|
||||
component for each feedback signal, using
|
||||
.B packet\-error
|
||||
.B packet-error
|
||||
as the mux2
|
||||
.B sel
|
||||
input.
|
||||
|
|
@ -129,16 +129,16 @@ In addition to the pins documented in
|
|||
creates additional pins:
|
||||
|
||||
.TP
|
||||
(bit, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error
|
||||
(bit, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error
|
||||
This pin is TRUE when the most recent cycle detected a read or write error,
|
||||
and FALSE at other times.
|
||||
.TP
|
||||
(s32, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error\-level
|
||||
(s32, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error-level
|
||||
This pin shows the current error level, with higher numbers indicating
|
||||
a greater number of recent detected errors. The error level is always in
|
||||
the range from 0 to packet\-error\-limit, inclusive.
|
||||
the range from 0 to packet-error-limit, inclusive.
|
||||
.TP
|
||||
(bit, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error\-exceeded
|
||||
(bit, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error-exceeded
|
||||
This pin is TRUE when the current error level is equal to the maximum,
|
||||
and FALSE at other times.
|
||||
|
||||
|
|
@ -148,23 +148,23 @@ In addition to the parameters documented in
|
|||
creates additional parameters:
|
||||
|
||||
.TP
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error\-decrement
|
||||
The amount deducted from \fIpacket\-error\-level\fR in a cycle without
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error-decrement
|
||||
The amount deducted from \fIpacket-error-level\fR in a cycle without
|
||||
detected read or write errors, without going below zero.
|
||||
|
||||
.TP
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error\-increment
|
||||
The amount added to \fIpacket\-error\-level\fR in a cycle without
|
||||
detected read or write errors, without going above packet\-error\-limit.
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error-increment
|
||||
The amount added to \fIpacket-error-level\fR in a cycle without
|
||||
detected read or write errors, without going above packet-error-limit.
|
||||
|
||||
.TP
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-error\-limit
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-error-limit
|
||||
The level at which a detected read or write error is treated as a permament
|
||||
error. When this error level is reached, the board's \fIio\-error\fR pin
|
||||
error. When this error level is reached, the board's \fIio-error\fR pin
|
||||
becomes TRUE and the condition must be manually reset.
|
||||
|
||||
.TP
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet\-read\-timeout
|
||||
(s32, rw) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.packet-read-timeout
|
||||
The length of time that must pass before a read request times out.
|
||||
If the value is less than or equal to 0, it is interpreted as 80% of the thread
|
||||
period. If the value is less than 100, it is interpreted as a percentage of
|
||||
|
|
@ -176,18 +176,18 @@ high can cause realtime delay errors.
|
|||
|
||||
|
||||
.SH NOTES
|
||||
hm2_eth uses an iptables chain called "hm2\-eth\-rules\-output" to control access
|
||||
hm2_eth uses an iptables chain called "hm2-eth-rules-output" to control access
|
||||
to the network interface while hal is running. The chain is created if it does
|
||||
not exist, and a jump to it is inserted at the beginning of the OUTPUT chain if
|
||||
it is not there already. If you have an existing iptables setup, you can insert
|
||||
a direct jump from OUTPUT to hm2\-eth\-rules\-output in an order appropriate to
|
||||
a direct jump from OUTPUT to hm2-eth-rules-output in an order appropriate to
|
||||
your local network.
|
||||
|
||||
At (normal) exit, hm2_eth will remove the rules. After a crash, you can
|
||||
manually clear the rules with \fBsudo iptables \-F hm2\-eth\-rules\-output\fR;
|
||||
manually clear the rules with \fBsudo iptables -F hm2-eth-rules-output\fR;
|
||||
the rules are also removed by a reboot.
|
||||
|
||||
"hardware\-irq\-coalesce\-rx\-usecs" decreases time waiting to receive a packet
|
||||
"hardware-irq-coalesce-rx-usecs" decreases time waiting to receive a packet
|
||||
on most systems, but on at least some Marvel-chipset NICs it is harmful.
|
||||
If the line does not improve system performance, then remove it. A reboot
|
||||
is required for the value to be set back to its power-on default. This
|
||||
|
|
|
|||
|
|
@ -69,9 +69,9 @@ shared with any other slaves.
|
|||
|
||||
As of kernel 3.8, most or all kernel SPI drivers do not achieve the high
|
||||
realtime response rate required for a typical linuxcnc configuration. The
|
||||
driver was tested with a modified version of the spi\-s3c64xx SPI driver on the
|
||||
driver was tested with a modified version of the spi-s3c64xx SPI driver on the
|
||||
Odroid U3 platform. The patched kernel resides
|
||||
.UR https://github.com/jepler/odroid\-linux/tree/odroid\-3.8.13\-rt
|
||||
.UR https://github.com/jepler/odroid-linux/tree/odroid-3.8.13-rt
|
||||
on github
|
||||
.UE .
|
||||
|
||||
|
|
|
|||
|
|
@ -119,7 +119,6 @@ The valid entries in the format string are:
|
|||
[num_3pwmgens=\fIN\fB]
|
||||
[num_stepgens=\fIN\fB]
|
||||
[stepgen_width=\fIN\fB]
|
||||
[num_sserials=\fIN\fB]
|
||||
[sserial_port_\fI0\fB=\fI00000000\fB]
|
||||
[num_leds=\fIN\fB]
|
||||
[enable_raw]
|
||||
|
|
@ -134,24 +133,24 @@ The requested firmware F is fetched by udev. udev searches for the
|
|||
firmware in the system's firmware search path, usually /lib/firmware.
|
||||
F typically has the form "hm2/<BoardType>/file.bit"; a typical value
|
||||
for F might be "hm2/5i20/SVST8_4.BIT". The hostmot2 firmware files are
|
||||
supplied by the hostmot2\-firmware packages, available from linuxcnc.org and can
|
||||
normally be installed by entering the command "sudo apt\-get install
|
||||
hostmot2\-firmware\-5i23" to install the support files for the 5i23 for example.
|
||||
supplied by the hostmot2-firmware packages, available from linuxcnc.org and can
|
||||
normally be installed by entering the command "sudo apt-get install
|
||||
hostmot2-firmware-5i23" to install the support files for the 5i23 for example.
|
||||
|
||||
The 5i25 / 6i25 come pre-programmed with firmware and no "firmware=" string
|
||||
should be used with these cards. To change the firmware on a 5i25 or 6i25 the
|
||||
"mesaflash" utility should be used (available from Mesa). It is perfectly
|
||||
valid and reasonable to load these cards with no config string at all.
|
||||
.TP
|
||||
\fBnum_dplls\fR [optional, default: \-1]
|
||||
\fBnum_dplls\fR [optional, default: -1]
|
||||
The hm2dpll is a phase-locked loop timer module which may be used to trigger
|
||||
certain types of encoder. This parameter can be used to disable the hm2dpll by
|
||||
setting the number to 0. There is only ever one module of this type, with 4
|
||||
timer channels, so the other valid numbers are \-1 (enable all) and 1, both of
|
||||
timer channels, so the other valid numbers are -1 (enable all) and 1, both of
|
||||
which end up meaning the same thing.
|
||||
.TP
|
||||
\fBnum_encoders\fR [optional, default: \-1]
|
||||
Only enable the first N encoders. If N is \-1, all encoders are enabled.
|
||||
\fBnum_encoders\fR [optional, default: -1]
|
||||
Only enable the first N encoders. If N is -1, all encoders are enabled.
|
||||
If N is 0, no encoders are enabled. If N is greater than the number of
|
||||
encoders available in the firmware, the board will fail to register.
|
||||
.TP
|
||||
|
|
@ -170,24 +169,24 @@ interpreted. There should be an entry for each device connected. Only channels
|
|||
with a format specifier will be enabled. (as the software can not guess data
|
||||
rates and bit lengths)
|
||||
.TP
|
||||
\fBnum_resolvers\fR [optional, default: \-1]
|
||||
Only enable the first N resolvers. If N = \-1 then all resolvers are enabled.
|
||||
\fBnum_resolvers\fR [optional, default: -1]
|
||||
Only enable the first N resolvers. If N = -1 then all resolvers are enabled.
|
||||
This module does not work with generic resolvers (unlike the encoder module
|
||||
which works with any encoder). At the time of writing the Hostmot2 Resolver
|
||||
function only works with the Mesa 7i49 card.
|
||||
.TP
|
||||
\fBnum_pwmgens\fR [optional, default: \-1]
|
||||
Only enable the first N pwmgens. If N is \-1, all pwmgens are enabled.
|
||||
\fBnum_pwmgens\fR [optional, default: -1]
|
||||
Only enable the first N pwmgens. If N is -1, all pwmgens are enabled.
|
||||
If N is 0, no pwmgens are enabled. If N is greater than the number of
|
||||
pwmgens available in the firmware, the board will fail to register.
|
||||
.TP
|
||||
\fBnum_3pwmgens\fR [optional, default: \-1]
|
||||
Only enable the first N Three-phase pwmgens. If N is \-1, all 3pwmgens
|
||||
\fBnum_3pwmgens\fR [optional, default: -1]
|
||||
Only enable the first N Three-phase pwmgens. If N is -1, all 3pwmgens
|
||||
are enabled. If N is 0, no pwmgens are enabled. If N is greater than the
|
||||
number of pwmgens available in the firmware, the board will fail to register.
|
||||
.TP
|
||||
\fBnum_stepgens\fR [optional, default: \-1]
|
||||
Only enable the first N stepgens. If N is \-1, all stepgens are enabled.
|
||||
\fBnum_stepgens\fR [optional, default: -1]
|
||||
Only enable the first N stepgens. If N is -1, all stepgens are enabled.
|
||||
If N is 0, no stepgens are enabled. If N is greater than the number of
|
||||
stepgens available in the firmware, the board will fail to register.
|
||||
.TP
|
||||
|
|
@ -198,11 +197,6 @@ only two pins (step and dir) but the Hostmot2 stepgen can drive up to 8 output
|
|||
pins for specialised applications (depending on firmware). This parameter
|
||||
applies to all stepgen instances. Unused, masked pins will be available as GPIO.
|
||||
.TP
|
||||
\fBnum_sserials\fR [optional, default: -1]
|
||||
Only enable the first N of the Smart Serial modules on the FPGA board. If
|
||||
N is \-1, then all Smart Serial modules will be enabled. If N=0 then no
|
||||
Smart Serial modules will be enabled.
|
||||
.TP
|
||||
\fBsserial_port_N (N = 0 .. 3)\fR [optional, default: 00000000 for all ports]
|
||||
Up to 32 Smart Serial devices can be connected to a Mesa Anything IO board
|
||||
depending on the firmware used and the number of physical connections on the
|
||||
|
|
@ -223,12 +217,12 @@ should be needed. Unconnected channels will default to GPIO, but the pin values
|
|||
will vary semi-randomly during boot when card-detection runs, to it is best to
|
||||
actively disable any channel that is to be used for GPIO.
|
||||
.TP
|
||||
\fBnum_bspis\fR [optional, default: \-1]
|
||||
Only enable the first N Buffered SPI drivers. If N is \-1 then all the drivers
|
||||
\fBnum_bspis\fR [optional, default: -1]
|
||||
Only enable the first N Buffered SPI drivers. If N is -1 then all the drivers
|
||||
are enabled. Each BSPI driver can address 16 devices.
|
||||
.TP
|
||||
\fBnum_leds\fR [optional, default: \-1]
|
||||
Only enable the first N of the LEDs on the FPGA board. If N is \-1, then HAL
|
||||
\fBnum_leds\fR [optional, default: -1]
|
||||
Only enable the first N of the LEDs on the FPGA board. If N is -1, then HAL
|
||||
pins for all the LEDs will be created. If N=0 then no pins will be added.
|
||||
.TP
|
||||
\fBenable_raw\fR [optional]
|
||||
|
|
@ -242,42 +236,39 @@ will become parameters.
|
|||
This module is a phase-locked loop that will synchronise itself with the thread
|
||||
in which the hostmot2 "read" function is installed and will trigger other
|
||||
functions that are allocated to it at a specified time before or after the
|
||||
"read" function runs. This can be applied to the three absolute
|
||||
encoder types, quadrature encoders and stepgen. In the case of the absolute
|
||||
encoders this allows the system to trigger a data transmission just prior to
|
||||
the time when the HAL driver reads the data. In the case of stepgens and
|
||||
quadrature encoders the timers can be used to reduce position sampling
|
||||
jitter. This is especially valuable with the ethernet-interfaced cards.
|
||||
"read" function runs. This can currently only be applied to the three absolute
|
||||
encoder types and is intended to ensure that the data is ready when needed, and
|
||||
as fresh as possible.
|
||||
|
||||
Pins:
|
||||
.TP
|
||||
(float, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.NN.timer\-us
|
||||
(float, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.NN.timer-us
|
||||
This pin sets the triggering offset of the associated timer. There are 4 timers
|
||||
numbered 01 to 04, represented by the NN digits in the pin name. The units are
|
||||
micro-seconds. Generally the value will be negative, so that some action is
|
||||
undertaken by the fpga prior to the execution of the main hostmot2 read.
|
||||
|
||||
For stepgen and quadrature encoders, the value needs to be more than the
|
||||
maximum variation between read times. \-100 will suffice for most systems, and
|
||||
\-50 will work on systems with good performance and latency.
|
||||
maximum variation between read times. -100 will suffice for most systems, and
|
||||
-50 will work on systems with good performance and latency.
|
||||
|
||||
For serial encoders, the value also needs to include the time it takes to
|
||||
transfer the absolute encoder position. For instance, if 50 bits must be read
|
||||
at 500kHz then subtract an additional 50/500kHz = 100uS to get a starting value
|
||||
of \-200.
|
||||
of -200.
|
||||
|
||||
.TP
|
||||
(float, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.base\-freq\-khz
|
||||
(float, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.base-freq-khz
|
||||
This pin sets the base frequency of the phase-locked loop. by default it will
|
||||
be set to the nominal frequency of the thread in which the PLL is running and
|
||||
wil not normally need to be changed.
|
||||
.TP
|
||||
(float, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.phase\-error\-us
|
||||
(float, out) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.phase-error-us
|
||||
Indicates the phase eror of the DPLL. If the number cycles by a large amount
|
||||
it is likely that the PLL has failed to achieve lock and adjustments will need
|
||||
to be made.
|
||||
.TP
|
||||
(u32, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.time\-const
|
||||
(u32, in) hm2_\fI<BoardType>\fR.\fI<BoardNum>\fR.dpll.time-const
|
||||
The filter time-constant for the PLL. The default value is a compromise
|
||||
between insensitivity to single-cycle variations and being resilient to changes
|
||||
to the Linux CLOCK_MONOTONIC timescale, which can instantly change by up to
|
||||
|
|
@ -340,10 +331,10 @@ The driver does not reset this pin to FALSE after resetting the count
|
|||
to 0, that is the user's job.
|
||||
|
||||
.TP
|
||||
(bit in/out) index\-enable
|
||||
(bit in/out) index-enable
|
||||
When this pin is set to True, the count
|
||||
(and therefore also position) are reset to zero on the next Index
|
||||
(Phase\-Z) pulse. At the same time, index\-enable is reset to zero to
|
||||
(Phase-Z) pulse. At the same time, index-enable is reset to zero to
|
||||
indicate that the pulse has occurred.
|
||||
|
||||
.TP
|
||||
|
|
@ -358,25 +349,25 @@ Parameters:
|
|||
Converts from 'count' units to 'position' units.
|
||||
|
||||
.TP
|
||||
(bit r/w) index\-invert
|
||||
(bit r/w) index-invert
|
||||
If set to True, the rising edge of the Index
|
||||
input pin triggers the Index event (if index\-enable is True). If set
|
||||
input pin triggers the Index event (if index-enable is True). If set
|
||||
to False, the falling edge triggers.
|
||||
|
||||
.TP
|
||||
(bit r/w) index\-mask
|
||||
(bit r/w) index-mask
|
||||
If set to True, the Index input pin only has an
|
||||
effect if the Index\-Mask input pin is True (or False, depending on the
|
||||
index\-mask\-invert pin below).
|
||||
effect if the Index-Mask input pin is True (or False, depending on the
|
||||
index-mask-invert pin below).
|
||||
|
||||
.TP
|
||||
(bit r/w) index\-mask\-invert
|
||||
If set to True, Index\-Mask must be False
|
||||
for Index to have an effect. If set to False, the Index\-Mask pin must
|
||||
(bit r/w) index-mask-invert
|
||||
If set to True, Index-Mask must be False
|
||||
for Index to have an effect. If set to False, the Index-Mask pin must
|
||||
be True.
|
||||
|
||||
.TP
|
||||
(bit r/w) counter\-mode
|
||||
(bit r/w) counter-mode
|
||||
Set to False (the default) for Quadrature.
|
||||
Set to True for Step/Dir (in which case Step is on the A pin and Dir is
|
||||
on the B pin).
|
||||
|
|
@ -390,7 +381,7 @@ quadrature counter needs only 3 clocks to register a change. The encoder
|
|||
sample clock runs at 33 MHz on the PCI AnyIO cards and 50 MHz on the 7i43.
|
||||
|
||||
.TP
|
||||
(float r/w) vel\-timeout
|
||||
(float r/w) vel-timeout
|
||||
When the encoder is moving slower than one
|
||||
pulse for each time that the driver reads the count from the FPGA (in
|
||||
the hm2_read() function), the velocity is harder to estimate. The driver
|
||||
|
|
@ -400,14 +391,14 @@ guessed. This parameter specifies how long to wait for the next pulse,
|
|||
before reporting the encoder stopped. This parameter is in seconds.
|
||||
|
||||
.TP
|
||||
(s32 r/w) hm2_XiXX.N.encoder.MM.timer\-num (default: \-1)
|
||||
(s32 r/w) hm2_XiXX.N.encoder.MM.timer-num (default: -1)
|
||||
Sets the hm2dpll timer instance to be used to latch encoder counts. A setting
|
||||
of \-1 does not latch encoder counts. A setting of 0 latches at the same time
|
||||
of -1 does not latch encoder counts. A setting of 0 latches at the same time
|
||||
as the main hostmot2 write. A setting of 1..4 uses a time offset from the main
|
||||
hostmot2 write according to the dpll's timer\-us setting.
|
||||
hostmot2 write according to the dpll's timer-us setting.
|
||||
|
||||
Typically, timer\-us should be a negative number with a magnitude larger than
|
||||
the largest latency (e.g., \-100 for a system with mediocre latency, \-50 for a
|
||||
Typically, timer-us should be a negative number with a magnitude larger than
|
||||
the largest latency (e.g., -100 for a system with mediocre latency, -50 for a
|
||||
system with good latency).
|
||||
|
||||
If no DPLL module is present in the FPGA firmware, or if the encoder module
|
||||
|
|
@ -420,13 +411,13 @@ reduces following errors.
|
|||
(Not to be confused with the Smart Serial Interface)
|
||||
|
||||
One pin is created for each SSI instance regardless of data format:
|
||||
(bit, in) hm2_XiXX.NN.ssi.MM.data\-incomplete
|
||||
(bit, in) hm2_XiXX.NN.ssi.MM.data-incomplete
|
||||
This pin will be set "true" if the module was still transferring data when the
|
||||
value was read. When this problem exists there will also be a limited number of
|
||||
error messages printed to the UI. This pin should be used to monitor whether
|
||||
the problem has been addressed by config changes.
|
||||
Solutions to the problem dpend on whether the encoder read is being triggered by
|
||||
the hm2dpll phase-locked-loop timer (described above) or by the trigger\-encoders
|
||||
the hm2dpll phase-locked-loop timer (described above) or by the trigger-encoders
|
||||
function (described below).
|
||||
|
||||
The names of the pins created by the SSI module will depend entirely on the
|
||||
|
|
@ -453,7 +444,7 @@ p: (Pad). Does not create any pins, used to ignore sections of the bit stream th
|
|||
b: (Boolean).
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>. If any bits in the designated field width
|
||||
are non-zero then the HAL pin will be "true".
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>\-not. An inverted version of the above, the
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>-not. An inverted version of the above, the
|
||||
HAL pin will be "true" if all bits in the field are zero.
|
||||
.TP
|
||||
u: (Unsigned)
|
||||
|
|
@ -469,25 +460,25 @@ s: (Signed)
|
|||
except symmetrical around zero.
|
||||
.TP
|
||||
f: (bitField)
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>\-NN. The value of each individual bit in the
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>-NN. The value of each individual bit in the
|
||||
data field. NN starts at 00 up to the number of bits in the field.
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>\-NN\-not. An inverted version of the individual
|
||||
(bit, out) hm2_XiXX.N.ssi.MM.<name>-NN-not. An inverted version of the individual
|
||||
bit values.
|
||||
.TP
|
||||
e: (Encoder)
|
||||
(s32, out) hm2_XiXX.N.ssi.MM.<name>.count. The lower 32 bits of the
|
||||
total encoder counts. This value is reset both by the ...reset and the ...index\-enable
|
||||
pins.
|
||||
total encoder counts. This value is reset both by the ...reset and the ...index-
|
||||
enable pins.
|
||||
(s32, out) hm2_XiXX.N.ssi.MM.<name>.rawcounts. The lower 32 bits of
|
||||
the total encoder counts. The pin is not affected by reset and index.
|
||||
(float, out) hm2_XiXX.N.ssi.MM.<name>.position. The encoder position
|
||||
in machine units. This is calculated from the full 64-bit buffers so will show
|
||||
a true value even after the counts pins have wrapped. It is zeroed by reset and
|
||||
index enable.
|
||||
(bit, IO) hm2_XiXX.N.ssi.MM.<name>.index\-enable. When this pin is set
|
||||
(bit, IO) hm2_XiXX.N.ssi.MM.<name>.index-enable. When this pin is set
|
||||
"true" the module will wait until the raw encoder counts next passes through an
|
||||
integer multiple of the number of counts specified by counts\-per\-rev parameter
|
||||
and then it will zero the counts and position pins, and set the index\-enable
|
||||
integer multiple of the number of counts specified by counts-per-rev parameter
|
||||
and then it will zero the counts and position pins, and set the index-enable
|
||||
pin back to "false" as a signal to the system that "index" has been passed.
|
||||
this pin is used for spindle-synchronised motion and index-homing.
|
||||
(bit, in) (bit, out) hm2_XiXX.N.ssi.MM.<name>.reset. When this pin is set high
|
||||
|
|
@ -511,12 +502,12 @@ Parameters:
|
|||
Two parameters is universally created for all SSI instances
|
||||
|
||||
.TP
|
||||
(float r/w) hm2_XiXX.N.ssi.MM.frequency\-khz
|
||||
(float r/w) hm2_XiXX.N.ssi.MM.frequency-khz
|
||||
This parameter sets the SSI clock frequency. The units are kHz, so 500 will give
|
||||
a clock frequency of 500,000 Hz.
|
||||
|
||||
.TP
|
||||
(s32 r/w) hm2_XiXX.N.ssi.MM.timer\-num
|
||||
(s32 r/w) hm2_XiXX.N.ssi.MM.timer-num
|
||||
This parameter allocates the SSI module to a specific hm2dpll timer instance.
|
||||
This pin is only of use in firmwares which contain a hm2dpll function and will
|
||||
default to 1 in cases where there is such a function, and 0 if there is not.
|
||||
|
|
@ -542,7 +533,7 @@ f: (bitField): No parameters.
|
|||
e: (Encoder):
|
||||
(float, r/w) hm2_XiXX.N.ssi.MM.<name>.scale: (float, r.w) The encoder scale in
|
||||
counts per machine unit.
|
||||
(u32, r/w) hm2_XiXX.N.ssi.MM.<name>.counts\-per\-rev (u32, r/w) Used to emulate
|
||||
(u32, r/w) hm2_XiXX.N.ssi.MM.<name>.counts-per-rev (u32, r/w) Used to emulate
|
||||
the index behaviour of an incemental+index encoder. This would normally be set
|
||||
to the actual counts per rev of the encoder, but can be any whole number of
|
||||
revs. Integer divisors or multimpilers of the true PPR might be useful for
|
||||
|
|
@ -556,13 +547,13 @@ supported by LinuxCNC (encoder to PC).
|
|||
|
||||
One pin is created for each BiSS instance regardless of data format:
|
||||
|
||||
(bit, in) hm2_XiXX.NN.biss.MM.data\-incomplete
|
||||
(bit, in) hm2_XiXX.NN.biss.MM.data-incomplete
|
||||
This pin will be set "true" if the module was still transferring data when the
|
||||
value was read. When this problem exists there will also be a limited number of
|
||||
error messages printed to the UI. This pin should be used to monitor whether
|
||||
the problem has been addressed by config changes.
|
||||
Solutions to the problem dpend on whether the encoder read is being triggered by
|
||||
the hm2dpll phase-locked-loop timer (described above) or by the trigger\-encoders
|
||||
the hm2dpll phase-locked-loop timer (described above) or by the trigger-encoders
|
||||
function (described below)
|
||||
|
||||
The names of the pins created by the BiSS module will depend entirely on the
|
||||
|
|
@ -579,16 +570,16 @@ described above, except that at least one pre-configured format is provided.
|
|||
A modparam of fanuc_chan_N=AA64 (case sensitive) will configure the channel for
|
||||
a Fanuc Aa64 encoder. The pins created are:
|
||||
hm2_XiXX.N.fanuc.MM.batt indicates battery state
|
||||
hm2_XiXX.N.fanuc.MM.batt\-not inverted version of above
|
||||
hm2_XiXX.N.fanuc.MM.batt-not inverted version of above
|
||||
hm2_XiXX.N.fanuc.MM.comm The 0-1023 absolute output for motor commutation
|
||||
hm2_XXiX.N.fanuc.MM.crc The CRC checksum. Currently HAL has no way to use this
|
||||
hm2_XiXX.N.fanuc.MM.encoder.count Encoder counts
|
||||
hm2_XiXX.N.fanuc.MM.encoder.index\-enable Simulated index. Set by counts\-per\-rev parameter
|
||||
hm2_XiXX.N.fanuc.MM.encoder.position Counts scaled by the ...scale parameter
|
||||
hm2_XiXX.N.fanuc.MM.encoder.index-enable Simulated index. Set by counts-per-rev parameter
|
||||
hm2_XiXX.N.fanuc.MM.encoder.position Counts scaled by the ...scale paramter
|
||||
hm2_XiXX.N.fanuc.MM.encoder.rawcounts Raw counts, unaffected by reset or index
|
||||
hm2_XiXX.N.fanuc.MM.encoder.reset If high/true then counts and position = 0
|
||||
hm2_XiXX.N.fanuc.MM.valid Indicates that the absolute position is valid
|
||||
hm2_XiXX.N.fanuc.MM.valid\-not Inverted version
|
||||
hm2_XiXX.N.fanuc.MM.valid-not Inverted version
|
||||
|
||||
.SH resolver
|
||||
Resolvers have names like
|
||||
|
|
@ -610,13 +601,13 @@ is a number between 0 and 1 for each electrical rotation.
|
|||
.TP
|
||||
(float, out) position
|
||||
Calculated from the number of complete and partial
|
||||
revolutions since startup, reset, or index\-reset multiplied by the scale
|
||||
revolutions since startup, reset, or index-reset multiplied by the scale
|
||||
parameter.
|
||||
|
||||
.TP
|
||||
(float, out) velocity
|
||||
Calculated from the rotational velocity and the
|
||||
velocity\-scale parameter. The default scale is electrical rotations per second.
|
||||
velocity-scale parameter. The default scale is electrical rotations per second.
|
||||
|
||||
.TP
|
||||
(s32, out) count
|
||||
|
|
@ -634,7 +625,7 @@ the bldc HAL component if the resolver was being used to commutate a motor.
|
|||
Resets the position and counts pins to zero immediately.
|
||||
|
||||
.TP
|
||||
(bit, in/out) index\-enable
|
||||
(bit, in/out) index-enable
|
||||
When this pin is set high the position and counts
|
||||
pins will be reset the next time the resolver passes through the zero position.
|
||||
At the same time the pin is driven low to indicate to connected modules that the
|
||||
|
|
@ -652,13 +643,13 @@ The position scale, in machine units per resolver
|
|||
electrical revolution.
|
||||
|
||||
.TP
|
||||
(float, read/write) velocity\-scale
|
||||
(float, read/write) velocity-scale
|
||||
The conversion factor between resolver
|
||||
rotation speed and machine velocity. A value of 1 will typically give motor
|
||||
speed in rps, a value of 0.01666667 will give (approximate) RPM.
|
||||
|
||||
.TP
|
||||
(u32, read/write) index\-divisor (default 1)
|
||||
(u32, read/write) index-divisor (default 1)
|
||||
The resolver component emulates an index at a fixed point in the sin/cos cycle.
|
||||
Some resolvers have multiple cycles per rev (often related to the number of
|
||||
pole-pairs on the attached motor). LinuxCNC requires an index once per
|
||||
|
|
@ -669,7 +660,7 @@ LinuxCNC runs. Do not expect to re-start a thread after restarting LinuxCNC.
|
|||
It is not appropriate to use this parameter for index-homing of axis drives.
|
||||
|
||||
.TP
|
||||
(float, read/write) excitation\-khz
|
||||
(float, read/write) excitation-khz
|
||||
This pin sets the excitation frequency for
|
||||
the resolver. This pin is module-level rather than instance-level as all
|
||||
resolvers share the same excitation frequency.
|
||||
|
|
@ -677,7 +668,7 @@ resolvers share the same excitation frequency.
|
|||
actual frequency depends on the FPGA frequency, and they correspond to
|
||||
CLOCK_LOW/5000, CLOCK_LOW/10000 and CLOCK_LOW/20000 respectively.
|
||||
The parameter will be set to the closest available of the three frequencies.
|
||||
A value of \-1 (the default) indicates that the current setting should be
|
||||
A value of -1 (the default) indicates that the current setting should be
|
||||
retained.
|
||||
|
||||
|
||||
|
|
@ -693,10 +684,10 @@ of the first 7i43 board is: hm2_7i43.0.pwmgen.03.enable (this assumes
|
|||
that the firmware in that board is configured so that this HAL object
|
||||
is available)
|
||||
|
||||
In HM2, each pwmgen uses three output IO pins: Not\-Enable, Out0, and
|
||||
In HM2, each pwmgen uses three output IO pins: Not-Enable, Out0, and
|
||||
Out1.
|
||||
|
||||
The function of the Out0 and Out1 IO pins varies with output\-type
|
||||
The function of the Out0 and Out1 IO pins varies with output-type
|
||||
parameter (see below).
|
||||
|
||||
The hm2 pwmgen representation is similar to the software pwmgen component.
|
||||
|
|
@ -706,9 +697,9 @@ Pins:
|
|||
|
||||
.TP
|
||||
(bit input) enable
|
||||
If true, the pwmgen will set its Not\-Enable pin
|
||||
If true, the pwmgen will set its Not-Enable pin
|
||||
false and output its pulses. If 'enable' is false, pwmgen will set its
|
||||
Not\-Enable pin true and not output any signals.
|
||||
Not-Enable pin true and not output any signals.
|
||||
|
||||
.TP
|
||||
(float input) value
|
||||
|
|
@ -720,11 +711,11 @@ Parameters:
|
|||
(float rw) scale
|
||||
Scaling factor to convert 'value' from arbitrary units
|
||||
to duty cycle: dc = value / scale. Duty cycle has an effective range
|
||||
of \-1.0 to +1.0 inclusive, anything outside that range gets clipped.
|
||||
of -1.0 to +1.0 inclusive, anything outside that range gets clipped.
|
||||
The default scale is 1.0.
|
||||
|
||||
.TP
|
||||
(s32 rw) output\-type
|
||||
(s32 rw) output-type
|
||||
This emulates the output_type load-time argument to
|
||||
the software pwmgen component. This parameter may be changed at runtime,
|
||||
but most of the time you probably want to set it at startup and then leave
|
||||
|
|
@ -781,13 +772,13 @@ pins are the high side drivers, the second three are their complementary low-sid
|
|||
drivers. The enable bit is intended to control the servo amplifier.
|
||||
The input bit is a fault bit, typically wired to over-current detection. When set
|
||||
the PWM generator is disabled.
|
||||
The three phase duty-cycles are individually controllable from \-Scale to +Scale.
|
||||
The three phase duty-cycles are individually controllable from -Scale to +Scale.
|
||||
Note that 0 corresponds to a 50% duty cycle and this is the inialization value.
|
||||
|
||||
Pins:
|
||||
|
||||
(float input) A\-value, B\-value, C\-value: The PWM command value for each phase,
|
||||
limited to +/\- "scale". Defaults to zero which is 50% duty cycle on high-side and
|
||||
(float input) A-value, B-value, C-value: The PWM command value for each phase,
|
||||
limited to +/- "scale". Defaults to zero which is 50% duty cycle on high-side and
|
||||
low-sidepins (but see the "deadtime" parameter)
|
||||
|
||||
.TP
|
||||
|
|
@ -813,7 +804,7 @@ and added to off time symmetrically. For example with 20 kHz PWM (50 uSec period
|
|||
50% duty cycle and zero dead time, the PWM and NPWM outputs would be square
|
||||
waves (NPWM being inverted from PWM) with high times of 25 uS. With the same
|
||||
settings but 1 uS of deadtime, the PWM and NPWM outputs would both have high
|
||||
times of 23 uS (25 \- (2X 1 uS), 1 uS per edge).
|
||||
times of 23 uS (25 - (2X 1 uS), 1 uS per edge).
|
||||
The value is specified in nS and defaults to a rather conservative 5000nS. Setting
|
||||
this parameter to too low a value could be both expensive and dangerous as if both
|
||||
gates are open at the same time there is effectively a short circuit accross the
|
||||
|
|
@ -822,17 +813,17 @@ supply.
|
|||
.TP
|
||||
(float rw) scale
|
||||
Sets the half-scale of the specified 3-phase PWM generator.
|
||||
PWM values from \-scale to +scale are valid. Default is +/\- 1.0
|
||||
PWM values from -scale to +scale are valid. Default is +/- 1.0
|
||||
|
||||
.TP
|
||||
(bit rw) fault\-invert
|
||||
(bit rw) fault-invert
|
||||
Sets the polarity of the fault input pin. A value of 1 means
|
||||
that a fault is triggered with the pin high, and 0 means that a fault it triggered
|
||||
when the pin is pulled low. Default 0, fault = low so that the PWM works with the
|
||||
fault pin unconnected.
|
||||
|
||||
.TP
|
||||
(u32 rw) sample\-time
|
||||
(u32 rw) sample-time
|
||||
Sets the time during the cycle when an ADC pulse
|
||||
is generated. 0 = start of PWM cycle and 1 = end. Not currently useful
|
||||
to LinuxCNC. Default 0.5.
|
||||
|
|
@ -855,7 +846,7 @@ instance number. There are 'num_stepgens' instances, starting with 00.
|
|||
|
||||
So, for example, the HAL pin that has the current position
|
||||
feedback from the first stepgen of the second 5i22 board is:
|
||||
hm2_5i22.1.stepgen.00.position\-fb (this assumes that the firmware in
|
||||
hm2_5i22.1.stepgen.00.position-fb (this assumes that the firmware in
|
||||
that board is configured so that this HAL object is available)
|
||||
|
||||
Each stepgen uses between 2 and 6 IO pins. The signals on these pins depends on
|
||||
|
|
@ -867,29 +858,29 @@ Each stepgen instance has the following pins and parameters:
|
|||
Pins:
|
||||
|
||||
.TP
|
||||
(float input) position\-cmd
|
||||
(float input) position-cmd
|
||||
Target position of stepper motion, in
|
||||
arbitrary position units. This pin is only used when the stepgen is in
|
||||
position control mode (control\-type=0).
|
||||
position control mode (control-type=0).
|
||||
|
||||
.TP
|
||||
(float input) velocity\-cmd
|
||||
(float input) velocity-cmd
|
||||
Target velocity of stepper motion, in
|
||||
arbitrary position units per second. This pin is only used when the
|
||||
stepgen is in velocity control mode (control\-type=1).
|
||||
stepgen is in velocity control mode (control-type=1).
|
||||
|
||||
.TP
|
||||
(s32 output) counts
|
||||
Feedback position in counts (number of steps).
|
||||
|
||||
.TP
|
||||
(float output) position\-fb
|
||||
(float output) position-fb
|
||||
Feedback position in arbitrary position
|
||||
units. This is similar to "counts/position_scale", but has finer than
|
||||
step resolution.
|
||||
|
||||
.TP
|
||||
(float output) velocity\-fb
|
||||
(float output) velocity-fb
|
||||
Feedback velocity in arbitrary position
|
||||
units per second.
|
||||
|
||||
|
|
@ -897,19 +888,19 @@ units per second.
|
|||
(bit input) enable
|
||||
This pin enables the step generator instance.
|
||||
When True, the stepgen instance works as expected. When False, no steps
|
||||
are generated and velocity\-fb goes immediately to 0. If the stepgen is
|
||||
are generated and velocity-fb goes immediately to 0. If the stepgen is
|
||||
moving when enable goes false it stops immediately, without obeying the
|
||||
maxaccel limit.
|
||||
|
||||
.TP
|
||||
(bit input) control\-type
|
||||
(bit input) control-type
|
||||
Switches between position control mode (0)
|
||||
and velocity control mode (1). Defaults to position control (0).
|
||||
|
||||
Parameters:
|
||||
|
||||
.TP
|
||||
(float r/w) position\-scale
|
||||
(float r/w) position-scale
|
||||
Converts from counts to position units.
|
||||
position = counts / position_scale
|
||||
|
||||
|
|
@ -917,14 +908,14 @@ position = counts / position_scale
|
|||
(float r/w) maxvel
|
||||
Maximum speed, in position units per second. If set
|
||||
to 0, the driver will always use the maximum possible velocity based
|
||||
on the current step timings and position\-scale. The max velocity will
|
||||
change if the step timings or position\-scale changes. Defaults to 0.
|
||||
on the current step timings and position-scale. The max velocity will
|
||||
change if the step timings or position-scale changes. Defaults to 0.
|
||||
|
||||
.TP
|
||||
(float r/w) maxaccel
|
||||
Maximum acceleration, in position units per second
|
||||
per second. Defaults to 1.0. If set to 0, the driver will not limit its
|
||||
acceleration at all - this requires that the position\-cmd or velocity\-cmd
|
||||
acceleration at all - this requires that the position-cmd or velocity-cmd
|
||||
pin is driven in a way that does not exceed the machine's capabilities.
|
||||
This is probably what you want if you're going to be using the LinuxCNC
|
||||
trajectory planner to jog or run G-code.
|
||||
|
|
@ -968,23 +959,23 @@ up to 6 IO pins are individually controlled in an arbitrary sequence up to 16
|
|||
phases long.
|
||||
|
||||
.TP
|
||||
(u32 r/w) table\-data\-N
|
||||
There are 4 table\-data\-N parameters, table\-data\-0 to table\-data\-3. These each
|
||||
(u32 r/w) table-data-N
|
||||
There are 4 table-data-N parameters, table-data-0 to table-data-3. These each
|
||||
contain 4 bytes corresponding to 4 stages in the step sequence. For example
|
||||
table\-data\-0 = 0x00000001 would set stepgen pin 0 (always called "Step" in
|
||||
the dmesg output) on the first phase of the step sequence, and table\-data\-4 =
|
||||
table-data-0 = 0x00000001 would set stepgen pin 0 (always called "Step" in
|
||||
the dmesg output) on the first phase of the step sequence, and table-data-4 =
|
||||
0x20000000 would set stepgen pin 6 ("Table5Pin" in the dmesg output) on the 16th
|
||||
stage of the step sequence.
|
||||
|
||||
.TP
|
||||
(s32 r/w) hm2_XiXX.N.stepgen.MM.timer\-num (default: \-1)
|
||||
(s32 r/w) hm2_XiXX.N.stepgen.MM.timer-num (default: -1)
|
||||
Sets the hm2dpll timer instance to be used to latch stepgen counts. A setting
|
||||
of \-1 does not latch encoder counts. A setting of 0 latches at the same time
|
||||
of -1 does not latch encoder counts. A setting of 0 latches at the same time
|
||||
as the main hostmot2 write. A setting of 1..4 uses a time offset from the main
|
||||
hostmot2 write according to the dpll's timer\-us setting.
|
||||
hostmot2 write according to the dpll's timer-us setting.
|
||||
|
||||
Typically, timer\-us should be a negative number with a magnitude larger than
|
||||
the largest latency (e.g., \-100 for a system with mediocre latency, \-50 for a
|
||||
Typically, timer-us should be a negative number with a magnitude larger than
|
||||
the largest latency (e.g., -100 for a system with mediocre latency, -50 for a
|
||||
system with good latency).
|
||||
|
||||
If no DPLL module is present in the FPGA firmware, or if the stepgen module
|
||||
|
|
@ -1006,8 +997,8 @@ For full details of the smart-serial devices see \fBman sserial\fR.
|
|||
|
||||
.SH BSPI
|
||||
The BSPI (Buffered SPI) driver is unusual in that it does not create any HAL
|
||||
pins. Instead the driver exports a set of functions that can be used by a sub-driver
|
||||
for the attached hardware. Typically these would be written in the "comp"
|
||||
pins. Instead the driver exports a set of functions that can be used by a sub
|
||||
-driver for the attached hardware. Typically these would be written in the "comp"
|
||||
pre-processing language: see http://linuxcnc.org/docs/html/hal_comp.html or man
|
||||
comp for further details. See man mesa_7i65 and the source of mesa_7i65.comp for
|
||||
details of a typical sub-driver.
|
||||
|
|
@ -1047,7 +1038,7 @@ pin-on-that-connector is written to the syslog when the driver loads,
|
|||
and it's documented in Mesa's manual for the Anything I/O boards.
|
||||
|
||||
So, for example, the HAL pin that has the current inverted input value
|
||||
read from GPIO 012 of the second 7i43 board is: hm2_7i43.1.gpio.012.in\-not
|
||||
read from GPIO 012 of the second 7i43 board is: hm2_7i43.1.gpio.012.in-not
|
||||
(this assumes that the firmware in that board is configured so that this
|
||||
HAL object is available)
|
||||
|
||||
|
|
@ -1209,14 +1200,14 @@ See man setsserial for the current way to set smart-serial eeprom parameters.
|
|||
|
||||
.SH FUNCTIONS
|
||||
.TP
|
||||
\fBhm2_\fI<BoardType>\fB.\fI<BoardNum>\fB.read\-request\fR
|
||||
\fBhm2_\fI<BoardType>\fB.\fI<BoardNum>\fB.read-request\fR
|
||||
On boards with long turn around time for reads (at the time of writing, this
|
||||
applies only to ethernet boards), this function sends a read request. When
|
||||
multiple boards are used, this can reduce the servo thread execution time. In
|
||||
this case, the appropriate thread order would be
|
||||
.EX
|
||||
addf hm2_7i80.0.read\-request
|
||||
addf hm2_7i80.1.read\-request
|
||||
addf hm2_7i80.0.read-request
|
||||
addf hm2_7i80.1.read-request
|
||||
addf hm2_7i80.0.read
|
||||
addf hm2_7i80.1.read
|
||||
.EE
|
||||
|
|
@ -1247,7 +1238,7 @@ function is if you want to do GPIO things in a faster-than-servo thread.
|
|||
(This function is not available on the 7i43 due to limitations of the
|
||||
EPP bus.)
|
||||
.TP
|
||||
\fBhm2_\fI<BoardType>\fB.\fI<BoardNum>\fB.trigger\-encoders\fR
|
||||
\fBhm2_\fI<BoardType>\fB.\fI<BoardNum>\fB.trigger-encoders\fR
|
||||
This function will only appear if the firmware contains a BiSS, Fanuc or SSI
|
||||
encoder module and if the firmare does not contain a hm2dpll
|
||||
module (qv) or if the modparam contains num_dplls=0.
|
||||
|
|
|
|||
|
|
@ -59,19 +59,19 @@ forward kinematics iteration is controlled by hal pins.
|
|||
.B genhexkins.platform.\fIN\fB.z
|
||||
Parameters describing the \fIN\fRth joint's coordinates.
|
||||
.TQ
|
||||
.B genhexkins.convergence\-criterion
|
||||
.B genhexkins.convergence-criterion
|
||||
Minimum error value that ends iterations with converged solution.
|
||||
.TQ
|
||||
.B genhexkins.limit\-iterations
|
||||
.B genhexkins.limit-iterations
|
||||
Limit of iterations, if exceeded iterations stop with no convergence.
|
||||
.TQ
|
||||
.B genhexkins.max\-error
|
||||
.B genhexkins.max-error
|
||||
Maximum error value, if exceeded iterations stop with no convergence.
|
||||
.TQ
|
||||
.B genhexkins.last\-iterations
|
||||
.B genhexkins.last-iterations
|
||||
Number of iterations spent for the last forward kinematics solution.
|
||||
.TQ
|
||||
.B genhexkins.max\-iterations
|
||||
.B genhexkins.max-iterations
|
||||
Maximum number of iterations spent for a converged solution during current
|
||||
session.
|
||||
.SS maxkins \- 5-axis kinematics example
|
||||
|
|
@ -88,11 +88,11 @@ links. The DH definitions are the ones used by John J Craig in
|
|||
"Introduction to Robotics: Mechanics and Control" The parameters for the
|
||||
manipulator are defined by hal pins.
|
||||
.TP
|
||||
.B genserkins.A\-\fIN
|
||||
.B genserkins.A-\fIN
|
||||
.TQ
|
||||
.B genserkins.ALPHA\-\fIN
|
||||
.B genserkins.ALPHA-\fIN
|
||||
.TQ
|
||||
.B genserkins.D\-\fIN
|
||||
.B genserkins.D-\fIN
|
||||
Parameters describing the \fIN\fRth joint's geometry.
|
||||
|
||||
.SS pumakins \- kinematics for puma typed robots
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ between 0 and 1.
|
|||
|
||||
.SH PARAMETERS
|
||||
.TP
|
||||
.B lcd.\fINN\fB.decimal\-separator\fR (u32) rw
|
||||
.B lcd.\fINN\fB.decimal-separator\fR (u32) rw
|
||||
Sets the decimal separator used for floating point numbers. The default value is
|
||||
46 (0x2E) which corresponds to ".". If a comma is required then set this
|
||||
parameter to 44 (0x2C).
|
||||
|
|
@ -87,7 +87,7 @@ default and is not strictly necessary.
|
|||
|
||||
"0" Pad the number to the specified width with the numeral 0.
|
||||
|
||||
"+" Force display of a + symbol before positive numbers. This (like the \- sign)
|
||||
"+" Force display of a + symbol before positive numbers. This (like the - sign)
|
||||
will appear immediately to the left of the digits for a space-padded number
|
||||
and in the extreme left position for a 0-padded number.
|
||||
|
||||
|
|
@ -101,7 +101,7 @@ digits. The integer data types will never fill more than 10 decimal digits.
|
|||
Following the width specifier should be the decimal specifier. This can only be
|
||||
a full-stop character (.) as the comma (,) is used as the instance separator.
|
||||
Currently lcd does not access the locale information to determine the correct
|
||||
separator and the \fBdecimal\-separator\fR parameter should be used.
|
||||
separator and the \fBdecimal-separator\fR parameter should be used.
|
||||
|
||||
Following the decimal separator should be a number that determines how many
|
||||
places of decimals to display. This entry is ignored in the case of integer
|
||||
|
|
@ -122,7 +122,7 @@ variable format width, with a sign only shown for negative numbers. both %f and
|
|||
|
||||
\fB%i %d\fR (For example %+ 4d) Creates a signed (s32) HAL pin. The example would
|
||||
display the value at a fixed 4 characters, space padded, width including the +
|
||||
giving a range of +999 to \-999. %i and %d create identical output.
|
||||
giving a range of +999 to -999. %i and %d create identical output.
|
||||
|
||||
\fB%u\fR (for example %08u) Creates an unsigned (u32) HAL pin. The example would be a
|
||||
fixed 8 characters wide, padded with zeros.
|
||||
|
|
@ -141,7 +141,7 @@ character.
|
|||
\fB%b\fR This specifier has no equivalent in printf. It creates a bit (boolean) type
|
||||
HAL pin. The b should be followed by two characters and the display will show
|
||||
the first of these when the pin is true, and the second when false. Note that
|
||||
the characters follow, not precede the "b", unlike the case with other formats.
|
||||
the characters follow, not preceed the "b", unlike the case with other formats.
|
||||
The characters may be "escaped" Hex values. For example "%b\eFF " will display a
|
||||
solid black block if true, and a space if false and "%b\e7F\e7E" would display
|
||||
right-arrow for false and left-arrow for true. An unexpected value of 'E'
|
||||
|
|
|
|||
|
|
@ -48,7 +48,7 @@ In the optional scan-generation mode the \fBmatrix_kb.\fIN\fB.keycode\fR pin
|
|||
changes to an output pin and a set of output row pins and input column pins are
|
||||
created.
|
||||
These need to be connected to physical inputs and outputs to scan the matrix and
|
||||
return values to HAL. Note the \fBnegative\-logic\fR parameter described below,
|
||||
return values to HAL. Note the \fBnegative-logic\fR parameter described below,
|
||||
this will need to be set on the most common forms of inputs which float high
|
||||
when unconnected.
|
||||
|
||||
|
|
@ -62,7 +62,7 @@ Perform all requested functions. Should be run in a slow thread for effective
|
|||
debouncing.
|
||||
.SH PINS
|
||||
.TP
|
||||
.B matrix_kb.\fIN\fB.col\-\fICC\fB\-in\fR bit in
|
||||
.B matrix_kb.\fIN\fB.col-\fICC\fB-in\fR bit in
|
||||
The input pin corresponding to column C.
|
||||
.TP
|
||||
.B matrix_kb.\fIN\fB.key.r\fIR\fBc\fIC\fR bit out
|
||||
|
|
@ -72,7 +72,7 @@ The pin corresponding to the key at row R column C of the matrix.
|
|||
This pin should be connected to the scancode generator if hardware such as a
|
||||
7i73 is being used. In this mode it is an input pin. In the internally-generated
|
||||
scanning mode this pin is an output, but will not normally be connected.
|
||||
.B matrix_kb.\fIN\fB.row\-\fIRR\fB\-out bit out
|
||||
.B matrix_kb.\fIN\fB.row-\fIRR\fB-out bit out
|
||||
The row scan drive pins.Should be connected to external hardware pins connected
|
||||
to the keypad.
|
||||
|
||||
|
|
@ -86,7 +86,7 @@ number of keys may be pressed simultaneously. Increase the value of this paramet
|
|||
if such a keyboard is connected, or if phantom keystrokes are more acceptable
|
||||
than only two keys being active at one time.
|
||||
.TP
|
||||
.B matrix_kb.\fIN\fB.negative\-logic\fR bit r/w (default 1) only in scan mode
|
||||
.B matrix_kb.\fIN\fB.negative-logic\fR bit r/w (default 1) only in scan mode
|
||||
When no keys are pressed a typical digital input will float high. The input will
|
||||
then be pulled low by the keypad when the corresponding poll line is low.
|
||||
Set this parameter to 0 if the IO in use requires one row at a time to be high,
|
||||
|
|
|
|||
|
|
@ -25,15 +25,15 @@ Pin names starting with "\fBaxis\fR" are actually joint values, but the pins and
|
|||
.SH PINS
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.amp\-enable\-out\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.amp-enable-out\fR OUT BIT
|
||||
TRUE if the amplifier for this joint should be enabled
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.amp\-fault\-in\fR IN BIT
|
||||
\fBaxis.\fIN\fB.amp-fault-in\fR IN BIT
|
||||
Should be driven TRUE if an external fault is detected with the amplifier for this joint
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.home\-sw\-in\fR IN BIT
|
||||
\fBaxis.\fIN\fB.home-sw-in\fR IN BIT
|
||||
Should be driven TRUE if the home switch for this joint is closed
|
||||
|
||||
.TP
|
||||
|
|
@ -41,51 +41,51 @@ Should be driven TRUE if the home switch for this joint is closed
|
|||
TRUE if the joint is currently homing
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.index\-enable\fR IO BIT
|
||||
Should be attached to the index\-enable pin of the joint's encoder to enable homing to index pulse
|
||||
\fBaxis.\fIN\fB.index-enable\fR IO BIT
|
||||
Should be attached to the index-enable pin of the joint's encoder to enable homing to index pulse
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.is\-unlocked\fR IN BIT
|
||||
\fBaxis.\fIN\fB.is-unlocked\fR IN BIT
|
||||
If the axis is a locked rotary the unlocked sensor should be connected to this pin
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.jog\-counts\fR IN S32
|
||||
\fBaxis.\fIN\fB.jog-counts\fR IN S32
|
||||
Connect to the "counts" pin of an external encoder to use a physical jog wheel.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.jog\-enable\fR IN BIT
|
||||
When TRUE (and in manual mode), any change to "jog\-counts" will result in motion. When false, "jog\-counts" is ignored.
|
||||
\fBaxis.\fIN\fB.jog-enable\fR IN BIT
|
||||
When TRUE (and in manual mode), any change to "jog-counts" will result in motion. When false, "jog-counts" is ignored.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.jog\-scale\fR IN FLOAT
|
||||
Sets the distance moved for each count on "jog\-counts", in machine units.
|
||||
\fBaxis.\fIN\fB.jog-scale\fR IN FLOAT
|
||||
Sets the distance moved for each count on "jog-counts", in machine units.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.jog\-vel\-mode\fR IN BIT
|
||||
When FALSE (the default), the jogwheel operates in position mode. The axis will move exactly jog\-scale units for each count, regardless of how long that might take. When TRUE, the wheel operates in velocity mode - motion stops when the wheel stops, even if that means the commanded motion is not completed.
|
||||
\fBaxis.\fIN\fB.jog-vel-mode\fR IN BIT
|
||||
When FALSE (the default), the jogwheel operates in position mode. The axis will move exactly jog-scale units for each count, regardless of how long that might take. When TRUE, the wheel operates in velocity mode - motion stops when the wheel stops, even if that means the commanded motion is not completed.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.joint\-pos\-cmd\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.joint-pos-cmd\fR OUT FLOAT
|
||||
The joint (as opposed to motor) commanded position. There may be several offsets between the joint and motor coordinates: backlash compensation, screw error compensation, and home offsets.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.joint\-pos\-fb\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.joint-pos-fb\fR OUT FLOAT
|
||||
The joint feedback position. This value is computed from the actual motor position minus joint offsets. Useful for machine visualization.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.motor\-pos\-cmd\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.motor-pos-cmd\fR OUT FLOAT
|
||||
The commanded position for this joint.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.motor\-pos\-fb\fR IN FLOAT
|
||||
\fBaxis.\fIN\fB.motor-pos-fb\fR IN FLOAT
|
||||
The actual position for this joint.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.neg\-lim\-sw\-in\fR IN BIT
|
||||
\fBaxis.\fIN\fB.neg-lim-sw-in\fR IN BIT
|
||||
Should be driven TRUE if the negative limit switch for this joint is tripped.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.pos\-lim\-sw\-in\fR IN BIT
|
||||
\fBaxis.\fIN\fB.pos-lim-sw-in\fR IN BIT
|
||||
Should be driven TRUE if the positive limit switch for this joint is tripped.
|
||||
|
||||
.TP
|
||||
|
|
@ -93,39 +93,39 @@ Should be driven TRUE if the positive limit switch for this joint is tripped.
|
|||
TRUE if the axis is a locked rotary and a move is commanded.
|
||||
|
||||
.TP
|
||||
\fBmotion.adaptive\-feed\fR IN FLOAT
|
||||
When adaptive feed is enabled with M52 P1, the commanded velocity is multiplied by this value. This effect is multiplicative with the NML-level feed override value and motion.feed\-hold.
|
||||
\fBmotion.adaptive-feed\fR IN FLOAT
|
||||
When adaptive feed is enabled with M52 P1, the commanded velocity is multiplied by this value. This effect is multiplicative with the NML-level feed override value and motion.feed-hold.
|
||||
|
||||
.TP
|
||||
\fBmotion.analog\-in\-\fINN\fR IN FLOAT
|
||||
\fBmotion.analog-in-\fINN\fR IN FLOAT
|
||||
These pins are used by M66 Enn wait-for-input mode.
|
||||
|
||||
.TP
|
||||
\fBmotion.analog\-out\-\fINN\fR OUT FLOAT
|
||||
\fBmotion.analog-out-\fINN\fR OUT FLOAT
|
||||
These pins are used by M67-68.
|
||||
|
||||
.TP
|
||||
\fBmotion.coord\-error\fR OUT BIT
|
||||
\fBmotion.coord-error\fR OUT BIT
|
||||
TRUE when motion has encountered an error, such as exceeding a soft limit
|
||||
|
||||
.TP
|
||||
\fBmotion.coord\-mode\fR OUT BIT
|
||||
\fBmotion.coord-mode\fR OUT BIT
|
||||
TRUE when motion is in "coordinated mode", as opposed to "teleop mode"
|
||||
|
||||
.TP
|
||||
\fBmotion.current\-vel\fR OUT FLOAT
|
||||
\fBmotion.current-vel\fR OUT FLOAT
|
||||
Current cartesian velocity
|
||||
|
||||
.TP
|
||||
\fBmotion.digital\-in\-\fINN\fR IN BIT
|
||||
\fBmotion.digital-in-\fINN\fR IN BIT
|
||||
These pins are used by M66 Pnn wait-for-input mode.
|
||||
|
||||
.TP
|
||||
\fBmotion.digital\-out\-\fINN\fR OUT BIT
|
||||
\fBmotion.digital-out-\fINN\fR OUT BIT
|
||||
These pins are controlled by the M62 through M65 words.
|
||||
|
||||
.TP
|
||||
\fBmotion.distance\-to\-go\fR OUT FLOAT
|
||||
\fBmotion.distance-to-go\fR OUT FLOAT
|
||||
Distance remaining in the current move
|
||||
|
||||
.TP
|
||||
|
|
@ -133,11 +133,11 @@ Distance remaining in the current move
|
|||
If this bit is driven FALSE, motion stops, the machine is placed in the "machine off" state, and a message is displayed for the operator. For normal motion, drive this bit TRUE.
|
||||
|
||||
.TP
|
||||
\fBmotion.feed\-hold\fR IN BIT
|
||||
\fBmotion.feed-hold\fR IN BIT
|
||||
When Feed Stop Control is enabled with M53 P1, and this bit is TRUE, the feed rate is set to 0.
|
||||
|
||||
.TP
|
||||
\fBmotion.feed\-inhibit\fR IN BIT
|
||||
\fBmotion.feed-inhibit\fR IN BIT
|
||||
When this pin is TRUE, machine motion is inhibited (this includes jogs,
|
||||
programmed feeds, and programmed rapids, aka traverse moves).
|
||||
|
||||
|
|
@ -153,108 +153,103 @@ maximum allowed acceleration rate.
|
|||
Motion resumes when this pin goes FALSE.
|
||||
|
||||
.TP
|
||||
\fBmotion.in\-position\fR OUT BIT
|
||||
\fBmotion.in-position\fR OUT BIT
|
||||
TRUE if the machine is in position (ie, not currently moving towards
|
||||
the commanded position).
|
||||
|
||||
.TP
|
||||
\fBmotion.probe\-input\fR IN BIT
|
||||
\fBmotion.probe-input\fR IN BIT
|
||||
G38.x uses the value on this pin to determine when the probe has made contact. TRUE for probe contact closed (touching), FALSE for probe contact open.
|
||||
|
||||
.TP
|
||||
\fBmotion.program\-line\fR OUT S32
|
||||
The current program line while executing. Zero if not running or between
|
||||
lines while single stepping.
|
||||
\fBmotion.program-line\fR OUT S32
|
||||
|
||||
.TP
|
||||
\fBmotion.requested\-vel\fR OUT FLOAT
|
||||
The current requested velocity in user units per second. This value is
|
||||
the F-word setting from the G-code file, possibly reduced to accomodate
|
||||
machine velocity and acceleration limits. The value on this pin does
|
||||
not reflect the feed override or any other adjustments.
|
||||
\fBmotion.requested-vel\fR OUT FLOAT
|
||||
The requested velocity with no adjustments for feed override
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-at\-speed\fR IN BIT
|
||||
\fBmotion.spindle-at-speed\fR IN BIT
|
||||
Motion will pause until this pin is TRUE, under the following conditions: before the
|
||||
first feed move after each spindle start or speed change; before the start of every
|
||||
chain of spindle-synchronized moves; and if in CSS mode, at every rapid->feed transition.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-brake\fR OUT BIT
|
||||
\fBmotion.spindle-brake\fR OUT BIT
|
||||
TRUE when the spindle brake should be applied
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-forward\fR OUT BIT
|
||||
\fBmotion.spindle-forward\fR OUT BIT
|
||||
TRUE when the spindle should rotate forward
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-index\-enable\fR I/O BIT
|
||||
For correct operation of spindle synchronized moves, this signal must be hooked to the index\-enable pin of the spindle encoder.
|
||||
\fBmotion.spindle-index-enable\fR I/O BIT
|
||||
For correct operation of spindle synchronized moves, this signal must be hooked to the index-enable pin of the spindle encoder.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-inhibit\fR IN BIT
|
||||
\fBmotion.spindle-inhibit\fR IN BIT
|
||||
When TRUE, the spindle speed is set and held to 0.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-on\fR OUT BIT
|
||||
\fBmotion.spindle-on\fR OUT BIT
|
||||
TRUE when spindle should rotate
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-reverse\fR OUT BIT
|
||||
\fBmotion.spindle-reverse\fR OUT BIT
|
||||
TRUE when the spindle should rotate backward
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-revs\fR IN FLOAT
|
||||
\fBmotion.spindle-revs\fR IN FLOAT
|
||||
For correct operation of spindle synchronized moves, this signal must be hooked to the position pin of the spindle encoder.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-speed\-in\fR IN FLOAT
|
||||
\fBmotion.spindle-speed-in\fR IN FLOAT
|
||||
Actual spindle speed feedback in revolutions per second; used for G96 (constant surface speed) and G95 (feed per revolution) modes.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-speed\-out\fR OUT FLOAT
|
||||
\fBmotion.spindle-speed-out\fR OUT FLOAT
|
||||
Desired spindle speed in rotations per minute
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-speed\-out\-abs\fR OUT FLOAT
|
||||
\fBmotion.spindle-speed-out-abs\fR OUT FLOAT
|
||||
Desired spindle speed in rotations per minute, always positive regardless of spindle direction.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-speed\-out\-rps\fR OUT float
|
||||
\fBmotion.spindle-speed-out-rps\fR OUT float
|
||||
Desired spindle speed in rotations per second
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-speed\-out\-rps\-abs\fR OUT float
|
||||
\fBmotion.spindle-speed-out-rps-abs\fR OUT float
|
||||
Desired spindle speed in rotations per second, always positive regardless of spindle direction.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-orient\-angle\fR OUT FLOAT
|
||||
\fBmotion.spindle-orient-angle\fR OUT FLOAT
|
||||
Desired spindle orientation for M19. Value of the M19 R word parameter plus the value of the [RS274NGC]ORIENT_OFFSET ini parameter.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-orient\-mode\fR OUT BIT
|
||||
\fBmotion.spindle-orient-mode\fR OUT BIT
|
||||
Desired spindle rotation mode. Reflects M19 P parameter word.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-orient\fR OUT BIT
|
||||
\fBmotion.spindle-orient\fR OUT BIT
|
||||
Indicates start of spindle orient cycle. Set by M19. Cleared by any of M3,M4,M5.
|
||||
If spindle\-orient\-fault is not zero during spindle\-orient true, the M19 command fails with an error message.
|
||||
If spindle-orient-fault is not zero during spindle-orient true, the M19 command fails with an error message.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-is\-oriented\fR IN BIT
|
||||
Acknowledge pin for spindle\-orient. Completes orient cycle. If spindle\-orient was true when spindle\-is\-oriented
|
||||
was asserted, the spindle\-orient pin is cleared and the spindle\-locked pin is asserted. Also, the spindle\-brake pin is asserted.
|
||||
\fBmotion.spindle-is-oriented\fR IN BIT
|
||||
Acknowledge pin for spindle-orient. Completes orient cycle. If spindle-orient was true when spindle-is-oriented
|
||||
was asserted, the spindle-orient pin is cleared and the spindle-locked pin is asserted. Also, the spindle-brake pin is asserted.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-orient\-fault\fR IN S32
|
||||
\fBmotion.spindle-orient-fault\fR IN S32
|
||||
Fault code input for orient cycle. Any value other than zero will cause the orient cycle to abort.
|
||||
|
||||
.TP
|
||||
\fBmotion.spindle\-locked\fR OUT BIT
|
||||
\fBmotion.spindle-locked\fR OUT BIT
|
||||
Spindle orient complete pin. Cleared by any of M3,M4,M5.
|
||||
|
||||
.TP
|
||||
\fBmotion.teleop\-mode\fR OUT bit
|
||||
\fBmotion.teleop-mode\fR OUT bit
|
||||
|
||||
.TP
|
||||
\fBmotion.tooloffset.x\fR OUT FLOAT
|
||||
|
|
@ -294,49 +289,49 @@ Many of the pins below serve as debugging aids, and are subject to change or rem
|
|||
TRUE when this joint is active
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.backlash\-corr\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.backlash-corr\fR OUT FLOAT
|
||||
Backlash or screw compensation raw value
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.backlash\-filt\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.backlash-filt\fR OUT FLOAT
|
||||
Backlash or screw compensation filtered value (respecting motion limits)
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.backlash\-vel\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.backlash-vel\fR OUT FLOAT
|
||||
Backlash or screw compensation velocity
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.coarse\-pos\-cmd\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.coarse-pos-cmd\fR OUT FLOAT
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.error\fR OUT BIT
|
||||
TRUE when this joint has encountered an error, such as a limit switch closing
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.f\-error\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.f-error\fR OUT FLOAT
|
||||
The actual following error
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.f\-error\-lim\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.f-error-lim\fR OUT FLOAT
|
||||
The following error limit
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.f\-errored\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.f-errored\fR OUT BIT
|
||||
TRUE when this joint has exceeded the following error limit
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.faulted\fR OUT BIT
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.free\-pos\-cmd\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.free-pos-cmd\fR OUT FLOAT
|
||||
The "free planner" commanded position for this joint.
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.free\-tp\-enable\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.free-tp-enable\fR OUT BIT
|
||||
TRUE when the "free planner" is enabled for this joint
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.free\-vel\-lim\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.free-vel-lim\fR OUT FLOAT
|
||||
The velocity limit for the free planner
|
||||
|
||||
.TP
|
||||
|
|
@ -344,39 +339,37 @@ The velocity limit for the free planner
|
|||
TRUE if the joint has been homed
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.in\-position\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.in-position\fR OUT BIT
|
||||
TRUE if the joint is using the "free planner" and has come to a stop
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.joint\-vel\-cmd\fR OUT FLOAT
|
||||
\fBaxis.\fIN\fB.joint-vel-cmd\fR OUT FLOAT
|
||||
The joint's commanded velocity
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.kb\-jog\-active\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.kb-jog-active\fR OUT BIT
|
||||
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.neg\-hard\-limit\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.neg-hard-limit\fR OUT BIT
|
||||
The negative hard limit for the joint
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.pos\-hard\-limit\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.pos-hard-limit\fR OUT BIT
|
||||
The positive hard limit for the joint
|
||||
|
||||
.TP
|
||||
\fBaxis.\fIN\fB.wheel\-jog\-active\fR OUT BIT
|
||||
\fBaxis.\fIN\fB.wheel-jog-active\fR OUT BIT
|
||||
|
||||
.TP
|
||||
\fBmotion.motion\-enabled\fR OUT BIT
|
||||
\fBmotion.motion-enabled\fR OUT BIT
|
||||
|
||||
.TP
|
||||
\fBmotion.motion\-type\fR OUT S32
|
||||
\fBmotion.motion-type\fR OUT S32
|
||||
These values are from src/emc/nml_intf/motion_types.h
|
||||
.RS
|
||||
.RS
|
||||
.TP
|
||||
0: Idle (no motion)
|
||||
.P
|
||||
1: Traverse
|
||||
.P
|
||||
2: Linear feed
|
||||
|
|
@ -392,14 +385,14 @@ These values are from src/emc/nml_intf/motion_types.h
|
|||
.RE
|
||||
|
||||
.TP
|
||||
\fBmotion.on\-soft\-limit\fR OUT BIT
|
||||
\fBmotion.on-soft-limit\fR OUT BIT
|
||||
|
||||
.TP
|
||||
\fBmotion.program\-line\fR OUT S32
|
||||
\fBmotion.program-line\fR OUT S32
|
||||
|
||||
|
||||
.TP
|
||||
\fBmotion.teleop\-mode\fR OUT BIT
|
||||
\fBmotion.teleop-mode\fR OUT BIT
|
||||
TRUE when motion is in "teleop mode", as opposed to "coordinated mode"
|
||||
|
||||
|
||||
|
|
@ -408,23 +401,23 @@ TRUE when motion is in "teleop mode", as opposed to "coordinated mode"
|
|||
Many of the parameters serve as debugging aids, and are subject to change or removal at any time.
|
||||
|
||||
.TP
|
||||
\fBmotion\-command\-handler.time\fR
|
||||
\fBmotion-command-handler.time\fR
|
||||
|
||||
.TQ
|
||||
\fBmotion\-command\-handler.tmax\fR
|
||||
\fBmotion-command-handler.tmax\fR
|
||||
|
||||
.TQ
|
||||
\fBmotion\-controller.time\fR
|
||||
\fBmotion-controller.time\fR
|
||||
|
||||
.TQ
|
||||
\fBmotion\-controller.tmax\fR
|
||||
\fBmotion-controller.tmax\fR
|
||||
Show information about the execution time of these HAL functions in CPU cycles
|
||||
|
||||
.TP
|
||||
\fBmotion.debug\-\fI*\fR
|
||||
\fBmotion.debug-\fI*\fR
|
||||
These values are used for debugging purposes.
|
||||
.TP
|
||||
\fBmotion.servo.last\-period\fR
|
||||
\fBmotion.servo.last-period\fR
|
||||
The number of CPU cycles between invocations of the servo thread. Typically, this number divided by the CPU speed gives the time in seconds, and can be used to determine whether the realtime motion controller is meeting its timing constraints
|
||||
|
||||
.SH FUNCTIONS
|
||||
|
|
@ -432,11 +425,11 @@ The number of CPU cycles between invocations of the servo thread. Typically, thi
|
|||
Generally, these functions are both added to the servo-thread in the order shown.
|
||||
|
||||
.TP
|
||||
\fBmotion\-command\-handler\fR
|
||||
\fBmotion-command-handler\fR
|
||||
Processes motion commands coming from user space
|
||||
|
||||
.TP
|
||||
\fBmotion\-controller\fR
|
||||
\fBmotion-controller\fR
|
||||
Runs the LinuxCNC motion controller
|
||||
|
||||
.SH BUGS
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue