Changes
From Dynomotion
Tuning - Torque - Velocity and Max Limits Error
==<span id="Axes_Servo_Tuning_and_Trajectory_Planner" class="mw-headline">Axes Servo Tuning and Trajectory Planner</span>==
===Torque Servos vs Velocity Servos===
+/-10V Analog Amplifiers usually come in one of two varieties: '''Torque''' or '''Velocity'''. Torque mode amplifiers consider the input command as a Torque Command and work to generate the commanded Motor Torque. Velocity mode amplifiers consider the input command as a Velocity Command and work to generate the commanded Velocity. Its important to understand what type of Amplifiers you have.
'''Velocity Mode Amplifiers''' need some form of feedback going to the Amplifier in order for the drive to know the current velocity. This might be a digital encoder or an analog tachometer.
Its easy to tell if you have a Velocity Mode Amplifier by looking at a plot of a move on the Step Response Screen. The Output (green plot with right scale) will be proportion to the motor velocity. When moving at constant speed the output will be relatively constant. See in the plot below the output (green) remains at a relatively constant ~1100 DAC counts while the position (red) ramps at a constant slope of the 90000 count/sec rate:
[[File:VelocityAmp.png|none|link=]]
Velocity mode amplifiers can be relatively easy to tune using only P (Proportional) Gain. Additional Gains and filters can be used for best performance but using only P Gain will often result in reasonable performance and a stable system (unlike Torque Mode Amplifiers).
As an example consider controlling the speed of a car using only Proportional Gain as it approaches a target (Stop sign). Consider a P Gain of 0.1 where at 1000ft from the stop sign we command 1000 x 0.1 = 100MPH. Then at 100ft we command 10MPH. Then at 10ft we command 1MPH. This results in a nice, smooth, exponential approach, without overshoot.
Contrast this with controlling the acceleration (torque) of a car using only Proportional Gain as it approaches a target (Stop sign). At large distance we apply maximum acceleration. Although as we approach the stop sign we reduce acceleration, we continue to accelerate and speed continues to increase until we pass the stop sign. Torque mode servos are inherently unstable. P only gain only works at all if there is some friction (the car is dragging a sled which slows us down with less torque).
'''Acceleration Mode Servos''' may or may not have any feedback. If they have feedback it is usually used only to commutate a brushless motor. In the plots the Output (green) will have large magnitude when the Position (red) is accelerating, where the plot has curvature (changing slope).
Acceleration mode Servos are unlikely to work well or at all with only P Gain. Some form of damping or lead compensation will usually be required to get a stable system. D (derivative) Gain (or a lead compensator) should be included with the P Gain to help stabilize the system. D Gain can be increased to make the system more stable up to a point. After some point the additional D Gain will make the system more unstable. and should be reduced.
When using D Gain (or lead compensation) the quantization noise (steps) in the encoder position can cause spikes in the output. For example a D Gain of 100 will cause a spike of 100 counts in the output whenever the input changes suddenly by 1 count. If the spikes are very high amplitude and short duration, the Amplifier may not handle them in the expected manner. A low pass filter can be used to widen and reduce their amplitude allowing the amplifier to handle them more effectively. Typically a 2nd order low pass filter of 500Hz Q=1.4 is used. The last filter is normally used so it is applied to any Feed Forward. Such as:
[[File:LowPass400Q1p4.png|none|link=|680x439px]]
===<span id="Velocity.2C_Acceleration.2C_and_Jerk" class="mw-headline">Velocity, Acceleration, and Jerk</span>===
<div id="yui_3_16_0_1_1445622719616_3315" class="yiv2818182665class" style="color: #000000; font-size: 13.3333px; font-family: HelveticaNeue, Helvetica Neue, Helvetica, Arial, Lucida Grande, sans-serif; background-color: transparent; font-style: normal;">The Velocity, Acceleration, and Jerk in the Step Response Screen (KFLOP parameter settings) and the Acceleration and Velocity in the KMotionCNC | Tool Setup | Trajectory Planner | Axis Parameters are both used for different things. The two sets of parameters are independent. </div>
So to provide some margin an Max Limit Integrator Value of 3500 might be used.
===Max Limits - Error===
Max limits error can be helpful to have your system respond less violently in the abnormal event where an excessively large error occurs. Normally with a properly tuned system following errors should be small. Setting a Max limits error can cause the servo to treat errors beyond a specified limit as if they were only the size of the limit and therefore respond less so than they would otherwise. The max limits error is normally set to a value so it is not limiting under normal circumstances.
The Plot below shows a situation where a small max limits error combined with a low P gain severely limits the Output. In the plot below a large move (10000 counts) at a high speed (40000 counts/sec) is commanded. Only P Gain (0.2) is used to provide the Output (green). The max error limit of 200 combined with the low gain (0.2) limits the output to only 40 DAC counts. Even as the true error increases to many thousands of counts, the servo is told to ignore the amount over 200. So the output can never exceed 40 DAC counts. The 40 DAC count limit means that the Axis is therefor not capable of providing the output necessary to keep up with the commanded motion. The axis does the best it can with the limited output, and only does a fraction of the desired motion.
[[File:Move10000.png|none|link=|665x431px]]
After increasing the max limits error the Output (green - right scale) now goes to a much higher value (900), and the Position (red) follows the Command (blue) to a much better degree.
[[File:Move10000_nolimit.png|none|link=|667x430px]]
Increasing the P Gain to 1.6 also applies more Output sooner and the Position follows the command still better.
[[File:Move1000_p1.6.png|none|link=|667x432px]]
===Bode Plots===