单片机恒温箱温度控制系统的结构设计

上传人:沈*** 文档编号:134048748 上传时间:2022-08-12 格式:DOCX 页数:26 大小:454.31KB
收藏 版权申诉 举报 下载
单片机恒温箱温度控制系统的结构设计_第1页
第1页 / 共26页
单片机恒温箱温度控制系统的结构设计_第2页
第2页 / 共26页
单片机恒温箱温度控制系统的结构设计_第3页
第3页 / 共26页
资源描述:

《单片机恒温箱温度控制系统的结构设计》由会员分享,可在线阅读,更多相关《单片机恒温箱温度控制系统的结构设计(26页珍藏版)》请在装配图网上搜索。

1、单片机恒温箱温度控制系统的结构设计一、本课程设计系统概述1、系统原理选用AT89C2051单片机为中央处理器,通过温度传感器DS18B20寸恒温箱进行温度采集,将采集到的信号传送给单片机,在由单片机对数据进行处理控制显示器,并比较采集温度与设定温度是否一致,然后驱动恒温箱的加热或制冷。2、系统总结构图总体设计应该是全面考虑系统的总体目标,进行硬件初步选型,然后确定一个系统的草案,同时考虑软硬件实现的可行性。总体方案经过反复推敲,确定了以美国Atmel公司推出的51系列单片机为温度智能控制系统的核心,并选择低功耗和低成本的存储器、数码显示器等元件,总体方案如下图:图1系统总体框图二、硬件各单元设

2、计1、单片机最小系统电路单片机选用Atmel公司的单片机芯片AT89C2051,完全可以满足本系统中要求的采集、控制和数据处理的需要。单片机的选择在整个系统设计中至关重要,该单片机与MCS-51系列单片机高度兼容、低功耗、可以在接近零频率下工作等诸多优点,而广泛应用于各类计算机系统、工业控制、消费类产品中。AT89C2051是AT89系列单片机中的一种精简产品。它是将AT89C51的P0口、P2口、EA/VppALE/PROGPSENH线省去后,形成的一种仅20引脚的单片机,相当于早期Intel8031的最小应用系统。这对于一些不太复杂的控制场合,仅有一片AT89C2051就足够了,是真正意义

3、上的“单片机”。AT89C2051为很多规模不太大的嵌入式控制系统提供了一种极佳的选择方案,使传统的51系列单片机的体积、功耗大、可选模式少等诸多弱点不复存在。该型号单片机包括:(1)一个8位的微处理器(CPU)。(2)片有2K字节的程序存储器(ROM和128/256字节RAM(3)15条可编程双向I/O口线。(4)两个16位定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可设置成定时方式,并可以根据计数或定时的结果实现计算机控制。(5)五个中断源的中断控制系统。(6)个全双工UATR通用异步接收发送器)的串行I/0口,用于实现单片机之间或单片机与微机之间的串行通信。(7)片含模

4、拟比较器。(8)低功耗的闲置和掉电模式。+5VAT89C205是一个20脚的双列直插封装(DIP)芯片。最小系统电路包括晶体振荡电路和手动复位电路,如图2。本设计使用一片AT89C205就代替了原来的8031、EPROM2732地址锁存器74LS373,因为AT89C205部的2KBEPRO和128B的RAM对智能化温度传感器测试系统已能满足设计要求,而且降低了成本,结构设计也较精巧。2、温度传感器采用数字温度传感器DS18B20与传统的热敏电阻相比,他能够直接读出被测温度并且可根据实际要求通过简单的编程实现912位的数字值读数方式。可以分别在93.75ms和750m完成9位和12位的数字量,

5、并且从DS18B2读出的信息或写入DS18B2的信息仅需要一根口线(单线接口)读写,温度变换功率来源于数据总线,总线本身也可以向所挂接的DS18B2供电,而无需额外电源。因而使用DS18B2可使系统结构更趋简单,可靠性更高,成本更低。测量温度围为55C+125C。C,在一10C+85C。C围,精度为土0.5C。DS182的精度较差为土2C。现场温度直接以“一线总线”的数字方式传输,大大提高了系统的抗干扰性。其引脚分布如图3所示!MNC几MDSI8B20图3DS18B20引脚图(1)引脚功能如下:NC(1、2、6、7、8脚):空引脚,悬空不使用。VDDG脚):可选电源脚,电源电压围35.5V。D

