moveoff_gui - a gui for the moveoff component
moveoff_gui [--help | -- -h | -?]
moveoff_gui [options]
Moveoff_gui is a sample graphical user interface (GUI) for controlling a Hal moveoff component to implement Hal-only offsets. See the manpage (man moveoff) for IMPORTANT limitations and warnings.
Supported
configurations must use a known kinematics module with
KINEMATICS_TYPE = KINEMATICS_IDENTITY. The modules
currently supported are:
trivkins
--help | -? | -- -h
Show options and exit
-mode onpause | always
onpause: popup gui to control
offsets when program paused
always: show gui to control offsets always
Default: onpause
-axes axisnames
Letters from set of {x y z a b
c u v w}
Examples: -axes x, -axes xyz, -axes xz (no spaces)
Default: xyz
-inc incrementvalue
Specify one increment value per
-inc (up to 4)
Defaults: 0.001 0.01 0.10 1.0
-size integer
Overall gui size is based on
font size, typically 8 - 20
Default: 14
-loc center | +x+y
Initial location on screen
Examples: -loc center, -loc +20+100
Default: center
-autoresume
Resume program when move-enable
deasserted
Default: notused
-delay delay secs
Delay for autoresume (allow time to restore spindle speed etc) Default: 5
These options
are available for special cases:
-noentry
Disables creation of entry
widgets
Default: notused
-no_resume_inhibit
Disable use of resume-inhibit
to controlling gui
Default: notused
-no_pause_requirement
Disable check for
halui.program.is-paused
Default: notused
-no_cancel_autoresume
Useful for retracting offsets
with simple external controls
Default: notused
-no_display
Use when both external controls
and and external displays are in use
Default: notused
LinuxCNC must be running.
Halui must be
loaded, typical ini file setting:
[HAL]HALUI = halui.
The moveoff
component must be loaded with the name ’mv’ as:
loadrt moveoff names=mv personality=number_of_axes
If the pin mv.motion-enable is not connected when moveoff_gui is started, controls will be provided to enable offsets and set offset values. If the pin is connected, only a display of offsets is shown and control must be made by external Hal connections.
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.
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 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.
The ini file in the configuration directory must provide HALFILEs to loadrt the moveoff component, connect its pins, and addf its read and write functions in the proper order. These steps can be done at runtime using an existing configuration ini file and specifying a system library HALFILE hookup_moveoff.tcl as illustrated below:
[HAL]
HALUI = halui
HALFILE = user_halfile_1
etc ...
HALFILE = user_halfile_n
HALFILE = LIB:hookup_moveoff.tcl
The hookup_moveoff.tcl halfile will use ini file settings for the moveoff component control pins:
[OFFSET]
EPSILON =
WAYPOINT_SAMPLE_SECS =
WAYPOINT_THRESHOLD =
BACKTRACK_ENABLE =
The hookup_moveoff.tcl will use ini file settings for the moveoff per-axis limits:
[AXIS_m]
OFFSET_MAX_VELOCITY =
OFFSET_MAX_ACCELERATION =
OFFSET_MAX_LIMIT =
OFFSET_MIN_LIMIT =
The moveoff_gui program should be specified in the APPLICATIONS stanza of the ini file, for example:
[APPLICATIONS]
DELAY = delay_in_secs_to_allow_hal_connections
APP = moveoff_gui -option1 -option2 ...
Simulation configurations that demonstrate the moveoff_gui and the moveoff component are located in:
configs/sim/axis/moveoff
(axis-ui)
configs/sim/touchy/ngcgui (touchy-ui)
man page for the moveoff component:moveoff(9)