PEN 发表于 2019-6-17 00:32:36

我的简单程序非常简单。
你应该能够剪切和粘贴。
了解简单的计算机编程很重要。

My simple program is very simple.
You should be able to cut and paste.
Knowing simple computer programming is important.

import numpy as np          # import the numerical library for roots
Kp=0.01                      # initialize the proportional gain
ce=             # the coefficients of the characteristic equation
poles = np.roots(ce)      # compute the poles or roots
for i in range(poles.size): # print out the poles one at a time.
    print("Pole{} = {:.2f}".format(i,complex(poles)))

PEN 发表于 2019-6-17 00:59:47

这是非常重要的! 添加二阶导数增益。
Gc(s)=Kp+Kd*s+K2*s^2
Ga(s)= 5/(s*(s^2+2*s+5)
CLTF(s)=Gc(s)*Ga(s)/(1+Gc(s)*Ga(s))
CLTF(s)=(Kp+Kd*s+K2^2)*5/(s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

特征方程
CE(s)= (s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

现在求解Kp,Kd,K2
(s+ λ)^3=(s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

This is very important!Add the second derivative gain.
Gc(s)=Kp+Kd*s+K2*s^2
Ga(s)= 5/(s*(s^2+2*s+5)
CLTF(s)=Gc(s)*Ga(s)/(1+Gc(s)*Ga(s))
CLTF(s)=(Kp+Kd*s+K2^2)*5/(s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)
Characteristic equation
CE(s)= (s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

Now solve for Kp, , Kd, K2
(s+ λ)^3=(s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

蜻蜓 发表于 2019-6-17 10:03:09

PEN 发表于 2019-6-17 00:59
这是非常重要的! 添加二阶导数增益。
Gc(s)=Kp+Kd*s+K2*s^2
Ga(s)= 5/(s*(s^2+2*s+5)


三个方程,4个未知数,所以可以有好多个最佳极点,就是说有很多种Kp, , Kd, K2组合,都可以让极点处在最佳位置,这样可以根据系统需求,即可以灵活设置Kp, , Kd, K2参数,又能保证极点设在稳定好区域。对吗?

PEN 发表于 2019-6-17 10:57:43

是的,有四个未知数。 但是,这是最重要的。 Kp,Kd和K2的公式取决于λ。 λ几乎可以是任何真正的负极。 所有3个闭环极点始终处于稳定性良好的区域。 开环阻尼系数有多低也没有区别。

Yes, there are four unknowns.However, this is most important. The formula for Kp, Kd, and K2 are dependent on λ.λ can be almost any real negative pole. All 3 close loop poles are always in the area of nice stability.It makes no difference how low the open loop damping factor is.

蜻蜓 发表于 2019-6-17 11:15:30

PEN 发表于 2019-6-17 10:57
是的,有四个未知数。 但是,这是最重要的。 Kp,Kd和K2的公式取决于λ。 λ几乎可以是任何真正的负极。 所 ...

Yes, that's what I said above. I understand, Mr. Pen, when you have time, go on with your explanation. And the poles of the integral.

是,我上面说的就是这个意思,我理解,pen老师,有时间的时候,继续讲解。还有积分的极点。

蜻蜓 发表于 2019-6-17 18:29:46

本帖最后由 蜻蜓 于 2019-6-18 11:44 编辑

PEN 发表于 2019-6-17 10:57
是的,有四个未知数。 但是,这是最重要的。 Kp,Kd和K2的公式取决于λ。 λ几乎可以是任何真正的负极。 所 ...

Kd 和K2 的重要性是解决了稳定极点放置问题,所以可以使用 低固有频率液压缸,也可以控制稳定,可以用小缸径油缸,节省能源, 同时低阻尼系统也可以稳定控制。
已经知道,单一PID需要消除大的误差,前馈+PID中PID只要消除小的误差,所以前馈+PID好于单一PID。


The importance of Kd and K2 is to solve the problem of stable pole placement, so low natural frequency hydraulic cylinder can be used, and stability can also be controlled. Small diameter cylinder can be used to save energy, and low damping system can also be controlled stably.
It has been known that a single PID needs to eliminate large errors. As long as the small errors are eliminated in the feed-forward + PID, the feed-forward + PID is better than the single PID.

auca 发表于 2019-6-18 11:48:09

速度前馈和加速度前馈与 速度反馈和加速度反馈是否是一个概念?

PEN 发表于 2019-6-20 10:37:10

auca 发表于 2019-6-18 11:48
速度前馈和加速度前馈与 速度反馈和加速度反馈是否是一个概念?

通常,仅使用速度和加速度反馈时不使用速度和加速度前馈。 通常,当导数增益乘以目标速度和实际速度之间的误差并且二阶导数增益乘以目标和实际加速度之间的误差时,使用速度和加速度前馈。

两种情况下的问题是从反馈中测量实际加速度。

Normally velocity and acceleration feed forward are not used when velocity and acceleration feedback are used.Normally velocity and acceleration feed forward are used when the derivative gain is multiplied by there error between the target and actual velocity and the second derivative gain is multiplied by the error between the target and actual acceleration.

The problem in both cases is measuring the actual acceleration from the feedback.

PEN 发表于 2019-6-20 10:41:37

蜻蜓 发表于 2019-6-17 18:29
Kd 和K2 的重要性是解决了稳定极点放置问题,所以可以使用 低固有频率液压缸,也可以控制稳定,可以用 ...

你需要解决这个问题
解决Kp,Kd和K2
(s+ λ)^3=(s^3+(5*K2+2)*s^2+(5*Kd+5)*s+5*Kp)

auca 发表于 2019-6-20 11:14:54

本帖最后由 auca 于 2019-6-20 11:44 编辑

通常,仅使用速度和加速度反馈时不使用速度和加速度前馈。 通常,当导数增益乘以目标速度和实际速度之间的误差并且二阶导数增益乘以目标和实际加速度之间的误差时,使用速度和加速度前馈。
什么时候用速度和加速度反馈?没看明白加速度反馈和速度反馈的解释。
页: 1 2 3 [4] 5 6
查看完整版本: 另一个测试。关闭循环