温度监控系统的设计资料.docx

上传人:b****3 文档编号:7050311 上传时间:2023-05-11 格式:DOCX 页数:43 大小:440.05KB
下载 相关 举报
温度监控系统的设计资料.docx_第1页
第1页 / 共43页
温度监控系统的设计资料.docx_第2页
第2页 / 共43页
温度监控系统的设计资料.docx_第3页
第3页 / 共43页
温度监控系统的设计资料.docx_第4页
第4页 / 共43页
温度监控系统的设计资料.docx_第5页
第5页 / 共43页
温度监控系统的设计资料.docx_第6页
第6页 / 共43页
温度监控系统的设计资料.docx_第7页
第7页 / 共43页
温度监控系统的设计资料.docx_第8页
第8页 / 共43页
温度监控系统的设计资料.docx_第9页
第9页 / 共43页
温度监控系统的设计资料.docx_第10页
第10页 / 共43页
温度监控系统的设计资料.docx_第11页
第11页 / 共43页
温度监控系统的设计资料.docx_第12页
第12页 / 共43页
温度监控系统的设计资料.docx_第13页
第13页 / 共43页
温度监控系统的设计资料.docx_第14页
第14页 / 共43页
温度监控系统的设计资料.docx_第15页
第15页 / 共43页
温度监控系统的设计资料.docx_第16页
第16页 / 共43页
温度监控系统的设计资料.docx_第17页
第17页 / 共43页
温度监控系统的设计资料.docx_第18页
第18页 / 共43页
温度监控系统的设计资料.docx_第19页
第19页 / 共43页
温度监控系统的设计资料.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

温度监控系统的设计资料.docx

《温度监控系统的设计资料.docx》由会员分享,可在线阅读,更多相关《温度监控系统的设计资料.docx(43页珍藏版)》请在冰点文库上搜索。

温度监控系统的设计资料.docx

温度监控系统的设计资料

引言

随着“信息时代”的到来,作为获取信息的手段——传感器技术得到了显著的进步,其应用领域越来越广泛,对其要求越来越高,需求越来越迫切。

传感器技术已成为衡量一个国家科学技术发展水平的重要标志之一。

因此,了解并掌握各类传感器的基本结构、工作原理及特性是非常重要的。

由于传感器能将各种物理量、化学量和生物量等信号转变为电信号,使得人们可以利用计算机实现自动测量、信息处理和自动控制,但是它们都不同程度地存在温漂和非线性等影响因素。

传感器主要用于测量和控制系统,它的性能好坏直接影响系统的性能。

因此,不仅必须掌握各类传感器的结构、原理及其性能指标,还必须懂得传感器经过适当的接口电路调整才能满足信号的处理、显示和控制的要求,而且只有通过对传感器应用实例的原理和智能传感器实例的分析了解,才能将传感器和信息通信和信息处理结合起来,适应传感器的生产、研制、开发和应用。

另一方面,传感器的被测信号来自于各个应用领域,每个领域都为了改革生产力、提高工效和时效,各自都在开发研制适合应用的传感器,于是种类繁多的新型传感器及传感器系统不断涌现。

温度传感器是其中重要的一类传感器。

其发展速度之快,以及其应用之广,并且还有很大潜力。

为了提高对传感器的认识和了解,尤其是对温度传感器的深入研究以及其用法与用途,基于实用、广泛和典型的原则而设计了本系统。

本文利用单片机结合传感器技术而开发设计了这一温度监控系统。

文中传感器理论单片机实际应用有机结合,详细地讲述了利用热敏电阻作为热敏传感器探测环境温度的过程,以及实现热电转换的原理过程。

本设计应用性比较强,设计系统可以作为生物培养液温度监控系统,如果稍微改装可以做热水器温度调节系统、实验室温度监控系统等等。

课题主要任务是完成环境温度检测,利用单片机实现温度调节并通过计算机实施温度监控。

设计后的系统具有操作方便,控制灵活等优点。

本设计系统包括温度传感器,A/D转换模块,输出控制模块,数据传输模块,温度显示模块和温度调节驱动电路六个部分。

