Mori MVJR Build Log

More
12 Dec 2011 18:01 - 12 Dec 2011 18:02 #15600 by schmidtmotorworks
PCW wrote:

Looks like FF1 is way way off.
This needs to be adjusted until the
FERROR triangle is flat

I wouls also delete the PID error trace as its a distraction

Is it possible the X axis drives gain pot was changed _after_ tuning?


OK, I will try adjusting the FF1 to try to flatten out the triangle.

In regards to the pots, I adjusted the #1 pot as we discussed previously and did not change the adjustment after that.

The #2 pot may be off, here's what happened. When I was adjusting #1 I had the multi-meter connected to the wires on the motor.
After i had the #1 pot adjusted, when the control was set to 0 speed the motor turned slowly. I tried adjusting pot 2 to set get the motor to stop, but it didn't make any difference. So then I removed the muti-meter and the motor stopped turning. So I adjusted the second pot when I should not have, but I returned it very close to the original position (it was marked with a small spot of paint).
Last edit: 12 Dec 2011 18:02 by schmidtmotorworks.

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

More
12 Dec 2011 19:02 #15601 by PCW
Replied by PCW on topic Re:Mori MVJR Build Log
Yeah, if you tweak something on the drive that affects the velocity scale,
you will need to "tweak" the PID tuning as well.

Also looks like gain may be fairly low, is P as high as it can be?

If you have a low P term you can adjust out the velocity proportional
following error (green triangle) with FF1 but the system will be very susceptible to
drift in the drive gain over time/temperature

Also looks like you have no integral term,
You should be able to improve your static/low speed performance with a bit of "I"

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

More
12 Dec 2011 20:35 - 12 Dec 2011 20:37 #15605 by schmidtmotorworks
I had previously settled on a P at 170 and had even succesfully experiemnted at 250 (I forget what other setting were required to make that work)
(The following error still existed, less though)

Yesterday I was trying P closer to 100 because that is what the other axis seemed to call for and it runs much smoother (no growling sound).

I can turn up the P, in the docs it says

Increase the P until the output of the loop oscillates. Then increase I until oscillation stops. Finally, increase D until the loop is acceptably quick to reach its reference.


I am wondering if I understand what oscillates means here, I am not sure if it means visible waves in the scope reading or the table vibrating after the motion command has completed.

Anyhow when I try to adjust I, it doesn't seem to do much to reduce oscillation.

I have no clue though what a reasonable ranges for P, I or D values are. I'm just testing progessivly until vibration seems too extreme then backing off and adjusting something else hoping to find a combination that works better.
Last edit: 12 Dec 2011 20:37 by schmidtmotorworks.

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

More
12 Dec 2011 20:45 - 12 Dec 2011 20:46 #15607 by PCW
Replied by PCW on topic Re:Mori MVJR Build Log
Adding more I term will _not_ reduce oscillation (and too much will definitely make it worse)
What the I term will do is allow high gain at low bandwidth (Like P but for slow motions or static situations)

Because the contribution to feedback from the I term is slow you can have more gain (and still be stable) for slow motion/static situations than you can with P term alone (the I gain is effectively infinite for static situations)
Last edit: 12 Dec 2011 20:46 by PCW. Reason: repeated text

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

More
12 Dec 2011 21:11 #15608 by schmidtmotorworks
OK, thanks for explaining that, maybe someone can tune up the docs there.

This leaves me without a proceedure, hmmm.

Would the following be reasonable?:

P=100
I=0
D=0

Increase P to improve following until the oscillation becomes too high (how to quatify too high?)
Increase I to improve following until the oscillation becomes too high (how to quatify too high?)
Increase D to improve following until the oscillation becomes too high (how to quatify too high?)

Maybe I need to sit down for a while and try to understand the Ziegler-Nichols method

Write down the critical gain (Kc) and the oscillation period of the output (Pc). Then adjust the P, I and D controls as the table shows:


I am wondering how I can figure out what Kc and Pc are? Is that something HALScope can tell me?

Is there a range of P that I should know is too high to try?

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