6、Q(4脚):数据输入/输出脚,漏极开路,常态下高电平。DS18B20测温原理DS18B2的测温原理如图4所示,图中低温度系数晶振的振荡频率受温度影响很小,用于产生固定频率的脉冲信号送给计数器1。高温度系数晶振随温度变化其振荡率明显改变,所产生的信号作为计数器2的脉冲输入。计数器1和温度寄存器被预置在-55C所对应的一个基数值。计数器1对低温度系数晶振产生的脉冲信号进行减法计数,当计数器1的预置值减到0时,温度寄存器的值将加1,计数器1的预置将重新被装入,计数器1重新开始对低温度系数晶振产生的脉冲信号进行计数,如此循环直到计数器2计数到0时,停止温度寄存器值的累加,此时温度寄存器中的数值即为所测

7、温度。斜率累加器用于补偿和修正测温过程中的非线性,其输出用于修正计数器1的预置值。DS18B2在正常使用时的测温分辨率为0.5C,如果要更高的精度,则在对DS18B2测温原理进行详细分析的基础上,采取直接读取DS18B2部暂存寄存器的方法,将DS18B2的测温分辨率提高到0.10.01C。图4测温原理图DS18B20与单片机接口电路P1.3口和DSI8B20的引脚DQS接,作为单一数据线。U2即为温度传感芯片DS18B20,本设计虽然只使用了一片DSI8B20,但由于不存在远程温度测量的考虑所以为了简单起见,采用外部供电的方式,如图2.6所示。测温电缆采用屏蔽4芯双绞线,其中一对线接地线与信号

8、线,另一对接VC(和地线,屏蔽层在电源源端单点接地。3、键盘显示电路LED控制器的连接有并行和串行方式。由于串行方式占用较少接口,因此得到广泛应用。显示电路中选用MAX721作为LEQg动芯片。MAX721是一个高集成化的串行输入/输出的共阴极LE耶动显示器。每片可驱动8位7段加小数点的共阴极数码管。片包括BCD?码器、多路扫描控制器、字和位驱动器和8X8静态RAM外部只需要一个电阻设置所有LEE显示器字段电流。MAX721和控制器只需要三根导线连接,每位显示数字有一个地址由控制器写入。允许使用者选择每位是BCD译码或不译码。使用者还可以选择停机模式、数字亮度控制、从18位选择扫描位数和对所有

9、LEE显示器的测试模式。引脚功能MAX7219是24引脚芯片,它的引脚排列如图2.7所示。各引脚功能如下:1)DIN(1脚):串行数据输入端,当CLI为上升沿时数据被载入16位部移位寄存器。2)CLK(13脚):串行时钟脉冲输入端,最大工作频率可达10MHz3)LOAD(12脚):片选端,当LOA为低电平时,芯片接收来自DIN的数据,接收完毕,LOA回到高电平,接收的数据将被锁定。4)DIG0DIG7(2、3、5、6、7、8、10、11脚):吸收显示器共阴极电流的位驱动线,最大值可达500mARINp齢、rrfelNETdigcTLX:3TDIG7|RFjrVy叵DKi177liadQFMLT

10、厨SEGDPzT|5EGEF|rnr:7v*TF|5WG刃SECJ.R固心F7T|se77gin图6MAX7219引脚图5)SEGASEGGSEGDR14、15、16、17、20、21、22、23脚):驱动显示器7段及小数点的输出电流,一般为40mA可编程调整。6)ISET(18脚):硬件亮度调节端。7) DOUT(24脚):串行数据输出端;V+,正电源。8) GND(9脚):接地。1) MAX7219与单片机和LED及键盘的接口电路MAX721啲3个输入端DIN、CLK和LOA与单片机的三个I/O口连接,DIG0DIG7分别与八个共阴极LED勺公共端连接,SEGSEGGSEGD分别与每个LE

