1、前言随着蔬菜大棚的迅速增多,人们对其性能要求也越来越高,特别是为了提高生产效率,对大棚的自动化程度要求也越来越高。随着单片机及各种电子器件性价比的迅速提高,使得这种要求变为可能。本文介绍了一种以AT89S52单片机为控制核心的测控仪,主要是为了对蔬菜大棚内的温湿度,以及二氧化碳浓度进行有效、可靠地检测与控制而设计的。该测控仪具有检测精度高、使用简单、成本较低和工作稳定可靠等特点,所以具有一定的应用前景。现代温室及配套设施已采用专业化、集约化和规模化生产,规范有序的市场经营和国际化的市场体系运作,成为当今世界最具活力的新兴产业之一和现代农业的亮点。在今后一个时期,随着科学技术的发展、全球经济的一
2、体化和社会的进步,现代温室及配套设施,将以节能、环保和改善工作条件为核心,深入广泛采用高新技术,向实质意义上的“ 工厂化”方向稳步持续快速地发展,前景十分广阔。1、概述1.1现状总的来说,我国温室环境控制技术在总体上,正从消化吸收、简单应用阶段向实用化、综合性应用阶段过渡和发展,但所研制出的控制系统,很大一部分只能实现对部分环境因子的控制或还需要人工手动控制辅助,控制效果、自动化程度、可靠性和可操作性与国外同类产品相比尚有较大差距。1.2现有温室大棚的缺点随着大棚技术的普及,温室大棚数量不断增多,温室大棚的温度控制成为一个难题。传统的温度控制是在温室大棚内部悬挂温度计,通过读取温度值来知道大棚
3、内的实际温度,然后根据现有温度与额定温度进行比较,看温度是否过高或过低,如果过高,就对大棚进行降温处理,如果过低就升温,就对大棚进行升温。这些操作都是在人工情况下进行的,这些都浪费了大量的人力物力,对于大棚数量很多来说,是面临的一个难题。现在,随着农业产业规模的不断提高,农产品在大棚中培育的品种越来越多,对于数量较多的大棚,传统的温度控制措施就显现出很大的局限性。1.3改进办法温室大棚不受地域和环境温度的限制在现代农业技术中越来越重要,提出了一种利用微控制系统温室大棚温度、湿度等实施有效检测和控制的方法,以达到棚内空气温度和湿度可调,土壤湿度以及营养成分可控的目的,创造适应不同植物生长需求的环
4、境本资料涉及硬件的选择、软件的设计、系统的组建以及系统的特点。对蔬菜大棚内的温度、湿度、CO2浓度、光照等环境因素能进行监测,并实现智能化、现代化控制,是普通大棚发展的重要方向。虚拟仪器技术越来越完善,所以,选用虚拟仪器来改善大棚的温度控制系统。本系统LabVIEW虚拟仪器编程,通过对前面板的设置来显示温室大棚内的温度,并进行报警,进而对大棚内温度进行控制。本系统有单片机,温度传感器,串口通信,和计算机组成。计算机主要是进行编程,对温度进行显示、报警和控制等;温度传感器是对大棚内温度进行测量,显示;单片机是对温度传感进行编程,读去温度传感器的温度值,并半温度值通过串口通信送入计算机;串口通信作
5、用是把单片机送来的数据送到计算机里,起到传输作用。其原理图如图1所示。需要做的工作就是进行计算机编程,和单片机编程,使传感器工作,并进行温度控制。打印机主机CRT显示,键盘通讯转换机通讯接口输入接口传感器及其设备单片机系统输出接口执行器及其设备从机图1 温室大棚温度控制系统本系统能够对大棚内的温度进行采集,然后再进行比较,通过比较对大棚内的温度是否超过温度限制进行分析,如果超过温度限制,温度报警系统将进行报警,来通知管理人员大棚内的温度超过限制,大棚内的温控系统出现故障,从而有利于农作物的生长,提高产量。本系统最大的优点是在一台电脑上可以监测到多个大棚内的温度情况,从而进行控制。2、虚拟仪器2
6、.1虚拟仪器概述虚拟技术、计算机技术与网络技术是信息技术最重要的组成部分,它们被称为21世纪科学技术中的三大核心技术。电子测量仪器发展至今,已经经历了四代历程,分别为:模拟仪器、分立元件式仪器、数字化仪器和智能仪器。目前,微电子技术和计算机技术的飞速发展,测试技术与计算机深层次的组合正引起测试仪器领域里的一场新的革命,一种全新的仪器虚拟仪器应运而生。虚拟仪器,是虚拟技术的一个重要的组成部分,它是现代计算机软件技术、通信技术和测量技术告诉发展孕育出的一项革命性技术,其导致了传统仪器的结构、概念和设计观点都发生了巨大变革,它的出现使得人类的测试技术进入了一个新的发展纪元。NI公司的虚拟仪器平台La
7、bVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化的编程语言通常称为“G”编程语言,是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。LabVIEW开发的程序称为虚拟仪器程序,简称VI。LabVIEW大大简化了虚拟仪器系统的开发过程,缩短了系统的开发和调试周期。LabVIEW作为一种图形化编程语言,它是真正面向科学家和工程师的编程语言,被誉为“科学家与工程师”的语言。2.1.1虚拟仪器的基本概念 计算机和一起的密切结合是目前仪器发展的一个重要方向,这种结合主要有以下两种方式:l 将计算机装入仪器,点姓的例子
8、就是所谓智能化的仪器,随着计算机功能的日益强大以及体积的日趋缩小,这类仪器功能也越来越大,目前已经出现含嵌入式系统的仪器。l 将仪器装入计算机,以通用的计算机硬件及操作系统为依托,实现各种仪器功能。虚拟仪器主要是指这种方式。所谓虚拟仪器,就是在以PC为核心的硬件平台上,由用户通过软件进行编程设计,设计出的虚拟仪器面板可以用来模拟虚拟仪器并实现其测量功能的一种计算机仪器系统。虚拟仪器的实质是利用计算机显示器(CRT)是显示功能来模拟传统仪器的控制面板,以多种形式表达输出检测结果,利用计算机强大的软件功能实现信号数据的运算、分析、处理,使用I/O接口设备来完成信号的采集、测量与调理,从而完成各种测
9、试功能的一种计算机仪器系统。虚拟仪器的出现,使得仪器与个人计算机融为一体了。虚拟仪器是测试技术与计算机深层次结合的产物,“虚拟”首先体现在仪器的面板是虚拟的,传统仪器面板都是实实在在的,是用户可以用手触摸的“器件” ;虚拟仪器的面板是外形与实物相似的“图标” 。另外虚拟仪器是通过软件编程来实现仪器的多种测试功能的。以上所述就是常听到的“软件即是仪器。仪器即是软件”说法的由来。2.1.2虚拟仪器的构成及分类 虚拟仪器由通过仪器硬件平台(简称硬件平台)和应用软件两大部分组成。1. 硬件平台虚拟仪器的硬件平台包括计算机和I/O接口设备两部分。1) 计算机计算机是硬件平台的核心。2) I/O接口设备I
10、/O接口设备主要完成待测输入信号的采集、放大和模/数转换等。根据I/O接口设备的不同,虚拟仪器主要分为以下五种类型,如图2所示。PC-DAQGPIB仪器串口仪器VXI模块PXI模块检测信号计算机图2 虚拟仪器的构成方式l PC-DAQ:它是以数据采集板、信号调整电路及计算机为硬件平台组成的插卡式虚拟仪器系统。这种系统采用PCI或ISA计算机本身的总线,只需要将数据采集卡/板(DAQ)插入计算机机箱内的空槽中即可使用。l GPIB仪器:它是以GPIB标准总线仪器与计算机为硬件平台组成的仪器测试系统。l 串口仪器:它是以Serial标准总线仪器与计算机硬件为平台组成的仪器测试系统。l VXI模块:
11、它是以VXI标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。l PXI模块:它是以PXI标准总线仪器模块与计算机为硬件平台组成的仪器测试系统。无论是哪种VI系统,都是通过应用软件将仪器硬件与计算机结合,其中PC-DAQ测量系统是最廉价的方式,它是构成VI系统的最基本的方式。2. 应用软件虚拟仪器的应用软禁由以下两大部分组成。1) 应用程序一般来说,虚拟仪器的应用程序包含以下两个方面:l 实现虚拟面板功能的前面板软件程序。l 定义测试功能的流程图软件程序。2) I/O接口设备驱动程序I/O接口设备驱动程序完成特定外部硬件设备的扩展、驱动与通信。开发虚拟仪器必须有合适的软件工具,目前虚拟仪器
12、软件开发工具有如下两类:l 文本式编程语言,例如VisualC+、VisualBasic、LabWindows/CVI等。l 图形化编程语言,例如LabVIEW/HPVEE等。这些软件开发工具为用户设计虚拟仪器应用软件提供了良好的开发坏境。2.1.3虚拟仪器的发展及特点1.虚拟仪器的发展 追溯电子测量仪器的发展历史,大体经历了以下的发展历程:1) 第一代模拟仪器这类仪器在某些实验室里还能看到,它是以电磁感应基本定律为基础的指针式仪器,如指针式万用表、指针式电压表、指针式电流表等。2) 第二代分立元件式仪器当20世纪50年代出现电子管、60年代出现晶体管时,便产生了以电子管或晶体管电子电路为基础
13、的第二代测试仪器分立元件式仪器。3) 第三代数字化仪器20世纪70年代,随着集成电路的出现,诞生了以集成电路芯片为基础的第三代仪器数字式仪器。这类仪器相当普及,如数字万用表、数字频率计等。4) 第四代智能仪器随着微电子技术的发展和微处理器的普及,以微处理器为核心的第四代仪器智能式仪表迅速普及。这类仪器内置微处理器,可以进行自动测试和数据处理功能,习惯上称为智能仪器。其缺点是它的功能模块都是以硬件的形式存在,无论是开发还是应用,都缺乏灵活性。5) 虚拟仪器目前,电子测量领域出现了一种全新的仪器虚拟仪器。虚拟仪器与智能仪器有点类似,它是将仪器装入计算机,以通用的计算机硬件及操作系统为依托,来实现各
14、种仪器功能。采用虚拟仪器技术构建的测试仪器,具有开发效率高、可维护性强、测试精度高、稳定性和可靠性好等优点,因此具有较高的性能价格比,便于节省投资、设备更新和功能转换与扩充。虚拟仪器的起源可以追溯到20世纪70年代,那时计算机测控系统在国防、航天等领域已经有了相当的发展。PC机出现以后,用计算机来模拟替代传统的仪器称为了可能,甚至在Microsoft公司的Windows诞生之前,NI公司已经在Macintosh计算机上推出了LabVIEW2.0以前的版本。对虚拟仪器和LabVIEW长期、系统、有效的研究开发使得该公司成为业界公认的权威。第一台虚拟仪器诞生于1987年,此后,虚拟仪器的发展势头迅
15、猛,到1994年,已有95个厂家的1000多种产品销售。工业发达国家已经将虚拟仪器技术广泛用于航天、通讯、生物医药、地球物理、电子、机械等各个领域,进行工程技术和科学研究。国内对虚拟仪器的研究与工程应用也取得了很多成果,在产品性能测试、设备故障诊断、生产过程控制中得到普遍应用。虚拟仪器对于测量仪器的深刻意义在于:测量仪器的功能可以由用户根据需要自行设计软件来定义或扩展,而不是由厂家事先定义固定不可改变的。2.1.4 虚拟仪器系统的构成 虚拟仪器由硬件设备与接口、设备驱动软件和虚拟仪器面板组成。其中,硬件设备与接口可以是各种以PC为基础的内置功能插卡、通用接口总线接口卡、串行口、VXI总线仪器接
16、口等设备,或者是其它各种可程控的外置测试设备,设备驱动软件是直接控制各种硬件接口的驱动程序,虚拟仪器通过底层设备驱动软件与真实的仪器系统进行通讯,并以虚拟仪器面板的形式在计算机屏幕上显示与真实仪器面板操作元素相对应的各种控件。用户用鼠标操作虚拟仪器的面板就如同操作真实仪器一样真实与方便。 虚拟仪器系统的硬件构成 :虚拟仪器的硬件系统一般分为计算机硬件平台和测控功能硬件。计算机硬件平台可以是各种类型的计算机,如台式计算机、便携式计算机、工作站、嵌入式计算机等。它管理着虚拟仪器的软件资源,是虚拟仪器的硬件基础。因此,计算机技术在显示、存储能力、处理器性能、网络、总线标准等方面的发展,导致了虚拟仪器
17、系统的快速发展。 按照测控功能硬件的不同,VI可分为DAQ、GPIB、VXI、PXI和串口总线五种标准体系结构,它们主要完成被测输入信号的采集、放大、模/数转换。 虚拟仪器系统的软件构成 :测试软件是虚拟仪器的主心骨。NI公司在提出虚拟仪器概念并推出第一批实用成果时,就用软件就是仪器来表达虚拟仪器的特征,强调软件在虚拟仪器中的重要位置。NI公司从一开始就推出丰富而又简洁的虚拟仪器开发软件。使用者可以根据不同的测试任务,在虚拟仪器开发软件的提示下编制不同的测试软件,来实现当代科学技术复杂的测试任务。在虚拟仪器系统中用灵活强大的计算机软件代替传统仪器的某些硬件,特别是系统中应用计算机直接参与测试信
18、号的产生和测量特性的分析,使仪器中的一些硬件甚至整个仪器从系统中消失,而由计算机的软硬件资源来完成它们的功能。虚拟仪器测试系统的软件主要分为以下四部分。 (1)仪器面板控制软件 仪器面板控制软件即测试管理层,是用户与仪器之间交流信息的纽带。利用计算机强大的图形化编程环境,使用可视化的技术,从控制模块上选择你所需要的对象,放在虚拟仪器的前面板上。 (2)数据分析处理软件 利用计算机强大的计算能力和虚拟仪器开发软件功能强大的函数库可以极大提高虚拟仪器系统的数据分析处理能力,节省开发时间。 (3)仪器驱动软件 虚拟仪器驱动程序是处理与特定仪器进行控制通信的一种软件。仪器驱动器与通信接口及使用开发环境
19、相联系,它提供一种高级的、抽象的仪器映像,它还能提供特定的使用开发环境信息。仪器驱动器是虚拟仪器的核心,是用户完成对仪器硬件控制的纽带和桥梁。虚拟仪器驱动程序的核心是驱动程序函数/VI集,函数/VI是指组成驱动的模块化子程序。驱动程序一般分为两层,底层是仪器的基本操作,如初始化仪器配置仪器输入参数、收发数据、查看仪器状态等。高层是应用函数/VI层,它根据具体测量要求调用底层的函数/VI。 (4)通用I/O接口软件 在虚拟仪器系统中,I/O接口软件作为虚拟仪器系统软件结构中承上启下的一层,其模块化与标准化越来越重要。VXI总线即插即用联盟,为其制定了标准,提出了自底向上的I/O接口软件模型即VI
20、SA。作为通用I/O标准,VISA具有与仪器硬件接口无关性的特点, 即这种软件结构是面向器件功能而不是面向接口总线的。应用工程师为带GPIB接口仪器所写的软件,也可以于VXI系统或具有RS232接口的设备上,这样不但大大缩短了应用程序的开发周期,而且彻底改变了测试软件开发的方式和手段。 2.1.5 虚拟仪器系统软面板的设计标准 虚拟仪器软面板是用户用来操作仪器,与仪器进行通信,输入参数设置,输出结果显示的用户接口。其设计准则是: (1) 按照VPP规范设计软面板,使面板具有标准化、开放性、可移植性。 (2) 根据测试要求确定仪器功能。根据测试任务确定仪器软面板具体测试、测量功能,开关、控制等设
21、置要求。 (3) 用面向对象的设计方法设计软面板。按照面向对象的设计思想,一个虚拟仪器集成系统由多个虚拟仪器组成,每个虚拟仪器均由软面板控制。软面板由大量的虚拟控件组成。 2.1.6 虚拟仪器系统的组建方案 在虚拟仪器系统的组建方案,主要包括底层硬件、软硬件接口、应用程序以及驱动程序的设计与开发。 (1)制定所设计仪器的接口形式 如果仪器设备具有RS-232串行接口,则直接用连线将仪器设备和计算机的RS-232串行口连接即可。如果是GPIB接口,需要额外配备一块GPIB-488接口板,将接口板插入计算机的ISA插槽,建立起计算机与仪器设备之间的通信桥梁。如果使用计算机来控制VXI总线设备,则需
22、要配置一块GPIB接口卡,通过GPIB 总线与VXI主机箱零槽模块通信。零槽模块的GPIB-VXI翻译器将GPIB 的命令翻译成VXI命令并把各模块返回的数据以一定的格式传回主控计算机。DAQ数据采集卡是基于计算机标准总线的,因此可以将数据采集卡直接插到计算机的插槽上。 (2) 开发硬件采集卡 一种典型的数据采集卡组成包括,先用传感器把非电的物理量转变成模拟电量,采样/保持器可以保持信号,实现对瞬时信号进行采集,以便ADC进行数字转换,提高ADC转换器的转换精度。实现在测量中同时对多路模拟信号进行采样。多路模拟开关可以分时选通来自多个输入通道的某一路信号,这样在多路开关后的单元电路,只需一套即
23、可,也可以采用计算机进行多路选择控制。当传感器输出的信号比较小,可以用放大器放大和缓冲输入信号,如果采用的是可编程增益放大器就可以通过计算机进行增益选择控制确定增益倍数。精度及性能是仪器系统的生命,而这完全依赖于提供基础数据的信号采集控制电路,因此在硬件采集电路的设计时,需根据所设计的虚拟仪器所要达到的性能指标和被测信号的特点,设计合理的系统结构。系统的结构合理与否,对系统的可靠性、性能价格比等有直接影响,在硬件和软件功能的设计上要尽量使虚拟仪器的结构简单,可靠性高,成本低廉,选用合适的单元器件,尽可能的提高采集卡采集的精度和速度。 (3) 确定设计采集卡的设备驱动程序方案 采集卡的设备驱动程
24、序是控制各种硬件采集卡的驱动程序,是连接主控计算机与信号采集调理部件的纽带。驱动程序的实质是为用户提供了用于仪器操作的较抽象的操作函数集,它是虚拟仪器核心软件之一。 (4) 确定虚拟仪器系统应用程序编程语言 虚拟仪器系统软件结构的设计在体现整个系统的性能和灵活性方面作用很大,因此在开发虚拟仪器系统的软件部分时,首先要根据所开发的虚拟仪器功能和性能,确定应用程序和软面板程序的模块结构和功能,画出各部分的流程图,采用合适的编程语言。在编制虚拟仪器软件中可采用两种编程方法。一种是采用面向对象的可视化的高级编程语言,如VC+、VB和Delphi等编写虚拟仪器的软件,这种方法实现的系统灵活性高,易于扩充
25、和升级维护。另一种是采用图形化编程方法,如LabVIEW,HPVEE,采用图形化编程的优势是软件开发周期短、编程较简单,特别适合工程技术人员使用。总之在编写程序时,要尽可能的让每一模块都有一定的独立性,模块之间明确定义接口,模块之间可以采用数据传递的形式进行联系。 (5) 软件调试和运行 程序编写好以后要对各模块进行调试和运行,可以通过采集各种标准信号来验证虚拟仪器系统功能的正确性和性能的优良性。2.2图形化编程语言LabVIEW的概述 “软件即是仪器,仪器即是软件” ,由此可见,软件对于虚拟仪器的重要作用。在计算机和一起硬件资源确定的情况下,用户可以根据不同的需要,利用软件设计出不同的虚拟仪
26、器系统。下面主要介绍功能强大的图形化编程语言LabVIEW。2.2.1 LabVIEW定义LabVIEW(Laboratory Virtual Instrument Engineering Workbench)是一种图形化的编程语言(又称“G”语言),它是由美国NI公司(NATIONAL INSTRUMENTS Company)推出的虚拟仪器开发平台,也是目前应用最广、发展最快、功能最强的图形化软件集成开发环境。LabVIEW作为一种强大的虚拟仪器开发平台,广泛的被工业界、学术界和研究室所接受,被视为一个标准的数据采集和一起控制软件。LabVIEW集成了GPIB、VXI、RS-232和RS-4
27、85协议的硬件及数据采集卡通讯的全部功能,并且它还内置了便于应用TCP/IP、ActiveX等软件标准的库函数。因此,LabVIEW是一个功能强大且灵活的软件,利用它可以方便地组建自己的虚拟仪器。使用LabVIEW开发平台编制的程序称为虚拟仪器程序,它包括前面板(FrontPanel)、流程图(BlockDiagram)以及图标/连接器(Icon/Connector)三部分。LabVIEW简化了虚拟仪器系统的开发过程,缩短了系统的开发和调试周期,它让用户从繁琐的计算机代码编写中解放出来,把大部分精力投入系统设计和分析当中,而不再拘泥于程序细节。2.2.2 LabVIEW软件的特点LabVIEW
28、是一种图形化的程序语言,使用这种语言编程时,基本上不用写程序代码,取而代之的是程序流程图。LabVIEW尽可能的利用了技术人员、科学家、工程师所熟悉的术语、图标和概念。因此,LabVIEW是一个面向最终用户的工具,它可以增强用户构建自己的科学和工程系统的能力,提供了实现仪器编程和数据采集系统的便捷途径,使用它进行原理研究、设计、测试并实现仪器系统时,可以大大提高工作效率。LabVIEW是通过图形符号来描述程序的行为,它消除了令人烦恼的语法规则,减轻了用户编程的负担,可以把效率提高数十倍,其主要特点可归纳为如下几点:l 具有图形化的编程方式,是真正面向科学家和工程师的语言。l 32bit的编译器
29、编译生成的程序可保证数据采集、测试方案的告诉执行。l 提供了大量的虚拟仪器和库函数来帮助编程。l 采用传统的调试手段与新颖的高亮显示,更有利于编程人员进行调试。l 囊括了各种仪器通信总线标准的所有功能函数,方便了那些不懂总线标准的用户也能够驱动不同的总线标准接口设备与仪器。l 强大的网络功能,支持常用的网络协议,可以进行网上发布以及远程监控仪器。l LabVIEW像许多重要的软件一样,它提供了Windows、UNIX、Linux、Macintosh的多种版本。2.2.3虚拟仪器的功能和基本工作原理 1虚拟仪器的功能: (1)信号调理和采集功能; (2)数据分析和处理功能; (3)参数设置和结果
30、表达。 2虚拟仪器的基本工作原理 虚拟仪器完成上述三大功能的原理框图如图2所示用户接口(人-机接口) 被测对象调理、采集激励检测软件计算机及附件(控制、处理)用户键盘显示读出键入仪器驱动程序(机-机接口) 图2 虚拟仪器原理功能图 工作构成如下:首先,用户通过虚拟仪器面板设置好仪器功能,量程,频段等工作参数后,启动仪器进行测量。在计算机控制下,被测对象经仪器部分的调理和采集后,变成数据,再经过计算机处理,其结果送显示,由用户读取或打印输出。3、温室大棚的虚拟仪器设计系统3.1温室大棚当大棚内温度过高或过低时,大棚号会显示出红色,并出现“温度报警”的字样,这是,点击1号大棚,会出现1号大棚内的子
31、程序前面板,显示温度值等数据,具体介绍在后面给出。2号大棚的设计和一号大棚类似,不在介绍。1号大棚的程序框图如图3-1所示,“OK”为布尔按钮,其值为1和0,1为真,0为假。通过设置,能改变按钮的属性。框图为选择结构的一种,其输入为“Ture”和“False”两种,当输入为Ture时,为真,显示Ture框架里的内容,当为“False”时,显示False内的 图3-1 1号大棚的子程序框图内容。图中程序执行的步骤为:当按下按钮时,其值为Ture,程序执行其内容。在本框图中,False框架内的内容为空,忽略不计,所以没有显示。最基本的选择结构由选择框架、选择端口、选择器标签,以及递增/递减按钮组成
32、。选择结构比较灵活,输入选择端口中的外部控制条件的数据类型有3种可选:布尔型、数字型和字符串型。当控制条件为布尔型时,选择结构的选择器标签的值为Ture和False两种,即有Ture和False两种选择框架,这是系统的默认的选择框架类型。当控制条件为数字型时,选择结构的选择器的选择器标签的值为整数0、1、2等,选择框架的个数可根据实际需要确定,在选择框架的右键弹出选单可天家选择框架。当控制条件为字符串型时,选择结构的选择器标签的值为由双引号括起来的字符串,选择框架的个数也是根据实际需要确定的。但是,在使用选择结构时候,控制条件的数据类型必须与选择器标签中的数据类型一致。二者如果不匹配,系统回报
33、错,同时,选择器标签中的字体的颜色会变为红色8。 选择结构有很多特点,其主要特点是,当外部数据连接到选择框架上供其内不节点使用时,选择结构的每一个子框架都能从该通道中获得输入的外部数据;当选择结构内部的数据需要通过框架通道送至外部时,必须在每一个子框架中都连接一个同数据类型的数据到同一个框架通道上。3.2单个大棚的温度测控系统 在虚拟仪器中,波形显示控件主要分成两大类,一类为事后记录图,或事后记录波形控件;另一类称为实时趋势图,或实时趋势波形控件。这两类控件都是用来对波形或图形进行显示的,它们的区别在于两者数据组织方式及波形的刷新方式不同。对于事后记录图来说,它的基本数据类型为数组,也就是其显
34、示是将构成数组的全部测量数据一次显示完成的;而实时趋势图则是实时显示一个或几个测量数据,而且新接受数据点要接在原有波形的后面连续显示。她的基本数据类型是数据标量,也可以是数组。即使是数组,实时趋势图的方式也是连续不断地 一个数组接着一个数组显示,而不是一次显示完成。 实时趋势图控件的输入是一个双精度浮点数。实时趋势图控件一次可以接收一个点的数据,也可以接收一组数据。在实时趋势图控件中,它的数据只不过是代表一条波形上的几个点。在实时趋势图控件内,设置了一个显示缓冲器,用来保存一部分历史数据,并接收新数据。这个缓冲区的数据存储按照先进先出的规则管理,它决定了该控件的最大显示数据长度。在默认情况下,
35、这个缓冲的大小为1KB,即最大的数据显示长度为1024个。实时趋势图控件适合用在实时测量中的参数监控。 在波形显示控件中,可以对波形显示进行属性设置,如调整X、Y轴的坐标,对波形进行清空等,另外,还可以对图形的外观、数据格式和精度、线型、刻度、光标进行设置。在波形显示控件中的工具可以对波形进行自动缩放、数字标度设置、对图形进行拖动等工具。实时趋势图除了具有上述功能外,还具有本身的特点。 1、数字显示实时趋势图控件是以一次一个点或几个点的方式来接收数据的 。在右键弹出选项总,有一个数字指示器,这个指示器直观地显示了最新显示的一个数据的大小。如果有多条波形,则每条波形都可以有一个对应的数字指示器。
36、2、滚动条实时趋势图控件有一个数据缓冲区。如果要显示滚动条,在右键弹出的选项中选取,当这个选项有效时,实时趋势图控件可以用一个滚动条来查看缓冲区内前后任何位置的一段数据波形。3波形刷新方式在实时趋势图空间中,有3中不同的波形刷新方式,可以刷新波形。4多层图在默认条件下,实时趋势图控件将在相同的纵坐标下显示多条波形曲线。如果这些测量信号的大小范围相差比较大或是显示量纲不同,那么,在相同的纵坐标下,就可能出现信号显示不匹配的情况。针对这种情况,实时去世土控件专门提供了多层图选项,允许不同信号在不同的纵坐标设置下显示。当选项有效时,每个波形的Y轴值旧可以单独设置,但X轴的设置是共用的。5、历史记录长
37、度该选项用语设置缓冲去的大小,默认值 1024点的浮点数。缓冲区越大,保留的历史数据越多。但也要注意实际系统的物理内存大小,否则将引起系统性能的下降。(2)、时间显示在虚拟仪器语言中,有字符串节点,其中有时间字符串的格式化节点。在此节点中,输入相应的字符串,就能在前面板上显示出当前的时间。其前面板如图3-2所示。框图程序如图3-3所示。 在字符串节点中,包含以下集中用法: 1、字符串合并; 图3-2 时间显示前面板 图3-3 时间显示框图程序 2、字符串分离; 3、子字符串的提取; 4、时间字符串的格式化; 5、字符串的大小写转换; 6、数值与字符串的相互转换; 7、字符串的比较; 8、字符串
38、与ASCII码值的转换。 在此设计中,用到了While循环,下面介绍一下次循环。 当循环次数不能预先确定时,就用到While循环。While循环也是虚拟仪器语言最基本的结构之一。 最基本的While循环由循环框架,重复端口,以及条件端口组成。 重复端口的初始值为0,每次循环的递增步长为1。但是,在LabVIEW中,重复端口的初始值和步长是固定不变的,如果要用到不同的初始值和步长,可对重复端口产生的数据进行一定的数据运算。 条件端口用语控制循环是否继续进行,当每一次循环结束时,条件端口便会检测通过数据连线输入的布尔值,并根据输入的布尔值和其使用状态决定是否继续执行循环。 While循环执行的是包
39、含在循环框架中的程序,但循环次数却是不固定的,只有当满足给定的条件时,才停止循环的执行。 (3)温度显示 在本系统中,能够显示当前温度值和温度报警等功能。当前温度显示由温度计和数字输出组成,能够显示出当前大棚内的实时温度值,能够从温度计和数字输出(实时温度值)读出数据。 (4)温度管理 在温度管理中,可以对大棚内的温度上下限进行设置,然后把从传感器送近来的温度值和上下限进行比较,如果当前温度高于温度上限,则温度过高指示灯亮,如果当前温度低于温度下限,则温度过低指示灯会亮。起结构为比较结构,和循环结构。把当前温度和温度上下限进行比较,在把比较结果送到循环结构的条件端口,当条件满足时,循环开始,执
40、行循环内的程序;当条件没有满足时,循环停止。两个循环都不满足时,温度在上下限范围内,两个指示灯都不亮。在循环内部,把由循环框架送进来的数据和温度上下限进行比较,得出应该上升和下降的温度。从而得知大棚内温度情况。 大棚内温度测控系统的部分框图程序如图3-4所示。 图3-4 温室大棚温度测控系统的部分框图程序 4、数据查询 在系统中,有时候要对以前的历史数据进行查询,以便分析大棚内的温度变化情况,数据查询按钮这是为此设置的。当程序运行的时候,需要查询以前的数据,按下此按钮,便可以出现以前的数据,以便查询。 5、数据打印 有些时候,保存下来的数据需要打印出来,此按钮这是完成这个功能。当程序运行时,需
41、要把数据打印出来,按下此按钮,与电脑相连的打印机便会把数据打印出来,以供查询。 6、停止 当程序正在运行时,需要终止程序的运行,按下停止按钮,程序便终止,不在运行。 7、返回 当大棚内温度达到正常时候,点返回按钮,便返回到上一程序,结束本程序的显示。 这是大棚温度测控系统的前面板显示。另外,由于计算机和单片机的通信距离比较远,而并行通信的传输距离和抗干扰力比串行通信弱,所以在此单片机和计算机的连接采用串口连接,因此要对串口通信进行编程。 串口通信分为串口读和串口写,下面分别介绍其框图程序以及前面板的设计方法。首先介绍串口读程序。 此程序为串口读的程序,在程序中,先对串口进行初始化,由于有的串口
42、不设置系统有默认值,所以只对串口号,波特率,接受的数据字节数进行了设置。由框图程序可以看出,程序采用了顺序结构和While循环,当程序运行时,先询问是否继续串口读操作,点 图3-5串口初始化框图程序确定后,继续操作。先写串口,然后在写入这次接受的数据字节数,在读串口输入的文字,最后关闭文件。在程序中,把串口输入的数据用实时图表示出来,显示输入的数据,再在数据缓冲区显示出来。 下面为串口初始化前面板和框图程序。 在串口初始化设置中,波特率选择有多种,其中默认值为9600,在串口号选择中默认值为COM1数据位参数默认值为8位,停止位参数为1bit,奇偶校验默认值为无校验。对串口进行设置,可以按照用
43、户的意图设置。 在虚拟仪器语言中,串口写程序前面板如图3-6所示,框图程序 图3-6口写前面板以上为虚拟仪器温室大棚测控系统各部分的作用,原理,其综合作用就是通过串口读程序,把从单片机送来的数据读入程序之中,在把数据与给定的温度上下限进行比较,得出结果,进行报警和得出应该上升或下降的温度值;在通过按钮,对系统进行存储、打印、查询等。 4、硬件电路的设计4.1组成控制系统的主机采用一般的PC(64M以上即可),就完全可以满足系统对数据处理、运行速度的要求。从机部分以2051单片机为核心2,外接数据采集输入电路、输出电路、状态监测电路等部分组成。由于系统要对温度进行测量和控制,在大棚内部,对温度进
44、行测量,并对温度进行控制。由于智能温度传感器DS18B20既集能对温度进行测量,又能控制温度,并对温度值能够把二进制转换成十进制,所以设计系统选用此智能温度传感器。由于AT89系列单片机与MCS-51系列单片机兼容,所以,单片机选用AT89C2051。在数据传输方面,由于从大棚到计算机的距离较长,所以选用RS-485通信作为数据传输。硬件电路由单片机、温度传感器、RS485串口通信和计算机组成。其中温度传感器选用DS18B20智能温度传感器,作用是采集大棚内的温度,并进行判断。单片机主要是对DS18B20进行编程,使起进行温度测量和控制温度,并对RS485通信进行编程,是数据传入计算机。本系统
45、对多个测控点进行监控,l台主机与多台从机实现主从式通信,通过通讯接口机实现RS485标准总线通讯,系统的数据检测是由各类传感器来承担,图4-1单片机控制平台1系统原理图。主机通讯转换机AT89C2051ADS128624LC04传感器1传感器2传感器3图4-1单片机控制平台系统原理图此控制平台主要实现现场数据采集,并将采集数据处理、存储、发送给主机。2051是控制平台的核心,温湿度数据的采集通过多路传感器获得,采集的信号经ADS1286实现转换。为有效控制多路传感器,在系统设计中使用4051实现扩展,使控制平台可以控制多路传感器,采集的数据存放于24LC04。在控制平台的驱动上,使用CMOS管
46、1120提高2051的驱动能力3,使控制平台每路可以控制多个传感器(主要是提高控制平台对18B20、温湿度采集器的驱动能力)。在与主机通讯时,为达到电平一致,控制平台通过RS485芯片实现2051的引脚RXD、TXD的TTL电平与RS485的引脚A、B的485电平之间的转换。把主机通过通讯接口机送来的RS485标准电平转换为TTL电平传送给2051,把2051送出的TTL电平转换成RS485标准电平通过通讯接口机传送给主机。图4-2 单片机控制平台2接口电路图4-2单片机控制平台2接口电路,主要实现对现场设备(现场设备主要指通用空调、加/除湿机等)的控制,并将设备状态情况发送给主机。该控制平台的主要部分如下:4.1.1 2051单片机2051是控制平台的核心。(1)AT89C2051的结构及性能内部结构如图4-3所示128x8RAMRAM地址寄存器ARSP中断控制定时/计数器串行I/O口P3口P1口锁存器锁存器+_P3.7P3.0寄存器B暂存器1累加器A暂存器2程序状态字PSWALU指
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100