I’m building rotary tube cutter with X,Y,Z and A axis.
A axis should be rotary, but I need to slave this to B in Mach3 because there are 2 separate rotating heads with 2 different motors and gear ratios, homing switches etc.
In Mach3 is not possible other than X,Y and Z.
So, is there any solution how to solve this in SheetCam or in post processor ?
I’m more than sure that someone already had this issue but I just cant find any simple solution so far.
Usually on 3 axis controllers, Y is temporarily rewired to A, which is physically parallel to X. Are you saying that you’d like rotary to be physically parallel to Y, meaning X would temporarily rewire to B ?
If that’s the case, then I believe that can be done in the pp.
Do you want the pp to have XY gcode with linear distances for both axes,
or YB gcode with linear Y and angular B ?
This 3 axis controller technique also limits you to just rotary cylindars/ round pipe, not rectangle tubing which requires XY and rotary.
So that drawing looks like the rotary axis is parallel to X, that is the normal configuration. So you want XAZ gcode coordinates, where XZ is linear and rotary (A or B designation) is angular ? The controller’s Y driver is temporarily wired to the angular axis? If so, then again, you won’t be able to cut rectangular tubing in this config, only round pipe. Rect. tubing requires a functional XYZ linear axes in addition to A or B angular (rotational).
OR does your controller have 4 drivers, XYZA, and you merely want XYZAB gcode where A and B axes have identical angular coordinates in each block ? In this case cutting rect. tubing is fine.
Thank you for support,
It looks OK, exactly as needed, later on there will be some more modifications in post if needed, like:
“max Rotation = 6” *I assume that this is limitation of how many turns A and B axis in this case, In my case limit should be not more than 370deg from home.
All in all, fine tuning and other problem solving will come when I finish the mechanical part of machine.
Yes, I see the pp line for rotary var maxRotation=6. I had not noticed this in pp before until you drew my attention to it, so I’m not exactly sure of its meaning other than to take it literally as you suggest. @Les_Newell will have to weigh in on this var meaning.
However, I have experience in using optimiseRapids=0 to inhibit ‘wind up’. I believe this will limit rotation of more than 360* from 0*.
-- Rapids will move the shortest distance to the next cut but may cause machines with limited rotation
-- to 'wind up'. Set this to 0 to disable optimisation.
--defaults to 1 if not defined
optimiseRapids = 1 --<<<<< change this to zero 0