11、Dt段动和小数点驱动端相连。电路图如图7所示。2) 键盘功能介绍采用独立式按键设计,如图上图所示。由于只有四个按键,因此按键接口电路的设计比较简单,单片机P1.4P1.7端口设定为输入状态,平时通过电阻上拉到Vcc,按键按下时,对应的端口的电平被拉到低电平。这样就可以通过查询P1的高4位来判断有门有按键按下按键各接一根输入线,一根输入线的按键工作状态不会影响其他输入线上的工作状态。通过读I/O口,判断各I/O口的电平状态,即可识别出按下的按键。4个按键定如下:A、P1.4:S1功能键,按此键则开始键盘控制。B、P1.5:S2加,按此键则温度设定加1度。C、P1.6:S3减,按此键则温度设定减1

12、度。DP1.7:S4发送,按此键将传感器的温度传送到上位机。DS7DSOa10abc85e4g3Dp7DPYaA89efgdpfdpecdOGDDpyAmber-CARSTVCC(RXD)P3.0P1.7(TXD)P3.1P1.6XTAL2P1.5XTAL1P1.4(INT0)P3.2P1.3(TNTT)P3.3P1.2(T0)P3.4P1.1(AIN1)(T1)P3.5P1.0(AIN0)-GNDP3.7U123456710AT89C2051+5V2019R55.1KR55.1KR55.1KR55.113gdpDPYAaAbAdpDpyAmber-CAGDS2+5V1T213DIG0G11D

13、IG2DIG3DIG4DIG5DIG6DIG7U22匚67305824sbitTSOR=P1A7;/温度测试端sbitDIN=P1A2;/MAX7219串行数据输入sbitLOAD=P1A1;/MAX7219装载数据输入sbitLCK=P1A0;/MAX7219时钟输入sbitSCL=P3A2;/AT24C32信号线sbitSDA=P3A3;/AT24C32数据线sbitOUT0=P3A4;/控制制冷光耦sbitOUT1=P3A5;/控制加热光耦sbitweidog=P3A7;/看门狗/*A*#defineucharunsignedchau;#defineuintunsigneduint;uc

14、hartemp1,temp2;/温度的整数和小数ucharsetb,sets,setg,setx;/预设定温度的百、十、个位和小数位ucharxianb,xians,xiang,xianx;/显示温度的百、十、个位和小数位ucharadd_1,add_10;/ucharcount;/T0中断计数ucharpid;/PID数值bitoutflag;/升温降温标志位bitalert;/*函数声明*/voidInitInterupt();/*键盘扫描*/ucharkey();/*MAX7219子程序*/voidsend(ucharadd,dat)/*温度传感器子程序voidDelay15();/vo

15、idDelay60();/voidDelay100ms();/voidWrite0TS();/voidWrite1TS();/voidReadTS();/voidResetTS();/voidWriteBTS();/voidReadBTS();/延时15us延时60us延时100ms写DS18B2数据位0写DS18B2数据位1读DS18B2数据位复位DS18B20写1字节读1字节voidInitTS();/初始化DS18B20voidGetTempTS();/读取测得的温度程序Voidcompare();voidmain()uchari,j;ucharaa;/PID值sp=0x50;TSOR=

16、1;/1wire总线释放Delay(500);/延时500msInitInterupt();/初始化中断设置setb=Ox00;sets=Ox02;setg=Ox03setx=Ox05;/预设值23.5Ccount=0;P1=0xff;InitTS();/初始化DS18B20send(Ox0c;Ox01);/send(Ox0b;Ox07);/send(Ox0a;Oxf5);/send(Ox09;Oxff);/while(1)GetTempTS();/i=temp1;if(i=0xianb=i/100;设定停机方式扫描7位亮度等级译码方式读取测得的温度i=100)j=i%100;xians=j/

17、10;xiang=j%10|0x80;xinx=temp2;send(0x01;xianb);/send(0x02;xians);/send(0x03;xiang);/send(0x04;xianx);/显示测得的温度send(0x05;setb);/send(0x06;sets);/Send(0x07;setg);/send(0x08;setx);/显示预设定的温度elsealert=1;警告voidkey();/调按键扫描voidcompare();/调比较程序if(outflag=1)pid=_a_func();/调PID算法for(i=0;i1;i+;elseif(outflag=-1

18、)pid=_a_func();for(i=0;i1;i+;elseOUT0=0;/停止压缩机OUT1=;0/停止电加热初始化中断设置VoidInitInterupt()TOMD=0x21;/TL1=0xFD;/设置波特率TH1=0xFD;/PX0=1;/设置中断优先级EA=1;/中断允许ES=1;/串行通讯中断允许PCON=0;/SCON=0x50;/TL0=0x00;TH0=0x4C;/定时50msET0=1;/TR0=1;/启动定时器0*定时器0中断*/Timer0_process()interrupt0using0EA=0;/关中断TRO=0;/关定时器0TL0=0x00;TH0=0x4

