TCP 5-axis kinematics

More
15 Mar 2022 21:43 #237385 by Peter_Cassar
Replied by Peter_Cassar on topic TCP 5-axis kinematics
Daniel, look at the man page for kinematics i.e. at the linux prompt type > man kins and look for xyzab-trt and xyzac-trt, These are valid KINS options in HAL

also if you haven't already, read this linuxcnc.org/docs/ja/html/motion/5-axis-kinematics.html it goes through the maths and settings in HAL . This is only relevant for proper 5 axis kinematics.
My opinion is that XYZAB and XYZAC are trivial kinematics ie TRIVKINS as configured in HAL.. Now XYZAB-TRT and XYZAC-TRT kinematics applies translations to XYZ axis when A,B,C are commanded to move thus keeping the Tool over the work for Tool Centre Point motion. That's what all the maths is for. As I understand it the Matrix transformations have been coded in the Kinematics module. What I need to know is how to set up a HAL file to manage this.
Regards,
Peter.

Please Log in or Create an account to join the conversation.

More
16 Mar 2022 06:48 - 16 Mar 2022 06:50 #237437 by mydani
Replied by mydani on topic TCP 5-axis kinematics
I did search the man pages in the recent master, and I of course know the the page you have linked. And again, there is nothing about the xyzab configuration, only xyzac and xyzbc.
Same applies for the source code where the kinematics are implemented btw.

Can you mention which version / branch you are using with these results?

Regards
Daniel
Last edit: 16 Mar 2022 06:50 by mydani.

Please Log in or Create an account to join the conversation.

More
16 Mar 2022 08:33 - 17 Mar 2022 08:40 #237442 by mydani
Replied by mydani on topic TCP 5-axis kinematics
Maybe you guys, who are more mathematically involved, can answer some of my questions. With a little luck jsskangas might be still around.

My thoughts reg. matrices for a similar machine like this   are:
1. translation matrix for work offsets (y,z) to the A axis
2. rotation matrix for A
3. translation matrix for x,y,z movements and potentially pivot distance of A and B axis (dz, dx)
4. rotation matrix for B

Questions which come up:
- In the example in the wiki, the translation matrix for work offsets was only used once, not for the ac/bc example. I wonder whether it isn't mandatory or what the restrictions are if it is not included.
- Doesn't / shouldn't tool length (compensation) come into play as a term in the matrices

The difficutly I see is that the pivot point of both rotary axis is shifting during movement (distances d_z, d_x, and different tool lengths to be considered). So at least the procedure from the wiki page is not easily applicable. But I think the overall concept is fine as it works for 6 axis robots as well.


Regards,
Daniel
Last edit: 17 Mar 2022 08:40 by mydani.

Please Log in or Create an account to join the conversation.

More
16 Mar 2022 08:57 #237444 by Peter_Cassar
Replied by Peter_Cassar on topic TCP 5-axis kinematics
Sorry I misunderstood that you are concerned with xyzab although unless it's a special geometry what's the difference between the other two? I believe the difference is in the rotation matrices, left or right hand screw rule.

I'm using 2.8.2 , latest download.

Please Log in or Create an account to join the conversation.

More
16 Mar 2022 09:19 #237447 by mydani
Replied by mydani on topic TCP 5-axis kinematics
The math behind is different, you have to setup the matrices from scratch to match the kinematic. If you follow the papers linked in the web page you referenced to, you will see the mathematical background.

Please Log in or Create an account to join the conversation.

More
19 Mar 2022 16:37 #237721 by andypugh
Replied by andypugh on topic TCP 5-axis kinematics

Not quite sure how Denavit-Hartenberg for this setup is applied...

 

I am not sure that D-H is relevant here. That is typically used with serial kinematics. 
(Admittedly there are generally short serial chains in a 5-axis CNC machine, but I don't think that any of the trt kinematics files take DH as parameters.)

Please Log in or Create an account to join the conversation.

More
19 Mar 2022 17:11 #237725 by andypugh
Replied by andypugh on topic TCP 5-axis kinematics

What is different in the HAL config between simple 5axis trivkins xyzab and proper xyzac-trt or xyzbc-trt kinetmatics ?


Almost nothing. The HAL file needs to load the alternative kinematics and then it will need to set several offsets and rotation centres.
I have looked, though, and I can't see a list of the parameters listed anywhere. There is a small example on the 5axis kinematics docs page:
# set offset parameters
net :tool-offset motion.tooloffset.z xyzac-trt-kins.tool-offset
setp xyzac-trt-kins.y-offset 0
setp xyzac-trt-kins.z-offset 20

I have 5 axis trivkins working with a  Mesa 5125+7i76 .  If I set the kinematics to xyzab-trt  I get five joints (0 to 4)  in the Axis GUI. Where to from here?


If you home the machine, then it should switch from joint mode to axis mode, and start showing XYZAC.

Does LinuxCNC assume each axis pivot is co-located , there are no translations? 


No, it gets the offsets from HAL pins.

Please Log in or Create an account to join the conversation.

More
20 Mar 2022 02:51 #237770 by Peter_Cassar
Replied by Peter_Cassar on topic TCP 5-axis kinematics
Thanks Andy, It was as simple as that! I can confirm once the joints are homed the Axis are relabeled. The linear axis also translate when the rotary axis move. Now to find a turbine example!

Regards,
Peter.

Please Log in or Create an account to join the conversation.

More
21 Mar 2022 23:39 #237975 by andypugh
Replied by andypugh on topic TCP 5-axis kinematics

Now to find a turbine example!

There is one in the LinuxCNC disribution. 
Open the config picker, and open sim->axis->vismach->5-axis->table-rotating-tilting->xyzac-trt and the defulr file that the config iopens with is an impeller. You can save the file from there into your nc_files folder to run on the real machine. 
 

Please Log in or Create an account to join the conversation.

More
24 Mar 2022 16:49 #238235 by daidai
Replied by daidai on topic TCP 5-axis kinematics
Hello.
Sorry for the basic question.
I just followed the instructions and was able to install Linuxcnc on my Raspberry pi4.
I would like to be able to use the latest xyzac-trt-kins after that, but I don't know how to do it.
I have tried to find out how to do this, but due to my lack of knowledge, I could not understand it.
Please tell me exactly how I can do this by typing in the command line.
 

Please Log in or Create an account to join the conversation.

Time to create page: 0.251 seconds
Powered by Kunena Forum