Trajectory generation for Servo motor drives
-
Upload
nahar-anusheel -
Category
Technology
-
view
815 -
download
1
description
Transcript of Trajectory generation for Servo motor drives
copyright 2011 controltrix corp www. controltrix.com
www.controltrix.com
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
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
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
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
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.
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
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
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
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
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
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
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
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
copyright 2011 controltrix corp www. controltrix.com
• Servo motor drives • Machine tool industry • Position control• Robotics
Target Application
copyright 2011 controltrix corp www. controltrix.com
Experimental Results
Red : velocityBlue: position
copyright 2011 controltrix corp www. controltrix.com
Experimental Results.
Red : velocityBlue: position
copyright 2011 controltrix corp www. controltrix.com
Experimental Results..
Red : velocityBlue: position
copyright 2011 controltrix corp www. controltrix.com
Experimental Results…
Red : velocityBlue: position
copyright 2011 controltrix corp www. controltrix.com
Thank Youwww.controltrix.com