APP下载

基于LabVIEW的自升沉式潜标模拟测试系统设计

2012-01-10陈宗喜张喜验綦声波郭安刚

海洋技术学报 2012年2期
关键词:潜标串口控制器

陈宗喜,张喜验,綦声波,郭安刚

(1.中国海洋大学工程学院,山东 青岛266100;2.山东省科学院海洋仪器仪表研究所,山东 青岛 266001)

基于LabVIEW的自升沉式潜标模拟测试系统设计

陈宗喜1,张喜验2,綦声波1,郭安刚1

(1.中国海洋大学工程学院,山东 青岛266100;2.山东省科学院海洋仪器仪表研究所,山东 青岛 266001)

自升沉式潜标正式布放使用前应进行大量的测试试验工作。为了能够在岸边或实验室对潜标的各项性能进行验证和调试工作,开发了基于LabVIEW的潜标模拟测试系统。该系统充分利用虚拟仪器的特点,采用模块化编程技术,利用软件模拟潜标在水下的各种运动状态及传感器感应的测量参数变化,或通过对现场测量数据的回放查找分析潜标系统本身存在的缺陷,实现潜标不下水或少下水就可以进行全面测试的目的。实验结果表明,利用模拟测试系统可以进行固定值、极值和连续变化值模拟,能够缩短设备开发周期,优化系统控制方案,对提高产品质量具有非常重要的作用。

LabVIEW;模拟测试;模块化编程;自升沉式潜标

自升沉式潜标是一种在水下测量水文动力参数的新型海洋监测设备,既具有锚泊潜标可长期获得定点连续观测数据的优点,又具有漂流式剖面测量潜标可自动升沉测量剖面数据的优点,而且隐蔽性好、安全性高、结构简单、布放回收简便[1-2]。潜标上可搭载ADCP、CTD、倾斜度等多种传感器,通过安装在标体内的电机牵引系统收放钢缆以及本身的浮力实现上浮下潜运动,并在上升过程中完成相关测量任务。自升沉式潜标布放后完全工作在水下,其工作状态在水面上无法进行有效观察,下水后一旦出现问题将无法及时发现并排除,并可能导致整个测量工作失败,在测试实验过程中也将消耗大量的人力物力,延长研发周期[3]。通过开发实验室潜标模拟测试系统,可以模拟实际海洋环境参数的变化范围和方式以及潜标的姿态,达到缩短开发周期[4],优化功能和提高质量的目的。

文献[1]设计了一款海洋要素多通道实时采集系统,提出了一套高度自动化模块化的综合实时观测系统,将多个不同功能的水文气象传感器有机组合,完成海洋要素的监控和采集工作。但其基于VB编写,对于复杂系统和初学者来说难度颇大。而LabVIEW直观的前面板与流程图式的编程方法的结合,是构建虚拟仪器的理想工具,是专门为工程师和科学家设计的直观图形化编程语言[5]。不仅能够将繁琐复杂的语言编程简化成为以菜单提示方式选择功能,并且用线条将各种功能连接起来,十分省时简便。与传统的编程语言比较,LabVIEW图形编程方式能够大大节省程序开发时间,其运行速度却几乎不受影响,体现出极高的效率。

本文探讨了一种基于LabVIEW编写的模拟测试系统,能够以设定的周期点数和采样间隔来采集模拟变化范围内的任意数值,并使某些参数按照实际环境中的相互关系变化,在潜标系统不入水的情况下,模拟整个潜标的工作过程。系统采用模块化结构设计,充分体现用户的维护性要求,同时便于功能的拓展,使之适应未来发展的需要。经过验证,本系统可根据用户的需要,模拟不同的海洋环境监测设备和仪器,体现多元化的海洋环境研究的价值和能力。通过本系统提供的模拟数据来检验控制方案的合理性,以此修正和完善控制器算法。

1 潜标模拟测试系统总体设计

