Trajectory generation for Servo motor drives

20
copyright 2011 controltrix corp www. controltrix.com www.controltrix.com Trajectory generation for Servo motor drives

description

Trajectory generation for servo motor drives to move from point A to point B with a smooth motion, as fast as possible limiting the jerks, acceleration and speed to specified value. Long trajectories are possible. Simple and real time computation (when the motor is running). Also errors due to discrepancies in symmetry is fixed in real time.

Transcript of Trajectory generation for Servo motor drives

Page 1: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

www.controltrix.com

Trajectory generation for Servo motor drives

Page 2: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Requirement• To move (linear or rotary )motor from point A to B • Generate a trajectory (periodic position command )• Smooth motion• As fast as possible• Limit jerks, acceleration and speed to specified value• Load inertia is known but variable

Page 3: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Requirements.• Minimum distance A to B can be small• Real time computation (though motor is running)• Long trajectories are possible (limited processor memory real time while motor is moving calculations)• Trajectories are always from standstill to standstill • Trajectory is defined as instantaneous value of position, velocity and acceleration to be commanded to the control system

Page 4: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Floating point (Pseudo (IQ) or true) support • Digital signal processor (finite periodic sampling time ~ 1ms)• Memory is limited to 500 samples• Trajectory generation and data use occurs in a circular buffer• Trajectory generation will fill buffer (provided it is empty ) at 10 X data consumption

Given

Page 5: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Divide trajectory into regimes e.g. for positive direction movement • Constant positive jerk (acceleration increase )• Constant positive acceleration (vel increase ,jerk =0)• Constant negative jerk (acceleration decrease to 0)• Constant positive velocity(cruise mode) (jerk=0,acc=0) • midpoint

Method

Page 6: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Constant positive velocity (cruise mode) (jerk=0,acc=0)• Constant negative jerk (acceleration decrease to –ve value)• Constant negative acceleration (vel decrease ,jerk = 0 )• Constant positive jerk (acceleration increase to 0)• Stop is position B

Method.

Page 7: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Ideal caseZone 1 2 3 4 5 6 7 8

Zone1: StandbyZone2: Const +ive jerk Zone3: Const +ive accZone4: Const -ive jerk Zone5: Const velZone6: Const -ive jerk Zone7: Const -ive accZone8: Const +ive jerk

Jerk

velocity

position

acceleration

Page 8: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Simple calculations using basic equations of motion

a(k) = a(k-1) + J(k-1).Tv(k) = v(k-1) +a(k-1).TS(k) =S(k-1) + v(k-1).T + 1/2 . a(k-1) . T . TWhereJ=jerk ,a = acc, v =velocity ,S = position

Mirror image based solutionReal time computation (with motor running)Limiting to maximum permissible limits for (j, a, v)

Advantages

Page 9: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Overshoot /undershoot at the end (numerical errors , finite sampling, slight unsymmetry between the first and second half) do not allow velocity and acceleration to converge to 0 simultaneously• Small Span trajectories cannot be supported (as midpoint can be hit before cruise mode)• Variable inertia -> maximum acceleration varies hence span varies• Jerky trajectory termination

Challenges

Page 10: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Zone 1 2 3 4 5 6 7 8 9 10

Undershoot due to numerical errors

Zone1: InitZone2: Const +ive jerk Zone3: Const +ive accZone4: Const -ive jerk Zone5: Const velZone6: Const -ive jerk Zone7: Const -ive accZone8: Const +ive jerk

Jerk

velocity

position

acceleration

A

B

midpoint

Page 11: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Jerk

acceleration

velocity

position

B

A

Zone 1 2 3 4 5 6 7 8 9 10

Overshoot due to numerical errors

Zone1: InitZone2: Const +ive jerk Zone3: Const +ive accZone4: Const -ive jerk Zone5: Const velZone6: Const -ive jerk Zone7: Const -ive accZone8: Const +ive jerk

midpoint

Page 12: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Real time compensation for over/undershoot for smooth termination• Smooth correction• Errors due to discrepancies in symmetry fixed in real time

Proposed method

Page 13: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Smaller spans supported (by backward scaling)• Variable inertia programmable (by scaling)• Trajectory is almost always nearly symmetric• Simple computation• Fixed and floating point implementations

Proposed method

Page 14: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Minimum spanZone 1 2 3 4 5 6 7 8

Zone1: InitZone2: Const +ive jerk Zone3: Const +ive accZone4: Const -ive jerk Zone5: Const velZone6: Const -ive jerk Zone7: Const -ive accZone8: Const +ive jerk

midpoint

Page 15: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

• Servo motor drives • Machine tool industry • Position control• Robotics

Target Application

Page 16: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Experimental Results

Red : velocityBlue: position

Page 17: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Experimental Results.

Red : velocityBlue: position

Page 18: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Experimental Results..

Red : velocityBlue: position

Page 19: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Experimental Results…

Red : velocityBlue: position

Page 20: Trajectory generation for Servo motor drives

copyright 2011 controltrix corp www. controltrix.com

Thank Youwww.controltrix.com