ImageVerifierCode 换一换
格式:DOCX , 页数:22 ,大小:194.57KB ,
资源ID:9424940      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9424940.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机控制原理温度控制系统课程设计.docx)为本站会员(b****8)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

计算机控制原理温度控制系统课程设计.docx

1、计算机控制原理温度控制系统课程设计计算机控制课程设计报告1设计任务和控制要求1.1设计任务1.2控制要求2 设计方案 2.1温度控制系统组成2.2设计步骤3 被控对象的参数设定3.1数据记录32 T、 实验数据4算法原理5结果分析5.1 PID调节结果 5.2大林算法控制与处理 6心得体会7参考文献附录附录1:原理图附录2:程序 参考文献 附录1:电路原理图附录2:源程序温度控制系统设计1设计任务和控制要求1.1设计任务 计算机控制技术的课程设计是一个综合运用知识的过程,它不仅需要微型计算机控制理论、程序设计和接口技术等方面的基础知识,而且还需要具备一定的生产工艺知识。设计包括确定控制任务、系

2、统总体方案设计、系统设计、控制软件的设计等,以便使学生掌握微型计算机控制系统设计的总体思路和方法,做到理论与实践的结合。1.2控制要求1.2.1被控对象:本设计的被控对象为电热丝。其被控对象温控数学模型为 1.2.2温度范围:室温100C,控制精度正负1C。1.2.3输出形式: 第一种: 0-10mA 电流信号 第二种:脉宽调制(PWM)信号输出 1.2.4设计要求 (1)数字显示温度,具有报警、参数设定、温升工艺曲线设置与修改等功能。 (2)绘制温升曲线及其它处理;1.2.5选用合适的控制算法(1)PID 控制PID控制器由比例控制单元(P)、积分控制单元(I)和微分控制单元(D)组成。其输

3、入与输出的关系为式中积分的上下限分别是 0 到 t因此,它的传递函数为:其中 Kp 为比例系数;TI为积分时间常数; TD 为微分时间常数(2)Dalin 算法 大林算法是运用于自动控制领域中的一种算法,是一种根据被控对象先设计好理想闭环系统的控制器,再反过来综合调节的方法。设计的目标是使闭环传递函数相当于一个纯滞后环节和一个惯性环节的串联,其中纯滞后环节的滞后时间与被控对象的纯滞后时间完全相同。这样就能保证使系统不产生超调,同时保证其稳定性。2 设计方案 2.1温度控制系统组成温度控制系统框图如图1所示。该系统由以下部分组成: 图1 温度控制系统框图 工作原理在图1 所示系统中,加热室(加热

4、丝)为该系统的被控对象,温度变送器用来检测加热室的温度,并转换为电压信号,检测到的电压信号经输出电压反馈单元作为系统反馈值,脉宽调制电路为加热室的加热执行单元。在参数给定值的情况下,给定值与反馈值比较得到偏差,经过PID 调节器运算产生相应的控制量,PID调节器的输出作为脉宽调制的输入信号,经脉宽调制电路产生占空比可调的脉冲信号,作为对加温室里电热丝的加热信号,使加温室(加热丝)里的温度稳定在给定值。给定值可由已知电源提供。温度变送器可采用热敏电阻等温度传感器。2.2设计步骤2.2.1被控对象(电热丝)模型通过实验方法确定被控对象数学模型(即电热丝的传递函数),该被控对象数学模型为 2.2.2

5、确定T 、 T 为被控对象时间常数; 为滞后时间常数。2.2.3确定被控对象数学模型在模拟控制系统中,参数整定方法较多,常用的实验整定方法有:临界比例度法、阶跃响应曲线法、试凑法等。数字控制时也可采用类似方法,如扩充的临界比例度法、扩充的阶跃响应曲线法与试凑法等等。本次设计采用扩充响应曲线法来确定被控对象模型。具体步骤如下:(1)首先不将数字控制器接入控制系统,让系统处于开环工作状态下,给定一阶跃信号,每10s 记录一次数据,直至系统输出稳定在给定值附近。(2)根据记录数据画出被调量在阶跃输入下的整个变化过程曲线。(3)在曲线最大斜率处做切线,求得滞后时间 ,被控对象时间常数 以及它们的比值/

6、。3 被控对象的参数设定3.1数据记录如下:表1 第一次 给定电压:5V 每10s 记一数据1.643.544.214.694.985.195.345.435.491.673.584.234.714.995.25.345.435.491.863.624.274.7355.215.345.445.492.063.664.34.755.015.225.355.445.52.283.694.324.775.035.225.355.445.52.463.734.354.785.045.235.365.445.52.583.764.374.85.055.245.365.455.52.723.84.44.

7、815.065.255.375.455.512.813.844.424.835.075.265.375.465.512.923.874.454.845.085.265.385.465.513.013.914.484.855.095.275.385.465.513.073.944.514.875.15.285.395.465.523.133.974.534.895.115.295.395.475.523.194.014.564.95.125.295.45.475.523.254.044.584.925.135.35.45.483.34.074.64.935.145.35.415.483.364.

