前 言
本书的宗旨
本书旨在提供有关基于MATLAB和Simulink实现嵌入式控制系统开发的必要知识。同时,MATLAB和Simulink提供了一个复杂的编程环境,该环境可用于嵌入式控制系统的设计和实现。在本书中,利用 Simulink 模型自动生成和嵌入控制代码的方式,可以快速开发高效且无错误的代码。自动代码生成和可用的强大处理器使得复杂高阶控制器的实现成为可能,从而可以实现快速和高性能的闭环动态。
本书面向现代控制理论在高性能控制律(这些控制律确保闭环系统对被控对象不确定性具有良好的动态性和鲁棒性)开发中的应用,因此以尽可能少的篇幅介绍理论开发方面的内容,而将重点放在应用开发问题上。控制理论的基本结果没有给出证明,若想要获取更多相关信息,建议读者查阅相应章节结尾处的注释和参考文献。本书包含了许多重要的示例,用以说明理论结果的实际实现。虽然书中大多数例子取自运动控制领域,但也可供其他领域的设计师使用。
本书主要介绍了实际中常用的线性控制器的设计。这种线性控制方法已经被小增量线性化原理证明是合理的,该原理指出几乎任何自然过程在任何地方都是小量线性的。幸运的是,正如 Kostrikin和Manin [1]所指出的那样,该原理存在的有效小邻域是足够大的。
本书的一个重要部分是可免费下载的资料,其中包含相应章节中所有示例的MATLAB和Simulink文件。 使用这些材料有助于理解嵌入式控制系统分析和设计中出现的不同问题。
读者对象
本书可以作为在控制工程领域学习的硕士生和博士生以及在该行业工作的控制工程师的参考资料,也可供对MATLAB和Simulink在控制系统设计中的实现感兴趣的控制工程研究人员参考。前4章也适用于嵌入式控制系统设计方面的研究生课程。
本书内容
本书由7章和6个附录组成。
第1章简要介绍嵌入式控制系统和相应的设计过程。
第2章描述与被控对象模型开发相关的几个基本问题,如线性化、离散化、随机建模和辨识等。本章还包含一节关于不确定性建模的内容。
第3章关注嵌入式控制器设计中的性能要求和设计限制。本章的重要部分是关于不确定性系统的鲁棒稳定性和鲁棒性能分析的几节。
第4章详细介绍现代控制理论中使用的5种基本控制器的设计:比例积分导数(PID)控制器、线性二次高斯(LQG)控制器、带有H?∞滤波器的线性二次(LQ)调节器、H?∞控制器和μ控制器。出于比较的目的,所有控制器都在同一个被控对象——著名的小车–单摆系统上实现。 我们考虑了这些控制器设计中可能存在的困难,并比较了相应闭环系统的特性。针对被控对象参数值的最坏组合情况,这些特性通过闭环系统的硬件在回路(HIL)仿真中进行了展示。
在后面的3章中,我们介绍3个案例,详细描述3个嵌入式控制系统设计中存在的理论和实践问题。
第5章介绍水箱作为被控对象的低成本控制系统的设计。想要在嵌入式系统设计中使用低成本处理器的读者应该会对本章感兴趣。
第6章专门讨论微型直升机的鲁棒控制。我们考虑高阶控制器的实现,以确保闭环系统在严重风干扰情况下的鲁棒性能。
第7章介绍两轮机器人嵌入式控制系统的设计。在这种情况下,我们通过实验演示了 30 阶控制器的实现,该控制器可确保闭环系统在被控对象存在不确定性的情况下的鲁棒稳定性和控制性能。
在附录A~附录D中,我们分别从矩阵分析、线性系统理论、随机过程和线性模型辨识等方面给出一些必要的基础知识。在附录E和附录F中,我们分别讨论一些重要的实际问题,例如,传感器和DSP之间的连接以及霍尔编码器对角速度的测量等。
致谢
在此要感谢在本书的准备过程中提供过帮助的一些人和机构。特别感谢MathWorks公司的持续支持,感谢莱斯特大学的 DaWei Gu 教授和宾夕法尼亚大学的 Nicolai Christov 教授的多次讨论和帮助。非常感谢 IET 编辑人员的协助和审稿人提出的意见。我们也非常感谢索非亚技术大学工程英语系主任Tasho Tashev教授近年来对我们工作的持续支持。
佩特科·H.佩特科夫
索尼奥·N.斯拉沃夫
乔丹·K.克拉列夫
2017年12月于保加利亚索非亚