实际控制系统由控制器、多普勒声学剖面海流传感器(ADCP1、ADCP2)、温盐深传感器(CTD)、倾斜角传感器和电机组成。其中ADCP1安装在潜标上端,用来测量海面波高和波向,ADCP2安装在潜标底部,测量剖面海流的流速和流向。CTD用来测量海水的温度、盐度和深度。倾斜角传感器用于潜标姿态的测量,以便在潜标回收后能够进行潜标的姿态反演。利用潜标系统来获取水下不同层面上的长期连续的海流、温度等海洋水文资料,对于海洋环境观测具有十分重要的作用。

本模拟系统要模拟潜标中电机拖动系统、潜标运动姿态和各传感器的测量参数,其中ADCP、倾角传感器、CTD和电机都是串口量;又考虑到现场的调试方便,所以使用USB-232/4来与控制器连接,如图1所示。

模拟测试系统用两个NI公司的USB-232/4来与控制器连接。该设备一个USB转为4个串口,两个USB口即可控制全部仪器,备用的串口用于以后扩展系统。使用该设备可以方便地进行现场调试,更为重要的是该设备和LabVIEW软件都是NI公司产品,能实现软硬件间无缝连接,保证可靠性。

图1 模拟测试系统总体设计

USB-232/4的USB端接模拟测试程序所在的计算机,5个串口接控制器对应的串口接收端,根据实际系统的控制要求,一方面模拟测试系统同步模拟各传感器工作时序和采集数据,另一方面控制器按时序调取模拟测试系统模拟的各个传感器的数据,并对模拟的数据分析验证来判断控制系统的合理性。

2 软件设计

本模拟测试系统不仅能够单独模拟各个传感器和电机的工作时序和参数变化过程,而且可以整体模拟某时刻全部传感器工作情况。传感器参数可设置为单值,也可根据用户的设置算法输出,例如正弦波变化,还可设置变化幅度和变化周期。

为优化整体设计流程,易于其他人员维护,本系统将ADCP、CTD等传感器独立设计,在各自完成相应的功能基础上有机结合为整体。各传感器本身亦为模块化设计:电源检测、串口初始化等均为独立模块。

2.1 总体架构

为使模拟传感器更能逼近实际传感器,系统应当模拟完成前置机与传感器交互的每一步,例如传感器上电检测,串口初始化等,如图2所示。

2.2 子模块设计

2.2.1 电源检测模块

串口型传感器是用电源来控制其通断的。接通电源则模拟传感器开始工作;断开电源则传感器停止工作。

2.2.2 延迟单元模块

由于在通电后传感器的CPU不能立即工作,而是有一定的启动时间,因此模拟传感器在通电后需加上延时环节,使它更能逼真地模拟真实传感器的特性。

图2 模拟测试系统整体程序流程图

2.2.3 串口初始化模块

串口量模拟传感器用串口通信,模拟传感器发送数据前应完成串口通信的基本设置及其他准备工作,准备工作的内容随传感器的不同而不同,潜标项目中的传感器均为串口量通信,波特率、数据位、停止位、奇偶校验位均相同,因NI公司的USB-232/4在计算机中映射出4个串口,传感器的COM口与其匹配才能正确通信,因此,将这4个不同的串口号分配给各模拟传感器的COM端口,如图3所示。

图3 ADCP串口初始化程序图

2.2.4 命令识别与参数回复模块

LabVIEW模拟传感器接收到上位机发送的命令时,模拟传感器先识别出这条命令,然后将模拟数据以字符串形式组合发送给控制器。每种实际传感器都有数十条控制命令,实际使用时采用部分命令就能完成工作。因此程序中只编写部分控制器和传感器间交互的命令参数即可满足控制要求如图4所示。

2.2.5 参数变化方式模块

每种模拟传感器都有两种工作模式:单值和正弦波方式。单值方式是指给定的物理值不变来检测系统是否稳定。正弦波方式是指参数随时间按正弦波方式变化,来模拟真实环境中的参数变化。物理值以Y=Asin(ωt+θ)+B正弦波变化。不同传感器的A,B的值不同,A和B的值由以下公式给出:A=(Ymax-Ymin)/2,B=(Ymax+Ymin)/2,Ymax为待测参数上限,Ymin为待测参数下限。待测参数以真实环境中变化范围和传感器的测量范围来设计其上下限。不同传感器的Ymax和Ymin值不同,Ymax与Ymin之差为传感器的测量范围,例如CTD的温度测量范围为-5~35℃,如图5所示。