8、14.614.945.155.315.415.483.414.134.634.955.165.325.415.483.474.154.654.965.175.335.425.483.514.184.674.975.185.335.425.49表2第二次 给定电压 4V 每10s记一数据 终值 4.752.113.363.854.174.374.494.574.664.722.133.393.874.184.384.494.584.664.722.263.423.894.194.384.494.584.664.722.393.453.914.214.44.514.584.664.732.533.

9、483.924.224.44.514.594.664.732.643.53.944.244.414.514.594.694.732.733.533.964.244.414.524.594.694.732.813.563.974.254.434.524.624.694.732.873.593.994.254.434.524.624.694.732.933.624.014.274.444.544.624.694.732.983.644.024.274.444.544.624.694.733.033.674.044.34.454.544.624.714.733.073.694.054.34.454.

10、554.624.714.733.113.714.074.314.464.554.644.713.153.744.084.314.464.554.644.713.23.764.14.344.474.564.644.713.243.784.114.344.474.564.644.713.273.84.134.354.474.564.644.723.313.814.144.354.474.574.644.723.333.834.164.374.474.574.664.72表3第三次 给定电压 6V 每10s 记一数据 终值 6.451.814.034.915.415.725.916.056.176.

11、256.36.346.391.884.094.945.435.735.916.066.176.256.36.346.392.044.154.975.455.745.936.066.186.256.36.356.412.234.255.465.755.936.066.186.256.36.356.412.424.265.035.485.765.946.086.186.256.36.356.412.594.325.065.55.775.946.086.196.256.326.356.412.734.375.095.515.785.966.086.196.266.326.356.412.884.42

12、5.115.535.795.966.16.196.266.326.356.413.014.465.145.545.815.976.16.226.266.326.356.413.124.525.175.565.825.976.16.226.266.326.383.274.565.195.575.835.986.126.226.266.326.383.354.65.225.595.845.986.126.226.266.346.383.434.645.245.615.8466.126.226.286.346.383.514.675.275.625.8566.146.226.286.346.383.

13、64.715.295.635.8666.146.246.286.346.383.684.745.315.655.866.036.146.246.286.346.383.754.775.335.675.886.036.166.246.286.346.393.824.85.355.685.886.036.166.246.286.346.393.94.845.375.695.896.056.166.246.36.346.393.984.885.395.75.896.056.176.246.36.346.39在曲线最大斜率处做切线,求得滞后时间 ,被控对象时间常数 以及它们的比值/。数据如下:32 T

14、、 实验数据 次数K/第一次2059.57.9621.58第二次220107.8721第三次24010.57.721.5平均值221.6107.821.51PID 参数整定根据实验得到的表4,初步确定控制器的Kp,Ki,Kd 及采样周期T 。 控制度控制律采样周期Kp1.05PI0.10.843.4PID0.050.152.00.451.2PI0.20.783.6PID0.161.01.90.551.5PI0.50.683.9PID0.340.851.620.82 表5 PID 参数整定表在运行中,对上述参数作适当调整,以获得满意的性能。扩充响应曲线法通过测取阶跃响应曲线的t ,T 参数获得一

15、个初步的PID 控制参数,然后在此基础上通过部分参数的调节(试凑)获得满意的控制性能。4算法原理计算机控制系统的方框图如图所示。图计算机控制系统框图1)常规数字PID 控制算法常规的PID 控制律为采用一阶差分法离散化后,可以得到常规数字PID 控制位置式算法简记为这里P、I、D参数分别为 采用增量式形式有: 2)数字PID调节a.根据表3,初步确定控制器的Kp,Ki,Kd 及采样周期T ,编写程序;将数字控制器接入控制系统,让系统处于闭环工作状态下,给定一阶跃信号,每10s 记录一次数据,直至系统输出稳定在给定值附近。b.根据记录数据,画出系统在阶跃输入作用下的整个变化过程曲线。2. 大林算

16、法根据被控对象的S传递函数式(1),大林算法选定 按控制要求选择。作为闭环控制的综合目标,与相对应的 而包含零阶保持器被控对象的S传递函数为离散化后得到 于是可以得到大林算法控制器的Z传递函数 由此得到大林算法5结果分析数据记录及结果分析5.1pid调节结果根据记录数据及温升曲线得出PID参数对性能的影响:增大比例系数Kp一般将加快系统的响应, 在有静差的情况下有利于减小静差。但过大会使系统有较大的超调,并产生振荡,使系统稳定性变坏。 增大积分时间Ti有利于减小超调,减小振荡,使系统更加稳定,但系统静差的消除将随之减慢。 增大微分时间Td有利于加快系统响应,使超调量减小,稳定性增加,但系统对扰

17、动的抑制能力减弱,对扰动有较敏感的响应。 5.2大林算法控制与处理 温度时间关系如下图示:6 心得体会计算机控制技术是一门以电子技术、自动控制技术、计算机应用技术为基础,以计算机控制技术为核心,综合可编程控制技术、单片机技术、计算机网络技术,从而实现生产技术的精密化、生产设备的信息化、生产过程的自动化及机电控制系统的最佳化的专门学科。 通过本次课程设计,让我受益良多。原来我学习计算机控制的时候,基本上不清楚学习的理论知识如何应用在实践中,所以觉得计控学习起来比较难,经过这次课程设计,让我清楚了计算机控制的一些理论在实践中的应用。课程设计一开始,老师让我们先参观实验室,这是很重要的一个环节,参观

