multiple (four) parallel axis

More
25 Apr 2016 10:33 #73835 by pcsabi93
Hello there,

we are new in the community, so please excuse us, if we post an already solved issue.
We are currently working on a machine, which has 4 x-axis and 2 y-axis. Even though LinuxCNC can handle up to 9-axis, we haven't found any solution, in which we could manipulate the orientation of the axis - or at least we can't define four parallel axis.

The four axis are independent from each other, so unfortunately we cannot clone them from a "master axes".

Now, we had an idea, that we can actually just wire the machine to the already existing axis (XYZUVW), but we are not sure, if the interpolator of LinuxCNC has any effect on the actual actuation of the parallel axis.

Do you think it is possible to solve this problem?

Thank you in advance for your replies!

Ps.: We are currently using version 2.6.4 on Debian

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

More
25 Apr 2016 12:13 #73841 by andypugh
This is hard to visualise. Can you show us a photo or drawing?

I think this is a situation where you need to start by specifying what you wish to happen and then we can work out how.
Starting at the G-code, do you want to have XYZUVW move individual joints, or would you prefer to use simple XYZ G-code and have the joint positions calculated automatically?

Do you want to be able to manually jog each joint independently?

By "joint" here I mean linear actuator / rail. I am trying to only use "axis" in this discussion to mean the XYZ physical position of the tool tip.
The following user(s) said Thank You: pcsabi93

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

More
25 Apr 2016 12:24 #73843 by Todd Zuercher
It depends what you are expecting/need. You probably will be able to make it at least mostly work. The problem areas I see when using axis beyond xyz will be, naive cam detection is disabled, arcs won't be available, and the display plot will probably be useless.

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

More
25 Apr 2016 13:36 - 25 Apr 2016 13:40 #73847 by pcsabi93
In our project we have a turning machine with four tool tips. The basic structure can be seen on the attached file. The applied turning machine has two holders, because they are used for producing wheels (actually wheelpairs) for trains. At the ends of the spindle we have two moving units, which can move parallel to the spindle (y1 and y2). Due to the limited range of movement in these directions, we have to use 2 tool tips per unit, which tips need to be actuated in direction x (so they add up to 4 axis in this direction, see the drawing).

We have a bit freedom, which means, that we only have to use (x1 and x4) or (x2 and x3) simultaneously.

Now, if we define x1 and x2 as X and Z, and for x4 and x3 we use U and W, we think, that the interpolator will mess up the actual curve. Maybe we are wrong, but we think, that with this solution the interpolator works with 3D curves instead of our actual 2D arcs.

That is why we came up with the following concept:
- The first part of the wheel will be processed with x1 and x4. If we define x1 as X and x4 as U, we will be moving in the XY plane with our G-code (so, in G17).
-After that, when we have to continue the processing with the other tool tips (with x2 assigned to Z and X3 to W), we simply have to change our working plane to G18.

This means, that we split our curve into two parts, and these parts are projected to the corresponding planes. This way the interpolator remains in a plane during the processing, and -hopefully- it won't mess up things. What do you think, will there be any problems with this solution?

Sorry for my messy English, but it is quite hard to compose the concept. Hopefully you could understand it.
Attachments:
Last edit: 25 Apr 2016 13:40 by pcsabi93. Reason: messed up the indexes

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

More
25 Apr 2016 14:10 #73848 by andypugh
It seems that what you are calling Y1 and Y2 would always move as exact mirrors of each other and that X1 and X4 and X2 and X3 will always move as pairs?

The axis parallel to the spindle axis is always Z, so I think we should stick to that convention.

I would configure the machine so that the X-word in G-code always moves both X1 and X4 and the Y-word moves both X2 and X3.

The Z word would move both Y1 andY2, but in a mirror arrangement.

There would need to be a number of "offset" components in HAL to align the tool tips between the pairs, I don't think that the tool table can be used. Alternatively this could be done in a custom kinematics file.

That way both sets of tips are able to do arcs (XZ plane and XY plane).
The following user(s) said Thank You: pcsabi93

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

More
25 Apr 2016 14:16 #73849 by Todd Zuercher
I think I would try a little different approach. Fist I'd try to set up the axis naming more like a conventional lathe. What your calling y1 and 2 I'd call z1 and z2. Since those 2 joints should always move as mirrors of each other, I'd try to move them with the same single command, with perhaps an offset added in for adjustments, perhaps using the gantry component for them. It might be useful to use one of the parallel axis names to determine the offset value between the joint pair (for Z use W) I think then I'd try something similar with the other 2 pairs of joints. So x1,x4 would be slaved with U as the offset adjustor. The last pair (your x2-3) might work best just to use Y and V. So the G-code to run the machine would only need to use XYZ axis names, and the UVW axis names would only be needed for setting up the machine and tool offsets between the joint pairs.
The following user(s) said Thank You: pcsabi93

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

More
25 Apr 2016 14:18 #73850 by Todd Zuercher
Andy, beat me but had similar ideas.

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

More
25 Apr 2016 14:28 #73851 by andypugh

Andy, beat me but had similar ideas.


But your UVW as offsets idea is better than what I had in mind. It allows the operator to jog the individual tips.

I would be tempted to set up a Vismach simulation of this machine to see how it worked out in practice. I think, for example, that you would need to add (U-X) to X as the offset to get the DRO display and touch-off to work, but would need to experiment to find out.

It is interesting to speculate that the distance between the Z-axis actuators will be one horse-width.
www.snopes.com/history/american/gauge.asp
The following user(s) said Thank You: pcsabi93

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

More
25 Apr 2016 17:25 #73867 by andypugh

I would be tempted to set up a Vismach simulation of this machine


How much of a hurry are you in? I am very busy this week, but will have a lot of idle time in a hotel room in Detroit next week, and something like building a Vismach simulation might pass the time nicely.
The following user(s) said Thank You: pcsabi93

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

More
25 Apr 2016 23:25 #73878 by pcsabi93
Thank you for your posts! I will ask the team about your concept, it will definitely make the programming part easier. Anyway, we are kind of in a rush, as we have to submit the working machine next Friday (of course we have been working on the machine in parallel for a long time).

As far as I know we will need to move the tool tips (x1 and x4; x2 and x3) independently in some cases (when we use the machine in manual mode), so thanks for the idea!

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

Time to create page: 0.076 seconds
Powered by Kunena Forum