图4 LabVIEW程序示意图

2.2.6 串口通信驱动模块

串口通信驱动为模拟系统的核心部分,主要包括两方面的内容:获取字符串和发送字符串。用NI公司的VISA模块来实现,其内部用与串口通信相关的底层程序编写,能驱动串口发送与接收信息。

图5 正弦波变化方式程序示意图

串口通信驱动部分首先将“命令识别与参数回复”环节发出的数据转换为符合传感器串口通信协议的字符串,其次响应控制器发送的控制命令,将字符串发送给控制器。不同种类传感器的通信协议不同,因此各个模拟传感器的驱动部分应按模块分别编写。其中,ADCP模拟传感器需测量波浪和海流两种参数,用到两个ADCP,它们的程序亦按模块编写[6],如图6所示。

图6 ADCP模拟传感器程序示意图

2.3 人机界面

本模拟测试系统利用LabVIEW虚拟仪器技术进行可视化编程,画面均衡且美观,功能设置灵活,可分离可组合,充分发挥图形化编程的特色。既考虑到了当前传感器使用情况,又为未来的传感器扩展留有充分的空间,如图7所示。

图7 CTD模拟传感器模块工作面板

不同海域的实际情况如水深、浪流等有所不同,潜标按照控制要求在不同水域上升和下潜过程中的速度不同,这将导致ADCP测量流速、流向和波浪时的驻留点位置和个数有所差异。对此,将参数设计为正弦波方式变化,依照驻留点位置和个数等设置周期点数和采样间隔,使模拟测试系统能够模拟任意时刻和任意深度的参数值,从而能够模拟不同海域中真实系统的工作情况。

参数以正弦波和单值两种方式变化,不仅便于调试,而且使模拟结果更加逼真实际环境。通过把温度、盐度和深度设计成带数字显示的垂直条形式,用户不仅可以知道当前的模拟参数值,而且还能通过垂直条的上升下降来直观地了解当前的采样速度和数据变化趋势。将3种参数整合在一个波形图中便于观察曲线变化,分析当前模拟系统工作状态和温盐深的相对关系。

3 实验及结果分析

为验证程序的可靠性,系统增加了数据记录和回放功能。从大量的模拟数据中抽取某时刻的ADCP实验数据。对比LabVIEW中记录的收发数据(图8)和控制器收到的数据(表1)来验证模拟测试系统输出数据的合理性和控制系统中控制算法的正确性。

首先,给定模拟系统采样周期为60 s,采样间隔为3 s,以正弦波方式输出连续变化数值。其次,根据实际控制要求,潜标上浮到一定深度开始测量数据,控制器对模拟测试系统发送查看数据命令“st”,模拟传感器中的ADCP模块接收到此命令,并依照“命令识别与参数回复模块”中“st”选项下设定的数据组合方式,回复“参数变化方式模块”模拟的数据,数据为十六进制格式。再通过“串口驱动模块”将数据发送给控制器,控制器将十六进制数据解析为十进制,并由内部算法判断收到数据是否合理,将解析出的分流速合成再和模拟的数据比较,以此验证控制系统的正确性和精确性。数据格式如图8所示,模拟10层数据,第1层流速为3.346 m/s,流向为300.4°,以下依次类推。最后一行为时间等参数。表1为控制器收到的模拟系统发送的数据,控制器解析出的流向数据精确到个位数,所以只取模拟数据中的整数部分。

图8 LabVIEW模拟的ADCP数据

表1 控制器收到的流速流向数据

通过模拟各个传感器在水下的工作时序,利用与控制器交互实验中获得的实验数据,以此分析数据的合理性,找出控制系统的不足之处,从而改进控制方案。模拟测试系统很好地解决了潜标入水前控制器的工作时序和如何控制各传感器协调工作等关键问题。本系统可以方便地通过编程来模拟其他传感器,还可以用于具有相同传感器的不同项目中,因此具有较强扩展功能和通用性。