文中对每个部分功能、实现过程作了详细介绍。

整个系统的核心是进行温度监控,完成了课题所有要求。

 

1设计要求

1.1控制要求

(1)生物繁殖培养液的温度要保证在适于细胞繁殖的温度内,这主要在控制程序设计中考虑。

温度控制范围为15~25,升温、降温阶段的温度控制精度要求为0.5度,保温阶段温度控制精度为0.5度。

图1.1.1温度控制曲线

(2)微机自动调节正常情况下,系统投入自动。

(3)模拟手动操作当系统发生异常,投入手动操作。

(4)微机监控功能显示当前被控量的设定值、实际值,控制量的输出。

1.2受控对象的数学模型

生物繁殖的培养液主要用于生物的繁殖研究,而温度是影响生物繁殖的重要因素。

本系统要求长时间监视培养液的温度,并对当前的温度进行控制。

本控制对象为生物繁殖用培养液,采用继电器进行控制。

2系统的硬件配置

2.1单片机和系统总线

单片机:

PIC16F877A(PIC16F877A为美国MICORCHIP公司生产的带A/D转换的8位单片机)。

显示系统:

商用计算机。

用户内存:

256MRAM。

系统总线:

RS-232-C接口(又称 EIA RS-232-C)RS232C有25条线,,分为5个功能组,包括4条数据线,11条控制线,3条定时线,7条备用线和未定义线。

操作系统:

Windows2000。

 

2.2硬件介绍

计算机工作的外围电路设备

(1)温度传感器

温度传感器采用补偿型NTC热敏电阻其主要性能如下:

①补偿型NTC热敏电阻B值误差范围小,对于阻值误差范围在5%的产品,其一致性、互换性良好。

适合于一般精度的温度测量和计量设备。

②外型结构和尺寸:

 

图2.2.1温度传感器结构尺寸图

③主要技术参数:

时间常数≤30S  

测量功率≤0.1mW

使用温度范围-55~+125℃

耗散系数≥6mW/℃

额定功率0.5W  

④降功耗曲线:

 

图2.2.2温度传感器功耗曲线图

(2)核心处理单元MicroChipPIC16F877A单片机

MicroChipPCI16F877A单片机主要性能:

具有高性能RISCCPU

仅有35条单字指令。

除程序指令为两个周期外,其余的均为单周期指令。

运行速度:

DC-20M时钟输入。

DC-200ns指令周期。

8K*14个FLASH程序存储器。

368*8个数据存储器(RAM)字节。

引脚输出和PIC16C73B/74B/76/77兼容。

中断能力(达到14个中断源)。

8级深度的硬件堆栈。

直接,间接和相对寻址方式。

上电复位(POR)。

上电定时器(PWRT)和震动启动定时器。

监视定时器(WDT),它带有片内可靠运行的RC振荡器。

可编程的代码保护。

低功耗睡眠方式。

可选择的振荡器。

低功耗,高速CMOSFLASH/EEPROM工艺。

全静态设计。

在线串行编程(ICSP)。

单独5v的内部电路串行编程(ICSP)能力。

处理机读/写访问程序存储器。

运行电压范围2.0v到5v。

高输入/输出电流25mA。

商用,工业用温度范围。

低功耗:

在5v,4MHz时典型值小于2mA。

在3v,32KHz时典型值小于20uA。

典型的静态电流值小于1uA。

外围特征:

Timer0:

带有预分频的8位定时器/计数器。

Timer1:

带有预分频的16位定时器/计数器,在使用外部晶体时钟时在

SLEEP期间仍能工作。

Timer2:

带有8位周期寄存器,预分频和后分频器的8位定时器/计数器

2个捕捉器,比较器和PWM模块。

其中:

捕捉器是16位的,最大分辨率为12.5nS。

比较器是16位的,最大分辨率为200nS。

PWM最大分辨率为是10位。

10位多通道模/数转换器。

带有SPI(主模式)和I2C(主/从)模式的SSP。

带有9位地址探测的通用同步异步接收/发送(USART/RCI)。

带有RD,WR和CS控制(只40/44引脚)8位字宽的并行从端口。

