前言
MATLAB是一个功能十分强大的开发平台,具有极其丰富的功能,在计算机程序设计、科学计算和数据分析、系统建模仿真与辅助设计和大部分行业(如通信、自动控制、大数据、人工智能和机器学习、金融等)的工程实践中都得到了广泛的应用。与传统的计算机编程语言相比,MATLAB在解决技术问题方面具有许多优势,主要包括如下几方面。
(1) 使用方便。MATLAB是一种解释型程序设计语言,既可以用脚本命令的形式实现程序算法中的各步操作,也可以用于执行大型的程序。使用内置的MATLAB集成开发环境,可以轻松地编写、修改和调试程序。
(2) 平台独立性。MATLAB支持许多不同的计算机系统,例如,Windows、Linux和macOS。在任何平台上编写的程序和数据都可以在所有其他平台上运行和访问。因此,用MATLAB编写的程序可以在用户需要发生变化时迁移到新的平台。
(3) MATLAB编译器。MATLAB的灵活性和平台独立性是通过将MATLAB程序编译成独立于设备的代码,然后在运行时解释代码指令来实现的。MATLAB提供了一个单独的MATLAB编译器,可以将MATLAB程序编译成真正的可执行文件,其运行速度超过解释的代码。
(4) 丰富的预定义函数库。MATLAB提供了大量的预定义函数库,为许多基本技术任务提供了经过测试和预打包的诸多解决方案。除了内置的大型函数库,还有许多特殊用途的工具箱可用于帮助用户解决特定工程领域的复杂问题。例如,利用附加工具箱可以解决信号处理、控制系统、通信、图像处理、人工智能、深度学习和神经网络等方面的工程问题。
(5) 设备独立的绘图功能。与大多数计算机语言不同,MATLAB有许多完整的绘图命令,以实现科学计算数据的可视化和图形图像的处理,图像可以显示在计算机所支持的任何图形输出设备上。这些功能使MATLAB成为一个用于计算数据可视化的优秀工具,在各种工程领域得到大量应用。
(6) 图形化的用户界面。MATLAB系统包括允许程序员为其程序交互式构建图形用户界面的工具。有了这种功能,程序员可以设计出复杂的数据分析程序,可以由相对没有经验的用户操作。
本书主要面向具有计算机基础但还没有编程基础的工程技术人员、高等学校低年级学生。从基础的程序设计开始,紧扣理工科专业的人才培养方案和必备专业知识结构,涵盖了控制系统建模、仿真与控制器设计的知识点和控制系统综合设计案例,逐步引导读者进入专业基础课和专业课程的学习。
全书主要内容分为五篇,第一篇主要介绍MATLAB的基本应用、矩阵和矩阵运算、
图形绘制与
数据可视化和MATLAB程序设计基本方法; 第二篇主要介绍使用MATLAB工具箱完成线性系统的建模、性质分析、时域响应分析、根轨迹和频域分析方法; 第三篇主要介绍Simulink的基本用法、控制系统典型环节的仿真、控制系统稳定性分析与稳态误差仿真、系统串联校正器设计、PID控制器设计和非线性系统仿真与设计; 第四篇以典型被控对象直流电机和旋转倒立摆系统为例,综合应用MATLAB和Simulink及相关工具箱完成硬件在环系统建模、仿真与控制器设计; 第五篇给出了两个项目制的控制系统设计案例“垃圾分拣系统设计”和“平衡球传递系统设计”,以项目案例为牵引使学生进一步深入理解控制系统建模、仿真与设计的方法,培养学生创新意识和综合能力。
本书的主要特色如下。
(1) 内容浅显易懂。本书主要面向控制理论初学者,引导读者打开控制系统建模、仿真与设计的大门,快速掌握控制系统分析和设计的基本概念和方法。章节内容循序渐进、浅显易懂,语言表述严谨、逻辑性强。
(2) 讲练同步融合。各章节在相关内容讲授之后,立即安排适量的例题和同步练习题。所有例题代码都在MATLAB R2023a版本上调试通过,同步练习题可以帮助读者自我检查对当前内容的掌握情况,以便及时跟进。
(3) 面向工程应用。控制系统的设计主要是面向工程应用,本书专门用了一整篇(第五篇)的篇幅,介绍控制系统设计在工程中的实际应用,提高学习者的主观能动性和综合能力。
在本书的撰写过程中,特别感谢聂敏老师、杜欣悦同学的大力支持。由于时间仓促,书中难免存在疏漏和不足之处,恳请读者批评指正。
李怡然2025年1月