# rotation problem

23 Nov 2012 19:03 #26877
by messier

*rotation problem*was created by

*messier*

Hello all,

I'm trying to retrofit an old last turning machine with linuxcnc.

I have 3 axis:

X linear.

Z linear (with a toroidal tool)

A angular.

Really the whole thing is little more complicated because the tool axis (Z) is mounted in a pendulus arm, but I have developed the CAM software that calculates the position of the linear actuator to make everything work and the G code is just like 2 linear axis and one angular axis).

I'm using a 6i25+7i77 mesa cards and 3 servomotors (7.5 N/m torque and 3000 rpm)

Everything is more or less configure now, and I'm making some tests without coupling the motors with the machine axis, with a cilinder every thing works fine, but when I try to make a rectangular prims I have an strange error:

When the speed of the Z axis is 0 also the system is slowing dawn also the A axis and X axis.

Attached is a screenshot from Halscope. The blue line is the commanded speed for the rotation axis and the white is the commanded speed of the Z axis, you can see that when the commanded speed is zero in Z axis the system is slowing down also the rotation axis.

this is the G code I'm using:

G94

G64

G1 X-10.00 F10000.00

G1 A0.00 F30.00

G1 Z2.95 F10000.00

G93

G1 X-10.00000 A0.00000 Z2.95474 F120

G1 X-9.99556 A1.00000 Z3.05668 F8571

G1 X-9.99111 A2.00000 Z3.13928 F8571

G1 X-9.98667 A3.00000 Z3.20840 F8571

G1 X-9.98222 A4.00000 Z3.26512 F8571

G1 X-9.97778 A5.00000 Z3.30764 F8571

G1 X-9.97334 A6.00000 Z3.33315 F8571

G1 X-9.96889 A7.00000 Z3.34584 F8571

G1 X-9.96445 A8.00000 Z3.34345 F8571

G1 X-9.96000 A9.00000 Z3.32844 F8571

G1 X-9.95556 A10.00000 Z3.29857 F8571

G1 X-9.95111 A11.00001 Z3.25620 F8571

G1 X-9.94667 A12.00000 Z3.19648 F8571

G1 X-9.94223 A13.00000 Z3.12528 F8571

G1 X-9.93778 A14.00000 Z3.04169 F8571

G1 X-9.93334 A15.00000 Z2.94044 F8571

G1 X-9.92889 A16.00001 Z2.82663 F8571

G1 X-9.92445 A17.00000 Z2.70175 F8571

G1 X-9.92001 A18.00000 Z2.56163 F8571

G1 X-9.91556 A19.00000 Z2.40651 F8571

G1 X-9.91112 A20.00000 Z2.23459 F8571

G1 X-9.90667 A21.00000 Z2.04907 F8571

G1 X-9.90223 A22.00001 Z1.85074 F8571

G1 X-9.89779 A23.00000 Z1.63527 F8571

G1 X-9.89334 A24.00000 Z1.41011 F8571

G1 X-9.88890 A25.00000 Z1.17415 F8571

G1 X-9.88445 A26.00000 Z0.95264 F8571

G1 X-9.88001 A27.00000 Z0.75190 F8571

.....

See that I'm using the inverse feed rate G93 and the G64 mode.

The desired behavior is maintain the rotation speed smoother as possible. Do you have any idea why is the system slowing the rotation?

Attached you have also the ini file and hal file.

Tanks a lot.

Luis Bellot

I'm trying to retrofit an old last turning machine with linuxcnc.

I have 3 axis:

X linear.

Z linear (with a toroidal tool)

A angular.

Really the whole thing is little more complicated because the tool axis (Z) is mounted in a pendulus arm, but I have developed the CAM software that calculates the position of the linear actuator to make everything work and the G code is just like 2 linear axis and one angular axis).

I'm using a 6i25+7i77 mesa cards and 3 servomotors (7.5 N/m torque and 3000 rpm)

Everything is more or less configure now, and I'm making some tests without coupling the motors with the machine axis, with a cilinder every thing works fine, but when I try to make a rectangular prims I have an strange error:

When the speed of the Z axis is 0 also the system is slowing dawn also the A axis and X axis.

