一种新型温盐深传感器的数据采集与应用
0 引言
随着工业和国防技术的发展,潜水设备在各种应用尤其在军事应用上,对探测技术的高、精、尖的要求越来越高。在各种潜水设备的技术发展中,具有重要意义的潜水器充分的体现了这一点,为了提高潜水器的深潜能力,潜水器都配备有综合导航显示控制系统,确保潜水器能够精确的潜航,顺利完成各种水底作业任务。由于潜水器的体积和载荷的限制,综合导航显示控制系统使用的传感器必须体积小、重量轻、耐高压,并且在功能上要能快速、准确地获得潜水器的航行参数。在测量海水的温度、电导率、压力、深度、盐度、声速、密度等状态参数方面,SBE 37-SI MicroCAT温盐深传感器能将上述海水的七种状态参数测量于一体,而且在精度、体积、重量上都能很好地满足系统设计的要求,是一种非常适合用于潜水器上的传感器。下面就有关SBE 37-SI MicroCAT温盐深传感器在潜水器中的数据采集过程进行探讨,对其中的传输格式不对应,不便于直接传输,提出一种可行的设计方案和思路,并给出一个已经得到应用的实例进行说明。
1 SBE 37-SI MicroCAT温盐深传感器在潜水器中的应用
潜水器的综合导航显示控制系统主要是应用组合导航技术和信息融合技术把各个导航设备有机地组合起来,在不改变各导航设备的情况下,采用滤波技术,对各种导航信息进行处理,实现各种导航信息互相取长补短,提高导航定位精度;通过对导航信息进行集中显示,集中控制和综合处理,可以实现最大限度发挥每一个导航信息的作用,实时向使用设备提供全面的、最佳的导航信息。温盐深传感器的作用是实时地测量海水的各个状态参数,如温度、电导率、压力、深度、盐度、声速、密度,发送到综合导航显示控制系统,然后显示出来或者供其他设备使用。为了确保潜水器航行安全和打捞搜救任务的完成,潜水器上的传感器的测量必须满足航行的要求;数据的刷新率必须满足潜水器的要求;所测量得到的数据必须稳定可靠。SBE 37-SI MicroCAT温盐深传感器在这些方面的性能都能达到,满足导航系统的要求。
图1 SBE 37-SI MicroCAT温盐深传感器
SBE 37-SI MicroCAT温盐深传感器目前在国外大多在潜水器和潜艇中使用,在国内还很少应用。如图1所示,其外形尺寸为长 43.69cm,最大高度为13.97cm,最大宽度为10.8cm,重量约2.9kg。SBE 37-SI MicroCAT温盐深传感器的测量准确度非常高,例如温度范围在-5到30°C,精确度达到 0.0001°C,能在水深7000米的高压情况下也能测出所需要的精确的导航信息。SBE 37- SI MicroCAT与其它设备主要根据NMEA-0183标准来进行串口异步通信,交换数据,双向传输。它的外部接口是EIA RS-232,传输波特率可选择,范围由1200bit/s到38400bit/s。发送的字符码制为ASCII码,测量数据的传输的速率也可由输出的参数选定,每次测量数据输出的时间间隔范围由1.15秒到22.19秒。
2 SBE 37-SI MicroCAT接口电路的设计
SBE 37-SI MicroCAT温盐深传感器的输出数据格式与一般导航设备的常用格式,例如GPS的数据格式:$PASHR,POS,n,……,tt.t,vvvv*cc[CR][LF],它包含起始符$,数据内容,代码和标志*,代码和cc,数据终结符 [CR][LF]。而SBE 37-SI MicroCAT的输出数据格式没有起始符、代码和标志以及代码和。它还有一个很大的特点:SBE 37- SI MicroCAT温盐深传感器的输出有电平保护作用,当它停电后重新通电启动,输出电平为零,不会自主的向外发送测量数据,必须给它发一个激发信号(数据发送命令)才能触发它。它的触发信号是两个回车换行字节(即0x0D、0x0A),但不能连续发,必须要分两次间隔两秒发出,这样才能将传感器触发,按照设定的格式和速率往外发送数据。
为了使温盐深传感器输出的数据格式与常用导航设备的数据格式保持一致,必须要设计一个数据格式转换接口电路,它需要完成的工作有:首先获得外部指令或自产生一个触发命令发给传感器,触发传感器;然后接收外部指令改变SBE 37-SI MicroCAT输出数据的波特率,传输数据的更新速率;并接收来自它的数据,加上起始符、代码和标志以及代码和;如果数据中有空格,则将空格置换成零;最后将数据输出给综合导航显示控制台。这样,数据格式转换接口电路一方面要处理控制指令的中断和实现改变传感器的波特率和数据更新速率,另一方面还要和传感器进行串行数据通信。
3 实际应用举例
由于SBE 37-SI MicroCAT温盐深传感器所提供的RS232数据格式与常用的导航设备数据格式不同,不能直接与潜水器综合导航显示控制台系统现连接进行数据交换。为了方便通信,本文作者在实际的工程应用中设计了一个数据格式转换电路板,电路的结构如图2所示。
![](http://www.chuandong.com/uploadpic/THESIS/2008/12/20081225112622790575.jpg)
图2 SBE 37-SI MicroCAT数据格式转换电路板的设计
在图2中,通信控制单片机一方面负责接收数据,将接收到表达海水的状态参数的ASCII字符转换成数字类型,对该数字类型进行判断正负,把相应的空格置换成零,再转换为ASCII字符类型,添加上起始符$以及每个数据的头字母(即T、C、P、D、S、V、R),算出$以后所有字符的代码和,然后将代码和标志及代码和、回车符、换行符加上,最后通过RS232输出到综导显控台。另一方面,接收来自综导显控台的命令,然后发送给SBE 37- SI MicroCAT温盐深传感器,对传感器的响应完完全全地返回给综导显控台。因此综导显控台可以随时改变温盐深传感器的输出数据、数据输出的间隔时间以及他的状态,又可以接收到通用格式的数据。
本实例的硬件使用的是常用可靠的AT89C51单片机,AT89C51单片机是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM— Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
由于程序设计相对简单,为了提高开发效率,不采用高级语言编写程序,而是直接选择汇编语言编写程序。在可靠性需求高的环境,串口RS232的编程只使用发送、接收和地线等三个信号线,这样可以确保数据可以在任何时候都可以发送和接收,提高可靠性。
如图3所示的电路,是设计完成并在实际中使用的SBE 37-SI MicroCAT数据格式转换电路。电路设计精巧,面积小,安装方便,信号线拔插易用。
SBE 37-SI MicroCAT温盐深传感器在空气中测量直接出来的数据格式(如果数据为负则多加一位):
xxx.xxxx,xx.xxxxx,xxxx.xxx,xxxx.xxx,xxxx.xxxx,xxxxx.xxx,xxx.xxxx[CR][LF]
24.7798, 0.00068, -0.310, -0.307, 0.0130, 1496.123, -2.8873[CR][LF]
接口电路接收传感器(有三个负值)来的数据接口所输出的数据(将空格置换为零):
$Txxx.xxxx,Cxx.xxxxx,Pxxxx.xxx,Dxxxx.xxx,Sxxxx.xxxx,Vxxxxx.xxx,Rxxx.xxxx*cc[CR][LF]
$T024.7798,C00.00068,P-0000.310,D-0000.307,S0000.0130,V01496.123,R-002.8873*66[CR][LF]
![](http://www.chuandong.com/uploadpic/THESIS/2008/12/2008122511263911546V.jpg)
图3 SBE 37-SI MicroCAT格式转换电路板
4 结束语
本文作者创新点:SBE 37-SI MicroCAT温盐深传感器的性能、体积、质量和可靠性都能满足潜水器中综导显控台系统的设计要求,能精确测量潜水器所需海水的温度、电导率、压力、深度、盐度、声速、密度等状态参数。由于其输出的数据格式与导航设备的常用格式不同,无法直接相接,因此必须在其接口上另接一个数据格式转换电路,才可以得到常规的数据输出格式,以便更快地开发出通信与数据采集软件,通过人机界面完成对数据采集系统的控制与通信。本文介绍的实例系统的软硬件的实现方法比较简单,可靠性高,具有广泛的实用性。
参考文献:
[1]马忠梅,籍顺心,何立民.单片机的C语言程序设计[M].北京:北京航空航天大学出版社,1999.57-73.
[2]赵云鹏.MATLAB串口通信在数据采集中的应用,微计算机信息, 2006年第1-1期,P111-112
[3] 罗兴垅,黄隆胜.基于AT89C51控制的0.01℃数显温度计的设计,微计算机信息, 2006年第5-2期,P70-72
[4]杨宝清,宋文贵.实用电路手册.北京:机械工业出版社,2002
[5]吴金戍,沈庆阳,郭庭吉.8051单片机实践与应用.北京:清华大学出版社,2001
[6] Sea-Bird Electronics, Inc. User’s Manual of SBE 37-SI MicroCAT
文章版权归西部工控xbgk所有,未经许可不得转载。