《恒温箱自动控制系统设计报告.docx》由会员分享,可在线阅读,更多相关《恒温箱自动控制系统设计报告.docx(8页珍藏版)》请在三一办公上搜索。
1、恒温箱自动控制系统设计【摘要】本组设计的恒温箱自动控制系统主要由中央处理器、温度传感器、半导体制冷器、键盘、显示、声光 报警等部分组成。处理器采用AVRMega128单片机,温度传感器采用DS18B20禾U用半导体制冷片一面制冷一面发热的工作特性进行升降温,用LCD12864作为显示输出。温度传感器检测到温度数据传送给单片机,单片机再将温度数据与给定值进行比较,从而发出对半导体制冷器的控制信号,使温度维系在给定值附近(偏差小于土2C),同时单片机将数据送与显示器。【关键字】单片机温度传感器半导体制冷器控制 一、设计方案比较 1.1总体设计方案LCD12864予以显示。这里利用DS18B2C芯片
2、作为恒温箱的温度检测元件。DS18B2C芯片可以直接把测 量 的温度值变换成单片机可以读取的标准电压信号。单片机从外部的两位十进制拨码键盘进行给 定值设定,读入的数据与给定值进行比较,根据偏差的大小,采用闭环控制的方法使控制量更 加精准。控制结果通过液晶显示器系统整体框图如图一所示:图一、单片LED显示系统整体框DS18B20 温度检测制冷和加 热器件1)温度检测元件的选择:方案一:这里所设计的是测温电路,因此可以采用热敏电阻之类的器件利用其精品文 感温效应,检测并采集出随温度变化而产生的电压或电流,进行A/D转换后送给单片机进行 数据处理,从而发出控制信号。此方案需要另外设计A/D转换电路,
3、使得温测电路比较麻烦。方案二:上网查得温度传感器DS18B20能直接读出被测温度,并可根据实际要 求通过 简单的编程实现912位的数字值读取方式,它内部有一个结构为8字节的高速暂存RAM存 储器。DS18B20芯片可以直接把测量的温度值变换成单片机可以读取的标准电压信号。与方 案一比较更加简单实用,因此我们选择方案二。2)显示方案选择:方案一:温度的显示可以用数码管,但数码管只能显示简单的数字,它有电路复杂,占用 资源较多,显示信息少等缺点。方案二:LCD12864汉字图形点阵液晶显示模块,可显示汉字及图形,内置8192个中文汉字,128个字符及64X 256点阵显示RAM可显示内容:128列
4、X 64行,多种软件 功能:光标显示、画面移位、自定义字符、睡眠模式等。我们设计的系统需要显示更多的信息, 所以考虑显示功能更好的液晶显示,要求能显示更多的数据,增强显示信息的可读性,看起来 更方便。所以选择方案二。RS C25 C27th. i u ithi丁IvocM2IM3_ IIC22OJiiJI7VCCf. - rirclNTliLCD12864接线方法如图二所示:图二、LCD12864接线图3)声光报警系统PiM采用蜂鸣器及三色岩ED组成声光报警系统。制冷时LED为红色,温度达到控制要求且 上下浮动在1C以内时为绿色,升温时为黄色。温度到达给定值的同时,蜂鸣器发出报警提示 音。二、
5、理论分析与计算Dfil实现温度的实时显示是由计算温度子程序将RAM中读取值进行BCD码的转换运算,并进行温度值UOB*的判定,从DS18B20读取出的二进制值必须先转换成十进肿在制值,才能用于字符显示。因为DS18B20的转换精度为9-12位可选的,为了提高n水十背光精品文精度采用12位。在采用12位转换精度时,温度寄存器里的值是以0.0625为步进的,即 温度值为温度寄存器里的二进制值乘以0.0625,就是实际的十进制温度值。计算温度子程序流程图如图三:图三、温度子程序流程三、系统硬件电路设计首先确定系统总体结构,再逐个设计所需电路。10x 10 (mm恒温室,为是室内温度与外界隔绝好,我们
6、采用厚泡沫板做箱体,温度传感 器嵌入箱内并固定在箱内中间位置;单片机主控电路模块;单片机最小系统接线如图四:图四、单片机最小系统接线图电源电路模块,设计有5V, 6V,9V, 12V等不同输出电压以满足各部分电压需求;控制制冷片工作的继电器模块;键盘输入模块,可输入二位十进制数,输入范围为535,超出范围时会给出错误提示;输出显示模块;声光报警系统,蜂鸣器接线图如图五:KX4娜鸣器图五、蜂鸣器接线图程序下载电路如图六示:VCCT X;N1?_USD图六、下载电路四、系统软件程序设计4. 1主程序系统主程序首先对系统进行初始化,包括设置定时器、端口;开机画面显示系统程序不断循环执行显示效果:#i
7、 nclude#in clude#i nclude12864.h#i ncludedelay.h#i nclude18B20.h#i ncludeAVR_128.h#in cludekey_sca n.h#define WATERON PORTE|=0x01;#define WATEROFF PORTE&=0x01;#defi ne WIND_FREEZEON PORTE|=0x02;#defi ne WIND_FREEZEOFF PORTE&=0x02;#define HEETON PORTE|=0x04;#defi ne HEETOFF PORTE&=0x04;void mai n()ui
8、nt wen du;uchar aa,bb,a 仁 0,a2=0,b 仁 0,b2=0,b3=0, m 仁 0, n1=0,a,b,c;DDRA=0xf0;PORTA=0xff;DDRG=0xff;PORTG=0xff;DDRE=0xff;PORTE=0xf0;PORT_I nit();/端口初始化LcdJ nit();/初始化 LCDClear_All();TCCR1B=0X05; /1024 分频TCNT1H=0Xc2; /设定初值,定时一分钟TCNT1L=0Xf6;TIMSK|=BIT(2);Write_LCD(0,1,当前温度:);Write_LCDJ ib(4,1,a); /显示转换
9、的结果在12864上表示出来Write_LCD _lib(5,1,b);Write_LCD(6,1,.);Write_LCD_lib(7,1,c);WATERON;五、测试方法与实验数据5.1硬件和软件的调试1、硬件调试时,可先检查印制板及焊接的质量是否符合要求,有无虚焊点及线路间有无短路、断路。然后用万用表检测,检查无误后,可通电检查LCD液晶显示器亮度情况,一般情况下取背光电压为45.5V即可得到满意的效果,再依次检查各部分结构安装是否牢固。2. 软件调试是在ICCAVR编译器下进行,源程序编译及仿真调试应分段或以子程序为单 位逐个进行,最后结合硬件实时调试。子程序调试包括:1) CD12
10、864显示程序;2).延时函数子程序;3).DS18B2 0读出温度子程序、温度转换命令子程序、计算温度子程序、显示数据 刷新子程序。5.2实验数据及结果分析1、实验数据降温过程:温度范围(C)3328282323181813138变化时间(S)2126375785稳定在5C时,一分钟内温度浮动最大为0.7 C升温过程:温度范围(C)5101015152020252530变化时间(S)182334 _5274稳定在30r时,一分钟内温度浮动勺最大为0.9 C2、结果分析升、降温过程中每变化15C所用时间均未超过3分钟,满足设计要求,但是从数据可以 看出,温度在向室温方向变化时的速度要快于背离室温变化时的速度,说明外界温度对恒温箱 内温度还是有一定的影响,不可消除。六、报告总结本恒温箱的温度可调范围:3 35C,温度误差小,温度显示稳定。可显示当前温 度、设定 温度、温度差值;设定温度通过3X4矩阵键盘输入,当温度达到设定值时启动蜂鸣器,指示 灯变为绿色。【参考文献】1.2.3.4.5全国大学生电子设计竞赛获奖作品汇编6电子 线路设计应用手册7单片机基础.单片机原理与控制技术(第二版) 单片机机开发技术与实训 高频电路原理与分析(第二版) 电子线路设计实验测试(第二版)张志良主编黄庆华、张永格、主编曾兴雯、刘乃安、陈键、编著谢自美、主编(06/07/08 年)张友汉主编李广弟主编