× Forum Header

Problem with A axis I am not able to understand

More
04 Nov 2020 15:00 #188312 by kmeld
Hi,
I have spent a long time so far trying to troubleshoot this issue and I have made some progress but I am not able to understand the cause of the problem.
I will try to explain what is going on but I am really confused so if anything is unclear please forgive me. I will answer any additional questions you may have.

Situation:
I have simple 3 axis milling machine that works fine. I have 4-th axis I have just assembled and I am trying to configure linuxcnc to add this axis.
Originally when I connected 4-axis to my control it did not work as motor (stepper) was staling (buzzing and was not able to move). All mechanical issues have been ruled out.
Also if I simply connect A axis instead of any XYZ it works just fine. So motor, cable, plug mechanics are 100% OK.

Furthermore I have switched motor controllers of individual axis in the control box to rule out faulty controller. All 4 controllers are 100% OK.

I also checked if LPT pins for 4-th axis work fine. I have switched connections to LPT pins of XYZA axis. I have ruled out bad signal issues. No matter where A axis is connected to LPT it is always A axis that is not working.

I have also tried re-routing HAL pins of LPT to switch axis in the software. Result is that no matter what, it is always A axis that is not working (no matter which actuals physical axis of the machine is routed to A)

If in INI file 4-th axis is defined as ANGULAR motor is staling.
I have tried to define it as LINEAR identically as X and motor either is staling or result is rather strange. When jogging X it goes normally (fast, as usual), but if jogging A (identical settings as X) motor turns much slower. If I switch cables X->A situation reverses.
Furthermore if I reroute axis in HAL (reassigning HAL Pins) it is always A axis that is not working correctly.

If I reconnect physical cables in physical LPT pins ALL is fine for XYZ no matter which pins connected and it is always A that has problems.

So I suspect problem comes from software. (LinuxCNC 2.5.0)

Does anyone have any clue what to do?

Cris

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

More
04 Nov 2020 15:17 #188314 by PCW
Can you post your hal and ini files?

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

More
04 Nov 2020 15:34 #188318 by kmeld
Here are how they look now, after I have edited them few times re-routing pins and defining A axis as LINEAR.
Attachments:

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

More
04 Nov 2020 16:42 #188322 by kmeld
OK I have found another clue.

Although I have finally defined A axis as LINEAR when I launch linuxcnc Angular Jog speed applied to this axis.
So I found motor was turning slow because angular jog speed was set low.
Once increased to max A axis jogs at the same speed as X.

I will check more but so far with this setup (4 LINEAR axis) motor does not stall.

But in the end I need A to be set up as Angular.
Or maybe I can leave it LINEAR but only set up parameters as unit was deg.?

Cris.

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

More
04 Nov 2020 17:19 #188327 by PCW
You need A to be setup as angular

I suspect your acceleration values are too high
(~ 13 ms from stop to full speed)

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

More
05 Nov 2020 08:50 - 05 Nov 2020 08:51 #188381 by kmeld
Is it mandatory so A is angular?

As for the acceleration.I will investigate this in detail.
But I suppose this should not have anything to do with motor staling.

Acceleration is in fact only increase of speed of pulses but no matter how high acceleration is speed never exceeds max speed.
It is only important (as I see it) in terns of inertia and possible step loss due to high inertial forces. So it should only be involved in potential positioning problems rather than getting motor stall when going constant speed in constant direction.

Am I right or max acceleration has anything to do with something else.

As for my linear axis my accelerations values are OK (have been using them for 10 years or so) and they are selected basing on inertial forces analysis and physical tests ensuring there are no steps lost due to inertial forces.

Yesterday I have connected everything and defined A as ANGULAR.
And I got parameters right and initially it worked.
But than I tire to run in at constant speed in one direction for a longer time (1000 turns).
Somewhere on the way motor just stall.

Is there a way to monitor signal on dir pin for this axis?


Cris.
Last edit: 05 Nov 2020 08:51 by kmeld.

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

More
05 Nov 2020 14:59 - 05 Nov 2020 15:01 #188398 by PCW
Too high acceleration is one of the main reasons for step motor stalls

If you stall at a constant speed, that's another issue, have you tried
lowering your maximum velocity?
(and perhaps raising the microstep ratio of your drives if possible)

At your current base thread (10 KHz) and step rate at maximum
speed (8 KHz), you are going to get a very lumpy step signal:
step,step,step,step,no-step,step,step,step,step,no-step etc.
and this is likely to excite resonances that can cause stalling
(especially at low microstep ratios)
Last edit: 05 Nov 2020 15:01 by PCW. Reason: reformat a bit

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

More
09 Nov 2020 08:13 #188727 by kmeld
So as I have observed stalls mostly happens when motor should go with constant speed in constant direction.
Also I have tested this motor (A Axis) on the identical settings connected as X and going back and forward with max speed and max accelerations for many hours and no problems at all.
Also I have been running my XYZ setup for years with this settings, going fast and slow, or very slow also and never had any issues.

As for mikrosteppling and base thread.
Currently I have 1/10 microstep set on all controllers.
Base thread I have set up basing on results of latency test (utility with linuxcnc).

I will run it again and show you the results. Perhaps I did not get it 100% right.
I am also planning to test actual torque required to drive A axis.

Cris.

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

More
09 Nov 2020 08:57 #188729 by kmeld
So:
max jitter for base thread is 561920 ns
and actual torque required to run A axis (including turning turned off motor it self) is around 3,5 Nm, which should not ba a problems as motor it self is rated 4,5 Nm.

With this jitter what is the base thread value I should set up? I would not like to go down with micro stepping to maintain linear axis precision.

Cris.

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

More
09 Nov 2020 10:41 #188732 by tommylight
Pretty much unusable latency, the base thread should be set at 1000000 same as servo thread so the step rate would be limited to 1000 steps per second .
What does
uname -a
in a terminal say?

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

Time to create page: 0.091 seconds
Powered by Kunena Forum