userkins - Template for user-built kinematics
loadrt userkins [count=N|names=name1[,name2...]] |
The userkins.comp file is a template for creating kinematics that can be user-built using halcompile.
The unmodified userkins component can be used as a kinematics file for a machine with identity kinematics for an xyz machine employing 3 joints (motors).
USAGE:
1) Copy the userkins.comp file to a user-owned directory (mydir).
Note: The
userkins.comp file can be downloaded from:
https://github.com/LinuxCNC/linuxcnc/raw/2.8/src/hal/components/userkins.comp
where ’2.8’ is the branch name (use
’master’ for the master branch)
For a RIP
(run-in-place) build, the file is located in
the git tree as:
src/hal/components/userkins.comp
2) Edit the
functions kinematicsForward() and kinematicsInverse() as
required.
3) If required, add HAL pins following examples in the
template code.
4) Build and install the component using halcompile:
$ cd mydir
$ [sudo] halcompile --install userkins.comp
# Note:
# sudo is required when using a deb install
# sudo is not required for run-in-place builds
# $ man halcompile for more info
5) Specify userkins in an ini file as:
[KINS]
KINEMATICS=userkins
JOINTS=3
# the number of JOINTS must agree with the
# number of joints used in your modified userkins.comp
6) Note: the manpage for userkins is not updated by
halcompile --install
7) To use a different component name, rename the file
(example mykins.comp)
and change all instances of ’userkins’ to
’mykins’.
NOTES:
1 The fpin pin is included to satisfy the
requirements of the
halcompile utility but it is not accessible to kinematics
functions.
2 HAL pins and
parameters needed in kinematics functions
(kinematicsForward(),
kinematicsInverse()) must be setup in a function
(userkins_setup())
invoked by the initial motion module call to
kinematicsType().
userkins.N.fdemo (requires a floating-point thread)
userkins.N.fpin s32 out (default: 0)
pin to demonstrate use of a conventional (non-kinematics) function fdemo
Dewey Garrett
GPL