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