4 结束语

自升沉潜标模拟测试系统充分利用了虚拟仪器开放式和模块化的特点,充分体现用户的维护性要求,有效地应用潜标项目各个阶段:开发前期,可以辅助硬件系统的调试;开发中期,通过模拟传感器数据及电机的数据,可以检查和验证程序分模块设计的正确性,是一种有效的调试开发手段;开发后期,模拟潜标在水下的各种状态及相应的数据变化,达到不下水或少下水就可以进行全面程序调试的目的。在产品生产过程中,可以作为产品的一种性能测试工具。

试验结果说明本测试系统能较好地满足测试实时性要求,逼真地模拟了潜标各传感器的工作时序。通过模拟传感器发送给控制器的各种变化的参数,设计人员能够找出一种最佳的控制方案来控制各传感器系统、拖动系统、电池管理系统、通信系统等协调工作。对潜标上浮下潜过程中的速度、驻留点位置、循环周期等也可据此分析设计出一种合理控制方案。而且系统二次可开发性强,测试系统达到开发目标。系统设计方案合理,开发思路正确,对海洋测试类工程尤其是浮标、潜标类工程具有较高的科研及工程应用价值。

[1]侯广利,张颖,孙继昌,等.一种潜标的水下姿态变化规律分析[J].海洋技术,2010,29(3):39-43.

[2]褚同金,曹恒永,王军成,等.中国海洋资料浮标[M].北京:海洋出版社,2001.

[3]姜静波,龚德俊,李思忍,等.基于LabVIEW的波浪驱动测量系统仿真设计[J].海洋科学,2008,32(12):25-28.

[4]都亮,龚晓峰,侯志红.基于虚拟仪器LabVIEW开发的串行通信系统[J].控制工程,2004,11:82-85.

[5]张重雄.虚拟仪器技术分析与设计[M].北京:电子工业出版社,2007.

[6]李江全,刘恩博,胡蓉.LabVIEW虚拟仪器数据采集与串口通信测控应用实战[M].北京:人民邮电出版社,2010.

Design of Simulation and Test System for Self-heave Submerged Buoy Based on LabVIEW

CHEN Zong-xi1,ZHANG Xi-yan2,QI Sheng-bo1,GUO An-gang1
(1.College of Engineering,Ocean University of China,Qingdao Shandong 266003,China;2.Institute of Oceanographic Instrumentation,Shandong Academy of Sciences,Qingdao Shandong 266100,China)

There should be a lot of debugging before deployment of the submerged buoy.In order to test and debug various functions of the submerged buoy on shore or in the laboratory,simulation and test system was designed based on LabVIEW.The system made full use of the characteristics of virtual instrument using modular programming technology.The software could simulate a variety of motion state of the submerged buoy under the water and the changes of the measurement parameter.It also could find and analyze the system's defects through reviewing the on-site measured data.Therefore,it could conduct a comprehensive program debugging on shore.The experimental results show that it could shorten the development cycle and optimize the control scheme to improve the quality of products through simulating the fixed value,extreme value and continuous value of the simulation and test system.

LabVIEW;simulation and test;modular programming;self-heave submerged buoy

TP274+.2

B

1003-2029(2012)02-0001-05

2011-10-10

科技部国际科技合作项目资助

陈宗喜(1987-),男,硕士研究生,主要研究方向为海洋智能仪器。Email:chenzongxi123@163.com

猜你喜欢

潜标串口控制器
浅谈AB PLC串口跟RFID传感器的通讯应用
一种基于潜标基阵的信号接力定位方法*
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
基于蓝牙串口适配器的GPS接收机与AutoCAD的实时无线通信
自升式连体潜标测量系统的设计与实施
潜标姿态变化对矢量水听器目标方位估计的影响
模糊PID控制器设计及MATLAB仿真
MOXA RTU控制器ioPAC 5542系列
倍福 CX8091嵌入式控制器