LinuxCNC Documentation
This page is 13% translated. Untranslated text is shown in English.

SYNOPSIS

halui [-ini <path-to-INI>]

DESCRIPTION

The program halui 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.

OPTIONS

-ini filename

Use the filename 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.

USAGE

When run, halui will export a large number of pins. A user can connect those to his physical knobs & switches & leds, and when a change is noticed halui triggers an appropriate event.

Caveat, halui expects the signals to be debounced, so if needed (bad knob contact) connect the physical button to a HAL debounce filter first.

PINS

Abortar

halui.abort bit in

pin for clearing most errors

Tool

halui.tool.length-offset.a float out

current applied tool length offset for the A axis

halui.tool.length-offset.b float out

current applied tool length offset for the B axis

halui.tool.length-offset.c float out

current applied tool length offset for the C axis

halui.tool.length-offset.u float out

current applied tool length offset for the U axis

halui.tool.length-offset.v float out

current applied tool length offset for the V axis

halui.tool.length-offset.w float out

current applied tool length offset for the W axis

halui.tool.length-offset.x float out

current applied tool length offset for the X axis

halui.tool.length-offset.y float out

current applied tool length offset for the Y axis

halui.tool.length-offset.z float out

current applied tool length offset for the Z axis

halui.tool.diameter float out

Current tool diameter, or 0 if no tool is loaded.

halui.tool.number u32 out

current selected tool

Husillo

halui.spindle.N.brake-is-on bit out

status pin that tells us if brake is on

halui.spindle.N.brake-off bit in

pin para desactivar el freno del husillo

halui.spindle.N.brake-on bit in

pin para activar el freno del husillo

halui.spindle.N.decrease bit in

a rising edge on this pin decreases the current spindle speed by 100

halui.spindle.N.forward bit in

una cresta en este pin hace girar al husillo en sentido normal

halui.spindle.N.increase bit in

a rising edge on this pin increases the current spindle speed by 100

halui.spindle.N.is-on bit out

pin de estado indicando si el husillo esta encendido

halui.spindle.N.reverse bit in

una cresta en este pin hace al husillo ir en reversa

halui.spindle.N.runs-backward bit out

pin de estado indicando si el husillo va en sentido contrario

halui.spindle.N.runs-forward bit out

pin de estado indicando si el husillo va hacia adelante

halui.spindle.N.start bit in

una cresta en este pin inicia el husillo

halui.spindle.N.stop bit in

una cresta en este pin hace detener el husillo

Spindle Override

(SO = spindle override. FO = feed override)
halui.spindle.N.override.count-enable bit in (default: TRUE)

When TRUE, modify spindle override when counts changes.

halui.spindle.N.override.counts s32 in

counts X scale = spindle override percentage

halui.spindle.N.override.decrease bit in

pin for decreasing the SO (-=scale)

halui.spindle.N.override.direct-value bit in

pin to enable direct spindle override value input

halui.spindle.N.override.increase bit in

pin for increasing the SO (+=scale)

halui.spindle.N.override.reset bit in

pin for resetting the scale SO value (scale=1.0)

halui.spindle.N.override.scale float in

pin for setting the scale of counts for SO

halui.spindle.N.override.value float out

current FO value

Program

halui.program.block-delete.is-on bit out

status pin telling that block delete is on

halui.program.block-delete.off bit in

pin for requesting that block delete is off

halui.program.block-delete.on bit in

pin for requesting that block delete is on

halui.program.is-idle bit out

status pin telling that no program is running

halui.program.is-paused bit out

status pin telling that a program is paused

halui.program.is-running bit out

status pin telling that a program is running

halui.program.optional-stop.is-on bit out

status pin telling that the optional stop is on

halui.program.optional-stop.off bit in

pin requesting that the optional stop is off

halui.program.optional-stop.on bit in

pin requesting that the optional stop is on

halui.program.pause bit in

pin for pausing a program

halui.program.resume bit in

pin for resuming a program

halui.program.run bit in

pin for running a program

halui.program.step bit in

pin for stepping in a program

halui.program.stop bit in

pin for stopping a program (note: this pin does the same thing as halui.abort)

Modo

halui.mode.auto bit in

pin for requesting auto mode

halui.mode.is-auto bit out

pin for auto mode is on

halui.mode.is-joint bit out

pin showing joint by joint jog mode is on

halui.mode.is-manual bit out

el pin para modo manual esta encendido

halui.mode.is-mdi bit out

el pin para modo MDI esta encendido

halui.mode.is-teleop bit out

pin showing coordinated jog mode is on

halui.mode.joint bit in

pin for requesting joint by joint jog mode

halui.mode.manual bit in

pin para solicitar modo manual

halui.mode.mdi bit in

pin for requesting MDI mode

halui.mode.teleop bit in

