基于PID的炉温控制系统设计与仿真_第1页
基于PID的炉温控制系统设计与仿真_第2页
基于PID的炉温控制系统设计与仿真_第3页
基于PID的炉温控制系统设计与仿真_第4页
基于PID的炉温控制系统设计与仿真_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

电电气工程与自气工程与自动动化学院化学院 控制基控制基础课础课程程实实践践报报告告 控制基础课程实践 题题 目 目 基于基于 PID 的炉温控制系的炉温控制系统设计统设计与仿与仿 真真 专业专业班班级级 自 自动动化化 101 班班 学学 号 号 学生姓名 艾文学生姓名 艾文鹏鹏 指指导导老老师师 杨杨国亮老国亮老师师 1 2012 年年 12 月月 24 日日 目录目录 摘 要 0 第一章 绪 论 1 1 1 课题背景及意义 1 1 2 MATLAB GUI 在控制系统中的应用 1 1 3 本文工作简述 2 第二章 PID 控制器的设计 3 2 1 PID 控制原理与程序流程 3 2 1 1 模拟 PID 调节器 3 2 1 2 数字 PID 控制器 4 2 1 3 PID 算法的程序流程 4 2 2 微分先行 PID 控制器 5 2 3 电阻炉系统数学模型的建立 6 第三章 GUI 图形用户界面设计 8 3 1 MATLAB 的 GUI 的界面设计 8 3 2 GUI 界面的建立 8 第四章 系统仿真性能的研究 14 4 1 基于 Sumilink 的 PID 仿真 14 4 2 微分先行和输入滤波 PID 控制算法 14 4 3 系统性能测试 15 参考文献 18 致谢 19 2 摘摘 要要 PID 比例 积分 微分 控制器作为最早实用化的控制器已有70 多年 历史 现在仍然是应用最广泛的工业控制器 PID 控制器简单易懂 使用中 不需精确的系统模型等先决条件 因而成为应用最为广泛的控制器 PID 控制器具有结构简单 容易实现 控制效果好 鲁棒性强等特点 是迄今为止 最稳定的控制方法 它所涉及的参数物理意义明确 理论分析体系完整 并为 工程界所熟悉 因而在工业过程控制中得到了广泛应用 从实际需要出发 一 种好的 PID 控制器参数整定方法 不仅可以减少操作人员的负担 还可以使系 统处于最佳运行状态 因此 对 PID 控制器参数整定法的研究具有重要的实际 意义 本文介绍了 PID 控制技术的发展历史和研究进展 分析了传统的模拟和 数字 PID 控制算法 并对传统的 PID 控制算法进行微分项和积分项的改进 学 习了几种比较普遍运用的方法 如不完全微分 PID 控制算法 微分先行 PID 控 制算法等 利用 MATLAB 环境中图形界面的设计技术构建线性系统仿真教学软件 其特 点是可通过系统的传递函数模型对时域及频域的响应进行系统分析 并且可以 进行 PID 控制算法 在学习的基础上 微分先行 PID 控制器 使得系统暂态性 能和稳态性能较好 在调节时间 抑制超调量 稳定性都要好 关键词关键词 PID 控制 图形界面 鲁棒性 控制算法 微分先行 1 2 第一章第一章 绪绪 论论 1 1 课题背景及意义课题背景及意义 然而近年来随着热处理工艺广泛应用于加工过程 热处理中温度的控制精 度和控制规律的优劣直接影响到热处理工艺的好坏 电阻炉是热处理工艺中应 用最多的加热设备 研究电阻炉温度控制方法具有重要意义 工业生产中广泛应 用工业炉 如在冶金 化工等工矿企业以及宾馆 学校 商场等公共场所 当 前 电阻炉温度控制的主要问题是 由于电阻炉是一个特性参数随炉温变化而 变化的被控对象 炉温控制具有单向性 大惯性 大滞后 时变性的特点 例 如 其升温单向性是由于电阻炉的升温 保温是依靠电阻丝加热 降温则是依 靠环境自然冷却 当其温度一旦超调就很难用控制手段使其降温 因而很难用 数学方法建立精确的模型和确定参数 通过调节PID调节器的比例系数Kp 积分系数Ki和微分系数Kd来实现对电 阻炉的温度控制 当系统处于平衡状态时 炉温将稳定在给定值上 从而实现 了电阻炉的温度控制 其目的是 利用现有的设备来实验 去了解要实现一个 控制系统 它所需的最基本的思想 过程以及解决问题的思维方法 制作一个 MATLAB GUI界面来实时观察 也可作为自控原理 过程控制系统辅助设计和分 析的工具 可以帮助全面 深入 细致地掌握控制系统的分析 设计及控制器 整定的基本步骤和方法 参与改变模型参数 进行仿真分析 观察不同仿真结 果 当模型参数变化时 仿真曲线的变化能够同时看到 本课题以目前国际上流行的 MATLAB 语言为开发工具 研究并实现控制系统 仿真软件 充分利用了 MATLAB 提供的强大功能 1 2 MATLAB GUI 在控制系统中的应用在控制系统中的应用 MATLAB 是控制系统计算机辅助分析与设计的一个卓越平台 具有开放的环 3 境 功能极强的矩阵运算 图形绘制 数据处理 各种工具箱以及像 草稿纸 一样的工作空间等许多优点 为控制工程基础的教学提供了一个连续的 有实 用价值的工具 但命令繁多 分析起来过于零散 难于对控制系统的性质有个 整体的掌握 困此 编制一个辅助教学工具箱是必要的 在 MATLAB 开发平台中 有可视化编程能力很强的图形用户界面 GUI 设计相应的控制系统辅助课程教 学工具箱是完全可行的 借助 MATLAB 语言有中具有可视化编程能力很强的图形用户界面 GUI 构建 控制系统 CAI 课程教学应用软件的使用环境 开发出操作简捷 形式灵活 界 面友好 实用性强的人机对话窗口 提供一个方便的软件操作平台 计算机辅 助分析与设计得到简化 同时也能提高学生动手分析与设计系统的主动性和创 造性 使用本软件教学系统 除了控制系统模型的参数设置通过键盘输入以外 其他的全部工作都只需用鼠标选择菜单的操作来完成 且无需任何编程操作 1 3 本文工作简述本文工作简述 第一章 介绍 MATLAB 语言在自动控制系统仿真中应用的意义以及它的发展和 应用 第二章 介绍控制系统的基本理论 PID 控制器的设计 包括 PID 控制 第三章 对 MATLAB GUI 进行介绍 了解它的特点 功能及应用 详细论述控制 系统仿真软件的设计原理 思路 步骤 方法 第四章 通过控制系统仿真软件对具体实例进行仿真 系统仿真性能的研究 完善其功能 使之符合要求 4 第二章第二章 PID 控制器的设计控制器的设计 2 1 PID 控制原理与程序流程控制原理与程序流程 2 1 1 模拟模拟 PID 调节器调节器 一 模拟 PID 控制系统组成 如图 2 1 1 图 2 1 1 模拟 PID 控制系统原理框图 二 模拟 PID 调节器的微分方程和传输函数 PID 调节器是一种线性调节器 它将给定值 r t 与实际输出值 c t 的偏差 的比例 P 积分 I 微分 D 通过线性组合构成控制量 对控制对象进行 控制 1 PID 调节器的微分方程 2 1 t D I P dt tde Tdtte T teKtu 0 1 式中 tctrte 2 PID 调节器的传输函数 2 2 ST ST K SE SU SD D I P 1 1 三 PID 调节器各校正环节的作用 1 比例环节 即时成比例地反应控制系统的偏差信号 e t 偏差一旦产生 调节器立即产生控制作用以减小偏差 2 积分环节 主要用于消除静差 提高系统的无差度 积分作用的强弱取 决于积分时间常数 TI TI 越大 积分作用越弱 反之则越强 3 微分环节 能反应偏差信号的变化趋势 变化速率 并能在偏差信号的 值变得太大之前 在系统中引入一个有效的早期修正信号 从而加快系统的动 作速度 减小调节时间 5 2 1 2 数字数字 PID 控制器控制器 一 模拟 PID 控制规律的离散化 如表 2 1 2 所示 模拟形式离散化形式 tctrte ncnrne dT tde T nene 1 t dtte 0 n i n i ieTTie 00 表 2 1 2 模拟 PID 控制规律的离散化 二 数字 PID 控制器的差分方程 2 3 0 0 0 1 unununu unene T T ie T T neKnu DIP n i D I P 式中 称为比例项 neKnu PP 称为积分项 n i I PI ie T T Knu 0 称为微分项 1 nene T T Knu D PD 三 常用的控制方式 1 P 控制 0 ununu P 2 PI 控制 0 unununu IP 3 PD 控制 0 unununu DP 4 PID 控制 0 ununununu DIP 四 PID 算法的两种类型 1 位置型控制 2 4 0 0 1 unene T T ie T T neKnu n i D I P 2 增量型控制 2 5 2 1 2 1 1 nenene T T Kne T T KneneK nununu D P I PP 6 2 1 3 PID 算法的程序流程算法的程序流程 一 增量型 PID 算法的程序流程 1 增量型 PID 算法的算式 2 6 2 1 210 neaneaneanu 式中 2 7 1 0 T T T T Ka D I P 2 1 1 T T Ka D P T T Ka D P 2 2 增量型和位置型 PID 算法的程序流程 如图 2 1 3 所示 图 2 1 3 增量型和位置型 PID 算法的程序流程 二 位置型 PID 算法的程序流程 1 位置型的递推形式 2 8 2 1 1 1 210 neaneaneanunununu 2 位置型 PID 算法的程序流程 只需在增量型 PID 算法的程序流程基础上增加一次加运算 u n u n 1 u n 和更新 u n 1 即可 三 对控制量的限制 1 控制算法总是受到一定运算字长的限制 2 执行机构的实际位置不允许超过上 或下 极限 max min u nu u nu max maxmin min unu unuu unu 7 2 2 微分先行微分先行 PID 控制器控制器 一 微分先行 PID 控制算法的基本原理 微分先行是把对偏差的微分改为对被控量的微分 这样 在给定值变化时 不会产生输出的大幅度变化 而且由于被控量一般不会突变 即使给定值已发 生改变 被控量也是缓慢变化的 从而不致引起微分项的突变 微分项的输出 增量为 2 9 1 ncnc T TK nu DP D 相对于普通 PID 控制算法来说 微分先行 PID 算法的实质是将微分运算提 前进行 微分运算有两种结构 一种是对输出量的微分 如图 2 2 1 a 所示 另一种是对偏差的微分 如图 2 2 1 b 所示 2 2 1 a 对输出量先行微分 PID 算 2 2 1 b 对偏差量先行微分 PID 算法 如图 2 2 1 a 所示 只对输出量进行微分 它适用于给定量频繁升降的场合 可以避免升降给定值时所引起的超调量过大 输出动作过分剧烈振荡 图 2 2 1 b 展示的结构是对偏差值先行微分 它对给定值和偏差值都有微分作用 适用于串级控制的副控制回路 因为副控制回路的给定值是由主控回路给定 也应对其作微分处理 因此 应该在副控制回路中采用偏差 PID 控制 而通 常所说的 微分先行 PID 主要是指第一种方式 即对输出量进行微分 8 2 3 电阻炉系统数学模型的建立电阻炉系统数学模型的建立 通常电阻炉的温度控制可用以下模型定性描述 2 2 0 dX TXKVt dt 10 式中 X 电阻炉内温升 指炉内温度与室温温差 K 放大系数 纯滞后时间 0 t 加热时间 T 时间系数 V 控制电压 理论分析和实验结果表明 电加热装置是一个具有自平衡能力的对象 可用 二阶系统纯滞后环节来描述 然而 对于二阶不振荡系统 通过参数辨识可以 降为一阶模型 因而一般可用一阶惯性滞后环节来描述温控对象的数学模型 所以 电阻炉温度模型的传递函数为 2 1 s K e G S TS 11 其中 K T 分别为对象模型的静态增益 纯滞后时间常数和惯性时间 常数 s 为复变量 l 静态增益 K 放大系数 K 又称为放大系数 是被控对象重新达到平衡状态时的输出变化 量和输入变化量之比 它是不随时间变化的量 在相同的输入变化作用下 被 控对象的 K 越大 输出变化量就越大 即输入对输出的影响越大 被控对象的 自身稳定性越差 反之 K 越小 被控对象的稳定性就越好 9 2 滞后时间 T 在过程控制中 很多被控对象在受到输入变量的作用以后 其被控量并不 立即发生改变 而是经过一定时间才发生变化 这就是滞后现象 滞后时间下 是描述这种现象的动态参数 3 时间常数 时间常数 反映了被控对象受到输入作用以后 输出变量达到新稳态值的 快慢 它决定了整个动态过程的长短 是被控对象的动态特性参数 第三章第三章 GUI 图形用户界面设计图形用户界面设计 3 1 MATLAB 的的 GUI 的界面设计的界面设计 MATLAB 可以创建图形用户界面 GUI GraphicalUserInterface 它是用户 和计算机之间交流的工具 MATLAB 将所有 GUI 支持的用户控件都集成在这个环 境中并提供界面外观 属性和行为响应方式的设置方法 随着版本的提高 这 种能力还会不断加强 由窗口 光标 按键 菜单 文字说明等对象 Ob2ject 构成的一个用户界面 用户通过一定的方法 如鼠标或键盘 选择 激活这些图 形对象 使计算机产生某种动作或变化 比如实现计算 绘图等 假如科技工作 者仅仅执行数据分析 解方程等工作 一般不会考虑 GUI 的制作 但是如果想向 客户提供应用程序 想进行某种技术 方法的演示 想制作一个供反复使用且操 作简单的专用工具 那么图形用户界面是最好的选择之一 Matlab 为表现其基 本功能而设计的演示程序 demo 是使用图形界面的最好范例 Matlab 的用户在 指令窗口中运行 demo 打开图形界面后 只要用鼠标进行选择和点击 就可浏览丰 富多彩的内容 开发实际的应用程序时应该尽量保持程序的界面友好 因为程序界面是应用 程序和用户进行交互的环境 在当前情况下 使用图形用户界面是最常用的方法 10 提供图形用户界面可使用户更方便地使用应用程序 不需要了解应用程序怎样执 行各种命令 只需要了解图形界面组件的使用方法 同时 不需要了解各种命令是 如何执行的 只要通过用户界面进行交互操作就可以正确执行程序 3 2 GUI 界面的建立界面的建立 1 打开 GUI 或在 MATLAB 指令窗中运行 guide 得到如图 3 1 所示 图 3 1 2 选则 Blank GUI 空白 GUI 设计工作台 如下图所示 包含以下 4 个功能区 1 菜单条 2 编辑工具条 3 控件模板区 4 设计工作区 图形用户界面设计在该区域进行 引出图所示的界面设计 工具 如图 3 2 所示 11 图 3 2 用鼠标拖动 工作区 右下角的 小黑块 使工作区的大小与图与图大小相当 点击 轴 Axes 控件图标 然后在工作区中的适当位置 拉出适当大小的绘图 区 类似上步操作 通过点击相应的 静态文本 Static Text 可编辑文本 Edit Text 按键 Push Button 用鼠标拖拉出相应的控件 3 图形窗口和控件的某些参数进行设置 双击工作区或控件可引出图形和相应控件的 属性编辑框 Property Inspector 图显示的是轴属性的编辑框 如图 3 3 12 图 3 3 一 在图形的属性编辑框中 设置如下属性值 Name Myguil 图形窗口的名称 Resize on 图形可以缩放 Tag figure1 生成 handles figurel 域存放图形窗句柄 二 在轴属性编辑框中 设置如下属性值 Box off 轴不封闭 Uint normalized 采用相对度量单位 缩放时保持比例 Tag axes1 生成 handles axes1 域存放图形窗句柄 Xlim 0 30 X 轴范围 Ylim 0 50 Y 轴范围 三 在图形上方的静态文本的属性编辑框中 作如下属性设置 FontSize 0 7 字体大小 FontUints normalized 采用相对度量单位 缩放时保持比例 HorizontalAlignment Center 文字中心对齐 Sting 液位 PID 控制仿真曲线 显示在界面上得的字符 Tag title text 生成 handles title text 域存放图形窗句柄 Uint normalized 采用相对度量单位 缩放时保持比例 13 四 在可编辑文本上方的静态文本的属性编辑框中 作如下属性设置 FontSize 0 6 字体大小 FontUints normalized 采用相对度量单位 缩放时保持比例 HorizontalAlignment Center 文字中心对齐 Sting 控制水位 显示在界面上得的字符 Tag edit text 生成 handles edit text 域存放图形窗句柄 Uint normalized 采用相对度量单位 缩放时保持比例 五 在可编辑文本的属性编辑框中 作如下属性设置 FontSize 0 6 字体大小 FontUints normalized 采用相对度量单位 缩放时保持比例 HorizontalAlignment Center 文字中心对齐 Sting 显示在界面上得的字符 Tag zeta edit 生成 handles zeta edit text 域存放图形窗句柄 Uint normalized 采用相对度量单位 缩放时保持比例 六 在上按键的属性编辑框中 作如下属性设置 FontSize 0 6 字体大小 FontUints normalized 采用相对度量单位 缩放时保持比例 HorizontalAlignment Center 文字中心对齐 Sting Grid on 显示在界 面上得的字符 Tag GridOn push 生成 handles GridOn push 域存放图形窗句柄 Uint normalized 采用相对度量单位 缩放时保持比例 七 在上按键的属性编辑框中 作如下属性设置 FontSize 0 6 字体大小 FontUints normalized 采用相对度量单位 缩放时保持比例 HorizontalAlignment Center 文字中心对齐 Sting Grid off 显示在界面上得的字符 Tag GridOff push 生成 handles GridOff push 域存放图形窗句柄 Uint normalized 采用相对度量单位 缩放时保持比例精细调整控件的大 小以及他们相对位置 根据显示在控件上的文字等 通过鼠标拖拉 或更精细 14 地通过设置决定控件大小的属性值 使控件大小更加合适 协调 用鼠标选择 要进行相对位置调整的有关控件 然后点击位置工具图标 引出排列对话窗 在此窗上选定适当的排列方式后 再点击 Apply 就可实现几何位置的调整 参见图 3 4 所示 图 3 4 八 创建菜单 1 点击 菜单编辑器 图标 引出空白菜单编辑对话窗 2 点击 菜单编辑对话窗 最左上方的 新菜单 New Menu 图标 在左侧空 白窗口中 出现 Untitled1 图标 再点击此图标 就在右侧引出类似于图右 侧的填写栏 在 Lable 中填写 Options 在 Tag 中填写 optios 于是左 侧的 Untiled1 图标变成 Options 图标 3 先点亮左侧的 Options 图标 再点击菜单编辑对话窗上的 心菜单项 New Menu Iterm 图标 就引出待定义的菜单项 在左侧的 Lable 填写 Box on 在 Tag 填写 box on 重复该小步的操作 建立另一个菜单项 Box off 如 图 3 5 15 图 3 5 九 界面的激活和回调函数生成 经以上操作后 工作台上所制作的界面外形及所含构件已经符合设计要求 但这个界面各构件之间的通讯还没有建立 为此必须激活处理 点击工作台上 激活 Activate Figure 工具图标 就引出 2 个界面 名为 Myguil 的图形用 户界面 展示名为 myguil 的 M 函数文件的文件编辑器界面 在此同时 在当前 目录上 由 MATLAB 自动生成 2 个文件 即 Myguil fig 和目 myguil m 16 第四章第四章 系统仿真性能的研究系统仿真性能的研究 4 1 基于基于 Sumilink 的的 PID 仿真仿真 一 Sumilink 的连接图 见图 4 1 图 4 1 连接图分析 此模型中包含一个惯性环节和一个滞后环节 由于计算机不能识 别连续系统 因此本系统前面加一个零阶保持器 进行离散化 经过调解得到 合理的图形 和合理的 PID 参数 二 PID 调节的结果 仿真图分析 合理的 PID 参数应该是不允许太大的超调 在最短的时间达到稳 定值 4 2 微分先行和输入滤波微分先行和输入滤波 PID 控制算法控制算法 微分先行 PID 控制算法的特点是只对输出量进行微分 而对给定值不进行 微分 这样 在改变给定值时 输出不会改变 而且由于被控量一般不会突变 即使给定值已发生改变 被控量也是缓慢变化的 从而不致引起微分项的突变 微分先行 PID 控制算式为 17 4 d pp 1I TT u k k e k e k 1 kp e k 2c k 1 c k 2 k c k c k 1 TT 1 输入滤波 输入滤波就是在计算微分项时 不是直接应用当前时刻的误差 e n 而是采用滤波值 e n 即用过去和当前四个采样时刻的误差的平均

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论