More
12 Dec 2011 21:46 #15610 by PCW
Replied by PCW on topic Re:Mori MVJR Build Log
I would:
start at all 0
Add P to improve following error until the oscillation
Add D to improve step response and stability
(to little will cause overshoot, too much will slow response and eventually cause instability)
A real step response test requires that you set the acceleration limits faster than the machine can go
and do small steps (jogs) so is not for the faint-hearted

Tune FF1 for minimize following error (triangle during jog for example)
Add I to improve following until the oscillation (then back off to about 1/2 the amount that caused oscillation)

Note that oscillation is not a couple count buzzing, its larger sinusodal motion (10s to 1000s of counts)

There is an auto tune component (that uses the Ziegler-Nichols method) but I dont think many people have had good luck with autotuning

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

More
13 Dec 2011 08:45 - 13 Dec 2011 08:48 #15624 by schmidtmotorworks
Progress report,

I went through the PID on all axis concentrating on minimizing following error and was able to use higher P and still reduce the buzzing sound. That seems a lot better, the only thing that seems off is I have only about 100 P on Y axis but about 200 on X, I'll try to get Y higher but I have had trouble getting it to sound as smooth as the other axis unless I turn down the P.

When running a program or using the jog button, it seems to follow quite well.

When using the MPG though the following is much worse.

For example if I put the step size to 0.100" and move the table I can easily get 4 inches ahead of the table motion, after I stop turning the MPG the table is still accelerating like it was pulled by a rubber band.

My guess is that one of these reasons might be the problem:
1. The acceleration when using the MPG is different than the acceleration when driven by a program or jog button. Changing acceleration in the INI file didn't seem to make a difference.

2. Maybe the MPG input is read and buffered with some kind of delay before it is processed as output to the drive. The reason I think this might be the case is the real following error between the MPG and the table seems worse than the HalScope following error indicates (not sure about this though because i don't understand what the scale is on the following error gain. .

For example what does 200u mean?
Last edit: 13 Dec 2011 08:48 by schmidtmotorworks.

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

More
13 Dec 2011 10:31 #15628 by andypugh
Replied by andypugh on topic Re:Mori MVJR Build Log
schmidtmotorworks wrote:

the only thing that seems off is I have only about 100 P on Y axis but about 200 on X

There is no reason to expect the two axes to need the same parameters. They have very different masses, for a start. Possibly different leadscrew leads too.

2. Maybe the MPG input is read and buffered with some kind of delay before it is processed as output to the drive.


This seems quite likely, as there is no way for EMC2 to constrain the operator to obey the machine accel and velocity limits.
Is it any better with smaller steps, and turning the wheel further?

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

More
13 Dec 2011 11:48 #15629 by BigJohnT
Replied by BigJohnT on topic Re:Mori MVJR Build Log
schmidtmotorworks wrote:

When using the MPG though the following is much worse.

For example if I put the step size to 0.100" and move the table I can easily get 4 inches ahead of the table motion, after I stop turning the MPG the table is still accelerating like it was pulled by a rubber band.

My guess is that one of these reasons might be the problem:
1. The acceleration when using the MPG is different than the acceleration when driven by a program or jog button. Changing acceleration in the INI file didn't seem to make a difference.

2. Maybe the MPG input is read and buffered with some kind of delay before it is processed as output to the drive. The reason I think this might be the case is the real following error between the MPG and the table seems worse than the HalScope following error indicates (not sure about this though because i don't understand what the scale is on the following error gain. .


Imagine what would happen if your step size is 1.0 an you moved 4 clicks on the MPG, the axis would accelerate up to max speed and run the 4 inches even though you are not moving the MPG. I never use more than 0.010" step lengths for a MPG for that reason and you can still see run on with 0.010" steps. So in your case the axis cannot move as fast as you can move the MPG when set to 0.100" steps. I think there is a way to have the axis stop when the MPG input stops but can't remember how to do it.

John

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

More
13 Dec 2011 15:19 - 13 Dec 2011 15:20 #15632 by schmidtmotorworks
Unfortunately even at 0.010 if the FERROR and MINFERROR are set to anything reasonable it will error out.
Last edit: 13 Dec 2011 15:20 by schmidtmotorworks.

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

Moderators: cncbasher
Time to create page: 0.144 seconds
Powered by Kunena Forum