Attached is a screenshot from Halscope. The blue line is the commanded speed for the rotation axis and the white is the commanded speed of the Z axis, you can see that when the commanded speed is zero in Z axis the system is slowing down also the rotation axis.

this is the G code I'm using:

G94

G64

G1 X-10.00 F10000.00

G1 A0.00 F30.00

G1 Z2.95 F10000.00

G93

G1 X-10.00000 A0.00000 Z2.95474 F120

G1 X-9.99556 A1.00000 Z3.05668 F8571

G1 X-9.99111 A2.00000 Z3.13928 F8571

G1 X-9.98667 A3.00000 Z3.20840 F8571

G1 X-9.98222 A4.00000 Z3.26512 F8571

G1 X-9.97778 A5.00000 Z3.30764 F8571

G1 X-9.97334 A6.00000 Z3.33315 F8571

G1 X-9.96889 A7.00000 Z3.34584 F8571

G1 X-9.96445 A8.00000 Z3.34345 F8571

G1 X-9.96000 A9.00000 Z3.32844 F8571

G1 X-9.95556 A10.00000 Z3.29857 F8571

G1 X-9.95111 A11.00001 Z3.25620 F8571

G1 X-9.94667 A12.00000 Z3.19648 F8571

G1 X-9.94223 A13.00000 Z3.12528 F8571

G1 X-9.93778 A14.00000 Z3.04169 F8571

G1 X-9.93334 A15.00000 Z2.94044 F8571

G1 X-9.92889 A16.00001 Z2.82663 F8571

G1 X-9.92445 A17.00000 Z2.70175 F8571

G1 X-9.92001 A18.00000 Z2.56163 F8571

G1 X-9.91556 A19.00000 Z2.40651 F8571

G1 X-9.91112 A20.00000 Z2.23459 F8571

G1 X-9.90667 A21.00000 Z2.04907 F8571

G1 X-9.90223 A22.00001 Z1.85074 F8571

G1 X-9.89779 A23.00000 Z1.63527 F8571

G1 X-9.89334 A24.00000 Z1.41011 F8571

G1 X-9.88890 A25.00000 Z1.17415 F8571

G1 X-9.88445 A26.00000 Z0.95264 F8571

G1 X-9.88001 A27.00000 Z0.75190 F8571

.....

See that I'm using the inverse feed rate G93 and the G64 mode.

The desired behavior is maintain the rotation speed smoother as possible. Do you have any idea why is the system slowing the rotation?

Attached you have also the ini file and hal file.

Tanks a lot.

Luis Bellot

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

23 Nov 2012 21:31 #26878
by BigJohnT

Replied by

*BigJohnT*on topic*rotation problem*
The inverse time mode only means that the coordinated move will be completed in the time specified by the F word. Coordinated is the key word, when combining linear and angular moves the moves will all end up at the same time.

John

John

The following user(s) said Thank You: messier

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

25 Nov 2012 02:10 #26904
by messier

Replied by

*messier*on topic*rotation problem*
thanks a lot for your answer.

Then the solution to maintain the rotation speed more or less constant is configure the Y axis like angular and don't use the A axis, or making a new kinematics module to use with my machine. and give the toolpath in cartesian coordinates and let the kinematics module make the conversiont o to joint position.

Is my suposition right?

I'll try first change the configuration to use the Y axis like angular one.

Regards,

Luis Bellot

Then the solution to maintain the rotation speed more or less constant is configure the Y axis like angular and don't use the A axis, or making a new kinematics module to use with my machine. and give the toolpath in cartesian coordinates and let the kinematics module make the conversiont o to joint position.

Is my suposition right?

I'll try first change the configuration to use the Y axis like angular one.

Regards,

Luis Bellot

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

25 Nov 2012 02:31 #26906
by BigJohnT

Replied by

*BigJohnT*on topic*rotation problem*
I know of machines that the Y axis is rotational and were configured as linear. The problem is you have to calculate the scale for each diameter... but it is doable.

They now use a rotational axis for the Y and don't have any problems. I suspect the G code your using is faulty for what you desire.

John

They now use a rotational axis for the Y and don't have any problems. I suspect the G code your using is faulty for what you desire.

John

The following user(s) said Thank You: messier

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

Time to create page: 0.086 seconds