PEN 发表于 2019-6-9 10:13:52

是!! 你是对的!
在继续之前,您应该尝试找到开环传递函数的控制器增益和极点位置
5/(s*(s^2+2*s+5))
控制器的解决方案仅限Kp
如果你正确地解决问题,将会有一对复杂的极点。
复杂的极点不会处于良好的稳定区域。
解决控制器的问题是Kp + Kd * s
仍然会有3个真正的极点。
你的结论是什么?

Yes!! You are correct!
Before going on you should try to find the controller gains and pole locations for when the open loop transfer function is
5/(s*(s^2+2*s+5))
Solve for controller is Kp only
If you solve the problem correctly, there will be a pair of complex poles.
The complex poles will not be in the nice stability zone.
Solve for controller is Kp+Kd*s
There will still be 3 real poles.
What is your conclusion?

蜻蜓 发表于 2019-6-9 16:32:41

本帖最后由 蜻蜓 于 2019-6-9 20:36 编辑

Open-loop gain as 1. Easy to calculate,Manual calculation, pole position 0,    -1 + 2 j ,   - 1-2 j,    and open loop test that subject compared with the open-loop transfer function of pole position, https://www.iyeya.cn/thread-66578-1-1.htm, when damping(ξ) had become hour, conjugate poles near the imaginary axis, up and down (direction) away from the negative real axis, move to the edge of the stable area, easy to instability.


把开环增益当做1.容易计算,手工计算,极点位置0,-1+2j,-1-2j,与开环测试那个题目的开环传递函数极点位置相比,https://www.iyeya.cn/thread-66578-1-1.htm,   当阻尼(ξ)变小时,共轭极点靠近虚轴,(上下方向)远离负实轴,向稳定区域的边缘移动,容易不稳定。

PEN 发表于 2019-6-10 02:39:34

您的解决方案是正确的但不实用。错误不会减少。
可以找到更好的解决方案
(S + A)*((S + A)^ 2 + B ^ 2)= S ^ 3 + 2 * S ^ 2 + 5 * S + 5 *的Kp
求解a,b和Kp
在该解决方案中,“a”是3个闭环极点的实部。
两极很复杂。
虚部是“b”
(S + A + IB)*(S + A-1B)=((S + A)^ 2 + B ^ 2)= S ^ 2 + 2 * A + A ^ 2 + B ^ 2
现在闭环极点的所有实部都是相等的,并且所有部分都将以相同的速率衰减。


闭环极点的真实部分的效果就像在停车灯处等待汽车后面一样。
在这个例子中,你前面有3辆车。你不能比你前面最慢的车加速。如果一辆或两辆车可以快速加速,那也没什么区别。最慢的汽车将限制你的加速度。因此,我选择3个闭环极点的实部是相同的。

你的结论是正确的。
当阻尼系数很小时,很难或不可能将所有极点放置在稳定性好的区域。

我的结论是,如果阻尼系数很小,使用仅比例控制并不好。
机械或液压设计师可以通过增加摩擦但这种浪费能量来使阻尼系数变大。

有一个解决方案。
解决“a”,Kp,Kd的问题
(S + A)^ 3 = S ^ 3 + 2 * S ^ 2 +(1 + KD)* 5 * S + 5 *的Kp
您将看到微分增益有助于将所有极点置于稳定性良好的区域。

我们还需要报道
PI
PID
PD2
ITAE

Your solution is correct but not practical.The errors will not be reduced.
A better solution can be found
(s+a)*((s+a)^2+b^2)=s^3+2*s^2+5*s+5*Kp
Solve for a, b, and Kp
In this solution,“a” is the real part of the 3 closed loop poles.
Two poles are complex.
The imaginary part is “b”
(s+a+ib)*(s+a-ib)=((s+a)^2+b^2)=s^2+2*a+a^2+b^2
Now all the real part of the close loop poles will be equal, and all will decay at the same rate.


The effect of the real part of closed loop poles is like waiting behind cars at the stop light.
In this example there are 3 cars ahead of you.   You cannot accelerate any faster than the slowest car ahead of you.It makes no difference if one or two of the cars can accelerate fast.The slowest car will limit your acceleration.Therefore, I chose the real part of the 3 closed loop poles to be the same.

Your conclusion is correct.
When the damping factor is small, it is hard or impossible to place all the poles in the area of nice stability.

My conclusion is that using proportional only control is not good if the damping factor is small.
The mechanical or hydraulic designer can make the damping factor big by adding friction but this waste energy.

There is a solution.
Solve the problem for “a”, Kp, Kd
(s+a)^3=s^3+2*s^2+(1+Kd)*5*s+5*Kp
You will see that the derivative gain helps place all the poles in the area of nice stability.

We still need to cover
PI
PID
PD2
ITAE


蜻蜓 发表于 2019-6-10 06:58:31

我相当前面最慢的那辆车,是一辆(ξω)很低,而且没有搭载(PID)控制功能的车,所以运行起来很不稳定,更糟糕的是车没电了,所以我先下场充电了,当观众了,希望2049,zhangweizhei,或其他人上场,更希望pen老师继续讲解PD2,,,ITAE等。

蜻蜓 发表于 2019-6-10 06:59:46

本帖最后由 蜻蜓 于 2019-6-10 20:42 编辑



Teacher pen, let's continue to explain. Let's read and understand slowly.

蜻蜓 发表于 2019-6-11 07:11:29

