SYNOPSIS
loadrt limit_axis [count=N|names=name1[,name2…]] [personality=P1[,P2…]]
DESCRIPTION
Limit axis to certain limits at varying inputs.
For example on a spindle with C rotation, to avoid hitting a gantry when the height is above Z-10.
-
Use Z axis as feedback
-
Use 2 ranges (0,-10) (-10, -40)
-
When Z is above 10, C rotation is limited to range 0
-
When Z is below 10, C rotation is limited to range 1
Usage:
The personality argument defines how many ranges are supported by each instance. Note that no spaces can be used in the names= and personality= parameters.
Caveats:
-
Searches ranges from 0 to 9 and will take the first range that matches
-
Ranges are inclusive min_range ≤ feedback ≤ max_range
-
Max can not be less than minimum for any group
-
sticky indicates, to not check other ranges if the feedback is still in the current range
-
enable allows for a range to be turned on/off, for cases such as avoiding a tool changer, but allowing sometimes
FUNCTIONS
- limit-axis.N (requires a floating-point thread)
-
PINS
- limit-axis.N.error-no-range bit out
-
error pin indicating that no range matches the fb
- limit-axis.N.min-output float out
-
Minimum limit output
- limit-axis.N.max-output float out
-
Maximum limit output
- limit-axis.N.fb float in
-
Feedback pin, the value of this pin determines which range is active
- limit-axis.N.current-range u32 out
-
Indicates which range is currently active
- limit-axis.N.min-limit-MM float in (MM=00..personality)
-
The array of minimum limits to select from
- limit-axis.N.max-limit-MM float in (MM=00..personality)
-
The array of macimum limits
- limit-axis.N.min-range-MM float in (MM=00..personality)
-
Defines the range of values with which the fb is compared to set the range
- limit-axis.N.max-range-MM float in (MM=00..personality)
-
Defines the range of values with which the fb is compared to set the range
- limit-axis.N.enable-MM bit in (MM=00..personality)
-
Used to enable and disable a specific range
- limit-axis.N.sticky-MM bit in (MM=00..personality)
-
Used to make specific range sticky or not
- limit-axis.N.error-range-MM bit out (MM=00..personality) (default: 1)
-
Error bit indicating that the fb pin falls outside all ranges
- limit-axis.N.error-limit-MM bit out (MM=00..personality) (default: 1)
-
Error bit indicating that the max limit is not larger than the min limit
AUTHOR
Chad Woitas
LICENSE
GPL