




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(2011届)毕业设计(论文)资料题 目 名 称: 基于单片机控制的恒温箱设计 学 院(部): 电气与信息工程学院 专 业: 机电一体化技术 学 生 姓 名: 班 级: 学号 指导教师姓名: 职称 最终评定成绩: 湖南工业大学教务处 (2011届)专科毕业设计(论文)基于单片机控制的恒温箱设计学 院(部): 电气与信息工程学院 专 业: 机电一体化技术 学 生 姓 名: 刘 勇 班 级:机电0821 学号 指导教师姓名: 周翔 职称 讲师 最终评定成绩 2011年6年摘 要本设计以单片机AT89c51为核心部件,采用单总线型数字式的温度传感器DS18B20作为温度采集,设计制作了带键盘输入控制
2、,动态显示和越限报警功能的恒温控制系统。该系统既可以对当前温度进行实时显示,又可以对温度进行控制,并使其恒定在某一温度范围。控制键盘设计使设置温度简单快捷,两位整数一位小数的显示方式具有更高的显示精度。通过对系统软件和硬件的合理规划,发挥单片机自身集成多系统功能单元的优势,在不减少功能的前提下有效降低了成本,系统操作简便。关键词 :单片机,恒温控制,AT89C51,DS18B20,精度ABSTRACTThis design with single-chip microcomputer AT89c51 as the core component with single bus-control d
3、igital temperature sensor DS18B20 as temperature gathering, design with a keyboard input control, the dynamic display and the limit alarm function of temperature control system. This system not only can real-time display of the current temperature and temperature control, and make its constant in a
4、certain temperature range. Control the keyboard design makes set temperature simple and quick, two integer a decimal display mode has higher precision of the show. Through the system software and hardware reasonable planning, play microcontroller itself more system function unit integrated advantage
5、, in not reduce functionality premise to reduce the cost and system easy operation. Key words: single-chip ,microcomputer temperature control, AT89C51 single chip ,DS18B20 ,precision 目 录第1章 绪论11.1 课题背景 11.2 国内外恒温控制技术发展现状及趋势11.2.1 国外恒温控制的发展现状及趋势11.2.2 国内恒温控制的发展现状及趋势21.3 设计任务21.3.1 设计目的21.3.2 系统设计技术指标
6、31.3.3 系统功能3第2章 恒温控制系统总体方案设计42.1系统方案选择与论证42.1.1 一位式的模拟控制方案42.1.2 二位式的模拟控制方案42.1.3 PID算法控制方案52.2 恒温控制系统工作原理6第3章 恒温控制系统硬件设计73.1 CPU主控模块73.1.1 AT89C51单片机简介73.1.2 AT89C51各引脚功能说明73.1.3 AT89C51单片机主要性能参数8晶振电路与复位电路的设计83.2 温度采集模块9 DS18B20的特点93.2.2 DS18B20内部结构113.2.3 DS18B20的内存结构113.2.4 温度传感器DS18B20的测温原理
7、123.2.5 DS18B20的指令集133.2.6 DS18B20与单片机的接口电路143.3 按键输入电路163.4 继电器模块173.4.1 固态继电器SSR工作原理173.4.2 固态继电器SSR的特点183.4.3 继电器控制电路图193.5 显示模块19第4章 恒温控制系统软件设计224.1 工作流程224.2 程序模块224.2.1 主程序224.2.2 温度传感器驱动子程序234.2.3 键盘扫描处理程序244.2.4 温度检测与控制子程序24温度显示子程序254.3 软件调试264.4 软硬调试28结束语29参考文献30致谢31附录一 硬件电路32附录二 软件程序33第1章
8、绪 论1.1 课题背景温度是工业上常见的被控参数之一,特别是在冶金、化工、建材、食品加工、机械制造等领域,恒温控制系统被广泛应用于加热炉、热处理炉、反应炉等。在一些温控系统电路中,广泛采用的是通过热电偶、热电阻或PN结测温电路经过相应的信号调理电路,转换成AD转换器能接收的模拟量,再经过采样保持电路进行AD转换,最终送入单片机及其相应的外围电路,完成监控。但是由于传统的信号调理电路实现复杂、易受干扰、不易控制且精度不高。本文介绍单片机通过数字温度传感器检测外部温度对水箱进行恒温控制的设计,采用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制。因此,本系统采用一种新型的可编程温
9、度传感器(DS18B20),不需复杂的信号处理电路和AD转换电路就能直接与单片机完成数据采集和处理,实现方便、精度高,可根据不同需要用于各种场合。在日常生活中,也经常用到电烤箱、微波炉、电热水器、烘干箱等需要进行温度检测与控制的家用电器。采用单片机实现温度控制不仅具有控制方便、简单、灵活等优点,而且可以大幅度地提高被控温度的技术指标,从而大大提高产品的质量,现以恒温控制系统的设计进行介绍。1.2 国内外恒温控制技术发展现状及趋势随着计算机控制技术的发展,恒温控制己在工业生产领域中得到了广泛应用,并取得了巨大的经济和社会效益。在不同的领域内,由于控制环境、目标、成本等因素,需要针对具体情况来设计
10、系统结构和功能,以取得最佳的控制效果。其中,恒温环境的自动化控制技术在工业生产、商业运营中是一个重要研究课题。 国外恒温控制的发展现状及趋势自70年代以来,由于工业过程控制的需要,特别是在微电子技术和计算机技术的迅猛发展,以及自动控制理论和设计方法发展的推动下,国外恒温控制系统发展迅速,并在智能化,自适应参数的自整定等方面取得了很大的科技成果。在这方面以日本、美国、德国、瑞典等国技术领先,并且都生产出了一批商品化的性能优异的温度控制器及仪器仪表。目前,国外温度控制系统及仪表正朝着高精度智能化、小型化等方面快速发展。虽然温度控制系统在国内各行各业的应用已经十分广泛,但从国内生产的温度控制器及技术
11、来讲,其总体发展水平仍然不高,同国外的日本、美国、德国等先进国家相比,仍然有着较大的差距。 国内恒温控制的发展现状及趋势我国目前在恒温控制技术这方面总体技术水平处于20世纪80年代中后期水平,成熟产品主要以“点位”控制及常规的PID控制器为主,它只能适应一般温度系统控制,难于控制滞后、复杂、时变的温度系统控制。在适应于较高控制场合的智能化、自适应控制仪表领域内,国内技术还不十分成熟,形成商品化并广泛应用的控制仪表较少。因此,我国在恒温控制等控制仪表行业与国外还有着一定的差距。从过程量的检测角度出发,温度是最常见的过程变量之一,它是一个非常重要的过程变量,因为它直接影响燃烧、化学反应、发酵、烘烤
12、、煅烧、蒸馏、浓度、挤压成形,结晶以及空气流动等物理和化学过程。而恒温控制技术在工业领域应用非常广泛,由于其具有工况复杂、参数多变、运行惯性大、控制滞后等特点,它对控制调节器要求较高。其温度控制不好就可能引起生产安全,产品质量和产量等一系列问题。尽管恒温控制很重要,但是要控制好温度常常会遇到意想不到的困难。随着嵌入式系统开发技术的快速发展及其在各个领域的广泛应用,人们对电子产品的小型化和智能化要求越来越高,作为高新技术之一的单片机以其体积小、价格低、可靠性高、适用范围大以及本身的指令系统等诸多优势,在各个领域、各个行业都得到了广泛应用。1.3 设计任务 设计目的设计一个恒温自动调节控制系统,温
13、度可以在一定范围内由人工设定,并能在环境温度降低时实现自动调节,以保持与设定的温度基本不变。利用单片机AT89C51实现温度的智能控制,使温度能够在设定温度实现恒定温度调节,利用数字温度传感器读出实际温度,并在此基础上将实际温度调节到通过键盘设定的温度(其方式是加热或降温),并通过数码管显示器实现当前温度与设定温度的显示。 系统设计技术指标设计的恒温控制系统的技术指标:(1)预置时显示设定温度,达到定温度时显示实时温度,显示精确到1。(2)恒温箱温度可预置,在误差范围内恒温控制,温度控制误差±1。(3)恒温系统由1KW电炉加热。 (4)启动后有运行指示,温度低于预置温度5时进行220
14、V全加热。(5)具有相应的保护功能。 系统功能(1)可以对温度进行自由设定,但必须在0100内,设定时可以实时显示出设定的温度值。(2) 加热由1台1KW电炉来实现,如果温度不在设定温度时,根据设定的温度值与实际检测的温度值之差来采取不同的加热方式。(3) 能够保持实时显示温度,显示位数4位,分别为百位、十位、个位和小数位。(但由于规定不超过90度,所以百位也就没有实现,默认的百位是不显示的。)第2章 恒温控制系统总体方案设计2.1系统方案选择与论证 一位式的模拟控制方案此方案是传统的一位式模拟控制方案,选用模拟电路,用电位器设定给定值,反馈的温度值和设定值比较后,决定加热或不加热。其特点是电
15、路简单,易于实现,但是系统所地结果的精度不高并且调节动作频繁,系统静差大,不稳定,受环境影响大,不能实现复杂的控制算法,难以用数码管显示,难以用键盘设定,其方案一框图如图2.1所示。比较器温度预置信号放大固态继电器加热装置数据采集信号放大图2.1 一位式模拟控制方案框图 二位式的模拟控制方案此方案采用单片机系统来实现。单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。单片机系统通过温度传感器(ADC590)对水箱内水温进行检测,得到模拟的温度信号,在经过A/D转换成数字信号之后,则可用数码管来显示水温的实际值,还能用键盘输入设定值,也可实现打印功能。本方案还可选用51单片机
16、(内部含有4KB的EEPROM),不需要外扩展存储器可使系统整体结构较为简单。但是它是一种传统的模拟控制方式,而模拟控制系统难以实现复杂控制规律,控制方案的修改也比较麻烦,其方案二框图如图2.2所示。加热装置上限比较温度预置信号放大信号采集固态继电器信号处理下限比较图2.2 二位式模拟控制方案框图 PID算法控制方案此方案采用单片机为控制核心的控制系统,尤其对温度控制,它可达到核心的控制作用,并且可方便实现数码显示、键盘设定及利用PID算法来控制PWM波形的产生,进而控制电炉的加热来实现恒温控制,其所测结果精度也大大的得到了提高,在利用PID算法来控制PWM波形的产生,是有效的控制数字脉冲的输
17、出宽度,使固态继电器得到有效和有序的逻辑控制,不会使固态继电器产生误动作。因此利用PWM技术进行脉宽调制的优点是:(1)从处理器到被控系统信号都是数字形式的,无需进行数模转换。(2)让信号保持为数字形式可将噪声影响降到最小,并且噪声只有在强到足以将逻辑“1”改变为逻辑“0”或将逻辑“0”改变为逻辑“1”时,才能对数字信号产生影响。(3)对噪声抵抗能力的增强也是PWM相对于模拟控制的另外一个优点,而且这也是在某些时候将PWM用于通信的主要原因。(4)PWM经济、节约空间、抗噪性能强,是一种值得广大工程师在许多设计应用中使用的有效技术。再加上单片机的软件编程灵活、自由度大,可用软件编程实现各种控制
18、算法和逻辑控制。它可以通过用数字温度传感器采集到的实际水温温度直接进行数码管显示,还能用键盘输入设定值,并且内部含有4KB的EEPROM,不需要外扩展存储器,可使系统整体结构更为简单1,其方案三框图如图2.3所示。键盘设定数据采集单片机电源电路LED数码显示固态继电器加热装置图2.3 基于单片机控制的方框图数字PID调整复位电路由于方案一和方案二是传统的模拟控制方式,而模拟控制系统难以实现复杂控制规律,控制方案的修改也比较麻烦,而方案三是采用单片机为控制核心的控制系统,利用PID控制原理和PWM技术实现对温度的控制。基于这样的控制原理和PWM技术的优越性,在对温度控制的系统中,它可达到采用其他
19、控制系统所达不到的控制效果,并且可方便实现数码实时显示、键盘设定、直接可以驱动固态继电器,其测量结果的准确性和精度是非常高的,故经过对三种方案的比较论证,本设计采用方案三,利用单片机按增量式的PID控制算法对采集的温度数据进行处理,得到控制量,利用增量式的PID控制算法来控制PWM波形的产生进行控制固态继电器,从而达到控制电炉的功率进行加热,实现对温度的恒温控制。2.2 恒温控制系统工作原理现对该方案的具体原理进行详细介绍,其具体控制图如图2.4所示。AT89C51数字PID继电器控制电路电炉智能温度传感器DS18B20驱动电路LED显示图2.4恒温控制原理图按键输入系统通过数字温度传感器检测
20、温度,把采集到的数据直接送到单片机进行处理,由于数字式温度传感器能在极短时间内把采集到的模拟量转换成数字量,这样被它处理的数据直接送到数字PID模块进行调整。然后,把检测到的数据与预先设定的温度值进行比较,根据不同的差值去控制控制固态继电器的通断,以采取不同的加热方式进行加热升温。另外,还设置了温度实时显示的装置,可以同时显示预先设定的温度值和实际检测到的温度值。第3章 恒温控制系统硬件设计恒温控制系统主要由六部分组成:CPU主控制模块、主电源模块、键盘处理模块、温度采集模块、继电器控制模块及LED显示模块。3.1 CPU主控模块CPU主控制模块采用AT89C51芯片,把数字温度传感器采集到的
21、温度信号与原预先设定值进行比较,然后根据其差值通过PID调节整定,控制继电器的通断进行不同加热方式,能用键盘进行输入数据的处理以及温度信号的实时显示。 AT89C51单片机简介AT89C51是一种带4K字节闪存可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。AT89C51是一种带4K字节闪存可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和
22、输出管脚相兼容。由于将多功能8位CPU和闪速存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C51单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。3.1.2 AT89C51各引脚功能说明如图3.1所示:VCC:供电电压。Vdd:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。图3.
23、1 40引脚双列直插封装图P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。RST:复位输入。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。/PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。当/EA端保持高电平时,从内部程序存储器开始读取。XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。 3.1.3 AT89C
24、51单片机主要性能参数(1)与MCS51产品指令系统完全兼容; (7)32个可编程I/O口线;(2)4K字节可重复擦写Flash闪速存储器; (8)2个16位定时/计数器;(3)1000次擦写周期; (9)6个中断源;(4)全静态操作:0Hz24MHz; (10)可编程串行UART通道;(5)三级加密程序存储器; (11)低功耗空闲和掉电模式。(6)128×8字节内部RAM; 晶振电路与复位电路的设计单片机内部带有时钟电路,只需要在片外通过XTAL1、XTAL2引脚接入定时控制单元(晶体振荡和电容),即可构成一个稳定的自激振荡器。振荡器的工作频率一般在1.212MHz之间,当然在一般
25、情况下频率越快越好,可以保证程序运行速度即保证了控制的实时性。一般采用石英晶振作定时控制元件,在不需要高精度参考时钟时,也可以用电感代替晶振,有时也可以引入外部时钟脉冲信号。接在晶振上的电容虽然没有严格要求,但电容的大小会影响振荡器的稳定性和起振的快速性。因此,通常选择在1030pF左右,在此次设计时钟电路时,晶振频率选用(12MHz),电容选用(20pF),并且它们应尽可能靠近芯片,以减小分布电容,保证振荡器振荡的稳定性。复位电路采用按键电平复位,它通过复位端经电阻与+5V电源实现,只要能保证复位信号高电平持续时间大于2个机器周期就可实现复位,其时钟电路和复位电路如图3.2所示。图3.2 时
26、钟电路和复位电路图3.2 温度采集模块由于在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。而且一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此,在本设计中的温度测量系统中,采用美国Dallas半导体公司的DS18B20温度芯片对测量温度进行采集温度数据,并且由于它抗干扰能力强,是解决这些问题的最有效方案。另外数字温度传感器(DS18B20)具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的
27、测温效果和广泛的应用。 DS18B20的特点美国Dallas半导体公司的数字化温度传感器DS1820是世界上第一片支持 "一线总线"接口的温度传感器,在其内部使用了在板(ON-B0ARD)专利技术。全部传感元件及转换电路集成在形如一只三极管的集成电路内。一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。现在,新一代的DS18B20体积更小、更经济、更灵活。使你可以充分发挥“一线总线”的优点。目前DS18B20批量采购价格仅6元左右。在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂
28、移误差问题等技术问题,才能够达到较高的测量精度。另外一般监控现场的电磁环境都非常恶劣,各种干扰信号较强,模拟温度信号容易受到干扰而产生测量误差,影响测量精度。因此,在温度测量系统中,采用抗干扰能力强的新型数字温度传感器是解决这些问题的最有效方案,新型数字温度传感器DS18B20具有体积更小、精度更高、适用电压更宽、采用一线总线、可组网等优点,在实际应用中取得了良好的测温效果。新的"一线器件"DS18B20体积更小、适用电压更宽、更经济。DS18B20、DS1822的特性 DS18B20可以程序设定912位的分辨率,精度为±0.5°C。可选更小的封装方式,
29、更宽的电压适用范围。分辨率设定,及用户设定的报警温度存储在EEPROM中,掉电后依然保存。DS18B20的性能是新一代产品中最好的!性能价格比也非常出色!DS1822与DS18B20软件兼容,是DS18B20的简化版本。省略了存储用户定义报警温度、分辨率参数的EEPROM,精度降低为±2°C,适用于对性能要求不高,成本控制严格的应用,是经济型产品。 继"一线总线"的早期产品后,DS1820开辟了温度传感器技术的新概念。DS18B20和DS1822使电压、特性及封装有更多的选择,让我们可以构建适合自己的经济的测温系统。 DS18B20、DS1822 &qu
30、ot;一线总线"数字化温度传感器同DS1820一样,DS18B20也支持"一线总线"接口,测量温度范围为-55°C+125°C,在-10+85°C范围内,精度为±0.5°C。DS1822的精度较差为±2°C。现场温度直接以"一线总线"的数字方式传输,大大提高了系统的抗干扰性。适合于恶劣环境的现场温度测量,如:环境控制、设备或过程控制、测温类消费电子产品等。与前一代产品不同,新的产品支持3.0V5.5V的电压范围,使系统设计更灵活、方便。而且新一代产品更便宜,体积更小。二、DS
31、18B20的外形DS18B20内部结构主要由四部分组成:64位光刻ROM、温度传感器、非挥发的温度报警触发器TH和TL、配置寄存器。DS18B20的外形及管脚排列如下图3.3:图3.3 DS18B20外形及引脚排列图DS18B20引脚定义: (1) GND为电源地; (2) DQ为数字信号输入/输出端; (3) VDD为外接供电电源输入端(在寄生电源接线方式时接地)DS18B20的主要特性(1)独特的单线接口方式:与微处理器连接时仅需要一条口线即可实现双向通讯。(2)在使用中不需要任何外围元件。(3)可用数据线供电,电压范围:+3.0+5.5 V。 (4)测温范围:-55 +125。固有测温分
32、辨率为0.5。 (5)通过编程可实现912位的数字读数方式。 (6)用户可自设定非易失性的报警上下限值。 (7)支持多点组网功能,多个DS18B20可以并联在惟一的三线上,实现多点测温。(8)负压特性,电源极性接反时,温度计不会因发热而烧毁,但不能正常工作。 DS18B20内部结构主要由4部分组成:64位光刻R0M、温度传感器、非易失性的温度报警触发器TH和TL、配置寄存器,DS18B20的内部结构图如图3.4所示。图3.4 DS18B20内部结构图 DS18B20的内存结构DSI8B20温度传感器的内部存储器包括一个高速暂存RAM和一个非易失性的可电擦除的EEPROM,后者存放高温和低温触发
33、器TH,TL和结构寄存器。高速暂存RAM包含了9个连续字节(08),前两个字节是测得的温度信息,字节0的内容是温度的低8位,字节1是温度的高8位,字节2是TH(温度上限报警),字节3是TL(温度下限报警),字节4是配置寄存器,用于确定输出分辨率9到12位。第5、6、7个字节是预留寄存器,用于内部计算。字节8是冗余检验字节,校验前面所有8个字节的CRC码,可用来保证通信正确。DS18B20中的温度传感器对温度的测量结果用16位符号扩展的二进制补码读数形式提供。DS18B20中的温度传感器可完成对温度的测量,以12位转化为例:用16位符号扩展的二进制补码读数形式提供,以0.0625/LSB形式表达
34、,其中S为符号位。如表一所示表一 温度传感器12位数据在RAM中的存储 LSB LSB 22222222LSB LSB SSSSS222这是12位转化后得到的16位数据,存储在18B20的两个8比特的RAM中。二进制中的前面5位是符号位,如果测得的温度大于0,这5位为0,只要将测到的数值乘于0.0625即可得到实际温度;如果温度小于0,这5位为1,测到的数值需要取反加1再乘于0.0625即可得到实际温度。例如+125的数字输出为07D0H,+25.0625的数字输出为0191H,-25.0625的数字输出为FF6FH,-55的数字输出为FC90H 温度传感器DS18B20的测温原理DS18B2
35、0的测温原理用于产生固定频率的脉冲信号送给减法计数器1,高温度系数晶振随温度变化其振荡频率明显改变,所产生的信号作为减法计数器2的脉冲输入,当计数门打开时,DS18B20就对低温度系数振荡器产生的时钟脉冲后进行计数,进而完成温度测量。计数门的开启时间由高温度系数振荡器来决定,每次测量前,首先将-55所对应的基数分别置入减法计数器1和温度寄存器中,减法计数器1和温度寄存器被预置在-55 所对应的一个基数值。减法计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当减法计数器1的预置值减到0时温度寄存器的值将加1,减法计数器1的预置将重新被装入,减法计数器1重新开始对低温度系数晶振产生的脉冲信号进
36、行计数,如此循环直到减法计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测温度,由于它内部的斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正减法计数器的预置值,只要计数门仍未关闭就重复上述过程,直至温度寄存器值达到被测温度值,其内部测温电路图3.5所示。斜率累加器预置减法计数器1计数比较器预置减到零温度寄存器减到零减法计数器2高温度系数振荡器低温度系数振荡器设置/清除最低有效位增加停止 图3.5 内部测温电路框3.2.5 DS18B20的指令集操作ROM的指令共有5条,均为单字节指令,表二是其16进制指令表: 表二 ROM操作16进制指令指令代码 指令说明55
37、 指定匹配芯片指令CC 跳过ROM匹配指令F0 搜索芯片指令EC 报警芯片搜索33 读ROM指令,器件收到这个指令后就把64位ID码传送给主机操作芯片的RAM、E2PROM指令共有6条,均为单字节指令,表三 是其16进制指令表: 表三 RAM、E2PROM操作16进制指令指令代码 指令说明44 温度转换指令,并把转换后的数据存放在RAM的B1、B2的两个字节里BE 读取温度指令,器件收到这个指令后把B1、B2两个字节的数据传送给主机4E 改写RAM的B3、B4、B5的数据,主机发这个指令后再分别发送相应的数据48 器件收到这个指令后就将B3、B4、B5的数据写到E2PROMB8 器件收到这个指
38、令后就把EEPROM的高H、低L温度报警值写到进B3、B4B4 器件收到这个指令后就返回0或者1给主机,0为寄生电源,1为外部电源 DS18B20与单片机的接口电路DS18B20的引脚图及与AT89C51的接口电路如图所示,其中DS18B20工作在外部电源供电方式,AT89C51单片机采用P3.0和DS18B20通信,如图3.6所示。图3.6 DS18B20与AT89C51单片机的接口电路 (1) GND为电源地; (2) DQ为数字信号输入/输出端; (3) VDD为外接供电电源输入端;DS18B20与AT89C51通信分析:当程序运行时,首先将DS18B20初始化,设置好要求的初始值,再调
39、用温度读取子程序读取温度测量值,当温度转换命令发布后,经转换所得的温度值以二字节补码形式存放在高速暂存存储器的第0和第1个字节。单片机可通过单线接口读到该数据,读取时低位在前,高位在后。对应的温度计算:当符号位S=0时,直接将二进制位转换为十进制;当S=1时,先将补码变为原码,再计算十进制值。第九个字节是冗余检验字节。 DS18B20暂存寄存器分布寄存器内容字节地址温度值低位0温度值高位1高温限值TH2低温限值TL3配置寄存器4保留5保留6保留7CRC检验8根据DS18B20的通讯协议,主机控制DS18B20完成温度转换必须经过三个步骤:每一次读写之前都要对DS18B20进行复位,复位成功后发
40、送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求主CPU将数据线下拉500微秒,然后释放,DS18B20收到信号后等待1660微秒左右,后发出60240微秒的存在低脉冲,主CPU收到此信号表示复位成功。 根据ROM指令表指 令约定代码 功能读ROM 33H读DS1820ROM中的编码(即64位地址)符合ROM55H发出此命令之后,接着发出64位ROM编码,访问单总线上与该编码相对应的DS1820使之作出响应,为下一步对该DS1820的读写作准备。搜索ROM0F0H用于确定挂接在同一总线上DS1820的个数和识别64位ROM地址。为操作各器件作好准备。跳过R
41、OM0CCH忽略64位 ROM地址,直接向DS1820发温度变换命令。适用于单片工作。告警搜索命令0ECH执行后只有温度超过设定值上限或下限的片子才做出响应。根据RAM指令表 指令约定代码功能温度变换44H启动DS1820进行温度转换,转换时最长为500ms(典型为200ms)。结果存入内部9字节RAM中。读暂存器0BEH内部RAM中9字节的内容写暂存器4EH发出向内部RAM的3、4字节写上、下限温度数据命令,紧跟该命令之后,是传送两字节的数据。复制暂存器48H将RAM中第3、4字节的内容复制到EEPROM中。重调EEPROM0B8H将EEPROM中内容恢复到RAM中的第3、4字节。读供电方式
42、0B4H读DS1820的供电模式。寄生供电时DS1820发送“0”,外接电源供电DS1820发送“1”。DS18B20的读写时序和测温原理与DS1820相同,只是得到的温度值的位数因分辨率不同而不同,且温度转换时的延时时间由2s减为750ms。根据上述工作编写相关子程序:1.读出温度子程序读出温度子程序的主要功能是读出RAM中的9字节,在读出时需进行CRC校验,校验有错时不进行温度数据的改写。2温度转换命令子程序温度转换命令子程序主要是发温度转换开始命令,当采用12位分辨率时转换时间约为750ms,在本程序设计中采用1s显示程序延时法等待转换的完成。3计算温度子程序计算温度子程序将RAM中读取
43、值进行BCD码的转换运算,并进行温度值正负的判定。将以上子程序或单独调用或加入初始化中优化程序布局。温度数据的计算处理方法:从DS18B20读取出的二进制值必须先转换成十进制值,才能用于字符的显示。因为DS18B20的转换精度为912位可选项的,为了提高精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即温度值为温度寄存器里的二进制值乘以0.625,就是实际的二进制温度值。一个十进制值和二进制值之间有很明显的关系,就是把二进制的高字节的低半字节和低字节的低半字节化成十进制后,就是温度值的小数部分。小数部分因为是半个字节,所以二进制值范围是0F,转换成十进制小数值
44、就是0。0625的倍数(015)。采用1位显示小数,可以精确到0.1。3.3 按键输入电路在按键模块电路中,K1是复位按钮,z0.0是温度上调按钮, z0.1是温度下调按钮, 按键后系统自动调节设定值。其硬件电路图如图3.7所示。(a) (b)如图3.7 按键输入模块按键电路图分析:Z0.0接单片机P3.2口,设置为预设温度个位调整位Z0.1接单片机P3.3口,设置为预设温度十位调整位预定低电平为有效按键,采用去抖动子程序确定按键的有效性按键电路运行分析:当系统通电正常运行时,系统每一秒钟就对按键电路扫秒一次,扫描结束后,将扫描的结果送至系统中进行校验,如果有按键按下,则判断是那个键按下,在进
45、行相关操作。例如,判断是z0.0按下,此按键设定为预设温度各位调整位,每检测一次有按键按下,则预设位就自动加一,当加到9时再加一则变为0.十位调整为调整方法相同。同时,在DS18B20里面的存储数据也会改变,进行温度的调整。其流程图如3.8所示:开始是否是K1按下是否K2键按下 数码显示返回主程序否否上调子程序下调子程序是是图3.8 键盘扫描处理流程图3.4 继电器模块 固态继电器SSR工作原理本系统采用固态继电器进行控制,它的控制原理是:固态继电器只有两个输入端(“+”和“-”)及两个输出端,是一种四端器件。工作时只要在“+”、“-”上加上一定的控制信号,就可以控制输出两端之间的“通”和“断
46、”,实现“开关”的功能,其中耦合电路的功能是为“+”、“-”端输入的控制信号提供一个输入/输出端之间的通道,但又在电气上断开SSR中输入端和输出端之间的(电)联系,以防止输出端对输入端的影响,耦合电路用的元件是“光耦合器”,它动作灵敏、响应速度高、输入/输出端间的绝缘(耐压)等级高;由于输入端的负载是发光二极管,这使固态继电器的输入端很容易做到与输入信号电平相匹配,在使用可直接与计算机输出接口相接,即受“1”与“0”的逻辑电平控制。触发电路的功能是产生合乎要求的触发信号,驱动开关电路工作,但由于开关电路在不加特殊控制电路时,将产生射频干扰并以高次谐波或尖峰等污染电网,为此特设“过零控制电路”。
47、所谓“过零”是指,当加入控制信号,交流电压过零时,固态继电器即为通态;而当断开控制信号后,固态继电器要等待交流电的正半周与负半周的交界点(零电位)时,固态继电器才为断态。这种设计能防止高次谐波的干扰和对电网的污染。吸收电路是为防止从电源中传来的尖峰、浪涌(电压)对开关器件双向可控硅管的冲击和干扰(甚至误动作)而设计的,一般是用“R-C”串联吸收电路或非线性电阻(压敏电阻器)。其内部结构图如图3.9所示。图3.9 继电器内部结构图 固态继电器SSR的特点(1)SSR成功地实现了弱信号(Vsr)对强电(输出端负载电压)的控制。由于光耦合器的应用,使控制信号所需的功率极低(约十余毫瓦就可正常工作),
48、而且Vsr所需的工作电平与TTL、HTL、CMOS等常用集成电路兼容,可以实现直接联接。(2)SSR由于是全固态电子元件组成,与MER相比,它没有任何可动的机械部件,工作中也没有任何机械动作;SSR由电路的工作状态变换实现“通”和“断”的开关功能,没有电接触点,所以它有一系列MER不具备的优点,即工作高可靠、长寿命(有资料表明SSR的开关次数可达108-109次,比一般的MER器件高几百倍),无动作噪声;耐振耐机械冲击,安装位置无限制,很容易用绝缘防水材料灌封做成全密封形式,而且具有良好的防潮防霉防腐性能,在防爆和防止臭氧污染方面的性能也极佳。(3)交流型SSR由于采用过零触发技术,因而可以使
49、SSR安全地用在计算机输出接口上,不必为在接口上采用MER而产生的一系列对计算机的干扰而烦恼。(4)SSR能承受在数值上可达额定电流十倍左右的浪涌电流的特点。3.4.3 继电器控制电路图下图是一个控制电阻丝加热的电路图,单片机输出控制继电器的开合并进行通讯,当继电器的开关闭合时,晶闸管的门极触发电路导通,即晶闸管导通,220V的交流电压直接加在加热装置上进行全加热,其电路图如图3.10所示。图3.10 继电器控制模块及加热装置3.5 显示模块用单片机驱动LED数码管有很多方法,按显示方式分,有静态显示和动态(扫描)显示,按译码方式可分硬件译码和软件译码之分。静态显示数据稳定,使用的硬件较多。动
50、态显示需要CPU时刻对显示器件进行数据刷新,显示数据有闪烁感,占用的CPU时间多。这两种显示方式各有利弊:静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。使用单片机系统串行输出,利用其串/并转换功能,送入数码管显示。基本的半导体数码管是有7个条状发光二极芯片排列而成的,也称为七段数码显示器,可实现09、AF以及H、P的显示。从各发光电极连接方式分为共阳极和共阴极两种。共阳极是指笔画显示器各段发光管的阳极(即P区)是公共的,而阴极互相隔离。共阴极型是笔画显示器各段发光管的阴极(即N区)
51、是公共的,而阳极是互相隔离的,共阴极LED数码管的ag及小数点位dp八个发光二极管加阳极加高电平(“1”)发亮,加低电平(“0”)发暗,而共阳极的LED的数码管的a及小数点位dp八个发光二极管正好相反本电路采用共阳极数码管LG5641A进行动态显示,LG5641A具有四位数码管,这四个数码管的段选a、b、c、d、e、f、g分别接在一起,每一个都拥有一个共阳的位选端,通过动态显示可轮流显示设置温度与测量温度,这有利于节省I/O口。用P2.0P2.7口作为位选控制,P0.0P0.7口传输要显示的数据,数据线和位选线直接接AT89C51单片机的I/O口即可,因为I/O口输出电流很小并且加上了上拉电阻
52、,这样可以对LED进行驱动,它的电压值足以驱动LED。本设计就是采用动态显示电路,其电路图如图3.11所示。 (1)实时温度显示 (2)预设温度显示 (3)显示电路连接图3.11 动态显示电路第4章 恒温控制系统软件设计对单片机控制的软件设计是系统设计任务中的重点和难点。因此,本章在建立系统各部分软件流程的基础上,设计了各部分的软件控制流程。由于系统的操作过程和工作过程在程序设计的过程中起着很重要的指导作用,因此在软件设计之前应分析加热炉的工作流程。4.1 工作流程当上电复位后电阻丝先处于停止加热状态,但也可以直接启动运行。运行过程中,系统不断检测当前温度,并送往显示器显示,达到预定值后停止加
53、热;当温度下降到下限(比预定值低5)时再启动加热。这样不断地重复上述过程,使温度保持在预定温度范围之内。运行过程中也可以随时改变设定温度,温度设定好后随即生效,系统按新的设定温度运行。4.2 程序模块系统软件由主程序、键盘输入子程序、设定温度子程序、温度检测子程序、温度控制子程序和显示子程序组成。4.2.1 主程序主程序完成系统的初始化,调用温度模块程序,对其预置值及其合法性进行检查,预置温度的显示,调用键盘扫描模块等。若正常执行完三个子程序,则返回初始化进入到其它的状态,主程序的流程图如图4.1所示。 开 中 断调用温度传感器数据采集子程序调用键盘扫描处理子程序调用显示子程序关 中 断开 始初 始 化 图4.1 主程序流程图 温度传感器驱动子程序根据DS18B20的通讯协议,单片机控制DS18B20完成温度转换必须经过三个步骤:每次读写之前都要对DS18B20进行复位,复位成功后再发送一条ROM指令,最后发送RAM指令,这样才能对DS18B20进行预定的操作。复位要求单片机将数据线下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗知识题目及答案
- 医疗美容器械行业未来五年:市场需求与产品创新路径研究报告
- 临时防护工程措施方案(3篇)
- 建筑工程-服务方案(3篇)
- 押题宝典教师招聘之《幼儿教师招聘》试题附参考答案详解(轻巧夺冠)
- 储能设施2025年环境影响评估标准与环保产业政策实施策略
- 柬埔寨河岸保护工程方案(3篇)
- 教师招聘之《小学教师招聘》能力提升试题打印附答案详解【b卷】
- 农畜产品品牌与社交媒体合作创新创业项目商业计划书
- 水产品跨境电商合作与品牌推广创新创业项目商业计划书
- 2023年理赔专业技术职务任职资格理赔员定级考试试卷C车险理算核赔高级
- 迎中秋庆国庆主题班会
- 龙门吊轨道基础施工方案
- GB/T 26081-2022排水工程用球墨铸铁管、管件和附件
- 身份证委托书
- 医院普通外科病史采集、查体及病历书写要点精讲课件
- 2020年工程监理企业发展策略及经营计划
- 陕西水资源论证报告表
- 大学生暑期社会实践登记表
- 单选题51-100试题含答案
- 危险品管理台帐
评论
0/150
提交评论