海底示踪气体原位自动检测系统通信协议的设计与实现_第1页
海底示踪气体原位自动检测系统通信协议的设计与实现_第2页
海底示踪气体原位自动检测系统通信协议的设计与实现_第3页
海底示踪气体原位自动检测系统通信协议的设计与实现_第4页
海底示踪气体原位自动检测系统通信协议的设计与实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1/7海底示踪气体原位自动检测系统通信协议的设计与实现海底示踪气体原位自动检测系统通信协议的设计与实现当前地球科学研究的最大特点在于观测系统的迅速发展,如果把地面与海面看作地球科学的第一个观测平台,把空中的遥测遥感看作第二个观测平台,那么海底观测网络平台是继对地面/洋面、空中之后,观测地球系统的第三个平台1。一个完整地海底观测网络从结构上可以分为基站部分,海底接驳盒,海底电压转换设备以及科学仪器2。观测海底的主要目的是探测和理解大洋系统的物理、化学、生物和地质等过程,而深海中溶解态气体与这些过程密切相关6,利用这些标志性气体的异常信息寻找海底的成矿矿区,是当前国际上找矿的重要发展趋势之一,研究这些气体的在深海中的含量具有深刻意义本文由论文联盟HTTP/收集整理7。因此,如何在海底原位自动观测这些示踪气体含量,研制相关的深海仪器成为海底观测网研究与建设迫切需要解决的科学问题。一、系统分析如果将深海中溶解态气体样本采集回实验室进行分析,由于室内的温度、压力等与海底的差别,气体的含量、2/7成分可能会发生变化,所以最好的方法是将实验室的仪器投到海底去分析样品1。本文所支持的海底示踪气体原位自动检测系统就是以气象色谱为基础建立的一套自动分析海底示踪气体成分与含量的科学仪器,该系统可作为科学仪器布置在海底观测网络的末端,原地实时探测海底H2、CH4、CO2、N2的含量,然后将采集的数据上传到远程控制软件和岸基站海底观测网数据库中。二、通信协议分析在数据传输的过程中,考虑到海底环境的特殊性、系统本身的复杂性和仪器多样性,通信协议设计需要注意如下几点稳定性。海底数据的采集是一个连续的过程,需要24小时不间断的采集数据,并将采集的数据发送回岸基/船基远程控制系统和海底观测网数据库,良好的稳定性是保证通信持续进行的保证。实时性。为了保证岸基/船基工作人员在第一时间观测到海底数据发生的变化,通信协议应该具有较高的实时性。可扩展性。海底观测网处在不断的发展与完善阶段,在以后可能会有更多先进的设备连接到网络中,所以通信协议也会不断的扩展,良好的扩展性能保证能够给系统的维护修改带来方便。三、通信协议设计数据包是通信传输中的数据单位,数据包格式的设计直接影响到数据的传输与解析效率。本系统网络传输的3/7数据包括注册信息、指令数据、监测数据。数据包定义在数据通信过程中,每个数据包都包括四个部分PACKAGELEN、HEAD、BODY、ACK。其中PACKAGELEN、HEAD、ACK是公共的部分,但对于BODY结构体,不同的消息具有不同的内容。数据格式定义在整个系统中,水下中央控制单元是服务器,其它设备都以客户端的形式与CCS连接。当其它设备第一次连接服务器时,必须发送数据类型为0XFF的数据包,在服务器端进行注册,以便中央控制单元为其建立连接。为了实现对海底水下设备的控制,需要通过远程控制软件向水下中央控制单元发送控制命令。指令数据包括中央控制系统控制命令数据和电路仪器控制命令数据。中央控制单元控制命令包括系统运行模式控制命令和GC控制命令。这两个指令决定了水下中央控制单元和水下气体分析装置的工作状态。电路设备控制命令主要用来控制各个部分的电源开关状态,包括各模块电源开关、电机与阀控制命令、步进电机控制命令。监测数据包括中央控制单元监测数据、中央控制单元电源参数和GC分析数据。中央控制单元监测数据主要传4/7送水下设备舱的温度、压力数据以及GC的状态数据。为了远程监视海底设备的工作状态,中央控制单元实时采集电流数据、电压数据、电源开关状态、步进电机状态、电磁阀状态、系统温度等电源参数数据后,发送给远程控制软件。中央控制单元电源参数如图6所示。GC分析数据是整个系统的核心数据,数据包中的数据分为三个部分,包编号、时间数据、气体分析结果,各气体分析结果分别用4BYTE表示。四、通信协议设计协议内容的类设计从数据格式的定义中可知,通信协议内容的整体结构相同,只有BODY部分存在差别,故将所有的数据包设计成如图8所示的类结构。CDATABASE为基类,该类为抽象类,不能定义该类型的对象,其它的数据类型继承于该类。在图9中,CDATABASE类为所有数据包类型的基类,它是一个抽象类。在该类中有SENDDATA和PROCESSIO两个纯虚函数,这两个函数代表了每一种结构的数据都必须具有的操作,继承类必须重写这些函数。SENDDATA函数表示发送当前数据包中的内容,PROCESSIO函数的功能是处理接收到的当前类型的数据,例如存储、实时显示等等。在基类中还定义了一些公共接口函数,比如COUNTCHECKSUM,SENDANSWERDATA等函数。其中5/7COUNTCHECKSUM函数的功能是计算校验和,SENDANSWERDATA的功能是发送应答数据。通信协议实现及测试结果分析1通信协议实现在远程控制软件中,采用MICROSOFTVISUALCXX实现了本文设计的通信协议,通信的主要流程如图9所示。在图9中,远程控制软件向服务器发起连接请求,如果连接成功,则调用CRCCSSOCKET类中的RECV函数接收数据,将接受的数据存入CRCCSLIST中,然后调用CDATABASE中的PROCESSIO函数处理接收的数据,最后调用CDATABASE中的SENDANSWERACK函数应答数据包,通知服务器正确收到该数据,本次通信结束。2软件测试结果分析目前,基于本文通信协议开发的中央控制系统远程控制软件已经交付使用,实验室的测试运行过程中,该软件表现出了良好的运行稳定性、控制与监测实时性、收发数据准确性和完整性、数据类型可扩充性等优良性能,满足了海底示踪气体原位观测要求。稳定性。在同济大学海底观测网实验室进行了该系统的测试实验,远程控制系统控制界面如图10所示。在图中,远程控制软件正处于无人值守模式,设备舱环境参数6/7的三条曲线分别表示设备舱温度、设备舱压力、设备舱湿度三个数据的变化,在测试的过程中,这三个监测数值基本保持平稳的变化,无剧烈抖动的现象,说明所有数据都被正确的接收并且显示出来。实时性。由于远程控制系统与中央控制单元采用100MB以太网进行通信,网络传输速度快,从硬件层次保证了系统的实时性。另外,通过前述通信协议及处理优化设计,在图9中的实时监测曲线中,并未出现明显的曲线抖动或突变的情况;扩展性。如果系统需要添加新的数据类型,只需以新扩充的数据类型为基础,创建一个继承CBASEDATA基类的子类,然后再重写相关的处理函数即可,扩展方便、快捷。在本系统研发过程中,后期扩展了CRUNPROGRAMDATA数据,添加如下代码后,程序便基本完成了对离线参数数据的处理。五、结束语通过海底示踪气体原位自动检测系统之远程控制软件、水下中央控制单元、水下气体分析装置等三个组成部分之间数据的通信需求分析,本文研究对其通信协议进行了设计和实现。为便于统一处理和扩充,总体上将通信中的数据包设计成PACKAGELEN、DATAHEAD、BODY、ACK等四个部分,并将其构建成一个抽象基类CDATABASE,在该类中7/7建立了处理对应数据体的纯虚函数接口。只要调用该接口函数,就能实现对相应数据的处理,极大地提高了通信协议的扩展性。为了提高程序的可

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论