带有降压的复位检测电路。

(3)RS-232-C接口电路

计算机与计算机或计算机与终端之间的数据传送可以采用串行通讯和并行通讯二种方式。

由于串行通讯方式具有使用线路少、成本低,特别是在远程传输时,避免了多条线路特性的不一致而被广泛采用。

 在串行通讯时,要求通讯双方都采用一个标准接口,使不同 的设备可以方便地连接起来进行通讯。

 RS-232-C接口(又称 EIA RS-232-C)是目前最常用的一种串行通讯接口。

它是在1970年由美国电子工业协会(EIA)联合贝尔系统、 调制解调器厂家及计算机终端生产厂家共同制定的用于串行通讯的标 准。

它的全名是“数据终端设备(DTE)和数据通讯设备(DCE)之间 串行二进制数据交换接口技术标准”该标准规定采用一个25个脚的 DB25连接器,对连接器的每个引脚的信号内容加以规定,还对各种信 号的电平加以规定。

①接口的信号内容 实际上RS-232-C的25条引线中有许多是很少使用的,在计算机通讯中一般只使用3-9条引线。

RS-232-C最常用的9条引线的信号。

②接口的电气特性 在RS-232-C中任何一条信号线的电压均为负逻辑关系。

即:

逻辑。

“1”,-5~-15V;逻辑“0” +5~ +15V 。

噪声容限为2V。

即 要求接收器能识别低至+3V的信号作为逻辑“0”,高到-3V的信号 作为逻辑“1”。

③ 接口的物理结构 RS-232-C接口连接器一般使用型号为DB-25的25芯插头座,通常插头在DCE端,插座在DTE端. 一些设备与PC机连接的RS-232-C接口,因为不使用对方的传送控制信号,只需三条接口线,即“发送数据”、“接收数据”和“信号地”。

所以采用DB-9的9芯插头座,传输线采用屏蔽双绞线。

④传输电缆长度 由RS-232C标准规定在码元畸变小于4%的情况下,传输电缆长度应为50英尺,其实这个4%的码元畸变是很保守的,在实际应用中,约有99%的用户是按码元畸变10~20%的范围工作的,所以实际使用中最大距离会远超过50英尺。

 

 

图2.3.1Max232结构图

(4)继电器

继电器是具有隔离功能的自动开关,广泛用于遥控,遥测,通信,自动控制,机电一体化及电力电子设备中,是最重要的控制元件之一。

继电器是在自动控制电路中起控制与隔离作用的执行部件,它实际上是一种可以用低电压、小电流来控制大电流、高电压的自动开关。

在本系统中,继电器控制的自动温度调节电路和PCI16F877A单片机中程序构成温度自动监测电路,实现对生物培养液温度的监测和自动控制

(5)半导体降温片及电阻加热丝

①半导体制冷器是根据热电效应技术的特点,采用特殊半导体材料热电堆来制冷,能够将电能直接转换为热能,效率较高。

其工作原理如图2.5.1:

 

图2.5.1半导体降温片工作原理图

半导体制冷片由许多N型和P型半导体之颗粒互相排列而成,而NP之间以一般的导体相连接而成一完整线路,通常是铜、铝或其他金属导体,最後由两片陶瓷片像夹心饼乾一样夹起来,陶瓷片必须绝缘且导热良好,通上电源之後,冷端的热量被移到热端,导致冷端温度降低,热端温度升高。

它的外观如图2.5.2所示。

 

 

2)本控制系统是对生物培养液进行温度监控,故太快的温度变化对生物繁殖显

图2.5.2半导体降温片外观图

②本控制系统是对生物培养液进行温度监控,过快的温度变化对生物繁殖显然是不利的,因此在本系统中采用的是高阻抗小功率加热电阻丝进行温度的小范围调节。

 

3温度控制系统的组成框图

采用典型的反馈式温度控制系统,组成部分见图3.1。

其中数字控制器的功能由单片机实现。

 

图3.1温度控制系统的组成框图

培养皿的传递函数为

,其中τ1为电阻加热的时间常数,

为电阻加热的纯滞后时间,

为采样周期。

