关于PID的输出量,输入量理解问题。(高分)

PID控制器是用来纠正偏差的,输入量为偏差e(t),输出量理应是偏差纠正信号,这个偏差纠正信号怎么就是u(t)了?怎么就能直接控制电机了?
我想问我的理解哪里有偏差,我看过很多的文章,好多都是这样的图。

你没有了解什么叫控制系统。这个是个很基础的问题,但是涉及自动控制原理的前几章的内容,我只能跟你简要的说一下。
1.首先,这个图上面的PID控制器和直流电机,他们并不能考虑成现实的东西,他们是数学模型,也就是一个个方程(这是自动控制原理中传递函数的相关知识)比如说:f(x)=y,输入为x,输出为y。PID控制器的输入数值为偏差,输出数值为在这个偏差下电机的转速调节速度!电机的输入为调节速度,输出为调节之后的电机实际转速!
2.了解了这个,我在给你简单解释下上面的系统。
这个系统输入一个值N0(t),那么N0(t)就是他希望的直流电机的转速(接下来全部用N0代替),但是呢这个N0是一个根据时间变化而变化的函数,我们希望直流电机的实际转速n(t)能够尽快的跟随N0的变化,并且最后与N0的差距越小越好。
因此,这也就是控制的问题。请想象一下,我们假设一个控制器叫做人类控制器(类比PID控制器),这个人类控制器只有一种控制方法:就是在这个人类听到“转速要求提升10%”的时候,手动提高10%的转速,这就是最基础的控制。
反过来再说e(t),e(t)不就是N0减去N么?这个e就是输出量和输入量之间的偏差。而PID控制系统的输出信号,是就像我们说的“人类控制器”,它输出的是电机转速的变化速度,比如说我们假设t=1时的输入信号是500(就是我们希望的电机转速),而电机此时的实际转速是300。然后呢,这个500减去300就是200,就是偏差。这个偏差通过PID控制器,得到输出15时,而这个输入进入了电机,将电机的转速加了150。此时电机的输出为300+150=450。假设此时N0不变,那么系统的偏差是不是从200减小到了50?然后在下一个周期继续进行控制,进一步减少误差。追问

首先谢答。
其次有两个问题需要请教:
1,理解您的意思是讲整个系统看做一个闭环控制系统,那么我想要目的的输出曲线,譬如斜坡信号输出,那么我的输入曲线,就需要通过闭环函数反解了对么?
2,您所举的例子,pid控制器输出为15,那么电机接受的电压为15,那么怎么转速就能达到300+150,我想问的就是,原电压30(即保持300转速的电压),是如何保持的?我理解如果15接到电机上,那么电机就会降速到150。

追答

    控制是控制PID参数,如果希望电机输出一个斜坡信号,那么理论上就应该输入一个斜坡信号,然后根据电机的传递函数来调整PID控制器的参数,使电机的输出也就是系统的输出能跟随系统的输入。

    打个比方,你现在去跑步,然后手里拿个计步器。现在计步器的参数是你跑一步,计数值+0.7。此时你跑了10步,输出的计步器数值是7,这个时候你想让计步器上的数值换为10。那么智商正常的人都知道是计步器坏了,拿去修一下(调整PID参数);你所说的反解输入不就成了今后每天都跑14.28步,计步器输出的不就是10了么?这肯定是错误的!因为我们要改变的是控制策略,让在这个输入下的输出可以匹配输入!    而不是改变输入,让某一个输入满足我们的输出的效果!

    第二个问题你还是没看懂,这个控制,电机不是一个具体的电机!而是一个函数!是一个传递函数!各个电机比如说电枢控制直流电机啊等等的电机的传递函数不同。那么在这里假设电机的函数是y=y0+10x(这个函数不是传递函数,仅仅作为一个例子),y就是输出值,y0就是之前的数值,x是输入值;这样计算起来输出的不就是450了么?请注意,这上面所有的PID啊,电机啊都是微分方程经过拉式变换而形成的传递函数,并不是真实的东西。如果你这是老师布置得任务什么的还是推荐你看一下自动控制原理前两章。

追问

最后一个问题,完了分数奉上。您所说的电机传递函数,我了解了。我现在要做的是具体的仿真,输入量必须是控制电压。所以我考虑的是实际问题。 你所说的传递函数是否就是下图的原理?

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-11-04
不是偏差纠正,是直接输出.
相似回答