pin for requesting coordinated jog mode

MDI (optional)

halui.mdi-command-XX bit in

halui looks for INI variables named [HALUI]MDI_COMMAND, and exports a pin for each command it finds. When the pin is driven TRUE, halui 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.

Mist coolant

halui.mist.is-on bit out

pin for mist is on

halui.mist.off bit in

pin for stopping mist

halui.mist.on bit in

pin for starting mist

Max-velocity

halui.max-velocity.count-enable bit in (default: TRUE)

When True, modify max velocity when halui.max-velocity.counts changes.

halui.max-velocity.counts s32 in

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.

halui.max-velocity.direct-value bit in

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).

halui.max-velocity.increase bit in

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.)

halui.max-velocity.decrease bit in

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.)

halui.max-velocity.scale float in

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.

halui.max-velocity.value float out

Current value for maximum velocity, in machine-units per second.

Machine

halui.machine.units-per-mm float out

pin for machine units-per-mm (inch:1/25.4, mm:1) according to INI file setting: [TRAJ] LINEAR_UNITS

halui.machine.is-on bit out

pin for machine is On/Off

halui.machine.off bit in

pin for setting machine Off

halui.machine.on bit in

pin para encender la máquina

Joint

N = joint number (0 …​ num_joints-1)

halui.joint.N.select bit in

pin para seleccionar la articulación N

halui.joint.N.is-selected bit out

pin de estado indicando que la articulación N esta seleccionada

halui.joint.N.has-fault bit out

pin de estado indicando que la articulación N tiene un fallo

halui.joint.N.home bit in

pin for homing joint N

halui.joint.N.is-homed bit out

pin de estado indicando que la articulación N esta en casa

halui.joint.N.on-hard-max-limit bit out

pin de estado indicando que la articulación N esta en el límite positivo de hardware

halui.joint.N.on-hard-min-limit bit out

pin de estado indicando que la articulación N esta en el límite negativo de hardware

halui.joint.N.on-soft-max-limit bit out

pin de estado indicando que la articulación N esta en el límite positivo de software

halui.joint.N.on-soft-min-limit bit out

pin de estado indicando que la articulación N esta en el límite negativo de software

halui.joint.N.override-limits bit out

pin de estado indicando que los límites de la articulación N están anulados temporalmente

halui.joint.N.unhome bit in

pin for unhoming joint N

halui.joint.selected u32 out

selected joint number (0 …​ num_joints-1)

halui.joint.selected.has-fault bit out

status pin selected joint is faulted

halui.joint.selected.home bit in

pin for homing the selected joint

halui.joint.selected.is-homed bit out

status pin telling that the selected joint is homed

halui.joint.selected.on-hard-max-limit bit out

status pin telling that the selected joint is on the positive hardware limit

halui.joint.selected.on-hard-min-limit bit out

status pin telling that the selected joint is on the negative hardware limit

halui.joint.selected.on-soft-max-limit bit out

status pin telling that the selected joint is on the positive software limit

halui.joint.selected.on-soft-min-limit bit out

status pin telling that the selected joint is on the negative software limit

halui.joint.selected.override-limits bit out

status pin telling that the selected joint’s limits are temporarily overridden

halui.joint.selected.unhome bit in

pin for unhoming the selected joint

Joint jogging (N = joint number (0 …​ num_joints-1))

Joint jogging is possible in unhomed state except for joints having a negative HOME_SEQUENCE value. See Section "Homing Configuration" of the documentation.

halui.joint.jog-deadband float in

pin for setting jog analog deadband (jog analog inputs smaller/slower than this (in absolute value) are ignored).

halui.joint.jog-speed float in

pin for setting jog speed for plus/minus jogging.

halui.joint.N.analog float in

pin for jogging the joint N using an float value (e.g. joystick). The value, typically set between 0.0 and ±1.0, is used as a jog-speed multiplier.

halui.joint.N.increment float in

pin para asignar el incremento de trote para la articulación N cuando se usa +/-

halui.joint.N.increment-minus bit in

un flanco ascendente hará que la articulación N trote en dirección negativa por la cantidad incrementada

halui.joint.N.increment-plus bit in

un flanco ascendente hará que la articulación N trote en dirección positiva por la cantidad incrementada

halui.joint.N.minus bit in

pin para trotar la articulación N en dirección negativa a la velocidad halui.joint.jog-speed

halui.joint.N.plus bit in

pin para trotar la articulación N en dirección positiva a la velocidad halui.joint.jog-speed

halui.joint.selected.increment float in

pin for setting the jog increment for the selected joint when using increment-plus/minus

halui.joint.selected.increment-minus bit in

a rising edge will will make the selected joint jog in the negative direction by the increment amount

halui.joint.selected.increment-plus bit in

