您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 其它相关文档 > 人工气候室主机系统软件设计方案
人工气候室主机系统软件设计方案一、人工气候室简介概述:控制植物生长环境的设施和设备由简单的生长箱发展到控制复杂的人工气候室。笔者开发的基于CAN(controllerareanetwork,即控制器局域网)总线的人工气候室智能测试系统,主要用于对植物生长的温度、湿度、光照度和CO2含量等状态参数的自动检测,对人工气候实验室的异常情况进行故障初发期的报警处理,模拟人类智能信息融合能力,分析植物生长状态,控制植物生长环境所需的温度、湿度、光照度和CO2含量,从而为植物生长环境的信息融合和控制决策奠定了基础。系统具有参数检测、参数分析、故障自检、系统保密、病毒防护、知识查询等多种功能。主机软件采用VB(VisualBasic)和LabVIEW编写。VB作为可视化的编程语言具有简单易学、功能强大的特点,能在短时期内开发一个完整、易于操作的应用软件。而美国NI(NationalInstrument)公司推出的LabVIEW图形化编程语言,是计算机硬件、仪器测控硬件和用于数据分析及图形用户界面的软件之间的有效结合,是最成功的虚拟仪器软件,提供了所见即所得的图形化界面编辑环境。在系统的主机软件设计中,VB用于完成数据信息的通信,LabVIEW用于完成数字、图形化处理。二者结合,使主机软件具有比其他仅以VB为开发平台的系统主机软件更丰富完善的功能和视觉效果。系统已投入实际应用。二、人工气候室系统构成系统主要由中心控制室、试验培养室和人工能源室三大部分组成。中心控制室是自然能源利用和人工能源分配的控制中心。试验培养室是用于模拟自然环境的人工气候室。人工能源室是在自然能源受限的情况下,按中心控制室的指令向试验培养室提供人工能源,以满足培养室各试验单元和整体环境的要求。系统的结构框图如图1所示。图1人工气候室系统的结构框图系统以PC机(586/266以上机型)作为主机,以80C592单片机系统和温度、湿度、光照度和CO2含量等参数测量电路为分机。作为系统的核心,主机安放在系统的控制室,分机安放在各个培养室,原则上一个光照箱安放一个分机。一台主机可以管理1~200台分机,一台分机可以连接检测温度、湿度、光照度和CO2含量等共计1~128个传感器。主机通过CAN串行总线,管理着10km范围内安放在培养室中的分机(CAN节点);每台分机通过安装在培养室中的各类不同的传感器对状态参数的采集与信息传输。根据不同类型植物在不同生长时期及不同生长季节,控制室主机设定植物不同的理想生长状态参数。同时,主机根据安装在培养室的分机中各传感器所检测到的实际状态参数,与设定的理想状态参数比较、通过模糊运算以及处理,控制人工能源室向培养室提供人工能源。这种以CAN总线结构的通信方式,具有实时性好、运行成本低、系统组建方便和工作的高可靠性等优点。而主机软件的合理设计是系统稳定、可靠运行的关键,它直接影响着植物生长所需的环境状态参数。1、人工气候室主机软件设计主机软件设计遵循模块化设计思想,采用结构化程序设计方案,具有较好的模块性、可移植性和可修改性。主机软件模块主要有:通信模块、数据显示模块、图形化显示模块、历史数据记录模块、数据分析处理模块、决策和控制模块等。其中,温度、湿度、光照度和CO2含量等参数的图形化显示还具有颜色提示和警示功能。例如,温度检测图形化显示时,红色显示表明温度过高,绿色表示温度在正常范围,黄色表示温度过低。系统进行检测时,根据设定,主机首先连接某一分机或所有分机,然后将分机采集的测量数据传送到主机,存放在数据库中,进行分析处理。由于具有图形化显示功能,从主机显示或打印输出上,可以一目了然地得到培养室的运行情况并实现系统故障自检及其他相关功能。主机的工作流程如图2所示。图2人工气候室主机的工作流程2.1主机通信软件模块设计系统主机通信包括主机RS2232的串口通信以及主机与分机之间的CAN总线通信;CAN总线通信模块包括点名、检测、设置等通信软件模块。2.1.1人工气候室主机的串口通信软件设计主机计算机中一般都有两个RS2232串行通信口,该口完成串行数据转换和串行数据接收、发送任务,采用RS2232通信标准,其结构和使用都很简单。而主机系统软件VB的MSCOMM控件提供了事件驱动和查询方式两种方法实现串口通信。其中:事件驱动是处理串行端口交互作用的一种非常有效的方法;而查询方式是通过MSCOMM控件间接调用API函数,充分利用系统已有的ActiveX控件实现快速开发正是VB的优点之一;两种方法都能实现串口通信和数据信息的传输。2.1.2人工气候室的CAN总线特点与工作原理,CAN总线是一种有效支持分布式控制或实时控制的串行通信网络,它以半双工的方式工作,一个节点发送信息,多个节点接收信息,可以实现全分布式多机系统,提高数据在网络中传输的可靠性。其结构形式如图3所示。图3CAN总线结构图CAN总线的信息存取采用一种称作广播式的存取工作方式,信息可以在任何时候由任何节点发送到空闲的总线上,每个节点的CAN总线接口必须接收总线上出现的所有信息,因此各节点都设置有一个接收寄存器,接收寄存器首先将信息接收,然后根据接收信息的标识符决定是否读取信息包中的数据,即判定是否使用这一信息。CAN协议的一个最大特点是废除了传统的地址编码,而代之以对通信数据块进行编码。CAN总线面向数据而不是面向节点,采用这种方法的优点是可使网络内的节点个数在理论上不受限制,加入和减少设备不影响系统的工作。因此,系统可以根据用户的不同需要,任意改变分机的数量。CAN总线收发数据的长度最多为8B,因而不存在占用总线时间过长的问题,可以保证通信的实时性。通信速率最高可达1Mb/s(通信距离40m),通信距离最远可达10km(传输速率为5kb/s)。通信介质可以是同轴电缆或光导纤维,甚至可采用双绞线。2.1.3人工气候室点名通信软件模块设计点名、检测、设置等通信模块,命令格式基本相同,因为各自执行的命令号不同,所以能实现不同的功能。下面以点名命令的通信模块详细说明。点名命令主要用来查询分机个数以及分机下挂温度、湿度、光照度和CO2含量传感器个数,该命令一般在系统初次上电时才被执行。人工气候室的CAN节点个数为1~200个,因此主机必须事先知道分机的个数及其地址,以便主机统一管理。分机下挂温度、湿度、光照度和CO2含量传感器,采用的80C592单片机可以连接分布于培养室的传感器个数为1~128个,因此,系统中的每个分机管理的传感器个数也为1~128个。所以,系统主机也必须事先知道系统分机的传感器个数及其地址,才可完成对培养室中具体区域的具体温度、湿度、光照度和二氧化碳监测的检测等工作。系统主机发送的点名命令格式为:“0BBH”+CANADD+“0AAH”+cmnd+Byteh+Bytel+ad2rh+adrl+chkxor+chksum,其中:“0BBH”为主机发送命令的起始码,即命令头;CANADD为系统中CAN节点的地址;“0AAH”为主、分机之间,以及分机与各传感器之间进行通信的命令起始码;cmnd为命令号;Byteh、Bytel为所要检测的数据字节数,其中Byteh为字节高8位,Bytel为低8位,所检测的数据总长度=(Byteh*256+Bytel)个字节;adrh、adr分别为检测对象的传感器型号和传感器编号(每个对象都有其固定的传感器型号和传感器编号,这由协议来规定);chkxor、chksum分别为异或校验、和校验。2.2人工气候室VB与LabVIEW的程序嵌套设计将VB与LabVIEW应用于系统的主机软件开发,可以同时利用VB、LabVIEW的技术优势,组成灵活的虚拟仪器应用系统,实现监测信息的图形化处理及对系统的有效控制。2.2.1人工气候室系统资源的共享利用VB完成系统的自检、通信、历史数据记录、数据分析处理、决策和控制等软件模块的设计,利用LabVIEW完成主机系统自检、数据显示、图形化显示等软件模块的设计,利用VB与LabVIEW共同完成主机自检、数据显示、图形化显示等软件模块的设计。当主机将从串口采集主集中器传送的数据,通过VB管理,数据以Access数据库的形式储存起来。DDE(dynamicdataex2change,即动态数据交换)技术的应用,使得虚拟仪器LabVIEW软件平台能够调用该数据库中的数据,以显示参数结果。在本系统中,采用了功能强大的DDE系列函数完成了数据的交换和共享工作。实践证明,DDE技术运行可靠,不易出错。2.2.2人工气候室在VB中嵌入LabVIEW主机软件VB中嵌入LabVIEW,是通过OLE(objectlinkingandembedding,对象的链接和嵌入)技术来实现的,OLE是系统主机虚拟化显示的核心技术。利用OLE技术,在开发系统主机的虚拟化显示功能时,系统虚拟显示部分的开发程序以Lab2VIEW平台为中心(而不是以VB为中心)。通过OLE,VB能够将LabVIEW软件作为对象嵌入到VB中去,而且VB对所嵌入的LabVIEW的处理就像对其本身对象的处理一样方便快捷。为实现OLE自动化功能,首先生成一个变量来引用Lab2VIEW,这个变量称为对象变量(ObjectVariable)。以温度虚拟检测为例,源程序设计如下:BRDimLVappAsLabVIEW.Application———‘定义LabVIEW应用程序变量DimLVIAsLabVIEW.VirtualInstrument———‘定义虚拟仪器变量DimLVpathAsString———‘定义虚拟仪器系统路径LVpath=APP.Path+:\LabVIEW\user.lib\实时温度.viSetLVapp=CreateObject(LabVIEW.Application)———‘启动虚拟仪器应用程序SetLVI=LVapp.GetVIReference(LVpath)———‘调用路径所指向的虚拟仪器系统LVI.FPAutoCenter=True———‘当虚拟仪器程序被运行时,LabVIEW前面板位于屏幕的中央LVI.FPWinOpen=True———‘调用虚拟仪器程序时打开并显示前面板BRLVI.Run(True)———‘运行虚拟仪器程序利用以上代码,可以在VB程序中嵌入LabVIEW,实现系统图形化虚拟面板功能。当虚拟面板生成以后,便可以操作面板中的各种控件(Controls),来运行或控制虚拟仪器程序。程序运行完毕以后,关闭虚拟仪器前面板(frontpanel),以释放计算机的内存空间。三、人工气候室结束语:人工气候室智能测试系统主机软件的CAN总线通信软件的设计采用全程跟踪和记录技术,方便了工作人员对通信过程的了解,提高了系统的故障解决能力。VB与LabVIEW应用于人工气候室智能测试系统,充分利用了VB的易开发优势和虚拟仪器的图形化、模块化编程优势,使主机软件功能大为增强。此外,系统可与其他系统软件连接,并可实现远程资源共享和网上信息浏览与查询。公司简介:浙江托普云农科技股份有限公司农业物联网、农业信息化综合解决方案服务商托普云农潜心十二年致力于中国农业信息化发展,同时提供面向土壤、农业气象、种子、植物生理、植物保护、粮油食品等监测检测精准农业仪器装备。迄今为止已获国家发明专利5项、实用新型专利42项,软件著作权70余项,软件登记证书18项,被评为国家高新技术企业、杭州市院士工作站,研发实力强!受到多位行业专家及行业领导认可,智能硬件及农业信息化应用遍及全国!上市公司(股票代码:833692)、大品牌,质量信得过、售后有保障!
本文标题:人工气候室主机系统软件设计方案
链接地址:https://www.777doc.com/doc-2752282 .html