A/D转换器可划归为零阶保持器内,所以广义对象的传递函数为

(3-1-1)

广义对象的Z传递函数为

(3-1-2)

所以系统的闭环Z传递函数为

(3-1-3)

系统的数字控制器为

=

(3-1-4)

写成差分方程即为

(3-1-5)

(3-1-6)

式中

——第

次采样时的偏差;

——第

次采样时的偏差;

——第

次采样时的偏差;

 

4温度控制系统结构图及总述

 

 

图4.1温度控制系统结构图

图4.1中温度传感器和MicroChipPIC16F877A单片机中的A/D转换器构成输入通道,用于采集培养皿内的温度信号。

温度传感器输出电压经过A/D转换后的数字量与培养皿内的温度给定值数字化后进行比较,即可得到实际温度和给定温度的偏差。

培养皿内的温度设定值由MicroChipPIC16F877A单片机中程序设定。

由MicroChipPIC16F877A单片机构成的数字控制器进行比较运算,经过比较后输出控制量控制由加热和降温电路构成的温度调节电路对培养皿中的培养液温度进行调节。

同时通过电平转换电路把当前温度传输到商用计算机的串口中,由计算机动态的显示培养皿中的温度,正常情况下温度控制由MicroChipPIC16F877A单片机自动控制。

必要时,计算机也可以通过软件来强制改变培养皿中温度。

 

5温度控制系统软件设计

5.1MicrochipPIC16F877A单片机温度控制系统软件结构图如图5.1.1所示。

 

 

图5.1.1单片机温度控制系统软件结构图

 

5.2单片机控制流程图

 

 

图5.2.1单片机控制流程图

5.3温度变换程序模块

温度传感器在12℃到60℃输出2.52V—1.02V,温度起点为12℃,满量程为48℃。

MicroChipPIC16F877A单片机内嵌的10位A/D转换器对应输出的数字量为0000000000B~1111111111B(0~5V),应用以下变换公式进行变换:

AX=A0+(AM-A0)(NX-N0)/(NM-N0)

式中,A0为一次测量仪表的下限。

AM为一次测量仪表的上限。

AX实际测量值。

N0仪表下限对应的数字量。

NM仪表上限对应的数字量。

NX测量值对应的数字量。

5.4温度非线性转换程序模块

采用折线拟合法进行线性化处理

如图5.4.1所示,分为以下几段:

当1.73V≤Ax<2.52V时,T℃=0.06*WN+12

当1.40V≤WN<1.73V时,T℃=0.03*WN+25

当1.24V≤WN<1.40V时,T℃=0.016*WN+40

当1.06V≤WN<1.24V时,T℃=0.018WN+50

表5.4.1温度曲线实际测量数据

温度(℃)

12

13

14

15

16

17

18

电压(V)

2.52

2.48

2.47

2.44

2.40

2.39

2.37

温度(℃)

19

20

21

22

23

24

25

电压(V)

2.32

2.28

2.22

2.15

2.09

1.83

1.73

温度(℃)

26

27

28

29

30

31

32

电压(V)

1.70

1.66

1.64

1.61

1.58

1.56

1.54

温度(℃)

33

34

35

36

37

38

39

电压(V)

1.53

1.50

1.48

1.46

1.45

1.43

1.41

温度(℃)

40

41

42

43

44

45

46

电压(V)

1.40

1.38

1.37

1.35

1.32

1.30

1.29

温度(℃)

47

48

49

50

51

52

53

电压(V)

1.27

1.26

1.25

1.24

1.22

1.20

1.19

温度(℃)

54

55

56

57

58

59

60

电压(V)

1.17

1.16

1.12

1.11

1.09

1.07

1.06

 

 

图5-1

 

图5.4.1温度分段线限等效图

6通信协议的设计

由于温度采集和实施控制是通过单片机控制系统实现,而微机完成温度监控,所以需要采用单片机和微机之间的通信协议。

本设计应用条件为传输距离不超过15米的短距离数据传输,且传输数据量较小,所以采用在控制领域里应用较广泛RS232C串行通信方式。

