Position Controller Tuning Guide: Difference between revisions

From Phidgets Support
Line 7: Line 7:
[[Image:Motion_profile_position.png|link=https://cdn.phidgets.com/docs/images/c/c3/Motion_profile_position.png|center|500px]]
[[Image:Motion_profile_position.png|link=https://cdn.phidgets.com/docs/images/c/c3/Motion_profile_position.png|center|500px]]


Unlike traditional PID loops where a target is set and the controller approaches (often aggressively), Phidget position controllers will intelligently plot a series of target positions between the current and desired position, following the user-specified acceleration and velocity limit. A PID loop is then employed to precisely follow this trajectory, ensuring smooth and controlled motion.
Unlike traditional PID loops where a target is set and the controller approaches (often aggressively), Phidget position controllers will intelligently plot a series of target positions between the current and desired position. This is shown as the ''Expected Position'' in the graph above. The controller will follow the user-specified acceleration and velocity limit to plot these points. A PID loop is then employed to precisely follow this trajectory, ensuring smooth and controlled motion.
 
====Velocity Limiting====
It is important to note that the velocity limit referenced above is a '''soft limit''' that will be exceeded if the error between the current and target position grows too large.
 
====DCC1020, DCC1120====
Newer controllers will more cautiously exceed the velocity limit, scaling back as the error grows larger. A Velocity Controller is also available on these devices if a hard velocity limit is required for your application.


==Tuning Video==
==Tuning Video==

Revision as of 21:03, 27 November 2024

Motion Profiling

Trapezoidal motion profiling combined with a proportional-integral-derivative (PID) controller is used in order to accurately track position. This allows for advanced control and improved repeatability of your system.

How It Works

Trapezoidal motion profiling is named for the trapezoidal shape of the Velocity-Time graph (shown below in orange).

Motion profile position.png

Unlike traditional PID loops where a target is set and the controller approaches (often aggressively), Phidget position controllers will intelligently plot a series of target positions between the current and desired position. This is shown as the Expected Position in the graph above. The controller will follow the user-specified acceleration and velocity limit to plot these points. A PID loop is then employed to precisely follow this trajectory, ensuring smooth and controlled motion.

Velocity Limiting

It is important to note that the velocity limit referenced above is a soft limit that will be exceeded if the error between the current and target position grows too large.

DCC1020, DCC1120

Newer controllers will more cautiously exceed the velocity limit, scaling back as the error grows larger. A Velocity Controller is also available on these devices if a hard velocity limit is required for your application.

Tuning Video

The Phidget Control Panel on Windows features a built-in tuning application for Position Controllers. This application makes it easy to experimentally determine the best control parameters for your motor system.



Once tuning is complete, you can save the parameters to a file for later use with the Phidget Control Panel or set the values directly in your program's attachment handler.

Resources