19、C;/重置定时常数定时累计达1.5dcount+;if(count=30)/weidog=0;weidog=1;/输出看门狗信号四、设计小结经过这两周的课程设计,使我受益匪浅,不仅可以巩固了以前所学过的知识,比如一些画电路图的软件:protelse99、visio等等。更复习到了单片机的知识以及C语言而且学到了很多在书本上所没有学到过的知识。在设计的过程中遇到的问题,也通过各种方式的查资料以及老师、同学的帮助下一一解决。在这次设计中老师十分关心我们的设计论文,多次提出宝贵的修改意见,给予了我莫大的精神鼓励和技术支持,使我能顺利的完成这次论文的设计。但是也正是通过这次设计我发现我还有许多不足之处

20、,所学到的知识还远远不够,以至于还没能做到最好。对以前所学过的知识理解得不够深刻,掌握得不够牢固,比如说不懂C语言的编程等。2 总的来说,这次的课程设计不仅巩固了自己平时学的知识,而且也让自己学到了许多的上课学不到的知识,对自己的专业知识有相当大的帮助!五、参考文献1长德.单片机原理与应用M.:机械工业,1996毅刚等.单片机应用设计M.:工业大学,1997丁元杰.单片微型计算机及其应用M.:机械工业,1994.何立民.MCS-51系列单片机应用系统设计系统配置与接口技术M.:航空航天大学,1990.石曙光,石雄武.基于数字PID和数字电位器的恒温控制系统.汉工业学院报,2005,第24卷第1

21、期附录:总原理图J212V3RXDTXDPCDB92183780515948C80.1uFC310UFVCCR11K1TXD34C40.01C5+10uF5C6+TXD14U6VCCPF1MRWDIWDoPF0GNDRESETMAX813LV+VC1+VC1-V-C2+GNDC2-T1OUTT1INT2OUTT2INR1INR1OUTR2INR20UTMAX232RXD11TXD10uF1Y112MHHZ33pFDSOa10d51e4eabcdU1RST6n7ipC1833pF9105(INT0)P3.2(INT(T0(T1(RXD)P3.0仃XD)P3.1XTALXTALa10de4b9K2

22、0VCC19P1.718P1.617P1.516P1.415P1.3R55.1AAR55.1KR55.1KR55.1KDPYagdpDpyAmber-CAT)P3.3)P3.4)P3.5U2P1.P1.P1.DPY1(AIN10(AIN014112131312DIG2DIG3DIG4GNDP3.7RESETAT89C205108+5V24R?3VoutRES2J3D28LED27CON265R1010k接P3.4330Triac+5VR1510k9AOptoTRIAC74070.01uF12DIG5DIG6DIG7R123.9k9411C1010uFMAX7219CNGIC9I0.1uFR98A7407R154.7KNCNCNCNCVDDNCDQGNDDS18B20360OptoTRIACR1Q1g3Dp-7R16360接P3.5R17330DpyAmber-CAS4OO-S3mS2ModS1koo-+5VDINV+LOADCLKISETDIG0SEGADIG1SEGBDIG2SEGCDIG3SEGDDIG4SEGEDIG5SEGFDIG6SEGGDIG7DOUTSEGDPGNDGND制冷系统5.5K1814aT6-b20.2321*15f17-g22DP1C110.11uFV1220V加热系统1Q2HR183.9kTriac*C12V1220V

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!