针对近程小批量的数据通信,设计时采用3线制(RXD,TXD,GND)软握手的零MODEM方式。

即:

将PC机和单片机的“发送数据线(TXD)”与“接收数据(RXD)”交叉连接,二者的地线(GND)直接相连而其它信号线如握手信号线均不用,而采用软件握手。

这样即可以实现预定的任务,又可以简化电路设计节约了成本。

由于RS232C是早期为促进公用电话网络进行数据通信而制定的标准,其逻辑电平与TTL,MOS逻辑电平不同。

逻辑0电平规定为+5~+15V之间,逻辑1是电平为-5~-15V之间。

因此在将PC机和单片机的RXD和TXD交叉连接时,必须进行电平转换。

下图即为通信时的硬件连接图,其中器件MAX232完成逻辑电平转换的任务。

 

图6.1电平转换电路图

注:

在PC机中9针RS232接口中:

2线:

RXD,3线:

TXD,5线:

GND

而在25针的RS232接口中:

3线:

RXD,2线:

TXD,7线:

GND

6.1软件设计

在进行数据通信的软件设计时,必须解决好两个方面的问题:

一是可靠性,二是速度。

而这两方面的问题,可靠性是第一位的,速度只能是在可靠的基础上的速度。

可靠快速转输的实现,需要PC-单片机软件以及通信协议等各个环节的可靠和其间的相互配合。

6.1.1通信协议概述

在设计PC-单片机通信协议时,需说明一点:

在本系统的实际通信中,PC机是主控者单片机只是被动接收者。

采用这种通信协议较双方互为主控者时简单。

本通信协议的设计思想是基于帧传输方式。

即在向RS232串口发送命令信号,应答信号及数据信号时,是一帧一帧地发送的。

为了使数据快速可靠地传输,将每一帧数据唯一对应一命令帧。

此时传输数据即执行命令具体如下:

(1)在PC读数据时,遵循“读命令-等数据-报告”,即PC下达一命令,等待接收数据,根据所接收数据的正误向应用程序报告此命令的执行情况。

(2)在PC写数据时,遵循“写命令-等回应-报告”,即PC下达一写命令(此时所要写的数据含于此命令中),等待单片机发来的“已正确接收”的回应信号,并向应用程序报告此命令执行完毕。

(3)如果在转输过程中,其间PC或MCU所接收任何一帧信号出现错误时,均会向对方发送重发此帧信号的请求。

如果连续三次转输失败,则退出通信并向应用程序报告。

6.2通信协议说明

6.2.1信号帧分类

(1)读命令帧:

当PC读数据时,PC向PIC16F877A发送的命令信号。

(2)写命令帧:

当PC写数据时,PC向PIC16F877A发送的命令信号(内含所要写的数据)。

(3)数据帧:

当PC读数据时,PIC16F877A向PC发送的内含数据信息的信号。

(4)正回应帧:

当PC写数据时,PIC16F877A向PC报告数据已正确接收的信号。

(5)重发命令帧:

当PC读/写数据时,PIC16F877A所接收的信号帧(读/写命令帧)有误时向PC发出的请求重发信号。

(6)放弃命令帧:

当PC读/写数据时出现了使程序无法正常执行时PC或PIC16F877A向对方发出的退出通信的通知信号。

6.2.2信号帧格式

(1)读命令帧格式

帧头标志

帧类型

器件地址

起始地址

长度

校验和

帧尾标志

帧头标志(1Bit):

表示此数据包属于本串口通信协议,并为是否接收此包数据的标志。

帧类型(1Bit):

所用信号帧的识别标志,即1.2.1信号帧分类中的各类型信号的标志字节。

器件地址(1Byte):

PC所要访问的外部器件的地址即是哪一个外部器件。

起始地址(2Byte):

PC所要访问的器件的存贮器起始地址。

长度(1Byte):

一次命令所转输的数据长度。

校验和(1Byte):

此帧信号的校验字节,为异或校验。

帧尾标志(1Byte):

此帧信号的结束标志。

(2)写命令帧

帧头标志

帧类型

器件地址

起始地址

长度

数据区

校验和

帧尾标志

数据区:

