毕业设计论文温室大棚温度控制系统Word格式文档下载.doc
《毕业设计论文温室大棚温度控制系统Word格式文档下载.doc》由会员分享,可在线阅读,更多相关《毕业设计论文温室大棚温度控制系统Word格式文档下载.doc(52页珍藏版)》请在冰点文库上搜索。
不仅可以利用组态网显示出环境中的实时数据和历史数据,而且可以通过组态网控制继电器的工作,实现对温度控制的作用。
从而实现双工的目的。
此系统的控制终端是功能强大,软件资源丰富的组态网。
可应用于各种大棚种植中,实用于各种种植环境,具有很广泛的应用和推广前景。
现实生活中,这种温度采集和控制系统已经被成功应用于农业环境监测与控制领域。
有效的避免了危险环境给人们带来的伤害,并且能方便准确地了解大棚温度的变化。
因此对于如何利用无线通信技术进行精度的数据采集,尤其是如何控制环境温度等课题的研究就变得非常的有意义。
2 硬件设计
2.1 总体硬件设计[5]
该设计通过温度传感器DS18B20采集到大棚中的温度,经单片机处理后(内部有个AD转换)在LCD上显示出当前环境温度。
经过无线发送模块将温度数字传输到接收板中,接收板接收到温度值后经过串口处理将温度值传输到组态网中,在组态网上又显示出当前温度值。
当温度过高时,超过预设的温度值40度时,组态网会发出报警信号,管理员在组态网上发送打开降温设备的按钮,然后经过串口传输到接收板上,接收板子发送指令到发射板上,发射板接收到指令后打开降温设备开关,当温度达到预设值时,从组态中发送关闭降温设备的开关,达到控制大棚环境温度的目的。
为实现以上功能,设计主要硬件模块如下:
MCU控制芯片最小系统;
传感器数据采集模块(DS18B20温度采集模块);
无线发送和接收模块(NRF905);
LCD12864液晶显示模块;
串口通信模块;
继电器控制模块;
组态网模块。
具体工作流程为:
通过传感器(DS18B20)采集实时环境温度值,并送至LCD12864上显示,完成对环境温度的监测;
经过无线传输模块将温度从发射板传到接受板,后经过串口通信,在组态网模式下,不仅可以实现环境温度值的实时显示,而且可以实现对环境温度的控制。
总体设计的框架如图1所示。
发
射
主
系
统
STC89C51
DS18B20
温度采集模块
降温
加温
N
R
F
9
5无线模块
接
收
主
统
组
态
网
系
继电器模块
串口通信模块
LCD12864
图1总体设计框图
2.2 STC89C51单片机最小系统[2]
控制芯片最小系统包括:
控制芯片STC89C51单片机、晶振电路和复位电路。
2.2.1.控制芯片STC89C51单片机
2.2.1.1STC89C51单片机简介
STC89C51是一种带8K字节闪烁可编程可檫除只读存储器(FPEROM-FlashProgramableandErasableReadOnlyMemory)的低电压,高性能COMOS8的微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,在单芯片上,拥有灵巧的8位CPU(K)系统可编程Flash存储器,使得STC89C51为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
2.2.1.2STC89C51具体介绍
单片机STC89C51引脚图如图2所示。
图2STC89C51引脚图
l主电源引脚(2根)
VCC(Pin40):
电源输入,接+5V电源
GND(Pin20):
接地线
l外接晶振引脚(2根)
XTAL1(Pin19):
片内振荡电路的输入端
XTAL2(Pin18):
片内振荡电路的输出端
l控制引脚(4根)
RST/VPP(Pin9):
复位引脚,引脚上出现2个机器周期的高电平将使单片机复位。
ALE/PROG(Pin30):
地址锁存允许信号
PSEN(Pin29):
外部存储器读选通信号
EA/VPP(Pin31):
程序存储器的内外部选通,接低电平从外部程序存储器读指令,如果接高电平则从内部程序存储器读指令。
l可编程输入/输出引脚(32根)
STC89C52单片机有4组8位的可编程I/O口,分别位P0、P1、P2、P3口,每个口有8位(8根引脚),共32根。
PO口(Pin39~Pin32):
8位双向I/O口线,名称为P0.0~P0.7
P1口(Pin1~Pin8):
8位准双向I/O口线,名称为P1.0~P1.7
P2口(Pin21~Pin28):
8位准双向I/O口线,名称为P2.0~P2.7
P3口(Pin10~Pin17):
8位准双向I/O口线,名称为P3.0~P3.7
2.2.1.3.单片机STC89C51的主要功能特性
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。
另外STC89X52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。
最高运作频率35Mhz,6T/12T可选。
与工业标准的MCS-51指令集和输出管脚相兼容。
如表1所示。
表1STC89C51主要功能特性
STC89C51主要功能特性
兼容MCS51指令系统,8K可反复擦写FlashROM
32个双向I/O口,32个可编程I/O口,256x8bit(字节)内部RAM
3个16位可编程定时/计数器,时钟频率0-24MHz
2个串行中断,可编程UART串行通道
2个外部中断源,共6个中断源
2个读写中断口线,3级加密(位)程序存储器
全双工UART串行通道
电源控制模式
看门狗定时器。
双数据指针。
全静态操作:
0Hz~33Hz
低功耗空闲和掉电模式,软件设置睡眠和唤醒功能
2.2.2.晶振电路的设计
在晶振电路也叫时钟电路,使用了两个30PF的电容(C1,C2)和一个晶振(Y1),分别接的是单片机的18,19引脚,晶振频率选取的是12MHZ,电路图如图3所示。
图3晶振电路
STC89C51内部有一个用于构成振荡器的高增益反相放大器,引脚RXD和TXD分别是此放大器的输入端和输出端。
时钟由内部方式产生或外部方式产生,如图4所示。
(a)内部方式时钟电路(b)外部方式时钟电路
图4时钟电路
内部方式的时钟电路,在RXD和TXD引脚上外接定时元件,内部振荡器就产生自激振荡。
定时元件通常采用石英晶体和电容组成的并联谐振回路。
晶体振荡频率可以在1.2~12MHz之间选择,电容值在5~30pF之间选择,电容值的大小可对频率起微调的作用。
外部方式的时钟电路,RXD接地,TXD接外部振荡器。
对外部振荡信号无特殊要求,只要求保证脉冲宽度,一般采用频率低于12MHz的方波信号。
片内时钟发生器把振荡频率两分频,产生一个两相时钟P1和P2,供单片机使用。
2.2.3.复位电路的设计
复位是单片机的初始化的操作。
单片机控制器在上电启动运行时,都需要先复位。
其作用是使CPU和控制器中其它部件处于一个确定的初始状态,从这个状态开始工作,因而,复位是一个很重要的操作方式。
但单片机本身是不能进行自动复位的。
必须配合相应的外部复位电路才能实现。
本系统采用按键电平复位电路,其连接方式如图5所示。
图5按键电平复位电路
2.2.3.1复位操作
单片机上复位电路接在9脚上,参考图7,当复位键S1按下时,正的信号接通,同时给单片机一个正的信号1,对单片机进行初始化;
当S1键断开时,如图可知电路对单片机发送一个负的信号,表示断开。
2.2.3.2复位信号及其产生
复位是单片机的初始化操作。
其主要功能是把PC初始化为0000H,使单片机从0000H单元开始执行程序。
除了进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,也需按复位键重新启动。
RST(9脚)引脚是复位信号的输入端。
复位信号是高电平有效,其有效时间应持续24个振荡周期(即二个机器周期)以上。
产生复位信号的电路逻辑如图6所示。
图6复位信号的电路逻辑图
整个复位电路包括芯片内、外两部分。
外部电路产生的复位信号(RST)送至施密特触发器,再由片内复位电路在每个机器周期的S5P2时刻对施密特触发器的输出进行采样,然后才得到内部复位操作所需要的信号。
复位操作有上电自动复位和手动复位两种方式,如图7所示。
(a)上电复位(b)按键电平复位(c)按键脉冲复位
图7复位电路
上电自动复位是通过外部复位电路的电容充电来实现的。
这佯,只要电源Vcc的上升时间不超过1ms,就可以实现自动上电复位,即接通电源就成了系统的复位初始化。
按键手动复位有电平方式和脉冲方式两种。
其中,按键电平复位是通过使复位端经电阻与Vcc电源接通而实现的。
而按键脉冲复位则是利用RC微分电路产生的正脉冲来实现的。
2.3温度采集模块[1]
DS18B20是由美国DALLAS(达拉斯)半导体公司生产的最新单线数字式温度传感器。
超小的体积,超低的硬件开消,抗干扰能力强,精度高,附加功能强。
2.3.1.DS18B20的主要特征:
现场温度测量值通过串行通信的方式传输,即“单线总线”的数字方式传输(通信)。
最高12位分辨率,实际系统的分辨率可单独设定,并且保存在EEPROM中,即使断电也能够保存。
12位分辨率时的最大工作周期为750毫秒。
可选择寄生工作方式。
检测温度范围为–55°
C~+125°
C(–67°
F~+257°
F),精度可达土0.5摄氏度
内置EEPROM,限温报警功能。
64位光刻ROM,内置产品序列号,方便多机挂接。
多样封装形式,适应不同硬件系统。
系统供电电压容许范围大,可在3V到5.5V的范围波动。
2.3.2.DS18B20引脚功能及外形图
lDQ为数字信号输入/输出端;
lGND为电源接地;
lVDD为外接供电电源输入端(在寄生电源接线方式时接地)。
如图8所示。
图8DS18B20外形及引脚排列图
2.3.3.DS18B20的内部结构
DS18B20的内部结构主要包括寄生电源电路、64位只读存储器(ROM)和单线接口、存储器和控制逻辑、存放中间数据的高速暂存存储器、温度传感器、报警上限寄存器TH、报警下限寄存器TL、配置寄存器和8位CRC)发生器。
如图9所示。
图9DS18B20基本结构
l64位光刻ROM光刻ROM中的64位序列号为DS18B20的地址序列码。
主要作用是使每个DS18B20的地址不同,这样可以在一条总线上接多个这样的芯片,相互之间不受影响。
l温度传感器主要实现对温度的测量.温度传感器的分辨率根据系统的要求,可以在9~12位之间单独设置,当设置分辨率越高转换时间就越长,如果设置为9位,转换时间最大为93.75ms,当为12位时,达到750ms,所以在软件设计时必须考虑.转换的温度一般存放在两个8位的RAM中.DS18B20的核心是其数字温度传感器,精度可以通过用户编程配置为9、10、l1和l2位,其分别对应于0.5℃、0.25℃、0.125℃和0.0625℃,可以满足各种不同的分辨率要求。
开始一次温度转换时,微处理器需要向DS18B20发出指令。
转换完成之后,该温度数据存放在高速暂存存储器的温度寄存器中,占用2个字节,并且DS18B20返回到空闲状态。
当DS18B20采用外部供电方式时,主机可以在发送温度转换指令后发起一次读时隙。
若此时该DS18B20已经完成温度转换,它将会返回“1”,否则返回“0”。
以l2位为例,其中二进制的前5位为符号位,0表示正数,反之为负数。
l非易失性温度报警触发器主要是在系统控制中用软件输入温度的报警上下限。
lCRC在64位光刻ROM的最高字节,主要是实现串行通信中的数据校验,判断接收的数据是否正确。
2.3.4.DS18B20的工作时序
DS18B20的一线工作协议流程是:
初始化→ROM操作指令→存储器操作指令→数据传输。
其工作时序包括初始化时序、写时序和读时序,如图10所示。
图10DS18B20基本工作时序图
温度转换计算方法举例:
例如当DS18B20采集到+125℃的实际温度后,输出为07D0H,则:
实际温度=07D0H╳0.0625=2000╳0.0625=125℃。
例如当DS18B20采集到-55℃的实际温度后,输出为FC90H,则应先将11位数据位取反加1得370H(符号位不变,也不作为计算),则:
实际温度=370H╳0.0625=880╳0.0625=55℃
2.3.5.(本设计中)DS18B20与STC89C51单片机的连接[10]
如图11所示。
图11温度传感器与单片机的连接
温度参数采集采用温度传感器DS18B20,测温范围-55℃~+125℃,固有测温分辨率0.5℃,达到了系统精度要求,而且只需要一个单片机控制端口(I/O)口节省了单片机资源。
数据脚接单片机P2.0口作为数据/控制信号线。
由于单总线为开漏,所以需要外接一个4.7K的上拉电阻以便来保证传感器的正常工作,在实验中我们发现,在数据线很短的情况下,即使不使用上拉电阻也可正常的工作。
上拉电阻的选用要根据数据线的长短合适的选取。
为了稳妥起见,我们使用了一个4.7K的上拉电阻。
2.4无线发射和无线接收模块NRF905
2.4.1.NRF905电路管脚图[13]
如图12所示。
图12NRF905电路管脚图
2.4.2.NRF905管脚说明
lVCC脚接电压范围为3V~3.6V之间,不能在这个区间之外,超过3.6V将会烧毁模块。
推荐电压3.3V左右。
l除电源VCC和接地端,其余脚都可以直接和普通的5V单片机IO口直接相连,无需电平转换。
当然对3V左右的单片机更加适用了。
l硬件上面没有SPI的单片机也可以控制本模块,用普通单片机IO口模拟SPI不需要单片机SPI模拟块介入,只需要添加代码模拟SPI时序即可。
l13脚、14脚为接地脚,需要和母板得逻辑地连接起来。
l排针间距为100mil,标准DIP插针。
l与51系列单片机P0口连接时候,需要加10K的上拉电阻,与其余口连接不需
2.4.3.配置NewMsg-RF905模块
所有配置字都是通过SPI接口送给RF905。
接口的工作方式可SIP通过SPI指令进行设置。
当RF905处于空闲模式或关机模式时,SPI接口可以保持在工作状态。
2.5液晶显示模块
本设计的显示模块的选择的是带字库的LCD12864液晶屏幕。
将PSB脚置高是LCD工作在并行输入输出方式。
接口电路图如图13所示。
图13LCD12684硬件连接图
单片机与LCD12864通过P0.0、P0.1、P0.2、P0.3、P0.4、P0.5、P0.6、P0.7、P1.0、P1.1、P1.2相连,P0.0—P0.7为数据线,P1.0、P1.1、P1.2为控制线。
2.5.1.带字库12864的基本特性
低电源电压(VDD:
+3.0--+5.5V)
显示分辨率:
128×
64点
内置汉字字库,提供8192个16×
16点阵汉字(简繁体可选)
内置128个16×
8点阵字符2MHZ时钟频率
显示方式:
STN、半透、正显
背光方式:
侧部高亮白色LED,功耗仅为普通LED的1/5—1/10
通讯方式:
串行、并口可选
工作温度:
0℃-+55℃,存储温度:
-20℃-+60℃
2.5.2.12864接口说明
12864的数据传输方式可以采用串行数据传输方式和并行数据传输方式两种方式,本设计采用的是并行数据传输方式,并行接口如下表2所示。
表212864并行接口
管脚号
管脚名称
电平
管脚功能描述
1
VSS
0V
电源地
2
VCC
3.0+5V
电源正
3
V0
-
对比度(亮度)调整
4
RS(CS)
H/L
RS=“H”,表示DB7——DB0为显示数据
RS=“L”,表示DB7——DB0为显示指令数据
5
R/W(SI)
R/W=“H”,E=“H”,数据被读到DB7——DB0
R/W=“L”,E=“H→L”,DB7——DB0的数据被写到IR或DR
6
E(SCLK)
使能信号
7
DB0
三态数据线
8
DB1
DB2
10
DB3
11
DB4
12
DB5
13
DB6
14
DB7
15
PSB
H:
8位或4位并口方式,L:
串口方式
16
NC
空脚
17
/RESET
复位端,低电平有效
18
VOUT
LCD驱动电压输出端
19
A
VDD
背光源正端(+5V)
2.5.3.12864控制器接口信号和8位并行数据线读写时序说明
RS,R/W的配合选择决定控制界面的4种模式如表3所示。
表312864的四种控制模式
RS
R/W
功能说明
L
MPU写指令到指令暂存器(IR)
H
读出忙标志(BF)及地址记数器(AC)的状态
MPU写入数据到数据暂存器(DR)
H
MPU从数据暂存器(DR)中读出数据
E信号如表4所示。
表412864的E信号
E状态
执行动作
结果
高——>
低
I/O缓冲——>
DR
配合/W进行写数据或指令
高
DR——>
I/O缓冲
配合R进行读数据或指令
低/低——>
无动作
具体的读写指令可查阅使用手册,这里不详细列出。
本系统采用的是8位并行数据线模式,下面给出12864在并行传输方式下的读写时序图,如图14、15所示。
图14 12864写时序(8位并行数据线模式)
图15 12864读时序(8位并行数据线模式)
2.6组态网模块
2.6.1.通用组态软件主要特点
l延续性和可扩充性。
用通用组态软件开发的应用程序,当现场(包括硬件设备或系统结构)或用户需求发生改变时,不需作很多修改而方便地完成软件的更新和升级;
l封装性(易学易用)。
通用组态软件所能完成的功能都用一种方便用户使用
方法包装起来,对于用户,不需掌握太多的编程语言技术(甚至不需要编程技术),就能很好地完成一个复杂工程所要求的所有功能;
l通用性,每个用户根据工程实际情况,利用通用组态软件提供的底层设备(PLC、智能仪表、智能模块、板卡、变频器等)的I/ODriver、开放式的数据库和画面制作工具,就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、具有多媒体功能和网络功能的工程,不受行业限制。
2.6.2.组态软件的功能
l强大的界面显示组态功能。
目前,工控组态软件大都运行于Windows环境下,充分利用Windows的图形功能完善界面美观的特点,可视化的m风格界面、丰富的工具栏,操作人员可以直接进人开发状态,节省时间。
丰富的图形控仵和工况图库,既提供所需的组件,又是界面制作向导。
提供给用户丰富的作图工具,可随心所欲地绘制出各种工业界面,并可任意编辑,从而将开发人员从繁重的界面设计中解放出来,丰富的动画连接方式,如隐含、闪烁、移动等等,使界面生动、直观。
l良好的开放性。
社会化的大生产,使得系统构成的全部软硬仵不可能出自一家公司的产品,“异构”是当今控制系统的主要特点之一。
开放性是指组态软件能与多种通信协议互联,支持多种硬件设备。
组态软件向下应能与低层的数据采集设备通信,向上能与管理层通信,实现上位机与下位机的双向通信。
l丰富的功能模块。
提供丰富的控潲功能库,满足用户的测控要求和现场荽求。
利用各种功能模块,完成实时监控产生功能报表业示历史曲线、实时曲线、提供报警等功能,使系统具有良好的人机界面,易于操作,系统既叫适用于单机集中式控制、DCS分布式控制,也可以是带远程遇信能力的远程测控系统.
l强大的数据库。
配有实时数据库,可存储各种数据,如模拟量、离散量、字符型等,实现与外部设备的数据交换。
l可编程的命令语言。
有可编程的命令语言,使用户可根据自己的需要编撰程序,增强图形界面。
l周密的系统安全防范,对不同的操作者,赋予不同的操作权限,保证整个系统的安全可靠运行。
l仿真功能.提供强大的仿真功能使系统并行设计,从而缩短开发周期。
利用组态软件制作控制观测图,模拟被控制量在计算机中的显示状态,通过设置按键、串口通信,控制物理量,从而达到相应的显示及直观表达现实物的被控状态。
2.7串口通信模块[3]
为了更好、更方便的为该系统提供工作电压,另外本设计增加了串口通信模块设计,使用了单电源电平转换芯片MAX232MJE,提高系统的扩展性。
串口是计算机上一种非常通用设备通信的协议。
大多数计算机包含两个基于RS232的串口。
串口同时也是仪器仪表设备通用的通信协议。
串口通信按位(bit)发送和接收字节。
尽管比按字节(byte)的并行通信慢,但是串口呵以在使用一根线发送数据的同时用另一根线接收数据。
串口通信最重要的参数是波特率、数据位、停止位