Hello Guest it is June 16, 2021, 10:19:02 AM

Author Topic: using mach 3 to operate a CNC with waist ( radial ) X axes and linear Y axes  (Read 1168 times)

0 Members and 1 Guest are viewing this topic.

Hello All , Im new to mach 3,

 My question for the forum (and I hope I asking the right place) is , does any one know if/how to make mach 3 calculate X Y coordinates based on a radial waist axes and a lineal Y axes ...
I'm building a new CNC with a single post with a waist control and then a linear Y axes and i want to use normal G code to cut items.
That is a different form of kinematics than what Mach 3 does, which is linear and rotary by circular interpolation. So I don't believe Mach 3 can do this.  The Linux guys are always bragging on LinuxCNC, maybe it can since the source code is open encouraging someone to add that capability.
Thanks for the information , I will try that track
I'm not familiar with the term 'waist'?. I'm guessing from the way you've written your post that the machine is constructed like
a radial drill press?. Garylucas has already responded that Mach3 doesn't work that way and I believe he is correct.

I think there is a way to get it to work but would require some coding and the resultant Gcode would be all but unreadable to anyone
but yourself.

I presume you have Gcode programs that if you ran them on a standard three axis machine would produce a desired part. In order to
achieve the same part from a machine with a radial axis would require the Gcode be rewritten so that the X co-ords represent the radial
movement rather than linear.

Any student of physics or applied mathematics would recognise this as a co-ordinate translation.
The normal (mathematical) representation is:

X'         [ .... .... ....] X
y'    =   [ ...  .... ....] Y
Z'         [ .... .... ....] Z
where X' Y' Z' represent the controlled point co-ords on you radial machine and X Y Y are the original rectilinear Gcode co-ords
and the matrix [ .... .... ....] etc represent the transformation matrix between rectilinear and axial, axial co-ords is the name ascribed
by mathematicians. I would have to get my textbooks out to fill the matrix in...but its doable.

What you would do is write a program in VB if using Mach3 or LUA if using Mach4 to open your Gcode file and line by line
convert the co-ords in it to new ones and run the new job. It sounds daunting but I suspect is probably not as bad as you
might think. My preference is LUA given that I've already converted to Mach4. With VB, actually Cypress Enable, in Mach3
being a bit spotty is what convinced me to take the plunge to Mach4 and learn a new language, LUA. As it turns out LUA is
vastly more capable than VB will ever be.

The only fly in the ointment would be that G02 and G03 co-ordinated circular interpolations would have to be expanded to a lager
number of linear moves in order that the translation would work. Cant quite decide what would happen to canned cycles either?

Could be a lot of fun if you're into programming.

My wife left with my best friend...
     and I miss him!
Thanks for the post , I did looked at the linuxCNC yesterday but while looks like I could rewrite code sections to allow for it. it still breaks down to rewriting code ...
I like the VB approach because I dont have to build / buy and new system ( to run just LinuxCNC ) and I will look into the Mach 4 option also ...

again thanks

(BTW, the waist is a radial axes, so I end up with a radial axes A (or X), and then I have a normal linear axes B (or Y) so you are correct to go from a X - Y cord system to Radial - linear cord system will take a G-gode conversion ( I was just hoping that there was a way Mach 3/4 could do it for me :) )