a rising edge will will make the selected joint jog in the positive direction by the increment amount

halui.joint.selected.minus bit in

pin for jogging the selected joint in negative direction at the halui.joint.jog-speed velocity

halui.joint.selected.plus bit in

pin for jogging the selected joint bit in in positive direction at the halui.joint.jog-speed velocity

Eje

L = axis letter (xyzabcuvw)

halui.axis.L.select bit in

pin for selecting axis by letter

halui.axis.L.is-selected bit out

pin de estado indicando que el eje L esta seleccionado

halui.axis.L.pos-commanded float out

Commanded axis position in machine coordinates

halui.axis.L.pos-feedback float out

Posición del eje de retroalimentación en coordenadas de máquina

halui.axis.L.pos-relative float out

Commanded axis position in relative coordinates

Axis Jogging

This is only possible in homed state.

L = axis letter (xyzabcuvw)

halui.axis.jog-deadband float in

pin for setting jog analog deadband (jog analog inputs smaller/slower than this (in absolute value) are ignored)

halui.axis.jog-speed float in

pin for setting jog speed for plus/minus jogging.

halui.axis.L.analog float in

pin for jogging the axis L using an float value (e.g. joystick). The value, typically set between 0.0 and ±1.0, is used as a jog-speed multiplier.

halui.axis.L.increment float in

pin for setting the jog increment for axis L when using increment-plus/minus

halui.axis.L.increment-minus bit in

un flanco ascendente hará que el eje L trote en dirección negativa por la cantidad incrementada

halui.axis.L.increment-plus bit in

un flanco ascendente hará que el eje L trote en dirección positiva por la cantidad incrementada

halui.axis.L.minus bit in

pin para trotar el eje L en dirección negativa a la velocidad halui.joint.jog-speed

halui.axis.L.plus bit in

pin para trotar el eje L en dirección positiva a la velocidad halui.joint.jog-speed

halui.axis.selected u32 out

selected axis (by index: 0:x 1:y 2:z 3:a 4:b 5:cr 6:u 7:v 8:w)

halui.axis.selected.increment float in

pin for setting the jog increment for the selected axis when using increment-plus/minus

halui.axis.selected.increment-minus bit in

a rising edge will will make the selected axis jog in the negative direction by the increment amount

halui.axis.selected.increment-plus bit in

a rising edge will will make the selected axis jog in the positive direction by the increment amount

halui.axis.selected.minus bit in

pin for jogging the selected axis in negative direction at the halui.axis.jog-speed velocity

halui.axis.selected.plus bit in

pin for jogging the selected axis bit in in positive direction at the halui.axis.jog-speed velocity

Flood coolant

halui.flood.is-on bit out

pin for flood is on

halui.flood.off bit in

pin for stopping flood

halui.flood.on bit in

pin para iniciar llenado

Porcentaje de alimentación

halui.feed-override.count-enable bit in (default: TRUE)

When TRUE, modify feed override when counts changes.

halui.feed-override.counts s32 in

counts X scale = feed override percentage

halui.feed-override.decrease bit in

pin for decreasing the FO (-=scale)

halui.feed-override.direct-value bit in

pin to enable direct value feed override input

halui.feed-override.increase bit in

pin for increasing the FO (+=scale)

halui.feed-override.reset bit in

pin para restablecer FO (escala=1.0)

halui.feed-override.scale float in

pin for setting the scale on changing the FO

halui.feed-override.value float out

current feed override value

Rapid Override

halui.rapid-override.count-enable bit in (default: TRUE)

When TRUE, modify rapid override when counts changes.

halui.rapid-override.counts s32 in

counts X scale = rapid override percentage

halui.rapid-override.decrease bit in

pin for decreasing the rapid override (-=scale)

halui.rapid-override.direct-value bit in

pin to enable direct value rapid override input

halui.rapid-override.increase bit in

pin for increasing the rapid override (+=scale)

halui.rapid-override.reset bit in

pin for resetting the rapid override (scale=1.0)

halui.rapid-override.scale float in

pin for setting the scale on changing the rapid override

halui.rapid-override.value float out

current rapid override value

E-stop

halui.estop.activate bit in

pin para establecer encendido de E-stop (interno de LinuxCNC)

halui.estop.is-activated bit out

pin for displaying E-stop state (LinuxCNC internal) On/Off

halui.estop.reset bit in

pin for resetting E-stop (LinuxCNC internal) Off

Homing

halui.home-all bit in

pin for requesting home-all (only available when a valid homing sequence is specified)

SEE ALSO

axis(1), iocontrol(1)

BUGS

None known at this time.

AUTHOR

Written by Alex Joni, as part of the LinuxCNC project. Updated by John Thornton

REPORTING BUGS

Copyright © 2006 Alex Joni.

This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.