PEN 发表于 2019-6-10 02:39
您的解决方案是正确的但不实用。错误不会减少。
可以找到更好的解决方案
(S + A)*((S + A)^ 2 + B ^ ...

What I calculated is that when the differential gain Kd is equal to minus 0.2, Kp is equal to 0.2 you can put all three poles on the negative real axis, whereas with Kp alone, you can only put one pole on the negative real axis, and the other two poles are conjugate, and with Kp alone you can't put all three poles on the negative real axis, because there's no solution.


The result of my calculation is that when differential gain Kd=-0.2 and Kp=0.2, all three poles can be placed on the negative real axis, but only one pole can be placed on the negative real axis with Kp, and the other two poles are conjugate. It is impossible to place three poles on the negative real axis with Kp alone, because the equation has no solution.

PEN 发表于 2019-6-11 11:39:20

你是对的。
只有Kp,只有一个可以放在负实轴上。
如果阻尼系数很高,复数极点只会在稳定性很好的区域。
我稍后会写更多。
您可以看到具有低阻尼系数的液压系统是控制器的问题

You are correct.
With only Kp, only one can be placed on the negative real axis.
The complex poles will only be in the area of nice stability if the damping factor is high.
I will write more later.
You can see that hydraulic systems with low damping factors are a problem for controllers

蜻蜓 发表于 2019-6-11 16:07:00

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

Write more. Good. Let me recalculate,
a= 2/3 = 0.667,
Kd = --11/15 =-- 0.733,
Kp = 8/135 = 0.059
Kd is negative, and this is what you call the electrical damping provided by the differential gain, right?

This is what I want to use Python to calculate the poles and install Python software successfully, but how to find the poles?

我想用python计算极点,成功安装python软件,但怎么求极点啊?

PEN 发表于 2019-6-12 13:57:35

图中的程序不计算极点位置。它计算响应。

是的,Kd是负面的!控制器增益可能是负值,但有些事情必须考虑。
有几个不同的答案是有效的,但我认为你发现的答案是最好的。

您是否注意到控制器增益在分子和分母中?
CLTF(S)=(KP +的Kd * S)* 5 /(S ^ 3 + 2 * S ^ 2 +(1 + KD)* 5 * S + 5 * KP)
分子中的Kd乘以目标速度。
分母中的Kd乘以实际速度,并从Kd *目标速度中减去。这简化为Kd *(目标速度 - 实际速度)
但!!!!
如果Kd为负,则不应乘以目标速度。
然后传递函数
CLTF(S)= K P * 5 /(S ^ 3 + 2 * S ^ 2 +(1 + KD)* 5 * S + 5 * KP)
这种形式的传递函数将缓慢响应,但闭环极点可以处于良好稳定的区域。

CLTF(S)=(KP +的Kd * S)* 5 /(S ^ 3 + 2 * S ^ 2 +(1 + KD)* 5 * S + 5 * KP)
如果Kd> 0,这种形式的闭环传递函数将更快地响应,但如果Kd <0,则运动将首先以错误的方式然后转向并以正确的方式进行。

Windows作为将屏幕变成图片的一种方式。不需要相机。

The program in the picture does not calculate the pole locations. It calculates the response.

Yes, Kd is negative! It is possible for the controller gains to be negative but there are some things that must be considered.
There are a few different answers that are valid, but I think the one you found is the best.

Have you noticed that the controller gains are in the numerator and the denominator?
CLTF(s)=(Kp+Kd*s)*5/(s^3+2*s^2+(1+Kd)*5*s+5*Kp)
The Kd in the numerator is multiplied by the target velocity.
The Kd in the denominator is multiplied by the actual velocity and subtracted from the Kd*target velocity. This simplifies to Kd*(target velocity-actual velocity )
But!!!!
If Kd is negative it should not be multiplied the target velocity.
The transfer function is then
CLTF(s)=Kp*5/(s^3+2*s^2+(1+Kd)*5*s+5*Kp)
This form of the transfer function will respond slowly but the closed loop poles can be in the area of ​​nice stability.

CLTF(s)=(Kp+Kd*s)*5/(s^3+2*s^2+(1+Kd)*5*s+5*Kp)
This form of the closed loop transfer function will respond faster if Kd >0 but if Kd < 0 the motion will first go the wrong way then turn around and go the right way.

Windows as a way of turning the screen into a picture. There is no need for a camera.

蜻蜓 发表于 2019-6-12 22:30:27

本帖最后由 蜻蜓 于 2019-6-15 20:43 编辑

我不懂英文所以用了两个软件,刚才我用软件翻译了我前面英文,我发现一个问题,当用A软件把中文翻译成英文,再用B软件把这个A翻译的英文翻译回中文,我发现,翻译的中文与我写的中文对比,差异很大,甚至出现错误,我都难以理解。但相同软件会好一些,刚才测试了一下谷歌翻译,也一般。



求极点是很好的方法,这里的模型参数是为容易计算而设置,实际的参数会比较麻烦,解方程应该用软件。我想问问,5#用python计算极点,怎么能在python中找到,如果简单的话,能提供个方法吗?
I want to ask, 5 # how to find the poles in Python by calculating them with Python,If simple, can you provide a method?
我理解
Kd为负值的原因有两个:
1是上面方程里面阻尼太小。
2按系统最稳定的要求,放置的极点。

在上述两种情况下,Kd为负,是不是您常说的微分阻尼作用,只是在这里Kd强度太大,出现”矫枉过正”现象,就是过度校正,过度阻尼。






页: 1 2 [3] 4 5 6
查看完整版本: 另一个测试。关闭循环