基于LabVIEW和DS18B20的多点温度测量系统下位机部分Word文件下载.docx
- 文档编号:22062702
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:52
- 大小:613.47KB
基于LabVIEW和DS18B20的多点温度测量系统下位机部分Word文件下载.docx
《基于LabVIEW和DS18B20的多点温度测量系统下位机部分Word文件下载.docx》由会员分享,可在线阅读,更多相关《基于LabVIEW和DS18B20的多点温度测量系统下位机部分Word文件下载.docx(52页珍藏版)》请在冰豆网上搜索。
第一章引言1
1.1基于LabVIEW的虚拟仪器及其现状1
1.2现代数字式温度传感器及其代表DS18B201
1.3微机控制技术的发展及在其控制的测控系统中引入虚拟仪器的意义2
1.4本设计的内容3
第二章下位机系统原理4
2.1下位机的组成和工作过程4
2.2主要组成部件介绍5
2.2.1DS18B20及其工作原理5
2.2.2LCD1602及其工作原理14
2.2.3串行通信接口22
第三章硬件设计30
3.1单片机模块30
3.2测温模块31
3.3显示模块32
3.4报警模块33
3.5温度限值设定模块34
3.6串行接口模块34
第四章软件设计36
4.1主程序流程36
4.2系统初始化38
4.2.1定时器T1工作方式设定38
4.2.2串行口初始化设定38
4.2.3LCD1602初始化设定38
4.3获取温度程序39
4.3.1DS18B20初始化40
4.3.2写DS18B2040
4.3.3读DS18B2041
4.3.4获取温度程序41
4.4温度显示程序43
4.5总程序44
第五章设计总结46
参考文献47
附录A49
附录B50
致谢60
第一章引言
一.1基于LabVIEW的虚拟仪器及其现状
虚拟仪器是在计算机基础上通过增加相关硬件和软件构建而成的、具有可视化界面的仪器。
虚拟仪器彻底打破了传统仪器只能由生产厂家定义,用户无法改变的局面,从而使得任何一个用户都可以方便灵活地用鼠标或按键在计算机显示屏幕上操作虚拟仪器软面板的各种“旋钮”进行测试工作,并可以根据不同的测试要求通过窗口切换不同的虚拟仪器,或通过修改软件来改变、增减虚拟仪器系统的功能与规模。
虚拟仪器具有的这种“可开发性”和“可扩展性”等优越特点使虚拟仪器具有强大的生命力和竞争力。
虚拟仪器技术由三大部分组成:
一、高效的软件。
软件是虚拟仪器技术中最重要的部分。
使用正确的软件工具并通过设计或调用特定的程序模块,工程师们可以高效地创建自己的应用以及友好的人机交互界面。
NI公司提供的行业标准图形化编程软件——LabVIEW,不仅能轻松方便地完成与各种软硬件的连接,更能提供强大的后续数据处理能力,设置数据处理、转换、存储的方式,并将结果显示给用户。
此外,NI提供了更多交互式的测量工具和更高层的系统管理软件工具,满足客户对高性能应用的需求。
二、模块化的I/O硬件。
面对如今日益复杂的测试测量应用,NI提供了全方位的软硬件的解决方案。
无论用户是使用PCI、PXI、PCMCIA、USB或者是1394总线,NI都能提供相应的模块化的硬件产品,产品种类从数据采集、信号处理、声音和振动测量、视觉、运动、仪器控制、分布式I/O到CAN接口等工业通信,应有尽有。
NI高性能的硬件产品结合灵活的开发软件,可以为负责测试和设计工作的工程师们创建完全自定义的测量系统,满足各种独特的应用要求。
目前,NI已经达到了每两个工作日推出一款硬件产品的速度,大大拓宽了用户的选择面。
三、用于集成的软硬件平台。
NI首先提出的专为测试任务设
计的PXI硬件平台,已经成为当今测试、测量和自动化应用的标准平台,它的开放式构架、灵活性和PC技术的成本优势,为测量和自动化行业带来了一场翻天覆地的变革。
由NI发起的PXI系统联盟现已吸引了68家厂商,联盟属下的产品数量也已激增至近千种。
LabVIEW是目前国际上唯一的基于数据流的编译型图形编程环境,它把复杂、烦琐、费时的语言编程简化成用简单或图标提示的方法选择功能(图形),并用线条把各种图形连接起来的简单图形编程方式,使得不熟悉编程的工程技术人员都可以按照测试要求和任务快速“画”出自己的程序,“画”出仪器面板,这大大提高了工作效率,减轻了科研和工程技术人员的工作量,因此,LabVIEW是一种优秀的虚拟仪器软件开发平台。
一.2现代数字式温度传感器及其代表DS18B20
传感器是信息技术的前沿尖端产品。
目前,温度传感器在工农业生产、科学研究和生活领域获得广泛应用。
其数量居各种传感器之首的温度传感器的发展经历了三个阶段:
传统的分立式温度传感器(含敏感元件);
单片集成温度传感器例如(AD590.LM334,HTS1);
智能集成温度传感器。
智能温度传感器亦称数字温度传感器,它是将温度传感器、中央处理器(CPU)、只读存储器(ROM)、随机存取存储器(RAM)、总线接口等电路集成在一个芯片中。
其主要优点是微型化,低功耗,测试功能强,信号传输距离远,抗干扰能力强,易于搭配微控制器(MCU)和微型计算机进行数据处理和温度控制。
DS18B20是DALLAS公司生产的一线制数字温度传感器,多个DS18B20可以并联到3根(VDD、DQ和GND)或2根(利用DQ线供电、GND)线上,CPU只需一根端口线就能与总线上的多个串联的DS18B20通信,占用微处理器的端口较少,可节省大量的引线和逻辑电路。
一线总线独特而且经济的特点,使用户可轻松地组建传感器网络,为测量系统的构建引入全新概念。
由于在传统的模拟信号远距离温度测量系统中,需要很好的解决引线误差补偿问题、多点测量切换误差问题和放大电路零点漂移误差问题等技术问题,才能够达到较高的测量精度。
而数字化温度传感器DS18B20采用单总线协议,即与微机接口仅需占用一个I/O端口,无需任何外部元件,直接将温度转化成数字信号,以9位数字码方式串行输出,从而大大简化了传感器与微处理器的接口,所以很好的解决了传统模拟信号传输引起的误差问题。
随着科学技术的发展,特别是现代仪器的发展,微型化、集成化、数字化正成为传感器发展的一个重要方向。
一.3微机控制技术的发展及在其控制的测控系统中引入虚拟仪器的意义
20世纪70年代初诞生的微型计算机,标志着计算机的发展和应用进入了新的阶段。
计算机在控制领域中作为一个强有力的控制工具,极大地推动着自动控制技术的发展。
计算机在发展的初期,由于计算机结构庞大、价格昂贵和可靠性不高,所以它主要应用在科学计算方面。
随着计算机技术的不断完善,它在信息处理及工业控制方面得到越来越广泛的应用。
又随着高速度、高精度A/D转换器以及其他功能电路的产生,将测试技术推向一个新的发展阶段:
利用微机来辅助测试,使得数据采集、处理和控制融为一体。
虚拟仪器则彻底打破了传统仪器只能由生产厂家定义,用户无法改变的局面,从而使得任何一个用户都可以方便灵活地用鼠标或按键在计算机显示屏幕上操作虚拟仪器软面板的各种“旋钮”进行测试工作,并可以根据不同的测试要求通过窗口切换不同的虚拟仪器,或通过修改软件来改变、增减虚拟仪器系统的功能与规模。
根据虚拟仪器的特性,我们能够方便地将虚拟仪器组成计算机网络。
利用网络技术将分散在不同地理位置不同功能的测试设备联系在一起,使昂贵的硬件设备、软件在网络上得以共享,减少了设备重复投资。
而且尽管Internet技术最初并没有考虑如何将嵌入式智能仪器设备连接在一起,不过NI等公司已开发了通过Web浏览器观测这些嵌入式仪器设备的产品,使人们可以通过Internet操作仪器设备。
现在,有关MCN(MeasurementandControlNetworks)方面的标准正在积极进行,并取得了一定进展。
由此可见,网络化虚拟仪器将具有广泛的应用前景,把微机控制的测控系统与虚拟仪器技术相结合是未来测控技术的发展方向之一。
1.4本设计的内容
综上所述,结合各方面的优点,整个系统采用基于LabVIEW的虚拟仪器作为多点温度测量系统的上位机,而主要由单片机(AT89C52)和数字传感器DS1820组成的温度测量控制系统作为它的下位机部分。
本设计的内容为下位机部分,整个下位机部分控制核心为AT89C52单片机,由它控制DS1820采集温度数字信息,并将测量的结果通过LCD1602液晶显示器进行输出显示,对超出设置范围的温度测量结果通过蜂鸣器和发光二级管进行报警,并实现通过RS232串口与上位机进行通信的功能。
这样,最终实现上位机与下位机有机结合组成一个温度测控系统,实现温度采集、显示、上传等功能。
第二章下位机系统原理
2.1下位机的组成和工作过程
采用AT89C51作为系统控制核心单元,辅以数字式传感器DS18B20、LCD1602液晶显示器和蜂鸣器等完成以单片机为核心的多点温度测量的下位机的硬件设计,再辅以恰当的软件完成整个系统的实现。
整个下位机系统硬件电路图详见附录A。
系统框图如图2-1所示。
图2.1下位机系统组成框图
若干个DS18B20分布于不同的环境点进行温度测量,然后将测得且转化后的数字温度信号通过单总线传输到单片机进行分析运算,再将获得的温度值送到LCD1602进行显示。
通过单片机外围的按键电路可以对传感器内温度报警的上下限值进行设置,当单片机监测到环境温度超出设定值时,将会输出报警信号,使外围的声光器件如蜂鸣器、发光二极管发出警报。
除此之外,上位机可以指示下位机部分可以通过RS-232串行口将所测得的温度信号上传至上位机进行分析、存档。
这样使得上位机与下位机有机的结合在一起,组成了一个易于人机交流的网络化的测量系统。
2.2主要组成部件介绍
在组成下位机系统的所有器件中,DS18B20、LCD1602和串行接口完成特定的功能是通过软件编程的实现的,需要对他们的结构或工作原理进行必要的介绍。
2.2.1DS18B20及其工作原理
2.2.1.1DS18B20概述
DS18B20是美国DALLAS公司的单总线数字温度传感器,具有结构简单,操作灵活,无须外接电路的优点,在使用过程中,可由一根I/O数据线既供电又传输数据,并可由用户设置温度报警界限,被广泛应用于精密仪器间、存储仓库等需要测量和控制温度的地方。
它具有如下特点:
1)测量精度:
DS18B20在-10℃~+85℃范围内的精度为±
0.5℃。
2)分辨率:
DS18B20的分辨率9~12位(其中包括一个符号位)数据通过编程决定。
3)温度转换时间:
DS18B20的转换时间与设定的分辨率有关,当设定为9位时,最大转换时间为93.75ms;
当设定为10位时,为187.5ms;
当设定为11位时,为375ms;
当设定为12位,为750ms。
4)电源电压范围:
在保证温度转换精度为±
0.5℃的情况下,电源电压可为+3.0V~+5.5V.
5)程序设置寄存器:
该寄存器用于设置器件是处于测试模式还是工作模式,此外还用于设置温度分辨率,可设为9位、10位、11位或12位。
6)64位ROM编码:
从高位算起,该ROM有一个字节的CRC校验码,6个字节的产品序列和一个字节的产品家族代码。
DS18B20的家族代码是28H。
7)温度数据寄存器:
寄存器由两个字节组成,DS18B20对于12位的分辨率为0.0625℃。
8)DS18B20内部存储器分配:
DS18B20中含有EEPRPM,其报警上、下限温度值和设定的分辨率倍数是可记忆的,DS18B20在出厂时被设定为12位分辨率。
2.2.1.2引脚描述
DS18B20常采用TO-92封装,其引脚排列及含义如图:
图2.2DS18B20的TO-92封装
2.2.1.3内部结构
图2-3对DS18B20的内部结构进行了描述,它由4个较大的部分构成,他们分别是寄生电源电路模块,64位ROM与单总线接口模块,存储器与控制器逻辑模块及便笺存储器模块。
图2.3DS18B20的内部结构图
在图2-3中,便笺寄存器包含2字节长的温度寄存器,1字节长的报警上限触发寄存器字节,1字节长的报警下限触发寄存器字节,1字节长的配置寄存器。
其中,温度寄存器用于存放温度传感器的数字输出;
报警触发器用于存放温度报警的上限值和下限值;
配置寄存器用于存放用户设定的温度数字化时所选择的位数;
8位的CRC生成寄存器仅用于主机访问时的CRC校验。
在这5个寄存器中,报警上下限触发寄存器和配置寄存器均为EEPROM型的非易失存储器,它们在器件掉电后仍然会保留以前的设定值。
DS18B20使用单总线通信协议通过一根信号线与主机进行数据交换,由于所有的从机都通过三态方式或开漏端口链接到系统总线,该信号线必须通过一个较小的上拉电阻接至VCC端。
在使用单总线进行通信过程中,所有数据的读写传输都约定为最低数据LSB在前。
除了使用总线寄生电源外,DS18B20也可以使用外接电源。
当使用寄生电源时,VDD引脚接地;
当使用外接电源时,VDD引脚外接电源。
相比之下,使用外接电源有如下优点。
(1)I/O总线无需强上拉,此时可以取消MOSFET三极管。
微处理器也少用一根I/O线而节约了端口资源;
(2)在温度转换期间主设备不需要维持数据线为高电平,因而可以与另外的器件交换数据,以提高测控速度;
(3)如果所有的DS18B20均使用外接电源,总线上就可以挂接任意多个测温节点,并且只要在发出直访ROM命令之后再执行温度转换命令,那么所有的器件就能同时进行转换,然后一一读取测量结果。
在使用寄生电源时,测温系统结果简单,成本低廉,但由于器件在转换温度或复制等工作状态下消耗电流较大,必须保持总线处于可充电的高电平状态。
此外,当温度高于100℃时,不可使用寄生电源,因为此时器件存在较大的漏电电流而使总线不能可靠地把握住高低电平,将使数据传输中的误码率明显增加。
2.2.1.4内部结构
DS18B20的核心是一个直接数字化的温度传感器,可将-55℃至+125℃之间的温度值按9位、10位、11位或12位的分辨率进行量化,与之对应的温度增量值分别为0.5℃、0.25℃、0.125℃、0.0625℃,器件上电后的默认值是12位的分辨率。
当DS18B20接收到主机发出的温度转换命令后(44H),DS18B20开始进行温度转换操作并把转换后的结果放到16位的便笺存储器中的温度寄存器内,数据格式为符号位扩展的二进制补码,读便笺存储器命令使得结果数据顺序至于总线上,其最低位LSB在前,最高位MSB定义为符号位,用以表示温度的正负。
当符号扩展位S为0时表示正的温度值,当符号扩展位S为1时表示负的温度值。
表2-1对温度数据的格式进行了描述。
表2.1DS18B20温度数据格式
S
26
25
24
23
22
21
20
2-1
2-2
2-3
2-4
15
14
13
12
11
10
9
8
7
6
5
4
3
2
1
在表2-1中,S是温度数据的符号扩展位。
在实际的使用过程中,如果DS18B20被配置成为12位的精度,那么温度寄存器中所有的数据位都包含有有效的数据;
如果被配置为11位精度,那么第0位无效;
如果被配置为10位精度,那么第0位和第1位均无效;
如果被配置为9位精度,那么第0位、第1位和第2位均无效。
表2-2以12位的精度为例,给出了数字温度输出值与对应的温度之间的关系。
表2.2部分温度与对应的数字温度值输出之间的对应关系
温度(℃)
数字输出(二进制)
数字输出(十六进制)
+125
0000011111010000
07D0
+85
0000010101010000
0550
+25.0625
0000000110010001
0191
+10.125
0000000010100010
00A2
+0.5
0000000000001000
0008
0
0000000000000000
0000
-0.5
1111111111111000
FFF8
-10.125
1111111101011110
FF5E
-25.0625
1111111001101111
FE6F
-55
1111110010010000
FC90
DS18B20上电复位后,温度寄存器内的值是+85℃所对应的数字温度值。
在DS18B20完成温度转换之后,其温度值将和报警寄存器H、报警温度寄存器L中存储的触发门限值相比较,由于这两个阀门寄存器都是8位寄存器,因此在比较过程中测量值相应的几个低位数据将被忽略,TH和TL中的最高位MSB直接对应16位温度寄存器中的符号位。
如果比较结果表明测量值高于TH中设定的上限温度或低于TL中设定的下限温度,则设置报警标志,该标志每当测量一次温度时都要执行一次更新操作。
一旦报警标志设置后,器件就会响应主设备发出条件搜索命令,这样处理能使得并接的多个DS18B20可以同时实现温度测量。
如果有些点上的温度超过设定的阀值,则这些报警的器件就能及时识别出来,而不必一个个的读取后,再来判断哪些是越界报警的器件。
不论是上述的温度测量还是报警操作,DS18B20的正常工作都依赖于DS18B20内部的存储器。
在DS18B20内部结构分析中,已经介绍过DS18B20的便笺存储器,,此处有必要对便笺存储器及相关的寄存器单元进行更为详细的说明。
DS18B20的存储器包括sram便笺存储器和非易失性的EEPROM存储器,EEPROM用于存放触发报警上限值寄存器(TH)和触发报警下限值寄存器(TL)。
当DS18B20在使用过程中并未使用报警功能时,TH和TL可作为普通用途的寄存器单元使用。
DS18B20的存储器组织结构如表2-3所示。
表2.3DS18B20内部存储器组织结构
便笺存储器(器件上电默认值)
EEPROM存储器
温度数字量低位字节(50H)
无
温度数字量高位字节(05H)
TH/用户寄存器字节1
TL/用户寄存器字节2
配置寄存器
保留(FFH)
保留(0CH)
保留(10H)
CRC
从表中可以看出,便笺寄存器由9个字
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 LabVIEW DS18B20 多点 温度 测量 系统 下位 部分