Setting up kinematics for my Ballscrew articulated B-axis

  • Gautham
  • Away
  • Junior Member
  • Junior Member
More
22 Sep 2025 05:53 #335266 by Gautham
Hi everyone,

So I have my B-axis articulated by a ballscrew, as you might have guessed, and I am having some trouble understanding kinematics and how to set this up in LinuxCNC. Below is a picture of my design, followed by a drawing of the geometry. My trouble isn't with getting the math correct, so you can ignore the math if you wish. I need help understanding how to input this into LinuxCNC. So far I have followed this tutorial,  but I have got stuck with the kinematics part. 

And the geometry

So to describe the drawing
  • Line CD is a connecting rod where point C travels along the ballscrew path AB, and the path is perpendicular to the Z-axis
  • Point H is a point along the path AB that is directly above point E, that is, angle BHE will always be 90 deg and the distance HE is 120mm and AH is 217mm
  • Point E is the centre of the B-axis rotation 
  • Point D represents where the connecting rod is connected to the B-axis assembly
  • Line FG is the spindle where G is the tool tip.
  • CD = 125mm
  • DE = 127mm
  • EG = 120mm
  • HE = 120
  • Angle DEF = 30.579 deg
So to find the angle of the spindle  FEH we must first find DEH and subtract DEF from it.
DEH

So if I were to write a function to find the angle of the spindle(FEH) relative to the Z-axis based on the length of AC, it would be as follows
So first, we will calculate the length CE based on the length CH
CE = sqrt(CH2 +HE2) where HE = 120
CE = sqrt(CH2 +1202)
CE = sqrt(CH2 + 14400)

Now we can calculate angle DEC and subtract angle DEF to get the angle of the spindle

COS(DEC) = (1272 + CE2 - 1252)/(2*127*CE)
COS(DEC) = (1272 + CH2 + 14400 - 1252)/(2*127*sqrt(CH2 + 14400))
COS(DEC) = (CH2 - 14904) / (254*sqrt(CH2 + 14400))                  
where CH = AC - AH = AC-217

If you are not interested in the math, please continue reading here
So if COS(DEC) = (CH2 - 14904) / (254*sqrt(CH2 + 14400))  - DEF describes the relation of the ballscrew moving to the rotation of the B-axis how do I set this up in LinuxCNC? Also, do I need to calculate the formula for the tool tip change in X-axis and Z axis based on the B-axis rotating as well, before inputting this into LinuxCNC or is this sufficient? Thank you for your help and patience

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

More
22 Sep 2025 15:36 #335283 by langdons
Your image links don't work.

You can attach a file or use something like mega.nz or GitHub.

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

  • tommylight
  • tommylight's Avatar
  • Away
  • Moderator
  • Moderator
More
22 Sep 2025 16:23 #335288 by tommylight

Your image links don't work.

Works fine here.
And do not advise anyone to upload pictures to third party sites, they are not safe, just google "malware on file sharing websites" and be amazed.
GitHUB is OK, though, for now.

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

More
22 Sep 2025 16:49 #335291 by Hakan
Picture is fine.
linuxcnc.org/docs/html/motion/kinematics.html is a starting point if you haven't been there already.
The following user(s) said Thank You: tommylight

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

Time to create page: 0.077 seconds
Powered by Kunena Forum