北京交通大学计算机控制课程设计报告模板.docx
《北京交通大学计算机控制课程设计报告模板.docx》由会员分享,可在线阅读,更多相关《北京交通大学计算机控制课程设计报告模板.docx(70页珍藏版)》请在咨信网上搜索。
1、北京交通大学计算机控制课程设计报告70资料内容仅供参考,如有不当或者侵权,请联系本人改正或者删除。计算机控制课程设计终期报告姓名: 学号: 班级: 指导教师: 周永华 时间: -7-1 目录一、设计题目3二、系统方案31、水温自动控制系统设计任务和要求32、水温自动控制系统部分33、温度控制系统的算法分析4三、系统硬件设计51、总体设计框图及说明52、各个子模块设计52.1 CPU的选择52.2 测量单元选型62.3 水温控制电路设计62.4 键盘设置电路72.5 LCD显示电路82.6 报警电路8五、软件系统设计91、程序框架结构92、主程序模块103、按键程序114、LCD显示程序125、
2、DS18B20采集温度程序126、PID计算和继电器控制程序127、附加时间显示程序14六、MATLAB/SIMULINK仿真部分141、理论分析142、具体传递函数计算153、SIMULINK仿真154、MATLAB仿真18七、PROTEUS仿真部分24八、结论及心得体会251、实验结论252、心得体会26八、参考文献26一、 设计题目基于单片机的水温自动控制系统二、 系统方案1、 水温自动控制系统设计任务和要求该系统为一实验系统, 系统设计任务如下: 设计一个水温自动控制系统, 控制对象为一杯子内水的温度。水温能够在一定范围内由人工设定, 并能在环境温度降低时实现自动调整, 以保持特定的温
3、度不变。 系统设计具体要求: ( 1) 温度设定范围为30-50摄氏度; ( 2) 环境温度降低是控制水温误差小于1摄氏度; ( 3) 采用适当的方法, 使得温度在一定范围内才进行控制, 超过某一范围直接加热或者不加热, 减小系统的调节时间; ( 4) 采用适当方法减少系统的超调量; ( 5) 用LCD1602显示温度与时间。2、 水温自动控制系统部分水温自动控制系统是一个过程控制系统, 组成框图如图1所示, 由输入、 输出、 控制器、 执行器、 被控对象其反馈作用的测量组成。输入控制器执行器受控对象输出测量反馈 图1 计算机控制系统框图本系统中CPU选择为单片机, 执行器为继电器, 控制加热
4、片通断, 检测装置为温度传感器采集温度并反馈给单片机。另外还有键盘输入部分、 显示部分以及报警部分, 总体框图如下( 图2) AT89C52控制器报警显示输入测量执行器加热器 图2 温控箱控制系统总体框图3、 温度控制系统的算法分析本实验的基本思路是采用位置式PID控制算法, 其基本算式为uk=KPek+KIj=0kej+KDek-e(k-1)当然在实际应用中根据具体情况对控制参数做出改进,针对PID控制算法的积分作用, 采用积分分离的控制算法。控制系统在开始工作时必然会有较大的误差, 而且它在短时间内不会消除, 而且经过积分项累积后会使得控制作用u(k)在误差较小时依然保持较大的值, 即进入
5、积分饱和状态, 这使得系统需要经过很长的时间才能恢复正常, 这就大大影响了控制效果。一种比较好的克服积分饱和的方法是采用积分分离法。积分分离法的基本控制思想是在偏差大于某个规定的门限值时, 停止并取消积分作用; 而在误差小于此门限值时才计算并引入积分作用, 来消除稳定误差。其基本算式为uk=KPek+KIj=kikej+KDek-e(k-1)当ek值, =1, 当ek值, =0三、 系统硬件设计1、 总体设计框图及说明本系统是一个简单的单回路控制系统。为了实现水温的自动测量和控制, 根据系统总体方案, 系统由单片机基本系统、 前向通道、 反馈通道和人机对话通道等4个主要的功能模块组成, 总体框
6、图如上面图2所示。单片机系统是整个控制系统的核心, AT89C52能够提供系统控制所需的I/O口、 中断、 定时及存放中间结果的RAM电路; 前向通道是控制执行的通道, 主要包括光耦、 继电器、 加热管; 反馈通道由DS18B20构成, 采集当前实际的温度。键盘设定: 采用4*4矩阵键盘, 用于温度设定、 设定加热开关以及时间的显示。数据采集: 运用DS18B20数字温度传感器采集当前温度并反馈给CPU进行处理, 用于控制和显示。数据显示: 运用LCD1602字符型液晶显示屏显示设定温度、 实际温度以及当前的时间。执行机构: 经过三极管控制继电器来完成对加热管的控制, 为防止强电弱电相互影响,
7、 在单片机与继电器之间加入光电耦合器进行强电弱电的隔离。2、 各个子模块设计2.1 CPU的选择单片机是一种集成在电路芯片, 是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、 只读存储器ROM、 多种I/O口和中断系统、 定时器/计时器等功能( 可能还包括显示驱动电路、 脉宽调制电路、 模拟多路转换器、 A/D转换器等电路) 集成到一块硅片上构成的一个小而完善的计算机系统。其使用起来十分简单灵活方便, 因此选择单片机作为CPU。本系统选择本人较为熟悉的AT89C52单片机作为CPU。如图3所示。图3 AT89C52封装图 2.2 测量单元选型方案1: 采用热敏电
8、阻, 可满足35-95的测量范围, 但热敏电阻精度、 重复性和可靠性都比较差, 对于检测精度小于1的温度信号是不适用的。方案2: 采用温度传感器DS18B20。在本课题中我用的温度传感器是DALLAS公司生产的DS18B20它的体积非常小, 硬件开销也小, 抗干扰能力强, 精度高, 附加功能强。它之因此能够有这些优点, 是因为它把温度检测与数字数据输出全集成于一个芯片之上, 从而抗干扰力更强。其一个工作周期可分为两个部分, 即温度检测和数据处理。这里最后确定使用方案2, 即采用带防水封装的18B20温度传感器。2.3 水温控制电路设计 此部分经过控制继电器的通断从而控制加热片, 采用对加在电热
9、管两端的电压进行通断的方法进行控制, 以实现对水的加热功率的调整, 从而达到对水温控制的目的, 即在闭环控制系统中对被控对象实施控制。另外, 为了防止强电对弱电的影响, 我在继电器与单片机之间加了光耦进行隔离。继电器是一种电控制器件。它具有控制系统( 又称输入回路) 和被控制系统( 又称输出回路) 之间的互动关系。一般应用于自动化的控制电路中, 它实际上是用小电流去控制大电流运作的一种”自动开关”。故在电路中起着自动调节、 安全保护、 转换电路等作用。如图4所示 图4 继电器原理图 图5 实际应用的继电器只要在线圈两端加上一定的电压, 线圈中就会流过一定的电流, 从而产生电磁效应, 衔铁就会在
10、电磁力吸引的作用下克服返回弹簧的拉力吸向铁芯, 从而带动衔铁的动触点与静触点( 常开触点) 吸合。当线圈断电后, 电磁的吸力也随之消失, 衔铁就会在弹簧的反作用力返回原来的位置, 使动触点与原来的静触点( 常闭触点) 释放。这样吸合、 释放, 从而达到了在电路中的导通、 切断的目的。 光电耦合器是以光为媒介传输电信号的一种电一光一电转换器件。它由发光源和受光器两部分组成。把发光源和受光器组装在同一密闭的壳体内, 彼此间用透明绝缘体隔离。发光源的引脚为输入端, 受光器的引脚为输出端。在光电耦合器输入端加电信号使发光源发光, 光的强度取决于激励电流的大小, 此光照射到封装在一起的受光器上后, 因光
11、电效应而产生光电流, 由受光器输出端引出, 这样就实现了电一光一电的转换。2.4 键盘设置电路 本系统选择4*4矩阵键盘作为输入部分, 用来输入预设温度、 开启与关闭加热、 调节时间等。 4*4矩阵键盘内部电路及实物图如图6所示, 每行4个按键的一端连在一起, 每列也连在一起, 经过选择行与列就能判断出究竟是哪个键按下。图6 4*4矩阵键盘其中数字键用于设定温度值。另外4个键分别用来控制加热、 调整时间模式选择键、 时间加、 时间减, 还有两个键暂时保留功能。2.5 LCD显示电路本系统采用LCD1602显示温度值与时间。如图7所示。LCD1602液晶显示模块能够和单片机STC89C52直接接
12、口, 电路如图8所示。经过LCD1602显示预设以及实际的温度, 并能显示加热管现在处于的状态是加热还是停止加热, 并附加显示时间。 图7 LCD1602 图8 LCD proteus仿真图 2.6 报警电路本系统采用简易的报警电路进行报警, 仿真图如图9所示。设计思想为当预设温度不在所期望的范围( 3050度) 内, 则蜂鸣器发出警报, 若实际温度大于50度则亮黄灯进行提醒, 若实际温度小于30度则亮绿灯进行提醒。图9 报警电路的仿真五、 软件系统设计1、 程序框架结构一个整体的系统软件设计是由各个在系统里起着不同作用的模块整合在一起, 从而实现系统的所要实现的功能。本系统包括主控制程序,
13、键盘扫描程序, 温度采集程序, 时间显示与调整程序, PID算法程序, LCD显示程序。结构框架图如图10所示。主程序模块键盘扫描LCD显示DS18B20采集温度PID计算继电器工作图10 系统程序框架主程序模块相当于调度室, 对子程序模块的调用进行管理, 它主要负责初始化IO口; 等待键盘的被按下, 并调用相应的模块进行处理; 显示温度控制过程及时间; 在适当的时候经过DS18B20检测实际温度, 并与所设定的值进行比较, 判断报警并经过调用PID算法处理数据, 处理后来控制继电器的通断, 从而控制热电管达到控制温度的目的。2、 主程序模块由于模块化程序的设计, 经过调用程序即可实现所用功能
14、, 主程序流程图如图11所示。 图11 主程序流程图 图12 键盘扫描流程图主程序见附件一。3、 按键程序本系统采用4*4键盘, 键盘扫描的思想是首先判断是否真的有键按下, 然后开始判断究竟是哪一个键按下。具体思路是先给P1口置成0xf0,若有键按下, 则P0口的电平发生变化, 然后依次置P1口为0xfe,0xfd,0xfb,0xf7,找出是哪一行有键按下, 行找到后再确定是该行的哪列被按下, 最终找到键值。程序流程图如图12所示。按键程序见附件一。4、 LCD显示程序1602液晶模块内部的控制器共有11条控制指令, 如表1所示: 序号指令RSR/WD7D6D5D4D3D2D1D01清显示00
15、000000012光标返回000000001*3置输入模式00000001I/DS4显示开/关控制0000001DCB5光标或字符移位000001S/CR/L*6置功能00001DLNF*7置字符发生存贮器地址0001字符发生存贮器地址8置数据存贮器地址001显示数据存贮器地址9读忙标志或地址01BF计数器地址10写数到CGRAM或DDRAM) 10要写的数据内容11从CGRAM或DDRAM读数11读出的数据内容表1: 控制命令表由于LCD1602比较常见, 编程序是按照时序写入即可, 这里不再赘述。LCD显示程序见附件一。5、 DS18B20采集温度程序 DS18B20数字温度传感器对时序的
16、要求十分严格, 延时大多是us级的, 因此该子程序中的延时程序需要区别于LCD显示的延时程序。只要严格按照时序图写程序, DS18B20即可运行。DS18B20温度采集程序间附件一。6、 PID计算和继电器控制程序 前面已经提到PID是一种线性控制器, 因此本系统PID控制的思路是在第一次PID调节时记下PID调节器的输出值uk0( 该值为以后PID调节器输出地最大值) ,并以该值为参考, 以后的输出uk与uk0做比值, 假设uk0表示加热a, 那么输出uk与uk0比值表示加热a*uk/uk0时间, 以此类推, 最后算出每次计算应该加热的时间作用于继电器, 控制加热管加热。由于温度变化缓慢,
17、则设置为5s计算PID一次。另外本系统的PID采用了开关量计算积分分离相结合的改进PID算法, 具体思路是当温差大于等于15度时不用PID直接进行开关控制。当温度在0-15度之间时才采用PID计算。 具体程序如下: ( 1) PID计算void PID(void) float ek,ek1,ek2,ek_sum; uint a; ek=K-temp; /计算误差 while(1) if(ON_OFF=1) /温控开关开 if(ek=15) outflag=1;OUT=0;Time_on=100;break; /温差大于15度, 不用PID调节 else if(ek5) a=0;if(ekTim
18、e_on) /模拟迟滞 OUT=1; outflag=0; if(TIM=100) /5s进行一次PID计算 PID(); TIM=0; 7、 附加时间显示程序考虑到实际的温度控制系统如果加上显示时间的功能能够获得更好的应用, 故在此系统中加上了显示时间的功能。主要是运用了AT89C52的定时器的功能, 每50ms中断一次, 进行时间的设置。时间显示程序见附件一。六、 MATLAB/SIMULINK仿真部分1、 理论分析由于经过PID后计算出的控制量控制每次加热棒的加热时间, 即对应所提供的热量。因此主要计算被测温度与供热之间的传递函数。设水温为T ,环境温度(干扰)为T0,供热量Q1=I2R
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 北京 交通大学 计算机控制 课程设计 报告 模板
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。