从系列:使用波德图
卡洛斯•奥索里奥MathWorks
学习如何在这个MATLAB中使用波德图进行直流电机速度控制®Carlos Osorio的《Tech Talk》。
我想以一个控件设计应用程序示例来结束本系列,在这个示例中,我们可以使用到目前为止讨论过的一些实际概念。我们将尝试为标准直流电机设计一个速度控制器。我们将假设电机已经给了我们,这意味着工厂模型所需的参数,如电枢电阻、惯性、扭矩常数等,都是从制造商的数据表中提取的或使用实验数据计算的。
在我们的设计中,控制器的输入将是外加的电压,而测量的输出将是电机的转速。在我们进入设计之前,我们应该知道我们需要从闭环系统获得什么样的性能。
这是一组非常典型的性能目标的一个示例。如你所见,我们的系统需要达到零稳态误差,我们允许最大超调量为3%。我们还给出了上升时间的限制,0.15秒,和稳定时间,0.3秒,这与我们希望控制器的响应速度有关,并与所需的系统带宽密切相关。最后,我们需要确保我们的稳定裕度高于60度和10分贝。有时,你也可能发现在某一频率以下的干扰抑制水平或在某一频率以上的噪声衰减水平的要求。
无论如何,现在我们将开始创建闭环系统架构的模型。注意,这个系统包括我们的直流电机厂动态的数学模型。我已经用控制器关闭了反馈回路,首先,我把它设为常数增益为1。
我们希望我们的系统跟踪100弧度每秒的梯形参考速度剖面,如图所示的蓝色虚线。我们看的是实际的马达速度,用实心橙色表示。如你所见,我们的初始控制器不是很好,但至少响应是稳定的,这总是一个很好的起点。我们还可以看到低频干扰的影响,我们正在注入我们的工厂的输出,这很可能是漂移的原因,我们测量的速度信号。
顺便提一下,我知道这是一个相对简单的例子,但作为控制设计工程师,我希望你能欣赏像Simulink这样的工具的美丽。金宝app我不仅可以图形化地构建任何框图或闭环架构,我所需要做的只是按下播放按钮,然后嘣,我就可以观察系统中任何信号的瞬态响应。此外,我可以在图上直接标记我感兴趣的输入和输出点,并让工具提取与我刚刚定义的所有循环相对应的传递函数。
在这里,我设置了参考的输入,干扰和噪声,我设置了速度测量的主要输出。在我们的设计视图中,我们有蓝色的开环传递函数PC的伯德图。在我们的分析视图中,我有一个闭环波德图传输率传递函数用红色表示灵敏度传递函数用绿色表示。下面这里,是闭环系统的单位阶跃响应。
我们使用阶跃响应的原因是阶跃激发了无限范围的频率,这不仅让我们对系统的性能有了很好的了解,而且对系统的整体稳定性也有了很好的了解。注意,对于初始控制器,阶跃响应远低于1。看看开环传递函数记住我们的控制器被设为常数增益1意味着我们从工厂的频率响应开始。
我们可以从轨迹中看出这是一个二阶系统有两个单极,它从不越过0db线并且渐近地接近-180度线,但从不越过它。因此它的增益裕度和相位裕度都是无穷大的,这使得我们的系统非常稳定和性能良好。但是正如我们所看到的,它的性能非常差。
观察闭环传递率传递函数,我们应该能够知道我们的跟踪不是很好,因为增益和低频太低了。所以我的第一反应是增加增益。当我向上移动时,注意当它在相位边界处越过0 dB线时,它就出现了,我的阶跃响应是上升的。
如果我把增益推高,注意我接近1,但是响应开始变得欠阻尼,原因是相位裕度迅速下降。相位裕度与闭环系统的阻尼密切相关。所以当它接近0时,我的反应变得越来越振荡,有一个不可接受的超调。我们仍然没有达到零稳态误差。所以我们看到,单凭比例收益并不能得到我们想要的效果。
让我把增益降低一点,在控制器中加入一个纯积分器。只要加入积分器,阶跃响应的稳态误差就会为零。让我增加一点增益,这样我们可以看得更清楚。我想让你们注意几件事。
首先,因为积分器,相位越过-180度因为所有东西都向下移动了90度。因为我在直流电处有无限的增益,现在我的传递率传递函数在低频处显示了近乎完美的跟踪。
通过调整增益,我可以使阶跃响应看起来非常平滑,但注意它也非常慢。我们的问题是,当我们增加增益使系统更快,因为相位裕度开始下降当交叉相位接近-180时,我开始看到阶跃响应的振荡。
我可以继续增加增益,注意响应的阻尼是如何变得越来越小的,实际上,当我越过-180的时候,我的相位和增益边际都是负的,系统变得不稳定。理想情况下,我们想要选择一个增益使我们接近我们想要的系统响应速度。
实际上,我将选择一个大约10弧度每秒的交叉频率,这相当于大约0.15秒的上升时间,我们想要的目标。但如你所见,它导致了不可接受的过度。因此,当我们从简单增益中发现,单纯的积分器将无法达到我们需要的性能。
我们需要更好的阻尼,这意味着额外的相位裕度,小于30度。这就是引线补偿器的结构非常有用的地方,因为引线会在交叉频率附近的相位上增加一个凸起。所以我将引导补偿器在10弧度/秒的交叉频率附近。
记住前导只是在单极之前的一个0。我可以通过在频率范围上移动极点来扩大两者之间的距离,你可以看到相位裕度是如何增长的阶跃响应的阻尼变得更好。
我把增益降低一点,回到10弧度/秒的交叉频率,也许我可以把杆子往回拉一点。现在一切看起来都很好。相位的凸起导致了68度的相位裕度,这很好。我们有18.5 db的增益幅度,超出了我们的要求。
在阶跃响应上,我们可以检查峰值响应,它显示了1.45%的超调,远低于我们要求的3%。我们还可以查看沉降时间,它低于0.2秒。我们的要求是0.3秒,所以没问题。上升时间是0.118秒,低于上限0.15秒。
正如我们刚才看到的,这个控制器满足了我们所有的要求。我们有一个很平滑的阶跃响应,很好的滚转率,这意味着很好的高频噪声衰减特性,和很好的低频增益,这将反映在这里的灵敏度传递函数上并将转化为很好的低频干扰抑制特性。小于0.1弧度每秒的衰减大于- 40db。因此,最终的控制器结构是一个增益,一个纯积分器,和一个超前补偿器,它是一个零和一个极点。
作为最后一步,我将更新我的Simulink块参数,并返回到仿真模型,金宝app现在我的控制器结构已经更新。我可以运行一个模拟来验证我的整个系统性能。你可以清楚地看到我们已经实现了很好的轨迹跟踪和很好的干扰和噪声抑制。
希望你们都能听懂。朋友们,这就是我认为你们应该做的控制。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。