描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787111688112丛书名: 图解IT技术系列丛书
内容简介
面向用Python进行控制系统设计的人,边学边用Python进行编程实践。重点阐述以状态空间模型为对象的现代控制系统的设计。全书分七章,包括: Pythhon环境的构建、数据和流控制、反馈控制、状态空间模型、闭环系统的控制设计、开环系统的控制设计、PID控制相位进延迟补偿,以及稳健性控制数字实现的高级控制系统设计。
目 录
译者序
前言
第1章 什么是控制 1
1.1 日常生活中的控制 3
1.2 反馈控制 4
1.3 控制工程的作用 6
1.4 本书概要 8
第2章 Python基础 12
2.1 搭建Python环境 14
2.2 Jupyter Notebook的使用方法 14
2.3 Python基础 18
2.3.1 数据和类型 19
2.3.2 流程控制 24
2.3.3 函数定义 27
2.3.4 闭包、lambda表达式、生成器、列表生成式 28
2.3.5 模块 30
2.4 本书中用到的模块 31
2.4.1 Numpy 31
2.4.2 Matplotlib 33
2.4.3 Scipy 37
2.4.4 Sympy 38
2.4.5 Python-Control 39
第3章 控制系统建模 43
3.1 描述动态系统 45
3.1.1 手推车的模型 46
3.1.2 垂直驱动机械臂的模型 46
3.1.3 RCL电路的模型 47
3.1.4 放大电路的模型 48
3.1.5 控制工程中使用的模型描述 49
3.2 传递函数模型 50
3.2.1 手推车和机械臂的传递函数模型 52
3.2.2 RCL电路和放大电路的传递函数模型 52
3.2.3 用Python表述模型 53
3.3 状态空间模型 55
3.3.1 手推车和机械臂的状态空间模型 57
3.3.2 RCL电路和放大电路的状态空间模型 58
3.3.3 用Python表述模型 59
3.4 框图 60
3.4.1 串联 61
3.4.2 并联 61
3.4.3 反馈 62
第4章 被控对象的行为 69
4.1 时域响应 71
4.1.1 一阶滞后系统 72
4.1.2 二阶滞后系统 77
4.2 状态空间模型的时域响应 83
4.3 稳定性 88
4.3.1 输入输出稳定性 88
4.3.2 渐进稳定性 91
4.4 极点与系统行为的关系 93
4.5 频域响应 95
4.5.1 一阶滞后系统 100
4.5.2 二阶滞后系统 102
第5章 关注闭环系统的控制系统设计 109
5.1 闭环系统的设计规格 111
5.1.1 稳定性 111
5.1.2 时域响应特性 113
5.1.3 频域响应特性 113
5.1.4 闭环系统的设计规格 114
5.2 PID控制 115
5.2.1 P控制的性能分析 116
5.2.2 PD控制 119
5.2.3 PID控制 122
5.3 二自由度控制 127
5.4 使用临界比例度法进行增益调整 131
5.5 使用模型匹配法进行增益调整 134
5.6 状态反馈控制 138
5.6.1 极点配置法 139
5.6.2 调节器 142
第6章 关注开环系统的控制系统设计 152
6.1 开环系统的设计规格 154
6.1.1 稳定性 154
6.1.2 快速性与阻尼特性 160
6.1.3 稳态误差 162
6.1.4 开环系统的设计规格 163
6.2 PID控制 163
6.2.1 P控制 163
6.2.2 PI控制 165
6.2.3 PID控制 167
6.3 相位超前校正和相位滞后校正 172
6.3.1 相位滞后校正 172
6.3.2 相位超前校正 174
6.3.3 垂直驱动机械臂的控制系统设计 175
第7章 高级控制系统设计 184
7.1 使用观测器的输出反馈控制 186
7.2 鲁棒控制 193
7.3 数字化实现 200
7.3.1 使用零阶保持的离散化 201
7.3.2 使用双线性变换的离散化 202
附录 数学补充内容 208
前言
第1章 什么是控制 1
1.1 日常生活中的控制 3
1.2 反馈控制 4
1.3 控制工程的作用 6
1.4 本书概要 8
第2章 Python基础 12
2.1 搭建Python环境 14
2.2 Jupyter Notebook的使用方法 14
2.3 Python基础 18
2.3.1 数据和类型 19
2.3.2 流程控制 24
2.3.3 函数定义 27
2.3.4 闭包、lambda表达式、生成器、列表生成式 28
2.3.5 模块 30
2.4 本书中用到的模块 31
2.4.1 Numpy 31
2.4.2 Matplotlib 33
2.4.3 Scipy 37
2.4.4 Sympy 38
2.4.5 Python-Control 39
第3章 控制系统建模 43
3.1 描述动态系统 45
3.1.1 手推车的模型 46
3.1.2 垂直驱动机械臂的模型 46
3.1.3 RCL电路的模型 47
3.1.4 放大电路的模型 48
3.1.5 控制工程中使用的模型描述 49
3.2 传递函数模型 50
3.2.1 手推车和机械臂的传递函数模型 52
3.2.2 RCL电路和放大电路的传递函数模型 52
3.2.3 用Python表述模型 53
3.3 状态空间模型 55
3.3.1 手推车和机械臂的状态空间模型 57
3.3.2 RCL电路和放大电路的状态空间模型 58
3.3.3 用Python表述模型 59
3.4 框图 60
3.4.1 串联 61
3.4.2 并联 61
3.4.3 反馈 62
第4章 被控对象的行为 69
4.1 时域响应 71
4.1.1 一阶滞后系统 72
4.1.2 二阶滞后系统 77
4.2 状态空间模型的时域响应 83
4.3 稳定性 88
4.3.1 输入输出稳定性 88
4.3.2 渐进稳定性 91
4.4 极点与系统行为的关系 93
4.5 频域响应 95
4.5.1 一阶滞后系统 100
4.5.2 二阶滞后系统 102
第5章 关注闭环系统的控制系统设计 109
5.1 闭环系统的设计规格 111
5.1.1 稳定性 111
5.1.2 时域响应特性 113
5.1.3 频域响应特性 113
5.1.4 闭环系统的设计规格 114
5.2 PID控制 115
5.2.1 P控制的性能分析 116
5.2.2 PD控制 119
5.2.3 PID控制 122
5.3 二自由度控制 127
5.4 使用临界比例度法进行增益调整 131
5.5 使用模型匹配法进行增益调整 134
5.6 状态反馈控制 138
5.6.1 极点配置法 139
5.6.2 调节器 142
第6章 关注开环系统的控制系统设计 152
6.1 开环系统的设计规格 154
6.1.1 稳定性 154
6.1.2 快速性与阻尼特性 160
6.1.3 稳态误差 162
6.1.4 开环系统的设计规格 163
6.2 PID控制 163
6.2.1 P控制 163
6.2.2 PI控制 165
6.2.3 PID控制 167
6.3 相位超前校正和相位滞后校正 172
6.3.1 相位滞后校正 172
6.3.2 相位超前校正 174
6.3.3 垂直驱动机械臂的控制系统设计 175
第7章 高级控制系统设计 184
7.1 使用观测器的输出反馈控制 186
7.2 鲁棒控制 193
7.3 数字化实现 200
7.3.1 使用零阶保持的离散化 201
7.3.2 使用双线性变换的离散化 202
附录 数学补充内容 208
前 言
笔者在大学教授控制工程课程,深感对此课程感到苦恼的学生不在少数。造成学生不能充分理解本课程究竟在讲些什么的主要原因是,课程中有很多与数学相关的抽象概念。鉴于此,笔者决定撰写一本能让学生通过运行程序来学习控制工程和控制系统设计的书。
本书涉及很多与机器学习和数据挖掘相关的内容,并使用热门的编程语言Python。同时,本书致力于让读者能够在运行Python程序的同时,通过“边学边做”来实际体验控制工程。因此,对于想使用Python来设计控制系统的人来说,本书是绝佳选择。此外,本书图文并茂,尽可能以易于理解的方式进行讲解,因此,对于控制工程的初学者以及曾经学过控制工程却半途而废,如今打算重拾书本的读者而言,本书也是十分易读的。
本书的内容不仅包含实际工作中经常使用的以传递函数模型为研究对象的经典控制理论,还涉及以状态空间模型为研究对象的现代控制理论,以及鲁棒控制的基础知识。不过,本书尽可能地减少了数学方面的描述,取而代之的是大量的Python示例代码,以及两姐妹(姐姐“希波”和妹妹“望结”)的可爱插图和对话,这使得本书风格轻松活泼,内容易于理解。
在网页https://y373.sakura.ne.jp/minami/pyctrl(日文)中可以找到本书的补充内容和练习题的参考答案。读者也可以在该网站找到示例代码。
话说回来,笔者初接触到控制理论是在高等专门学校四年级的时候(相当于大学一年级)。笔者依然记得当初自己曾被这一能够自由操控“被控对象”的技术深深吸引。不仅如此,笔者深陷其中的另一个原因在于控制系统的解析和设计中用到了大量数学工具,并且通过使用控制工程的专门语言,能够对之前所学的力学和电子电路的相关知识进行解释说明。“控制”这个概念在我们的日常生活中其实比比皆是,所谓“久而不闻其香”,能够切实感受到其重要性是难能可贵的。其实,“如果没有控制,我们安心、安全而又舒适的生活就无法成立”,此话所言非虚。此外,近年来各种智能化事物层出不穷,想要随心所欲地对事物加以控制,改变世界的面貌,“控制工程”的知识是不可或缺的。由此可见,控制工程(控制理论加上控制技术)可以说是一门非常重要的学问。读者倘若能够通过本书喜欢上这门有魅力的学科,笔者将深感欣慰。
本书能够成书离不开许多人的大力支持。本书的内容建立在一般社团法人—系统控制信息学会主办的教习讲座的基础之上。笔者深深感谢提出了“用Python学习控制工程”这一想法并托付笔者付诸实践的大阪府立大学的原尚之老师以及学会事业委员会的各位同人。另外,笔者想感谢大阪大学的石川将人老师,以及同研究室的吉田侑史、田中飒树、楠井大气、奥田贵裕、平野贵裕、青木达朗等帮助审阅书稿的同学。谢谢你们。
后,感谢在家中默默支持笔者的贤妻和爱女。
本书涉及很多与机器学习和数据挖掘相关的内容,并使用热门的编程语言Python。同时,本书致力于让读者能够在运行Python程序的同时,通过“边学边做”来实际体验控制工程。因此,对于想使用Python来设计控制系统的人来说,本书是绝佳选择。此外,本书图文并茂,尽可能以易于理解的方式进行讲解,因此,对于控制工程的初学者以及曾经学过控制工程却半途而废,如今打算重拾书本的读者而言,本书也是十分易读的。
本书的内容不仅包含实际工作中经常使用的以传递函数模型为研究对象的经典控制理论,还涉及以状态空间模型为研究对象的现代控制理论,以及鲁棒控制的基础知识。不过,本书尽可能地减少了数学方面的描述,取而代之的是大量的Python示例代码,以及两姐妹(姐姐“希波”和妹妹“望结”)的可爱插图和对话,这使得本书风格轻松活泼,内容易于理解。
在网页https://y373.sakura.ne.jp/minami/pyctrl(日文)中可以找到本书的补充内容和练习题的参考答案。读者也可以在该网站找到示例代码。
话说回来,笔者初接触到控制理论是在高等专门学校四年级的时候(相当于大学一年级)。笔者依然记得当初自己曾被这一能够自由操控“被控对象”的技术深深吸引。不仅如此,笔者深陷其中的另一个原因在于控制系统的解析和设计中用到了大量数学工具,并且通过使用控制工程的专门语言,能够对之前所学的力学和电子电路的相关知识进行解释说明。“控制”这个概念在我们的日常生活中其实比比皆是,所谓“久而不闻其香”,能够切实感受到其重要性是难能可贵的。其实,“如果没有控制,我们安心、安全而又舒适的生活就无法成立”,此话所言非虚。此外,近年来各种智能化事物层出不穷,想要随心所欲地对事物加以控制,改变世界的面貌,“控制工程”的知识是不可或缺的。由此可见,控制工程(控制理论加上控制技术)可以说是一门非常重要的学问。读者倘若能够通过本书喜欢上这门有魅力的学科,笔者将深感欣慰。
本书能够成书离不开许多人的大力支持。本书的内容建立在一般社团法人—系统控制信息学会主办的教习讲座的基础之上。笔者深深感谢提出了“用Python学习控制工程”这一想法并托付笔者付诸实践的大阪府立大学的原尚之老师以及学会事业委员会的各位同人。另外,笔者想感谢大阪大学的石川将人老师,以及同研究室的吉田侑史、田中飒树、楠井大气、奥田贵裕、平野贵裕、青木达朗等帮助审阅书稿的同学。谢谢你们。
后,感谢在家中默默支持笔者的贤妻和爱女。
南 裕树
2019年4月
评论
还没有评论。