ACOPOSmicro stepper module - 'Position and Current Controller' noise issue

Hello all,

Using ACOPOSmicro stepper module 80SD100XD.C033-01 with two stepper motor 80MPF5.500D113-01.

The following issue can be observed when:

1. The ‘Position and Current Controller’ is used.
2. Position feedback is taken from the encoder.

When executing motion commands such as ‘MoveVelocity’, ‘MoveAbsolute’, or ‘Jog Positive/Negative’, the axis produce a high jerk at the start of motion and then stops at a fixed position with generating noise and vibration.

When position command is given, it is also that it moves with high speed automatically when the command is completed!

When tested with only Current Controller, above commands was working ok.

The same behaviour can also be verified in mapp Cockpit.

Could you please suggest something to rectify this issue.

Thank you.

Hello,

What you are observing is an instable Position Loop due to high Proportional Gain.
A Gain of 20 is rated as high in context of this long cycletime of the Loop.

If you start moving the Controller reacts very strong and this results in a oszilation of the velocity. With higher Velocity your motor cant follow the Steps and goes into Stall. Due to your out of Range Position error limit of 1000 Messurement Units you do not get a LagError from the Position Loop. But your Set Value goes to the end of the movement, reducing the Velocity. I assume that then the Motor starts to follow the Velocity again and reduces the LagError until he reaches the Endpoint.

  1. Validate the Prediction and Total delay time in consideration of the Fieldbus Timings and Arrangement. See information in my Guide or in AS-Help.
    For this Step it is usefull to set Proportional Gain to 0.
  2. Set the Proportional Gain to a Value of ~1 and start optimising Loop Control from there
  3. Reduce the Position Error to a usefull Value

Use a Trace in MappCockpit to see Position, Velocity, LagError, MotorSteps

Guide Motion Commissioning - Chapter 3.9.2 Stepper

Greetings
Michael

Hi Michael,

Thank you for the information.

When I set the positional gain to 0, the motor runs without any noise or vibration. However, I’m encountering an issue with increasing in lag error.

Trace_Error_Limit_2147483647.zip (564.6 KB)

I’ve attached the trace file and configuration again for your review. Could you please help me resolve this?

Hello,

can you please show us your cycle Time and Topology.

TPredict and TTotal 5 or 8 times cycle Time
With with X2X and PLK: 2ms * 8= 16 ms
With only X2X: 2ms * 5= 10 ms

What is the movement Source ?
There is a lot of noise on the SetVelocity…

Greetings
Michael

Hi @Kavinaya is it your issue solved, can you update us?

Could you please clarify the recommended limit for Position Error in the Physical View of a Stepper Drive?

Currently, when we configure a very small position error limit (for example, equivalent to 1 or 2 motor revolutions), the drive generates a Lag Error Limit fault.

Could you please advise if there is a standard procedure or guideline for determining the appropriate Position Error Limit for a stepper application?

Additionally, tuning cannot be performed through Cockpit in our case. Therefore, we would like to understand how to determine the optimal value for the Position Controller Gain.

During our testing, we observed the following behavior:
As the Position Controller Gain is increased, the lag error continues to rise. After a certain amount of movement, the axis starts moving in the opposite direction of the commanded position, and the motor begins to generate abnormal noise and vibration.

Could you please provide guidance on:

  1. What should be limit for Position Error in Physical view on Stepper Drive?
  2. Presently if we enter very small value like one rotation or 2 rotation than it is generating lag error limit?
  3. Is there any procedure for stepper to find Position Error limit ?
  4. Also tuning is not possible from Cockpit so, How to calculate best value for Position controller gain?

Thanks,

Kavinaya Rajakumaran

Hi @michael.bertsch can you answer here?

Hello,

i think we have a communication issue here, i tryed to answer the topics before. In my opionion all Informations are in the Guide and my answers.
I can try an additional Time…

Short guide:

  1. Set Up the correct Currents ( consider that in Position Control Mode the Controller can move in any State, so typicaly you should have 3 identical Currents)
  2. Make Tests without Position Control to check general movement of motor
  3. Make Traces from the Movement, Valide that there are no Step-Loses
  4. If you are fine with Movement without Positon Control, enable Position Control with low Gain around 0 or 1.
  5. Set Up the correct “Prediction Time” and “Total Delay Time”
    Prediction Time and Total Delay Time 5 or 8 times cycle Time Example
    With X2X and PLK: 2ms * 8= 16 ms
    With only X2X: 2ms * 5= 10 ms
    Consider your own Filedbus Timings
  6. Make Traces from the Movement, Valide that there are no Step-Loses
  7. Validate Prectiction and Total Delay Time
    If you are not sure if they are correct, try a highter or lower time and compare results.
  8. Increase the Gain of the Position Control and check the results
  9. If your Motor starts to oszillate your Gain is to high. Go back to 70% of this Value.
  10. Trace LagError a last time and Set up final LagError Limit
  11. Fished

Your Questions:
1. What should be limit for Position Error in Physical view on Stepper Drive?
The LagError Limit is a Supervision Value which should trigger an Error if the Movement of the Motor does not meet the requirements of the Process. So in general the LagError Limit must be as small as the Process Requires. For a StepperMotor you can use the Fullsteps as a additional reference. A Stepper should not lose a Fullstep, so a good sizeded Motor can have a LagError as small as around 4 Fullsteps.
But if you Process can work with an Position Error of 1 mm you can set the Limit to 1 mm.

2. Presently if we enter very small value like one rotation or 2 rotation than it is generating lag error limit?
As i previously tried to explan, there are some Timing settings which must be adapted to the Hardware-Topology. In your last Trace we can see possible Step-Loses. And we can see that this Timings of “Prediction Time” and “Total Delay Time” are not set well.
Both issues lead to huger LagErrors. - Please set up the Parameters. Please check if the Current Settings and Load is valid for the Process.

3. Is there any procedure for stepper to find Position Error limit ?
Trace Lag Error and then validate if it fits for the Process. Add a limiting factor and then Set the Limit.

4. Also tuning is not possible from Cockpit so, How to calculate best value for Position controller gain?
We do not have a Guide how to calculate the Controller Gain for the Stepper Modules. In Genereal i can tell that best aproach is to find a Value between 1..20 by Testing.
For SM-Modules the Loop is going over the PLC an has a Cycletime above 10 ms (depending on Fieldbus and Task-Class Configuration). This is not a high performance Control. If you reqire a formula to calculate the Values you can for sure, find it in a Control Loop Education Book.

Greetings
Michael