《智能仪表课程设计论文基于AT89C51单片机的温室多点温度设计.doc》由会员分享,可在线阅读,更多相关《智能仪表课程设计论文基于AT89C51单片机的温室多点温度设计.doc(20页珍藏版)》请在三一办公上搜索。
1、 智能仪表 课程设计(论文)题目: 温室温度检测装置设计 院(系): 专业班级: 学 号: 学生姓名: 指导教师: 起止时间: 课程设计(论文)任务及评语 学 号学生姓名专业班级课程设计题目温室温度检测装置设计课程设计(论文)任务设计任务设计可用于农业大棚温室环境使用的温度检测装置。温度的检测结果可在温室内显示,并由CAN总线远传至控制中心。按下显示键,显示器显示温室平均温度,显示10秒后,自动消隐。技术参数1. 温度监测点8个,每个监测点距离50米;2. 温度范围:050 温度检测精度0.53. 数据远传距离500米。设计要求1. 设计内容:温度检测电路、单片机最小系统、键盘显示电路、CAN
2、通信接口电路及相应的软件设计;2. 硬件电路图应采用绘图软件绘制,所用器件型号、参数标注完整;3. 对各功能电路的设计说明应指出所选器件型号、本设计中引脚的连接方法、芯片(端口)地址、外围器件参数,并说明工作过程4. 软件设计上应按照系统软、硬件功能的划分说明系统软件的功能、主程序流程图及工作过程说明、主要程序模块流程图等,要求程序结构完整,应有变量及端口地址定义,应编译通过全部或部分程序模块。进度计划1. 查阅资料,确定设计方案、绘制系统总体结构图、划分软硬件功能(2天)2. 设计温度检测电路、单片机最小系统(1天)3. 设计键盘显示电路(1天)4. 设计CAN通信接口电路,完成系统硬件整体
3、电路图绘制(2天)5. 编写、调试系统程序(3天)6. 修改设计说明书、准备答辩(1天)指导教师评语及成绩平时: 论文质量: 答辩: 总成绩: 指导教师签字: 年 月 日注:成绩:平时20% 论文质量60% 答辩20% 以百分制计算摘要本文以AT89C51单片机系统为核心,由DS18B20数字温度传感器、LED数码显示管构成的多点温度检测系统。各个温度检测单元能独立完成各自功能,同时能够根据主控机的指令对温度进行定时采集,测量结果不仅温度的检测结果可在温室内显示,并可以由CAN总线远传至控制中心机中,进行进一步的存档、处理。按下显示键,显示器显示温室平均温度,显示10秒后,自动消隐。单片机负责
4、控制指令的发送,控制各个温度点进行温度采集,收集测量数据,并对测量结果(包括历史数据)进行整理、显示和存储。关键词:单片机;温度传感器;CAN总线目 录第1章 绪论1第2章 方案论证22.1 温度传感器的选型22.2 DS18B20的功能介绍22.3 系统设计框图3第3章 硬件设计43.1 AT89C51单片机最小系统设计43.1.1单片机的选择43.1.2 时钟电路的设计43.1.3复位电路的设计53.2 温度采集电路设计53.3 显示电路的设计63.3.1显示器电路的设计63.4 CAN总线传输电路73.5键盘电路设计8第4章 软件设计94.1 程序框图设计94.2 程序代码见附录10第5
5、章 课程设计总结11参考文献12附录13附录14III 第1章 绪论温度对工、农业生产和日常生活有着重大的影响,如空调系统温度检测,电力、电讯设备之间过热故障预知检测,消防电气的非破坏性温度检测等等,可见温度监测系统的应用领域十分广泛,因此对温度的检测有着重要的现实意义。我国人多地少,人均占有耕地面积更少。因此,要改变这种局面,只靠增加耕地面积是不可能实现的,因此我们要另辟蹊径,想办法来提高单位亩产量。温室大棚技术就是其中一个好的方法。温室大棚就是建立一个模拟适合生物生长的气候条件,创造一个人工气象环境,来消除温度对生物生长的约束。而且,温室大棚能克服环境对生物生长的限制,能使不同的农作物在不
6、适合生长的季节产出,使季节对农作物的生长影响不大,部分或完全摆脱了农作物对自然条件的依赖。由于温室大棚能带来可观的经济效益,所以温室大棚技术越来越普及,并且已成为农民增收的主要手段。随着大棚技术的普及,温室大棚数量不断增多,温室大棚的温度控制便成为一个十分重要的课题。传统的温度控制是在温室大棚内部悬挂温度计,通过读取温度值来知道大棚内的实际温度,然后根据现有温度与额定温度进行比较,看温度是否过高或过低。如果过高,就对大棚进行降温处理;如果过低,就对大棚进行升温处理。这些操作都是在人工情况下进行的,耗费了大量的人力物力。现在,随着国家经济的快速发展,农业产业规模的不断提高,农产品在大棚中培育的品
7、种越来越多,对于数量较多的大棚,传统的温度控制措施就显现出很大的局限性。大型温室大棚的建设对温度检测技术也提出了越来越高的要求。本设计由单片机、数字温度传感器、显示电路构成的多点温度数据采集系统,可以方便的实现多点的温度测量,并容易实现数据的远距离传送,系统的抗干扰性好、设计灵活方便。本系统可以应用在工业及民用常温温度多点检测场合。第2章 方案论证2.1 温度传感器的选型温度检测系统具有测量点多、环境复杂、布线分散、现场离监控室远等特点。若采用一般温度传感器采集温度信号,则需要设计信号调理电路、A/D 转换及相应的接口电路,才能把传感器输出的模拟信号转换成数字信号送到计算机去处理。这样,由于外
8、界因素会造成检测系统较大的偏差;又因为检测环境复杂、测量点多、信号传输距离远及各种干扰的影响,会使检测系统的稳定性和可靠性下降,并且耗费的材料多,不符合经济性。因此,系统的关键在温度检测系统这部分。方案一:采用热敏电阻,可满足0至100的测量范围,但热敏电阻精度、重复性、可靠性较差,对于检测1摄氏度的信号是不适用的。而且在温度测量系统中,采用单片温度传感器,比如AD590,LM35等.但这些芯片输出的都是模拟信号,必须经过A/D转换后才能送给计算机,这样就使得测温装置的结构较复杂.另外,这种测温装置的一根线上只能挂一个传感器,不能进行多点测量.即使能实现,也要用到复杂的算法,一定程度上也增加了
9、软件实现的难度。方案二采用温度传感器DS18B20. DS18B20是数字温度传感器,输出信号为全数字化,便于单片机处理机控制,并且省去了传统的温度采样、AD转换过程,避免了采样和传输过程中的干扰,具有更高的精度。DS18B20的最大特点之一采用了单总线的数据传输,由数字温度计DS1820和单片机构成的温度测量装置,它直接输出温度的数字信号,可直接与计算机连接。而且DS18B20可以实现多点测量,容易组成传感器网络。 因此,比较两个方案,本系统温度采集部分选用数字温度传感器DS18B20,其测温值可以直接以9位数字量读出,无需采集信号的放大与A/D转换,减少了器件及接线, 优化了硬件电路部分的
10、设计,使得单片机的数据处理更加直接化,简单化,选择方案二进行设计。2.2 DS18B20的功能介绍单线数字温度传感器DS18B20特性: 独特的单线接口仅需一个端口引脚进行通讯 简单的多点分布应用 无需外部器件 可通过数据线供电 零待机功耗 测温范围-55+125,以0.5递增。华氏器件-67+2570F,以0.90F 递增 温度以9 位数字量读出 报警搜索命令识别并标志超过程序限定温度(温度报警条件)的器件 应用包括温度控制、工业系统、消费品、温度计或任何热感测系统表2.1 引脚说明:1GND接地2DQ数据输入/输出脚。对于单线操作:漏极开路3VCC可选的VCC引脚。说明:DSl8B20 数
11、字温度计提供9 位(二进制)温度读数指示器件。温度信息经过单线接口送入 DSl8B20 或从DSl8B20 送出,因此从主机CPU 到DSl820 仅需一条线。DSl8B20 的电源可以由数据线本身提供,而不需要外部电源,因为每一个DSl8B20在出厂时已经给定了唯一的序号,因此任意多个DSl820 可以存放在同一条单线总线上。这允许在许多不同的地方放置温度敏感器件DSl8B20。DS18B20的测量范围从-55 到+125 ,精度为0.06。DS18B20 都可以设置成两种供电方式即数据总线供电方式和外部供电方式采取数据总线供电方式可以节省一根导线但完成温度测量的时间较长采取外部供电方式则多
12、用一根导线但测量速度较快。2.3 系统设计框图单片机 温度采集电路显示电路数据远传电路键盘电路图2.1 系统框图第3章 硬件设计3.1 AT89C51单片机最小系统设计3.1.1单片机的选择AT89C51是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片内含4k bytes的可反复擦写的只读程序存储器(PEROM)和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器(CPU)和Flash存储单元,功能强大AT89C51单片机可为您提供许多高性价比的应用场合,可灵活应用于各种控
13、制领域。AT89C51 提供以下标准功能:4k 字节Flash 闪速存储器,128字节内部RAM,32 个IO 口线,两个16位定时计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。同时,AT89C51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。空闲方式停止CPU的工作,但允许RAM,定时计数器,串行通信口及中断系统继续工作。掉电方式保存RAM中的内容,但振荡器停止工作并禁止其它所有部件工作直到下一个硬件复位。3.1.2 时钟电路的设计AT89C5l 中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1 和XTAL2 分别是该放大器的输入端和
14、输出端。这个放大器与作为反馈元件的片外石英晶体或陶瓷谐振器一起构成自激振荡器,时钟电路如图3.2所示。图3.2 单片机时钟电路外接石英晶体(或陶瓷谐振器)及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,如果使用石英晶体,电容使用30pF10pF,而如使用陶瓷谐振器应选择40pF10F。本设计中由于使用总线的控制器SJA1000,因此单片机的时钟电路可以和SJA1000共用,在这里只画出了单片机的时钟电路。在SJA1000当中,晶振的选择为26mHz。3.
15、1.3复位电路的设计图3.3 单片机复位电路当单片机的复位引脚RST(全称RESET)出现2个机器周期以上的高电平时,单片机就执行复位操作。如果RST持续为高电平,单片机就处于循环复位状态。图3.3中电容C3和电阻R2对电源十5V来说构成微分电路。单片机的复位操作使单片机进入初始化状态,其中包括使程序计数器PC0000H,这表明程序从0000H地址单元开始执行。单片机冷启动后,片内RAM为随机值,运行中的复位操作不改变片内RAM区中的内容,21个特殊功能寄存器复位后的状态为确定值。3.2 温度采集电路设计采用单线数字温度传感器DS18B20作为温度采集部分,本系统需要对8个温度温度监测点进行温
16、度检测,因此每个监测点都需要安装一个温度传感器,共需8个DS18B20数字温度传感器进行工作。其温度采集的数据由P1口送进单片机进行处理,电路原理图如图3.4所示。图3.4 温度采集部分电路 3.3 显示电路的设计3.3.1显示器电路的设计本系统采用四位LED数码管作为显示器,其中第一位显示温度的十位,第二图3.5 LED数码管显示器驱动显示电路图位显示个位,第三位和第四位分别显示小数点后一位和两位。数码显示管与驱动芯片74HC595相连,由单片机控制,实现数码显示管的显示。74HC595 内含8 位串入、串/并出移位寄存器和8位三态输出锁存器。寄存器和锁存器分别有各自的时钟输入 (SCLK和
17、 SLCK) , 都是上升沿有效。当 SCLK从低高电平跳变时, 串行输入数据 (SDA) 移入寄存器; 当SLCK从低到高电平跳变时, 寄存器的数据置入锁存器。清除端 (CLR) 的低电平只对寄存器复位 (QS为低电平) , 而对锁存器无影响。当输出允许控制 (EN) 为高电平时, 并行输出 (Q0Q7) 为高阻态, 而串行输出 (QS) 不受影响。74HC595 最多需要 5 根控制线, 即 SDA、SCLK、SLCK、CLR和 EN。其中 CLR 可以直接接到高电平, 用软件来实现寄存器清零; 如果不需要软件改变亮度, EN 可以直接接到低电平, 而用硬件来改变亮度。把其余三根线和单片机
18、的 I/ O口相接, 即可实现。3.4 CAN总线传输电路SJA1000是一种独立控制器,用于移动目标和一般工业工业环境中的区域网络控制(CAN)。它是PHILIPS半导体PCA82C200CAN控制器的替代产品,它增加了一种新的工作模式,这种模式支持具有很多新特性的CAN2.0B协议。管脚排列说明如表3.1所示。表3.1 管脚排列说明符号引脚说明AD0-AD72,1,28-23多路地址/数据总线ALE/AS3ALE输入信号,AS输入信号/CS4片选输入,低电平访问SJA1000(/RD)/E5微控制器WR信号或E使能信号/WR6微控制器/WR信号或RD信号CLKOUT7SJA100产生的提供
19、给为控制的时钟输出信号;时钟控制器的时钟关闭位可禁止该引脚Vss18接地XTAL19输入到振荡器放大电路XTAL210振荡放大电路输出MODE11模式选择输入VDD312输出驱动的5V电压源TX013从CAN输出驱动器0输出到物理线路上TX114从CAN输出驱动器1到物理线路上VSS315输出驱动器接地图3.6 CAN总线传输电路3.5键盘电路设计独立式按键是指直接用I/O口线构成的单个按键电路。每个独立式按键单独占一根I/O口线,每根I/O口线上的按键工作状态不会影响其他I/O口线的工作状态,独立式按键电路图如图所示。图3.7 键盘电路当K键未按下时,P2.7为高电平;当键盘K按下之后,P2
20、.7口变为低电平,只要读取各个按键的状态,便可获得按键信息,实现温度显示功能。第4章 软件设计4.1 程序框图设计初始化显示字符P调用温度检测模块检测是否全部完成求平均温度显示温度调用显示子程序是否通信调用通信子程序修改指针NYNYNY图4.1 系统整体流程图开 始取显示缓冲区首地址送字码初值传送字位码指向下一个显示单元延时10秒字码右移一位显示完毕返 回NY图 4.2 显示电路子流程图4.2 程序代码见附录第5章 课程设计总结本课程设计采用DS18B20温度传感器,由单片机AT89C51控制,运用CAN总线传输,实现温室大棚温度的实时监测,可实现定点和远距离读取温室大棚的温度。本设计采用DS
21、18B20数字温度传感器,具有线路简单、硬件少、成本低的优点,应用前景比较广泛,尤其其具有完善的单总线通信协议,无需复杂繁琐的布线就可以构成多点温度检测系统,充分利用了AT89C51和DS18B20硬件接口电路简洁性。设计的系统测温范围广,精度高,具有广泛的适用性。但由于条件的限制,串口的通讯并不稳定,未对温度数值进行统计处理,这将有待于改进。参考文献1周航慈.智能仪器原理与设计.北京:北京航空航天大学出版社,2005年2李全利.单片机原理及应用技术.北京:高等教育出版社,2001年3何立民.单片机应用系统设计.北京:北京航空航天大学出版社,2006年4沈善铜.塑料大棚综合利用.江苏:江苏科技
22、出版社,2008年5孟建华,郝晋霞AT89S51系列单片机及在线编程技术.西安工程科技学院学报 2006年6关燕君. 基于单片机的高精度信号采集系统的设计.吉林化工学院学报,2006年附录 系统整体电路图附录 系统部分程序代码DS18B20初始化程序 *INIT_1820: MOV DQP, #0FFH NOP MOV DQP, #0 MOV R0,#250TSR1: DJNZ R0,TSR1 MOV DQP, #0FFH MOV R0,#25H TSR2: DJNZ R0,TSR2 JNB DQ6,TSR3 LJMP TSR4 TSR3: SETB FLAG1 LJMP TSR5 TSR4:
23、 CLR FLAG1 LJMP TSR7 TSR5: MOV R0,#06BH TSR6: DJNZ R0,TSR6 TSR7: MOV DQP, #0FFH RET;读DS18B20的程序,从第一通道DS18B20中读出两个字节的温度数据 ;出口参数:TEMPER1_L TEMPER1_H;*READ1_18200: MOV R4,#2 MOV R1,#36H RE001: MOV R2,#8 RE011: CLR C SETB DQ1 NOP NOP CLR DQ1 NOP NOP NOP SETB DQ1 RET;*;数码管显示子程序;入口参数:TEMPER_GE TEMPER_SHI
24、P0 P23,0;*DISPLAY: MOV DPTR,#NUMTAB MOV R0, #10R1L: MOV R1, #250DPLOP: CLR SLCK MOV R3,#4 MOV R0,#64H DISP1: MOV A,R0 MOV R2,#8DISP2: CLR SCLK RLC A MOV SDA,C SETB SCLK DJNZ R2,DISP2 DEC R0 DJNZ R3,DISP1 SETB SLCK MOV A,PORT_NO MOVC A,A+DPTR MOV DAT,A MOV R7,#80 DJNZ R7,$ DJNZ R1,DPLOP DJNZ R0,R1LLCALL DELAY10SCLR R0RET延时子程序;*DELAY500US: MOV R6,#250 DJNZ R6,$ RET DELAY1: MOV R7,#20H DJNZ R7,$ RET DELAY100MS: MOV R6,#200D2: MOV R5,#250 DJNZ R5,$ DJNZ R6,D2 RETEND16