1、本科毕业论文(20 届)基于 LabVIEW 的实时温度采集系统的设计所在学院 专业班级 通信工程 学生姓名 学号 指导教师 职称 完成日期 年 月 目录摘要 .IIIAbstract.IV第一章 绪论 .11.1 课题背景 .11.2 课题现状 .11.3 课题的研究目的和意义 .21.4 本课题采取的技术路线 .2第二章 主要技术简介 .32.1 LabVIEW 简介 .32.2 Proteus 简介 .4第三章 总体设计 .73.1 系统结构 .73.2 下位机部分 .73.3 上位机部分 .93.4 通信线路部分 .9第四章 详细设计 .114.1 上位机的实现 .114.1.1 串口
2、的配置 .114.1.2 数据处理 .134.1.3 数据的显示 .154.2 下位机的实现 .154.3 通信线路的实现 .17第五章 仿真与实现 .195.1 下位机调试 .195.2 上位机调试 .205.3 系统实现和调试 .22第六章 总结 .25参考文献 .26- II -附录 .27致谢 .31- III -基于 LabVIEW 的实时温度采集系统的设计摘要温度采集在每个部门得到了广泛的应用,因此设计简单方便的温度采集系统具有十分重要的意义。传统的温度采集系统,其功能唯一,用户无法根据自己的需要改变。为此本文提出了一种基于 LabVIEW 软件开发平台的温度实时采集系统的实现方案
3、,它具有精度高、界面好、易于操作、成本低且扩展性强。本方案中,以 LabVIEW8.5 软件平台开发,单片机 80C51 为硬件核心,设计一个实时温度测控系统。该系统采用数字温度传感器 DS18B20,配合单片机,实现现场温度采集系统。通过通信线路和计算机进行通信,并由平台对信号进行显示、存储。本方案通过了 EDA 软件 Proteus 的仿真验证,实验证明设计完全可行,达到设计预期。关键词:数据采集;传感器;虚拟仪器; LabVIEW- IV -Design of Real-time Temperature Collection System Based on LabVIEWAbstract
4、Temperature acquisition in each department has been widely used, so the design is simple and convenient temperature acquisition system has very important significance. The traditional temperature acquisition system, its functions and specifications of a single fixed, users can not change according t
5、o their needs. This paper proposes a software development platform based on the temperature of LabVIEW Real-Time Acquisition System program, which has high precision, good interface, easy operation, low cost and strong expansion. The program, to LabVIEW8.5 software platform, the hardware 80C51 micro
6、controller core, design a real-time temperature measurement and control systems. The system uses digital temperature sensor DS18B20, with the microcontroller, temperature acquisition system for field. Through the communication lines and computers to communicate, by the platform the signal display, s
7、torage. The program adopted the Proteus EDA simulation and verification software, the design proved feasible, to meet the design expectations.Keywords:Data Acquisition,Sensors,Virtual Instrument,LabVIEW- 1 -第一章 绪论1.1 课题背景无论你关心与不关心温度,温度总是影响着你的一生,冬天我们生火取暖,夏天我们下河洗澡,我们所做的就是让自己的体温保持在一个正常的状态。一场无情的大火会吞噬一切,
8、当灾难发生的时候,我们总是无助的。我们看看国内的一则新闻,2010 年 11 月 15 日 14 时,上海余姚路胶州路一栋高层公寓起火。据附近居民介绍,公寓内住着不少退休教师,起火点位于 10-12 层之间,整栋楼都被大火包围着,楼内还有不少居民没有撤离,其中 58 人死亡,70 余人受伤送医,56 余人失踪。又是一场灾难,当灾难发生了,我们所做的只能是补救,如果我们在事故发生以前,我们能做很好的预防,我们就完全能避免灾难的发生,所以对温度的采集就非常有必要了。总之,设计可靠且实用的温度采集系统显得非常重要。1.2 课题现状目前我国许多对温度的测试还停留在人工巡回测试,使用古老的水银温度计,这
9、种温度计只能人为去测量温度,而且不能远程测量,如果要测量一段时间温度的变化,还要停留在那个环境一段时间,一点都不人性化,而且浪费时间,随着集成电路的发展,电子温度采集系统孕育而生,它比水银温度计更能精确的采集温度数据,而且LED 的显示更直观的表示温度信息,可是也有很多的不足,功能单一,结构简单,对于数据的储存,还是最原始的储存方式,不便于数据长期的保存,只能对单点进行温度测量,不能组网测量温度。可是虚拟仪器却解决这样的问题,给我们带来了希望是曙光,虚拟仪器是计算机硬件资源、仪器硬件、数据分析处理、软件、通信软件及图行用户界面的有效结合,具有传统仪器所具备的信号采集、信号处理分析、信号输出等功
10、能。其基本构成包括计算机、虚拟仪器软件、硬件接口和测试仪器等。硬件技术包括卡式仪器和总线技术,其中总线技术包括计算机总线和仪器总线。软件技术包括虚拟仪器应用软件的开发平台、和仪器驱动程序以及 I/O 接口软件。软件的开发平台主要有 Visual C+,Visual Basic 和 NI 公司的 LabVIEW、Lab Windows/CVI 等可视化开发工具,可是如果我们使用传统的开发平台,都会存在相同的弊端,例如:开发难度大,开发周期过长,界面不美观,可是如果使用 LabVIEW 平台的 G 语言开发,都- 2 -可以解决传统开发平台存在的弊端,使得我们开发难度小,开发周期短,界面美观等。而
11、且我们使用 Zigbee 协议无线模块进行无线数据的传输,Zigbee 是 IEEE 802.15.4 协议的代名词。根据这个协议规定的技术是一种短距离、低功耗的无线通信技术。其特点是近距离、低复杂度、自组织、低功耗、低数据速率、低成本。主要适合用于自动控制和远程控制领域,可以嵌入各种设备。简而言之,Zigbee 就是一种便宜的,低功耗的近距离无线组网通讯技术,所以我们使用 Zigbee 技术可以组建多点网络收集各点温度信息,将温度信息发送至 LabVIEW 平台开发的程序处理。1.3 课题的研究目的和意义主要目的: 基于 LabVIEW 平台开发接收单片机发送的实时温度信息,并进行处理; 利
12、用 Zigbee 嵌入式无线通信模块组建分布式温度感应系统。主要意义:本文设计的温度测控系统以单功耗的单片机系统为采集模块,以LabVIEW 开发的软件平台进行温度处理与控制,与传统仪器相比,具有更友好,易于操作及扩张性强等特点。使用的高级语言 Keil C 对单片机编程技术、Protues 对原理图的设计及仿真应用、LabVIEW 软件实现与计算机的通信技术,系统能够解决传统设备不能多点采集温度数据、不便保存温度信息的问题,让人们更加人性化的工作。1.4 本课题采取的技术路线本课题要做的是温度测量系统的仿真与实现,而本课题拟采用的技术路线是通过湿度传感器 DS18B20 采集频率数据,将其传
13、送到单片机,再通过通信线路传输到计算机中,再在计算机中调用 LabVIEW 软件对数据进行处理及显示。系统的仿真是由Proteus 软件与 Keil C51 以及 LabVIEW 三个软件进行联合仿真实现的;系统的实现是做好硬件实物后,将实物与计算机用串口连接好后,再在计算机中启动 LabVIEW 软件,调节好参数启动即可实现分布式湿度测量系统的实现。对于通信线路的选择,可以根据不同的距离,选择不同的传输模式,可以是使用RS232,或者 Zigbee 无线模块进行传输。- 3 -第二章 主要技术简介2.1 LabVIEW 简介LabVIEW(Laboratory Virtual Instrum
14、ent Engineering Workbench) ,是一种用图标代替文本行创建应用程序的图形化编程语言 1。由美国国家仪器(National Instrument,简称 NI)公司研制开发的,类似于 C 和 BASIC 开发环境,但是 LabVIEW与其他计算机语言的显著区别是:其他计算机语言都是采用基于文本的语言产生代码,而 LabVIEW 使用的是图形化编辑语言 G 编写程序,是一种数据流编程语言。程序员通过绘制导线连接不同功能的节点,图形化的程序框图(LV 源代码)结构决定程序如何执行。这些线传递变量,所有的输入数据都准备好之后,节点便马上执行。这可能出现同时使用多个节点的情况,G
15、语言天生地具有并行执行能力。内置的调度算法自动使用多处理器和多线程硬件,可以跨平台地在可运行的节点上复用线程,产生的程序是框图的形式。LabVIEW 集成了与满足 GPIB、VXI、RS-232 和 RS-485 协议的硬件及数据采集卡通讯的全部功能。它还内置了便于应用 TCP/IP、ActiveX 等软件标准的库函数。这是一个功能强大且灵活的软件。利用它可以方便地建立自己的虚拟仪器,其图形化的界面使得编程及使用过程都生动有趣。利用 LabVIEW,可产生独立运行的可执行文件,它是一个真正的 32 位编译器。像许多重要的软件一样,LabVIEW 提供了Windows、UNIX、Linux 、M
16、acintosh 的多种版本。它主要的方便就是,一个硬件的情况下,可以通过改变软件,就可以实现不同的仪器仪表的功能,非常方便,是相当于软件即硬件现在的图形化主要是上层的系统,国内现在已经开发出图形化的单片机编程系统(支持 32 位的嵌入式系统,并且可以扩展的),而且也在不断完善中。如图 2.1 所示是一个频域分析_双边傅里叶变换程序,如图 2.2 所示是程序的前面板。通过上面的程序,我们可以看到频域分析_双边傅里叶变换程序在 LabVIEW 中,就是由几个功能不同的控件构成,一个简单的正弦信号,通过配置幅度和频率,就可以产生需要的信号,三个信号进行做加运算,然后送到波形表中显示,将数据送入到F
17、FT 中,运用复函数到极坐标的转换,除上维数,最后显示频域信号。- 4 -图 2.1 程序框图图 2.2 前面板试想一下,如果我们用 C 语言,在很短的时间内实现这一功能,结果我们是可想而知的,这个是很难的。LabVIEW 处理的信息由我们的硬件产生的,可是我们在做硬件的时候,我们可以使用 Proteus 对硬件仿真,随后在做实体,我们就可以提前知道我们面临的问题了,从而更迅速的解决问题,下面我们来介绍一下 Proteus。2.2 Proteus 简介Proteus 软件是来自英国 Labcenter electronics 公司的 EDA 工具软件,具有其它EDA 工具如 PROTELL 9
18、9 等软件的常规功能:原理图编辑、 PCB 自动或人工布线及电路仿真的功能外,此外它最大的特点是可以对众多 MCU 进行多种编程语 Error! Reference - 5 -source not found.。它不仅具有其它 EDA 工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus 是世界上著名的 EDA 工具,从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到 PCB 设计,真正实现了从概念到产品的完整设计。是目前世界上
19、唯一将电路仿真软件、PCB 设计软件和虚拟模型仿真软件三合一的设计平台,其处理器模型支持 8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086 和MSP430 等, 2010 年即将增加 Cortex 和 DSP 系列处理器,并持续增加其他系列处理器模型。在编译方面,它也支持 IAR、Keil 和 MPLAB 等多种编译器。Proteus 元件库中具有很多的元器件,并不需要自己封装,我们要做的只是把元件库中的元件拿出来用,随后连接,完成最终的电路,Proteus 最大的功能就是仿真,内含众多的仿真模块,电压表,波形图,虚拟终端,在我们虚拟中使用到的单片机,可以将 keil 众多文件加入单片机,从而上单片机根据我们的指令工作。串口提供了一个很重要的功能 PIM,这个功能不仅可以让我们的串口可以外接实体硬件,还可以接虚拟借口,从而更方便的进行仿真。图 2.3 所示是一个温度收集系统的仿真,我们在库中调用全部设计好的元件,然后连线,导入 HEX 文件,最后点击仿真,我们就可以看到系统的运行。图 2.3 温度收集系统仿真图如果我们没有硬件实体,可是又想做仿真,那 Proteus 是我们最好的选择。而