Computed Torque Control vs. PID

In summary, the author is working on a pantograph device, which is not a linear plant. He implemented two different control schemes: a computed torque technique using nonlinear terms in the equation of motion to cancel them, and a PID technique. The first scheme has a very fast response but has a steady state error. The second scheme has a slow response and high gains, but the author suspects that the reason it has a slow response is because of the nonlinear plant.
  • #1
zoom1
65
0
I'm working on a pantograph device, which is not a linear plant, and implemented 2 different control schemes. First one is computed torque;

For this control technique, I modeled nonlinear terms in the equation of motion and canceled them by injecting their model within the control input, which is torque for two motors. This way I achieved a very fast response but since the controller was PD, there is always a steady state error, which gets smaller as the P gain increases though.

The second method was the classic PID method. Again I used PD controller for each motor and what I observed is a very slow response, like 3-5 seconds to catch the reference. Furthermore, the gains I used was extremely high even to be able to get this response, like Kp = 15000, Kd = 15000

My question is;
Is the reason why PD controller performs too slow, due to non-linear plant ?

And one more question for the Computed torque technique;

I used the following control input;
Torque = M(q)*[qd'' + Kv*e' + Kp*e] - H(q,u) - Bf(q)*Fext

Where H and Bf terms are the non-linear parts I cancel.
qd = desired joint angle;
qactual = actual joint angle;
e = qd-qactual
e' = derivative of error
qd'' = desired acceleration
M(q) = mass matrix

So, this model is the PD controller. Is it possible to build a PID controller with Computed torque technique ?
 
Engineering news on Phys.org
  • #2
Don't know in this case I think I popped my cerebral cortex on the math. However, old age age and treachery have some advantages to youth and competence, LOL.
The difficultly of PIDs is that the dad-burned I tends to interact with any other low frequency poles forcing you to give up response for stability.
I observe that the torque has an opportunity to interact with your mass moment of inertia to create just such a pole...

My proposal is that you look for an observer for torque and close a torque control loop. Thus you have a torque call, torque error, and torque observer. Now, crank the gain on the torque loop such that it responds promptly.

The output of the speed error not feeds into the torque call (which hopefully is fast), and you're now stuck with the pole formed between your mass moment of inertia and speed dependent losses. You're also stuck with the integrator. Moving these to poles apart will help. If your motor can break as well as accelerate, perhaps you can introduce a speed observer into the torque call such that torque attempts to decrease with speed.

I suspect this would push that troublesome MMI / loss pole to the left.
 
  • #3
Mike_In_Plano said:
Don't know in this case I think I popped my cerebral cortex on the math. However, old age age and treachery have some advantages to youth and competence, LOL.
The difficultly of PIDs is that the dad-burned I tends to interact with any other low frequency poles forcing you to give up response for stability.
I observe that the torque has an opportunity to interact with your mass moment of inertia to create just such a pole...

My proposal is that you look for an observer for torque and close a torque control loop. Thus you have a torque call, torque error, and torque observer. Now, crank the gain on the torque loop such that it responds promptly.

The output of the speed error not feeds into the torque call (which hopefully is fast), and you're now stuck with the pole formed between your mass moment of inertia and speed dependent losses. You're also stuck with the integrator. Moving these to poles apart will help. If your motor can break as well as accelerate, perhaps you can introduce a speed observer into the torque call such that torque attempts to decrease with speed.

I suspect this would push that troublesome MMI / loss pole to the left.

Thank you for your answer.
So, let me tell what I got from your answer;
Since I use the joint angle as output and torque as input, which are not the same parameter, I get a slow response. Is this correct ?
If so, you suggested a torque observer so that I can compare the torque input with torque output. But the thing is, even I use the torque as input, I don't really referencing the desired torque but desired joint angle instead. So, how would this work? I am a bit confused, maybe I got you wrong ?
 

What is Computed Torque Control?

Computed Torque Control (CTC) is a type of control algorithm used in robotics and mechatronics to accurately control the position and movement of a robot by taking into account the dynamics of the system.

What is PID?

PID (Proportional-Integral-Derivative) control is a commonly used feedback control algorithm that uses a combination of proportional, integral, and derivative terms to continuously adjust the control input in order to reach and maintain a desired setpoint.

What are the main differences between CTC and PID?

The main difference between CTC and PID is the approach to control. CTC uses a model-based approach, taking into account the system dynamics, while PID is a purely feedback-based control. CTC also requires a more complex control algorithm and more computational power compared to PID.

Which control method is more accurate?

CTC is generally considered to be more accurate than PID because it takes into account the dynamics of the system and can compensate for disturbances and uncertainties. However, the level of accuracy also depends on the system and the tuning of the control parameters.

Which control method is more suitable for different applications?

CTC is more suitable for highly dynamic systems with complex and non-linear dynamics, such as robotics and mechatronics. PID, on the other hand, is more commonly used for simpler systems with linear dynamics, such as temperature control and motor speed control.

Similar threads

  • Electrical Engineering
Replies
12
Views
2K
  • Electrical Engineering
Replies
1
Views
1K
Replies
8
Views
7K
Replies
1
Views
999
  • Engineering and Comp Sci Homework Help
Replies
2
Views
2K
  • General Engineering
Replies
6
Views
20K
  • Engineering and Comp Sci Homework Help
Replies
1
Views
2K
  • MATLAB, Maple, Mathematica, LaTeX
Replies
2
Views
3K
Back
Top