所要写的数据信息。

其它分析同上。

(3)数据帧

帧头标志

帧类型

长度

数据区

校验字

帧尾标志

长度:

所转输数据的长度。

数据区:

所转输的数据信息。

其它分析同上。

(4)正响应帧

帧头标志

帧类型

校验字

帧尾标志

空无意义:

为了PIC16F877A编程的方便而加入。

其它分析同上。

(5)重发帧

帧头标志

帧类型

校验字

帧尾标志

其它分析同上。

(6)放弃帧

帧头标志

帧类型

错误码

校验字

帧尾标志

错误码:

00H执行PC命令发放弃帧回应被动退出通讯。

01HPIC16F877A单片机方写入芯片发生错误主动通知PC退出通讯。

6.2.3通信协议处理流程

(1)数据分帧与数据重组

图6.2.1串口数据发送过程

图6.2.2串口数据接受过程

将应用程序发送过来的数据作为一个数据流放在发送缓冲区中,通过通信协议进行分帧──切割──发送。

在接收端,分帧的数据去掉帧头重新组合到接收缓冲区中,交给应用程序处理,发送过程的示意如图6.2.1,接收过程的示意图如图6.2.2。

单片机串口通信软件设计流程图

 

图6.2.3单片机串口通信软件流程图

 

PC接收数据软件设计流程

 

 

NN

 

YY

Y

 

Y

 

Y

Y

 

N

 

图6.2.4PC串口通信软件设计流程图

6.3PC上位机的软件设计

6.3.1PC软件设计方法的选择

在开发PC上位机的通信程序中,人们常用的编程语言可分为3类:

(1)直接面向底层硬件的汇编语言。

(2)DOS环境下的高级编程语言,如:

C语言等。

(3)Windows环境下的高级编程语言,如:

VC++等。

而在这3种方式中Windows环境下的串口编程以其设备无关性,可移植性以及界面友好等特征而得到广泛应用。

同时在Windows操作系统已经占据统治地位的情况下,欲开发良好的通信程序,利用Windows环境下的高级语言已渐成为必然的选择。

开发Windows环境下的串口通信程序主要有以下2种方法:

(1)利用WindowsAPI(ApplicationProgramInterface)用户程序接口函数;

(2)利用ActiveX控件;

后者的主要特点是简单易学,但前者的功能更为强大控制手段更为灵活。

6.3.2PC软件通信方式的选择

在Win32环境下串行通信有两种:

主要方式即同步方式,异步方式两种方式有各自的特点。

在软件设计时应根据实际情况选择合适的方式。

(1)同步方式

在同步方式中,读串口的函数试图在串口的接收缓冲区中读取规定数目的数据,直到规定数目的数据全部被读出或设定的超时时间已到时才返回。

例如:

(以C++Builder编程语言为例下同)

……………………

……………………

COMMTIMEOUTScto;

inttimeConstant,timeMutiplier;

cto.ReadTotalTimeoutConstant=timeConstant;//设置总超时常数

cto.ReadTotalTimeoutMultiplier=timeMutiplier;//设置总超时系数

SetCommTimeouts(m_hFile,&cto);//超时设置

…………………………

…………………………

ReadFile(hComport,inBuffer,nWantRead,&nRealRead,NULL);//读串口

…………………………

…………………………

COMMTIMEOUTS结构用于设置超时,指定读写函数的等待时间

在ReadFile函数中hComport为待读串口句柄;inBuffer为输入缓冲区大小;nWantRead为每次调用ReadFile时,函数试图读出的字节数;nRealRead为实际读出的字节数;最后一个参数值NULL代表ReadFile将采用同步文件读写方式。

(2)异步方式

异步方式中,利用Win32的多线程结构,可以让串口的读写操作在后台进行,而应用程序的其它部分在前台执行例如:

……………………

……………………

……………………

CreateFile(lpszPort,//打开串口

GENERIC_READ|GENERIC_WRITE,

0,

0,

……………………

……………………

OPEN_EXISTING,

FILE_FLAG_OVERLAPPED,//允许异步操作

0);

OVERLAPPEDlpOve

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2