还剩42页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
水箱的恒温控制系统系别汽车与电气工程系专业电气自动化班级08电气
(2)姓名学号指导教师完成时间年月日目录TOC\o1-3\h\z\u目录I摘要IIIAbstractIV第1章绪论
11.1课题研究介绍
11.2国内外发展及趋势
11.
2.1国外恒温控制系统的发展及趋势
11.
2.2国内恒温控制系统的发展及趋势
21.3课题设计任务
21.
3.1设计目的
21.
3.2系统设计指标
31.
3.3系统的功能3第2章恒温控制系统总体方案设计
42.1设计方案
42.
1.1利用PLC实现恒温控制
42.
1.2利用单片机实现恒温控制
42.2方案论证
52.3恒温水箱控制系统工作原理5第3章恒温水箱控制系硬件设计
73.1主电源模块
73.2CPU主控模块
83.
2.1AT__C51单片机简介
83.
2.2AT__C51单片机各引脚功能说明
83.
2.3AT__C51单片机主要性能指标
93.
2.4晶振电路与复位电路的设计
103.3温度采集模块
103.
3.1DS18B20的特点
113.
3.2DS18B20内部结构
113.
3.3DS18B20的内存结构
113.
3.4DS18B20的测温原理
123.
3.5DS18B20的指令集
133.
3.6DS18B20与单片机的接口电路
143.4按键输入
143.5继电器模块
153.
5.1固态继电器SSR工作原理
153.
5.2固态继电器SSR的特点
163.
5.3继电器控制电路图
163.6显示模块
173.
6.1限流电阻计算18第4章恒温控制系用软件设计
194.1工作流程
194.2程序模块
194.
2.1主程序
194.
2.2温度传感器驱动子程序
204.
2.3键盘扫描处理子程序
214.
2.4温度检测与控制子程序
224.
2.5温度显示子程序23第5章抗干扰的设计
255.1电源抗干扰措施
255.
1.1采用滤波和屏蔽的供电电源
255.
1.2采用串联开关式稳压电源
265.
1.3采用高抗干扰电压电源和干扰抑制器
265.2输入输出通道的抗干扰措施
265.3软件抗干扰措施
265.
3.1设置软件陷阱
265.
3.2增加程序监视系统
275.
3.3软件冗余措施27____28致谢29附录1单片机源程序30附录2电路原理图36摘要本设计以单片机AT89C51为核心部件,采用单总线型数字式的温度传感器DS18B20作为温度采集,以固态继电器作为加热控制的开关器件,设计制作了带键盘输入控制,动态显示的功能的恒温控制系统该系统既可以对当前温度进行实时显示,又可以对设定温度进行控制,并使其恒定在某一温度范围控制键盘设计使设置温度简单快捷,两位整数一位小数的显示方式具有更高的显示精度建立在增量控制理论上的控制算法,使控制精度完全能满足一般的电子产品的生产要求通过对系统软件和硬件的合理规划,发挥单片机自身集成多系统功能单元的优势,在不减少功能的前提下有效降低了成本,系统操作简便关键词AT89C51单片机;DS18B20传感器;恒温控制AbstractThisdesignwithsingle-chipmicrocomputerAT89C51asthecorecomponentwithsinglebus-controldigitaltemperaturesensorDS18B20astemperaturegatheringtosolid-staterelayasheatingcontrolswitchdevi__designand__kethebeltkeyboardinputcontroldynamicdisplayofthetemperaturecontrolsystem.Thissystemnotonlycanreal-timedisplayofthecurrenttemperatureofsettemperatureandcancontrolanditsconstantinatemperaturerange.Controlthekeyboarddesign__kessettemperature______andquicktwointegeradeci__ldisplaymodehashigherprecisionoftheshow.Basedonincrementalcontroltheoryofcontrolalgorithm__kethecontrolaccuracycanbefullymetgeneralelectronicproductsproductionrequirements.Throughthesystemsoftwareandhardwarereasonableplanningplaymicrocontrolleritselfmoresystemfunctionunitintegratedadvantageinnotredu__functionalitypremisetoredu__thecostandsystemeasyoperation.Keywords:AT89C51;DS18B20sensors;Solid-staterelay第1章绪论
1.1课题研究介绍温度是工业上常见的被控参数之一,特别是在冶金、化工、建材、食品__、机械制造等领域,恒温控制系统被广泛应用于加热炉、热处理炉、反应炉等在一些温控系统电路中,广泛采用的是通过热电偶、热电阻或PN结测温电路经过相应的__调理电路,转换成A/D转换器能接收的模拟量,再经过采样/保持电路进行A/D转换,最终送入单片机及其相应的__电路,完成监控但是由于传统的__调理电路实现复杂、易受干扰、不易控制且精度不高本文介绍单片机通过数字温度传感器检测外部温度对水箱进行恒温控制的设计,采用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制因此,本系统采用一种新型的可编程温度传感器(DS18B20),不需复杂的__处理电路和A/D转换电路就能直接与单片机完成数据采集和处理,实现方便、精度高,可根据不同需要用于各种场合在日常生活中,也经常用到电烤箱、微波炉、电热水器、烘干箱等需要进行温度检测与控制的家用电器采用单片机实现温度控制不仅具有控制方便、简单、灵活等优点,而且可以大幅度地提高被控温度的技术指标,从而大大提高产品的质量,现以恒温水箱控制系统的设计进行介绍
1.2国内外发展及趋势随着计算机控制技术的发展,恒温控制已在工业生产领域中得到了广泛应用,并取得了巨大的经济和社会效益在不同的领域内,由于控制环境、目标、成本等因素,需要针对具体情况来设计系统结构和功能,以取得最佳的控制效果其中,恒温环境的自动化控制技术在工业生产、商业运营中是一个重要研究课题
1.
2.1国外恒温控制系统的发展及趋势自70年代以来,由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展,以及自动控制理论和设计方法发展的推动下,国外恒温控制系统发展迅速,并在智能化,自适应参数的自整定等方面取得了很大的科技成果在这方面以__、美国、德国、瑞典等国技术领先,并且都生产出了一批商品化的性能优异的温度控制器及仪器仪表目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展虽然温度控制系统在国内各行各业的应用已经十分广泛,但从国内生产的温度控制器及技术来讲,其总体发展水平仍然不高,同国外的__、美国、德国等先进国家相比,仍然有着较大的差距
1.
2.2国内恒温控制系统的发展及趋势我国目前在恒温控制技术这方面总体技术水平处于20世纪80年代中后期水平,成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制,难于控制滞后、复杂、时变的温度系统控制在适应于较高控制场合的智能化、自适应控制仪表领域内,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少因此,我国在恒温控制等控制仪表行业与国外还有着一定的差距从过程量的检测角度出发,温度是最常见的过程变量之一,它是一个非常重要的过程变量,因为它直接影响燃烧、化学反应、发酵、烘烤、煅烧、蒸馏、浓度、挤压成形,结晶以及空气流动等物理和化学过程而恒温控制技术在工业领域应用非常广泛,由于其具有工况复杂、参数多变、运行惯性大、控制滞后等特点它对控制调节器要求较高其温度控制不好就可能引起生产安全,产品质量和产量等一系列问题尽管恒温控制很重要,但是要控制好温度常常会遇到意想不到的困难随着嵌入式系统__技术的快速发展及其在各个领域的广泛应用,人们对电子产品的小型化和智能化要求越来越高,作为高新技术之一的单片机以其体积小、__低、可靠性高、适用范围大以及本身的指令系统等诸多优势,在各个领域、各个行业都得到了广泛应用
1.3课题设计任务
1.
3.1设计目的设计一个恒温水箱自动调节控制系统,水箱内的水温可以在一定范围内由人工设定,并能在环境温度降低时实现自动调节,以保持与设定的温度基本不变利用单片机AT89C51实现水温的智能控制,使水温能够在60℃左右实现恒定温度调节,利用数字温度传感器读出水温,并在此基础上将水温调节到通过键盘设定的温度(其方式是加热或降温),并通过数码管显示器实现当前温度与设定温度的显示
1.
3.2系统设计指标设计一个温度反馈通道的控制系统,主要包括主电路和控制电路控制电路又包括巡回检测、跟踪比较、PID调节、执行输出、加热装置等多个环节以下为该恒温控制系统的技术指标
(1)预置时显示设定温度,达到定温度时显示实时温度,显示精确到1℃;
(2)恒温箱温度可预置,在误差范围内恒温控制,温度控制误差≤±1℃;
(3)恒温水箱由1KW电炉加热;
(4)启动后有运行指示,温度低于预置温度5℃时进行220V全加热;
(5)有较强的抗干扰性能,对升降温过程的线性没有要求;
(6)具有相应的保护功能
1.
3.3系统的功能1可以对温度进行自由设定,但必须在0~100℃内,设定时可以实时显示出设定的温度值;2加热由1台1KW电炉来实现,如果温度不在60℃时,根据设定的温度值与实际检测的温度值之差来采取不同的加热方式;3能够保持实时显示水温,显示位数4位,分别为百位、十位、个位和小数位(但由于规定小于100度,所以百位也就没有实现,默认的百位是不显示的)第2章恒温控制系统总体方案设计本章提出了对恒温控制的两种方案,根据恒温水箱控制系统的控制要求及技术指标,结合两种方案的性能特点,最后选定以单片机为主控制器,增量式的PID算法进行调整控制PWM波形产生的方案作为本控制系统的总体方案
2.1设计方案对于温度控制的方法也有很多如单片机控制、PLC控制、模拟PID调节器和数字PID调节器等等
2.
1.1利用PLC实现恒温控制这种恒温控制,采用PLC控制实现电热丝加热全通、间断导通和全断加热的自控式方式,来达到温度的恒定智能型电偶温度表将置于被测对象中,热电偶的传感器__与恒定温度的给定电压进行比较,生成温差,自适应恒温控制电路根据差值大小控制电路的断开
2.
1.2利用单片机实现恒温控制此方案采用单片机为控制核心的控制系统,尤其对温度控制,它可达到核心的控制作用,并且可方便实现数码显示、键盘设定及利用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制,其所测结果精度也大大的得到了提高,在利用PID算法来控制PWM波形的产生,是有效的控制数字脉冲的输出宽度,使固态继电器得到有效和有序的逻辑控制,不会使固态继电器产生误动作因此利用PWM技术进行脉宽调制的优点是
(1)从处理器到被控系统__都是数字形式的,无需进行数模转换器;
(2)让__保持为数字形式可将噪声影响降到最小,并且噪声只有在强到足以将逻辑“1”改变为逻辑“0”或将逻辑“0”改变为逻辑“1”时,才能对数字__产生影响;
(3)对噪声抵抗能力的增强也是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因;
(4)PWM经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术再加上单片机的软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制它可以通过用数字温度传感器采集到的实际水温温度直接进行数码管显示,还能用键盘输入设定值,并且内部含有4KB的EEPROM不需要外扩展存储器,可使系统整体结构更为简单,其方案的框图如图
2.1所示
2.2方案论证采用的PLC实现恒温控制,由于其PLC成本高,且PLC__系统配置复杂,不利于我们的设计由于数字调节和运算量大,相__于AT89C52单片机只要选择合适的参数对于温度的控制精度往往能达到比较好的效果采用单片机为控制核心的控制系统,利用PID控制原理和PWM技术实现对水箱内水温的控制基于这样的控制原理和PWM技术的优越性,在对温度控制的系统中,它可达到采用其他控制系统所达不到的控制效果,并且可方便实现数码实时显示、键盘设定、直接可以驱动固态继电器,其测量结果的准确性和精度是非常高的综合各方面___,本设计采用单片机来实现温度的控制
2.3恒温水箱控制系统工作原理根据恒温水箱控制系统的设计任务和要求,确定了系统总体方案之后,现对该方案的具体原理进行详细介绍,它是采用闭环控制结构进行控制的,其具体控制图如图
2.2所示本系统是采用闭环负反馈的控制方式进行控制的,它通过数字温度传感器检测水箱内的水温温度,把采集到的数据直接送到单片机进行处理,由于数字式温度传感器能在极短时间内把采集到的模拟量转换成数字量,这样被它处理的数据直接送到数字PID模块进行调整和控制PWM波形的产生然后,把检测到的数据与预先设定的温度值进行比较,根据不同的差值去控制固态继电器的通断,以采取不同的加热方式进行加热升温另外,还设置了温度实时显示的装置,可以同时显示预先设定的温度值和实际检测到的温度值第3章恒温水箱控制系硬件设计恒温水箱控制系统主要由六部分组成主电源模块、CPU主控制模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块本章对各模块的硬件电路设计作了详细说明
3.1主电源模块为防止电源之间的相互干扰,需对电路进行__供电,本系统采用双电源输出,一个正常之用,一个应急备用因此电源电路设计输出两路为+5V的稳压电源,同时主电路的开关元件为固态继电器,其直流侧的供电电源可选择为+5V由于固态继电器内部带有光耦,其直流侧与交流侧相互隔离,因此其直流侧的供电电源可与数字电路的+5V电源共用,另外DS18B20也用+5V的稳压电源供电,另外一个+5V的稳压电源用来备用,当遇到系统断电时可以把那个备用的稳压电源来应急,这样可以给系统增加了一道应急保险本装置的直流稳压电源采用通常的桥式全波整流、电容滤波、三端固定输出的集成稳压器件进行设计,并且所有的集成稳压芯片均装有充分裕量的散热片系统的供电电源电路如图
3.1所示图
3.1主电源电路
3.2CPU主控模块CPU主控制模块采用AT89C51芯片,把数字温度传感器采集到的温度__与原预先设定值进行比较,然后根据其差值通过PID调节整定,控制继电器的通断进行不同加热方式,能用键盘进行输入数据的处理以及温度__的实时显示
3.
2.1AT89C51单片机简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROM—FalshProgram__bleandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机AT89C51是一种带4K字节闪存可编程可擦除只读存储器的单片机单片机的可擦除只读存储器可以反复擦除100次该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案
[2]
3.
2.2AT89C51单片机各引脚功能说明
(1)VCC供电电压;
(2)Vdd接地;
(3)P0口8位双向I/O口在访问外部存储器时,P0口用于分时传送低8位地址(地址总线)和8位数据__(数据总线)P0口能驱动8个LSTTL门;
(4)P1口P1口是一个内部提供拉电阻的8位双向I/O口,P1口缓冲器能接收输出4个LSTTL门电流;5P2口P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收输出4个LSTTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入;
(6)P3口8位准双向I/O可做一般口用,同时P3口每一引脚还具有第二功能,用于特殊__输入输出和控制__(属控制总线);
(7)RST复位输入;
(8)ALE/PROG当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低8位字节;
(9)/PSEN外部程序存储器的选通__在由外部程序存储器取指期间,每个机器周期/PSEN两次有效输出;10/EA/VPP当/EA保持低电平时,则在此期间只访问外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器;当/EA端保持高电平时,从内部程序存储器开始读取;
(11)XTAL1反向振荡放大器的输入及内部时钟工作电路的输入XTAL2来自反向振荡器的输出图
3.240引脚双列直插封装图
3.
2.3AT89C51单片机主要性能指标1与MCS—51产品指令系统完全兼容;24K字节可重复擦写Flash闪速存储器;31000次擦写周期;4全静态操作0Hz~24MHz;5三级加密程序存储器;6128×8字节内部RAM;
(7)32个可编程I/O接口;
(8)2个16位定时/计数器;
(9)6个中断源;
(10)可编程串行UART通道;
(11)低功耗空闲和掉电模式
3.
2.4晶振电路与复位电路的设计单片机内部带有时钟电路,只需要在片外通过XTAL
1、XTAL2引脚接入定时控制单元(晶体振荡和电容),即可构成一个稳定的自激振荡器振荡器的工作频率一般在
1.2~12MHz之间,当然在一般情况下频率越快越好,可以保证程序运行速度即保证了控制的实时性一般采用石英晶振作定时控制元件,在不需要高精度参考时钟时,也可以用电感代替晶振,有时也可以引入外部时钟脉冲__接在晶振上的电容虽然没有严格要求,但电容的大小会影响振荡器的稳定性和起振的快速性因此,通常选择在10~30pF左右,在此次设计时钟电路时,晶振频率选用(12MHz),电容选用(20pF),并且它们应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性复位电路采用按键电平复位,它通过复位端经电阻与+5V电源实现,只要能保证复位__高电平持续时间大于2个机器周期就可实现复位,其时钟电路和复位电路如图
3.3所示图
3.3时钟电路和复位电路
3.3温度采集模块由于在传统的模拟__远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度而且一般监控现场的电磁环境都非常恶劣,各种干扰__较强,模拟温度__容易受到干扰而产生测量误差,影响测量精度因此,在本设计中的温度测量系统中,采用美国Dallas半导体公司的DS18B20温度芯片对水箱内的水温进行采集温度数据,并且由于它抗干扰能力强,是解决这些问题的最有效方案另外数字温度传感器(DS18B20)具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果和广泛的应用
[4]
3.
3.1DS18B20的特点
(1)独特的单线接口方式与微处理器连接时仅需要一条口线即可实现双向通讯;
(2)在使用中不需要任何__元件;
(3)可用数据线供电,电压范围+
3.0~+
5.5V;
(4)测温范围-55~+125℃固有测温分辨率为
0.5℃;
(5)通过编程可实现9~12位的数字读数方式;
(6)用户可自设定非易失性的__上下限值;
(7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温;
(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作
3.
3.2DS18B20内部结构主要由4部分组成:64位光刻R0M、温度传感器、非易失性的温度__触发器TH和TL、配置寄存器,DS18B20的内部结构图如图
3.4所示图
3.4DS18B20内部结构图
3.
3.3DS18B20的内存结构DSI8B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPROM,后者存放高温和低温触发器TH,TL和结构寄存器高速暂存RAM包含了9个连续字节(0~8),前两个字节是测得的温度信息,字节0的内容是温度的低8位,字节1是温度的高8位,字节2是TH(温度上限__),字节3是TL(温度下限__),字节4是配置寄存器,用于确定输出分辨率9到12位第
5、
6、7个字节是预留寄存器,用于内部计算字节8是冗余检验字节,校验前面所有8个字节的CRC码,可用来保证通信正确DS18B20中的温度传感器对温度的测量结果用16位符号扩展的二进制补码读数形式提供DS18B20中的温度传感器可完成对温度的测量,以12位转化为例用16位符号扩展的二进制补码读数形式提供,以
0.0625℃/L__形式表达,其中S为符号位(见图
3.5)L__L__22222222L__L__SSSSS222图
3.5温度传感器12位数据在RAM中的存储这是12位转化后得到的16位数据,存储在18B20的两个8比特的RAM中二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于
0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于
0.0625即可得到实际温度
3.
3.4DS18B20的测温原理DS18B20的测温原理用于产生固定频率的脉冲__送给减法计数器1,高温度系数晶振随温度变化其振荡频率明显改变,所产生的__作为减法计数器2的脉冲输入,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量计数门的开启时间由高温度系数振荡器来决定每次测量前首先将-55℃所对应的基数分别置入减法计数器1和温度寄存器中减法计数器1和温度寄存器被预置在-55℃所对应的一个基数值减法计数器1对低温度系数晶振产生的脉冲__进行减法计数当减法计数器1的预置值减到0时温度寄存器的值将加1减法计数器1的预置将重新被装入减法计数器1重新开始对低温度系数晶振产生的脉冲__进行计数如此循环直到减法计数器2计数到0时停止温度寄存器值的累加此时温度寄存器中的数值即为所测温度由于它内部的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值只要计数门仍未关闭就重复上述过程直至温度寄存器值达到被测温度值
[1],其内部测温电路图
3.6所示
3.
3.5DS18B20的指令集操作ROM的指令共有5条,均为单字节指令,表
3.1是其16进制指令表表
3.1ROM操作16进制指令指令代码指令说明55指定匹配芯片指令CC跳过ROM匹配指令F0搜索芯片指令EC__芯片搜索33读ROM指令,器件收到这个指令后就把64位ID码传送给主机操作芯片的RAM、E2PROM指令共有6条,均为单字节指令,表
3.2是其16进制指令表表
3.2RAM、E2PROM操作16进制指令指令代码指令说明44温度转换指令,并把转换后的数据存放在RAM的B
1、B2的两个字节里BE读取温度指令,器件收到这个指令后把B
1、B2两个字节的数据传送给主机4E改写RAM的B
3、B
4、B5的数据,主机发这个指令后再分别发送相应的数据48器件收到这个指令后就将B
3、B
4、B5的数据写到E2PROMB8器件收到这个指令后就把EEPROM的高H、低L温度__值写到进B
3、B4B4器件收到这个指令后就返回0或者1给主机,0为寄生电源,1为外部电源
3.
3.6DS18B20与单片机的接口电路DS18B20的引脚图及与AT89C51的接口电路如图
3.7所示,其中DS18B20工作在外部电源供电方式,AT89C51单片机采用P
3.0和DS18B20通信图
3.7DS18B20与AT89C51单片机的接口电路
3.4按键输入在按键模块电路中有4个按键,K1是复位按钮,K2是温度上调按钮K3是温度下调按钮K4是输入数据确认按钮当数据输入完毕后按该按钮进行确认其硬件电路图如图
3.8所示图图
3.8按键与单片机的硬件连接
3.5继电器模块
3.
5.1固态继电器SSR工作原理本系统采用固态继电器进行控制它的控制原理是固态继电器只有两个输入端“+”和“-”及两个输出端,是一种四端器件工作时只要在“+”、“-”上加上一定的控制__,就可以控制输出两端之间的“通”和“断”,实现“开关”的功能,其中耦合电路的功能是为“+”、“-”端输入的控制__提供一个输入/输出端之间的通道,但又在电气上断开SSR中输入端和输出端之间的电__,以防止输出端对输入端的影响,耦合电路用的元件是“光耦合器”,它动作灵敏、响应速度高、输入/输出端间的绝缘耐压等级高;由于输入端的负载是发光二极管,这使固态继电器的输入端很容易做到与输入__电平相匹配,在使用可直接与计算机输出接口相接,即受“1”与“0”的逻辑电平控制触发电路的功能是产生合乎要求的触发__,驱动开关电路工作,但由于开关电路在不加特殊控制电路时,将产生射频干扰并以高次谐波或尖峰等污染电网,为此特设“过零控制电路”
[5]所谓“过零”是指,当加入控制__,交流电压过零时,固态继电器即为通态;而当断开控制__后,固态继电器要等待交流电的正半周与负半周的交界点零电位时,固态继电器才为断态这种设计能防止高次谐波的干扰和对电网的污染吸收电路是为防止从电源中传来的尖峰、浪涌电压对开关器件双向可控硅管的冲击和干扰甚至误动作而设计的,一般是用“R-C”串联吸收电路或非线性电阻压敏电阻器下图为一种典型的交流型SSR的电路原理图
[3],其内部结构图如图
3.9所示图
3.9继电器内部结构图
3.
5.2固态继电器SSR的特点
(1)SSR成功地实现了弱__Vsr对强电输出端负载电压的控制由于光耦合器的应用,使控制__所需的功率极低约十余毫瓦就可正常工作,而且Vsr所需的工作电平与TTL、HTL、CMOS等常用集成电路兼容,可以实现直接联接;
(2)SSR由于是全固态电子元件组成,与MER相比,它没有任何可动的机械部件,工作中也没有任何机械动作;SSR由电路的工作状态变换实现“通”和“断”的开关功能,没有电接触点,所以它有一系列MER不具备的优点,即工作高可靠、长寿命有资料表明SSR的开关次数可达108-109次,比一般的MER器件高几百倍,无动作噪声;耐振耐机械冲击,__位置无限制,很容易用绝缘防水材料灌封做成全密封形式,而且具有良好的防潮防霉防腐性能,在防爆和防止臭氧污染方面的性能也极佳;
(3)交流型SSR由于采用过零触发技术,因而可以使SSR安全地用在计算机输出接口上,不必为在接口上采用MER而产生的一系列对计算机的干扰而烦恼;
(4)SSR能承受在数值上可达额定电流十倍左右的浪涌电流的特点
3.
5.3继电器控制电路图下图是一个控制电阻丝加热的电路图,单片机通过P
3.1口的输出控制继电器的开合并进行通讯当继电器的开关闭合时,晶闸管的门极触发电路导通,即晶闸管导通,220V的交流电压直接加在加热装置上进行全加热,其电路图如图
3.10所示图
3.10继电器控制模块及加热装置
3.6显示模块用单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分静态显示数据稳定,使用的硬件较多动态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多这两种显示方式各有利弊静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间使用单片机系统串行输出,利用其串/并转换功能,送入数码管显示基本的半导体数码管是有7个条状发光二极芯片排列而成的,也称为七段数码显示器,可实现0~
9、A~F以及H、P的显示从各发光电极连接方式分为共阳极和共阴极两种共阳极是指笔画显示器各段发光管的阳极(即P区)是公共的,而阴极互相隔离共阴极型是笔画显示器各段发光管的阴极(即N区)是公共的,而阳极是互相隔离的,共阴极LED数码管的a~g及小数点位dp八个发光二极管加阳极加高电平(“1”)发亮,加低电平(“0”)发暗,而共阳极的LED的数码管的a~g及小数点位dp八个发光二极管正好相反,其共阳极的数码管电路图如图
3.11所示图
3.11数码管的共阳极电路图本电路采用共阳极数码管LG5641A进行动态显示,LG5641A具有四位数码管,这四个数码管的段选a、b、c、d、e、f、g分别接在一起,每一个都拥有一个共阳的位选端,通过动态显示可轮流显示设置温度与测量温度,这有利于节省I/O口用P
0.0~P
0.7口作为位选控制,P
2.0~P
2.7口传输要显示的数据,数据线和位选线直接接AT89C51单片机的I/O口即可,因为I/O口输出电流很小并且加上了上拉电阻这样可以对LED进行驱动,它的电压值足以驱动LED本设计就是采用动态显示电路,其电路图如图
3.12所示图
3.12动态显示电路
3.
6.1限流电阻计算R12到19的计算公式:5-
0.3-2/R10__计算R270所以取R12到R19为300R4到R11的计算公式:R=5-
0.7/20/三极管电阻用
4.7k电阻,R=5-
0.7\1=
4.3K220电阻的计算10__(5-
0.3-2)\R20__135R270所以R取220第4章恒温控制系用软件设计对单片机控制的软件设计是系统设计任务中的重点和难点因此,本章在建立系统各部分软件流程的基础上,设计了各部分的软件控制流程由于系统的操作过程和工作过程在程序设计的过程中起着很重要的指导作用,因此在软件设计之前应分析加热炉的工作流程
4.1工作流程此次设计的恒温水箱主要用于医疗卫生、科研、大专院校、实验室等领域,它可用于蒸馏、干燥、浓缩及恒温加热化学药品、生物制品检查血渍和生物实验恒温培养进行消毒之用因此,系统默认预定温度为60℃,设置这个温度值既可以起到杀菌消毒的作用又可以有效减少能源的消耗,达到最优的温度控制效果,同时它也可以用设定键来改变其预设温度值当上电复位后电阻丝先处于停止加热状态,但也可以直接启动运行运行过程中,系统不断检测当前温度,并送往显示器显示,达到预定值后停止加热;当温度下降到下限(比预定值低5℃)时再启动加热这样不断地重复上述过程,使温度保持在预定温度范围之内运行过程中也可以随时改变设定温度,温度设定好后随即生效,系统按新的设定温度运行
4.2程序模块系统软件由主程序、键盘输入子程序、设定温度子程序、温度检测子程序、温度控制子程序和显示子程序组成
4.
2.1主程序主程序完成系统的初始化,调用温度模块程序对其预置值及其合法性进行检查,预置温度的显示调用键盘扫描模块等若正常执行完三个子程序,则返回初始化进入到其它的状态,主程序的流程图见图
4.4所示图
4.4主程序流程图
4.
2.2温度传感器驱动子程序根据DS18B20的通讯协议,单片机控制DS18B20完成温度转换必须经过三个步骤每次读写之前都要对DS18B20进行复位,复位成功后再发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作复位要求单片机将数据线下拉500us,然后释放,DS18B20收到__后等待16~60us左右,再发出60~240us的存在低脉冲,CPU收到此__表示复位成功本系统对DS18B20的操作分为3个步骤初始化、ROM命令和DS18B20功能命令单片机要与DS18B20通信,首先必须完成初始化单片机产生复位__,DS18B20返回响应脉冲ROM命令完成单片机与总线上的某一DS18B20http://___.dzsc.com/icstock/248/DS18B
20.html\t_blank建立__,有搜寻ROM、读ROM、匹配ROM、忽略ROM、__查找等命令这里,单片机只连接1个DS18B20,因此只使用读ROM命令来读取DS18B20的48位ID号DS18B20功能命令在该步骤中完成温度转换、写暂存寄存器、读暂存寄存器、拷贝暂存寄存器、装载暂存器寄存器、读供电模式命令
[6]本系统不用温度__功能,因此在本步骤中只需完成温度转换,然后通过读暂存寄存器命令完成温度转化的结果所以,本系统对DS18B20进行的操作主要包括两个子过程
(1)读取DS18B20的序列号主机首先发一复位脉冲,等收到返回的存在脉冲后,发出搜索器件的序列号命令,读取DS18B20的序列号;
(2)启动DS18B20作温度转换并读取温度值主机在收到返回的存在脉冲后,发出跳过器件的序列号命令,跟着发出温度转换命令,再次复位并收到返回的存在脉冲后,发送DS18B20的序列号,读出数据(如图
4.5所示)
4.
2.3键盘扫描处理子程序键盘模块的处理是通过对K2,K3,K4进行操作的K2是温度上调按钮K3是温度下调按钮K4是输入数据确认按钮首先对K4数据输入确认键进行扫描判断是否被按下并且对K4键设置了一个标志位当其标志位为1时,表示K4被按下否则K4没有被按下,具体流程图
4.6所示
4.
2.4温度检测与控制子程序读取18B20的实时数据与设定值的比较,开始进行加热,在加热的过程中需要进行每2秒一次的跟踪检测,并把检测到的实时数据与设定值比较,根据比较结果进行不同方式的加热,其具体流程如图
4.7所示
4.
2.5温度显示子程序该模块首先判断系统是否处于设定状态,如果处于设定状态则显示设定温度,否则显示当前实际温度显示子程序的功能是将显示缓冲区内的二进制数据先转化成对应的BCD码,分别存入十位和个位显示区,然后通过串行通信口送出显示显示模块程序的流程见图
4.8第5章抗干扰的设计影响单片机系统可靠安全运行的主要因素主要来自系统内部和外部的各种电气干扰,并受系统结构设计、元器件选择、__、制造工艺影响这些都构成单片机系统的干扰因素,常会导致单片机系统运行失常,轻则影响产品质量和产量,重则会导致事故,造成重大经济损失形成干扰的基本要素有三个
(1)干扰源指产生干扰的元件、设备或__,如雷电、继电器、可控硅、电机、高频时钟等都可能成为干扰源;
(2)传播路径指干扰从干扰源传播到敏感器件的通路或媒介,典型的干扰传播路径是通过导线的传导和空间的辐射;
(3)敏感器件指容易__扰的对象,如A/D、D/A变换器、单片机、数字IC、弱__放大器等
5.1电源抗干扰措施控制设备中很多干扰都来自电源系统,现在的单片机系统,大都使用市电(220V,50Hz)在工业现场中,由于生产负荷的变化,如大电机的启、停,强电继电器的通、断等,往往造成电源电压的波动,严重时直接影响单片机的正常工作
[6]因此,必须对交流供电采取一些措施,以抑制由电源引起的干扰抑制交流电源的干扰,除了与功率大的用电设备分开供电外,还经常采用稳压、隔离、滤波和屏蔽等措施,可根据电网的质量及设备要求,采用适当的措施
5.
1.1采用滤波和屏蔽的供电电源在交流220V进线处,设置一个低通滤波器,它对50Hz的市电影响很小,而对频率很高的干扰波具有很强的抑制力滤波器要加屏蔽外壳,使其接地良好;进线端与出线端要严格分开,以防止感应和辐射耦合电源变压器的初级绕组和次级绕组需分别加屏蔽层,初、次级间再加屏蔽层,且初级的屏蔽层接交流电网的零线,次级屏蔽层和初、次级间的屏蔽层接至直流地端对于要求较高的系统,可在滤波和屏蔽之前,采取交流稳压及隔离措施,以将交流电网的地与设备地隔离开来
5.
1.2采用串联开关式稳压电源串联开关式稳压电源是使电路中的串联调整管工作于开关状态,即调整管主要工作在饱和导通和截止两种状态由于管子饱和导通时的管压降和截止时流经管子的电流都很小,管耗主要发生在状态转换过程中,所以,效率可高达80%~90%因此,这种电源具有体积小、重量轻、隔离性能好及抗干扰性能强的优点,常被单片机系统采用另外还有一种开关型电源,它是先把直流电压经过调制和整流,而后再稳压,因而具有很强的抗干扰能力,在智能化仪器和单片机系统中得到了广泛的应用
5.
1.3采用高抗干扰电压电源和干扰抑制器如应用反激变换器的开关稳压电源,采用频谱均衡法制成的抗干扰抑制器,目前已经有成品出售对于要求更高的控制系统,如大型单片机系统,可以考虑采用不间断电源(UPS)供电但UPS电源造价较高,所以在一般中小型系统中不宜采用
5.2输入输出通道的抗干扰措施对输入输出通道进行电气隔离,为了防止电气干扰__从输入及输出通道进入单片机系统程序跑飞(俗称“死机”),通常在输入输出通道上采用隔离技术用于隔离的主要器件有隔离放大器、隔离电压器和光电耦合器等,其中应用的最多的是光电耦合器光电耦合器由一只发光二极管和一只光电晶体管封装构成利用光耦合,把两个电路的地环隔开,两电路即拥有各自的地电位基准,它们相互__而不会造成干扰
[14]
5.3软件抗干扰措施考虑到控制系统装入生产现场,设备__就绪后,在改动硬件较困难,我们采用了以下软件可靠性措施,加之和硬件相结合,就可以使许多干扰得到抑制和消除
5.
3.1设置软件陷阱由于系统干扰可能破坏程序指针PC,PC一旦失控,使程序“乱飞”,可能进入非程序区,造成系统运行的一系列错误设置软件陷阱,可防止程序“乱飞”具体的做法是在ROM或RAM中,每隔一些指令,就把连续几个单元设置成空操作
5.
3.2增加程序监视系统设置陷阱在一定程度上解决了程序“乱飞”,但不能有效的解决死循环问题,采用单片机内部定时器进行监视具体做法是在程序一开始就启动定时器工作,在主程序中增设定时器赋值指令,使该定时器维持在非溢出工作状态定时时间要少大于程序一次循环的执行时间程序正常循环执行一次初值,使其不能溢出但若程序失控,定时器则记满溢出中断,在中断服务程序中使主程序自动复位又进入初始状态
[14]
5.
3.3软件冗余措施对于那些多次使用同一功能的软件指令,为了保证指令执行的可靠性,采用了以下措施
(1)采用多次读入法,确保开关量输入正确无误对于按钮和开关状态读入时,配合软件延时,配合软件延时可消除抖动和误动作;
(2)不断查询输出状态寄存器,及时纠正输出状态,防止由于干扰引起的输出量变化导致设备误动作;
(3)把对控制条件的一次采样、处理控制输出改为循环的采样、处理,这样对于惯性较大的控制部分具有良好的抗干扰作用
[8]____
[1]李叶紫.___.胡辉.孙东辉.编著MCS_51单片机应用教程清华大学出版社.
2008.
6.
[2]陆剑.单片机应用技术指导书河南工业职业技术学院
2005.
12.
[3]汪道辉.单片机系统设计与实践.电子工业出版社(50页时、分、秒计时器设计,59页键盘及接口技术).
[4]第二版.51系列单片机设计实例.北京____大学出版社(81—__页数码管时钟电路的设计).
[5]辛友顺、胡永生、薛小玲.单片机应用系统设计与实现.福建科学技术出版社(184-186页LED显示接口,190-193页键盘接口).
[6]黄庆华、张永格.单片机__与实例.电子工业出版社(127-162页数字式电子时钟的设计).
[7]闫玉德、俞红.MCS-51单片机原理与应用(C语言版).机械工业出版社(49-104页单片机的C程序设计).
[8]求是科技.单片机典型模块设计实例导航.人民邮电出版社(85-90页单片机数字时钟).
[9]刘守义,王静霞《单片机应用技术》.西安电子科技大学出版社,
2002.致谢首先,感谢我的论文指导老师,我的论文在的悉心的指导下完成的,让我懂得了更多,受益匪浅,老师的严谨细致、一丝不苟的作风一直是我工作、学习中的榜样,他循循善诱的教导和不拘一格的思路给予我无尽的启迪在此期间,让我系统性的认识和全面的掌握了单片机的原理在刚开始准备做毕业设计的时候,我一头雾水不知道该如何着手,是缪老师教我如何一步一步的完成直至最后的完善寻找有关的资料和课题并研究设计方案,进行设计的总体规划,理清课程设计思路,但是将这些具体的方案落实到每一个设计环节和步骤中,难免会出现一些错误,这就需要在进行设计的过程中利用所掌握的知识认真排查错误原因,这些都和缪老师的耐心指导是分不开的同时,我也非常感谢三年里教育我的每一位老师和帮助我的每一位同学,正是有了他们的帮助和支持,我三年的大学时光过的才是如此的充实在这次设计过程中,总是遇到这样或那样的问题有时发现一个问题的时候,需要做大量的工作,花大量的时间才能解决为以后的工作积累了经验,增强了信心,既让我们懂得了怎样把理论应用于实际,又让我们懂得了在实践中遇到问题怎样用理论去解决,它更是自己综合运用所学知识,发现、提出、分析和解决实际问题,锻炼实际能力的重要环节最后再次真诚感谢给予我热情帮助和关心的所有人!附录1单片机源程序;**********************************FLAG1BITF0;DS18B20存在标志位DQBITP
3.0__RKBIT01H__RK1BIT02HSHUCHUBITP
2.7TEMPER_LEQU29HTEMPER_HEQU28H;************程序起始********************ORG0000HAJMPMAINORG0003HLJMPZHSFORG000BHLJMPPWMORG0100H;**************主程序开始************MAIN:MOVSP#60HCLR__RKCLR__RK1CLRSHUCHUMOVSCON#50HMOVTMOD#21HMOVPCON#80HMOVTH0#0D8HMOVTL0#0EFHMOVTH1#0F3HMOVTL1#0F3HSETBTR1SETBIT0SETBEX0SETBET0SETBEALCALLINIT_18B20LCALLRE_CONFIGLCALLGET_TEMPERLCALLDELAYZD2:JNB__RK1ZD1SETBTR0AJMPZD3ZD1:CLRP
3.2ZD3:AJMPZD2ZHSF:SETBP
3.2CLRTR0JB__RKPD3CLRSHUCHUPD3:LCALLREADMOVR6#2MOVR0#29HMOVR1#30HZH:MOVA@R0ANLA#0FHLCALLASCIIMOV@R1AINCR1MOVA@R0SWAPAANLA#0fhLCALLASCIIMOV@R1ADECR0INCR1DJNZR6ZHMOVR1#30HCLRTIMOVR6#4TRAN:MOVA@R1MOV__UFAJNBTI$CLRTIINCR1DJNZR6TRANRE__IVE:JNBRI$MOVB__UF;高位CLRRIJNBRI$MOVA__UF;低位CLRRICLR__RKLCALLDIGTALMOV35HAMOVABLCALLDIGTALMOVB#16MULABADDA35HCJNEA#00HPD1MOVR7#200CLRSHUCHUSJMPENDPPD1:CJNEA#0FFHPD2MOVR7#200SETBSHUCHUSETB__RKSJMPENDPPD2:MOVR7ASETBSHUCHUENDP:MOVR6#00HLCALLINIT_18B20LCALLRE_CONFIGLCALLGET_TEMPERMOVTH0#0D8HMOVTL0#0EFHSETB__RK1RETIPWM:MOVTH0#0D8HMOVTL0#0EFHINCR6DJNZR7ENDP1CLRP
2.7MOVA#200CLRCSUBBAR7MOVR7AENDP1:CJNER6#199ENDP2CLR__RK1ENDP2:RETI;**********DS18B20复位程序*****************INIT_18B20:SETBDQNOPCLRDQMOVR0#0FBHTSR1:DJNZR0TSR1;延时SETBDQMOVR0#25HTSR2:JNBDQTSR3DJNZR0TSR2TSR3:SETBFLAG1;置标志位,表明DS18B20存在CLRP
2.0;二极管指示AJMPTSR5TSR4:CLRFLAG1LJMPTSR7TSR5:MOVR0#06BHTSR6:DJNZR0TSR6TSR7:SETBDQ;表明不存在RET;********************设定DS18B20暂存器设定值**************RE_CONFIG:JBFLAG1RE_CONFIG1RETRE_CONFIG1:MOVA#0CCH;放跳过ROM命令LCALLWRITE_18B20MOVA#4EHLCALLWRITE_18B20;写暂存器命令MOVA#00H;__上限中写入00HLCALLWRITE_18B20MOVA#00H;__下限中写入00HLCALLWRITE_18B20MOVA#7FH;选择12温度分辨率LCALLWRITE_18B20RET;*****************发出温度转换命令***********GET_TEMPER:SETBDQLCALLINIT_18B20JBFLAG1TSS2RET;若不存在则返回TSS2:MOVA#0CCH;跳过ROMLCALLWRITE_18B20MOVA#44H;发出温度转换命令LCALLWRITE_18B20RET;**********************读出温度转换值**************************READ:LCALLINIT_18B20MOVA#0CCH;跳过ROMLCALLWRITE_18B20MOVA#0BEH;发出读温度换命令LCALLWRITE_18B20LCALLREAD2_18B20;读两个字节的温度RET;***************写DS18B20程序************WRITE_18B20:MOVR2#8CLRCWR1:CLRDQMOVR3#6DJNZR3$RRCAMOVDQCMOVR3#23DJNZR3$SETBDQNOPDJNZR2WR1SETBDQRET;***********读18B20程序,读出两个字节的温度*********READ2_18B20:MOVR4#2;低位存在29H高位存在28HMOVR1#29HRE00:MOVR2#8RE01:CLRCSETBCNOPNOPCLRDQNOPNOPNOPSETBDQMOVR3#7DJNZR3$MOVCDQMOVR3#23DJNZR3$RRCADJNZR2RE01MOV@R1ADECR1DJNZR4RE00RETASCII:MOVDPTR#TAB1;将四位二进制数所对应数转化成其ascii码MOVCA@A+DPTRRETDIGTAL:CLRC;ASCII转十六进制数SUBBA#30HMOVR0ASUBBA#10JC__MOVAR0SUBBA#07HSJMPJIESHU__:MOVAR0JIESHU:RETDELAY:MOVR5#33;延迟1sLOOP3:MOVR6#100LOOP2:MOVR7#100LOOP1:NOPDJNZR7LOOP1DJNZR6LOOP2DJNZR5LOOP3RETTAB1:DB30H31H32H33H34H35H36H37H38H39HDB41H42H43H44H45H46HEnd附录2电路原理图论文分类号密级无扬州职业大学毕业论文(设计)斜率累加器预置减法计数器1计数比较器预置减到零温度寄存器减到零减法计数器2高温度系数振荡器低温度系数振荡器设置/清除最低有效位增加停止图
3.6内部测温电路图开中断调用温度传感器数据采集子程序调用键盘扫描处理子程序调用显示子程序关中断开始初始化发送读暂存器命令读取温度值读取48位ID号启动温度转换开始返回初始化图
4.5温度传感器驱动子程序流程图。