18、让我们对实验的仪器有了个感性的认识,让我们明白我们需要的实验仪器是怎么样的,是我们做到心中有数。接下来的一段日子就是课程设计了,时间三个星期,课程设计一开始,大家都非常积极主动的思考怎么完成任务,我们是三个人一组,一起讨论该怎么做,如何测数据,商量好了,再进行下一步。在这个过程中并不总是一帆风顺的。实验一开始就遇到了问题:我的实验箱最开始不能用,经过了几次调换之后发现坏箱子还真是不少啊,最后一个管子烂了,但是老师说不影响实验的结果,于是我们就用到那个不好的做。在了解实验的理论的过程中也遇到了很多困惑,首先,vb的脚本语言我们都不是很熟悉,我们就在网上下载了关于机器类似的编程的语言的讲解,在结合

19、老师发的实验指导书,我发现对这语言也算是有了一定的了解。接下来就是具体实验了,说实话,实验内容并不复杂,但是问什么要用三个星期的时间去完成呢,我觉得最主要的原因是因为这个实验确实需要花时间,因为每一组数据都需要差不多一个小时的时间去记录,而且要测量很多组的数据。实验结束后,我觉得最大的感受就是,做这个实验,最最需要的是耐心。 经过了这次课程设计,我发现学到了很多的东西,首先我觉得能把自己所学到的东西应用到实践中去,这是一个很大的收获。其次,仅仅是所学到的东西根本就不能满足工程或者说一个具体的项目的要求,要完成一个具体的项目,需要额外的学习很多新的东西,因此不能满足于自己的所学,应该养成终身学习

20、的态度。附录1:原理图附录2:程序、1. PID整定option explicit public KP,KI,KD public T,Ti,Td public e0,e1,e2,u public x2,x1,x0 public sume 初始化通道参数 Sub Init() Daq.SetChannelXNumber 1 X通道使用A/D通道1 Daq.SetChannelYNumber 2 Y通道使用A/D通道2 Daq.SetSignal1State true D/A通道1开通 Daq.SetSignal2State true D/A通道2关闭 Daq.SetExpLastTime 0 持

21、续时间,0表示持续 Daq.SetExpSamplePeriod 1000 采样周期,10ms T=0.5 Ti=40 Td=50 Kp=5 KI=Kp*T/Ti KD=Kp*Td/T e0=0 e1=0 e2=0 sume=0 u=0 End Sub测试信号发生函数 Sub Signal() Dim eWave(1000) 测试信号定义,1000为每个周期点数 dim i dim A,Ts Ts=1000 A=4 Signal1.SetPeriod Ts 测试信号1的周期, 单位ms, 周期1000ms Signal1.SetAmp A 测试信号1的幅值,单位V,幅值为4 For i = 0

22、 To ubound(ewave)-1 eWave(i) =A Next Signal1.setwave eWave End Sub 运行 文件 Sub Run() e0=e1 e1=e2 e2=Signal1.getcursignal()-daq.getchannelXvalue(0) sume=sume+e2 u=KP*e2+KI*sume+KD*(e2-e1) Daq.SetSignal1Value u Daq.SetSignal2Value e2 End Sub2. 大林算法option explicit public e0,e1,e2,u0,u1,u2public T,T1,T0,K

23、,m1,m2,k1,k2初始化通道参数 Sub Init() Daq.SetChannelXNumber 1 X通道使用A/D通道1 Daq.SetChannelYNumber 2 Y通道使用A/D通道2 Daq.SetSignal1State true D/A通道1开通 Daq.SetSignal2State false D/A通道2关闭 Daq.SetExpLastTime 0 持续时间,0表示一值持续 Daq.SetExpSamplePeriod 4000 采样周期,4000ms T=4000/1000 T1=320 被控对象惯性环节时间常数 K=0.8 放大倍数 T0=150 理想闭环

24、系统一节惯性环节时间常数 e0=0 e1=0 e2=0 u0=0 u1=0 u2=0 m1=exp(-T/T0) m2=1-m1 k1=m2/(K*(1-exp(-T/T1) k2=-exp(-T/T1)*k1End Sub测试信号发生函数 Sub Signal() Dim eWave(1000) 测试信号定义,1000为每个周期点数 dim i dim A,Ts Ts=1000 A=4 Signal1.SetPeriod Ts 测试信号1的周期, 单位ms, 周期1000ms Signal1.SetAmp A 测试信号1的幅值,单位V,幅值为4 For i = 0 To ubound(ewave)-1 eWave(i) =A Next Signal1.setwave eWave End Sub 运行 文件 Sub Run() u0=u1 u1=u2 e0=e1 e1=e2 e2=Signal1.getcursignal()-daq.getchannelXvalue(0) u2=m1*u1+m2*u0+k1*e2+k2*e1 Daq.SetSignal1Value u1 延迟一个时间,故用u1来输出End Sub

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2