Internet PLC Forum

General => Technical support => Topic started by: Joel Moore on January 08, 2010, 09:45:49 AM

Title: Question about stepper motor behavior
Post by: Joel Moore on January 08, 2010, 09:45:49 AM
This really isn't a problem I'm having but more an attempt to better understand how the TriPLC controls stepper motors.  Two questions really:

1) If you command an axis to move a distance that is less than twice the acceleration value what happens?  For example:

STEPSPEED 1, 2000, 500
STEPMOVE 1, 800, 1

2) What about if the commanded distance is less than the acceleration value:

STEPSPEED 1, 2000, 500
STEPMOVE 1, 100, 1

The reason I ask is because the sounds coming from my stepper don't often match my expectations.  It almost sounds as if it's accelerating a different rates depending on how far I tell it to go which doesn't seem right to me.  I would think the PLC would always try to maintain the same acceleration slope while lowering the max speed.
Title: Re:Question about stepper motor behavior
Post by: support on January 08, 2010, 09:40:34 PM
If the total number of steps to move is less than acceleration steps, then the PLC will accelerate half the number of steps and then deceleration the other half. It willl never reach the maximum stepping rate in that case.

In your example, the PLC will accelerate 400 steps and then immediately decelerate another 400 steps and then stop.
Title: Re:Question about stepper motor behavior
Post by: toronto13 on August 06, 2010, 01:49:53 PM
how to programming motor stepper with P,I,D or PWM??
Title: Re:Question about stepper motor behavior
Post by: support on August 06, 2010, 02:17:07 PM
PID does not apply to stepper motor. In industrial application it it is usually used for controlling temperature. Most servo motor controller will have built-in control loop and the PLC is only required to supply the parameters (speed, position) and not to control it directly.

PLCs are not very suitable for high speed servo PID control. But for simpler application you could use the PWM output to control the voltage applied to the motor and use analog input or optical encoder to feedback the position and speed for control purposes.