基于BDS的海域环境监测浮标定位通信装置设计
2020-10-19高诗尧胡陈君刘森林
高诗尧,李 杰,胡陈君,高 宁,刘森林
(1.中北大学电子测试技术重点实验室,山西太原 030051;2.苏州中盛纳米科技有限公司,江苏苏州 215123;3.中北大学机电工程学院,山西太原 030051)
0 引言
21世纪被认为是“海洋的世纪”[1],人类对海洋的开发随着海洋科学技术的发展,规模越来越大,海域活动愈加平凡,海洋环境愈加复杂[2],因此,海域环境监测技术变得越来越重要,而环境监测浮标是监测的重要手段之一。
卫星监测法可观测采样绝大部分海域基础特征,如光学特征、海表温度、叶绿素浓度等[3],但由于测量范围巨大,测量距离过远,导致各项数据不能即时更新、不能同步更新,且部分数据误差较大;而人工点采样法则存在工作量大、远海浮标回收不及时等问题。因此这两种监测方法的配合可能导致无法正确预判突发海洋灾难,造成巨大损失。
国内外学者针对监测浮标的改进作出不断尝试。文献[4]针对海洋水质监测提出基于无线GSM/GPRS的系统总体架构;文献[5]采用WIFI天线和网桥用于和上位机通信;文献[6]针对珠江口水质监测浮标研发一套水质监测浮标数据采集和接收系统,依旧采用GPRS无线通讯和CDMA无线通信两种方式。由于有线、GSM/CDMA等常规通信方式无法满足稳定通信要求,考虑到自主性与安全性的问题,本文将卫星通信作为海域环境监测浮标的主要通信方式,设计一种适用于海域环境监测浮标的定位通信装置。该装置利用太阳能供能;数据采集部分采用目前已有的多种海水常规测试传感器;利用卫星定位通信模块实时传输浮标位置以及海域环境信息;开发配套上位机软件,在地面接收设备中进行解码计算,得到各浮标所处位置的时间和观测信息。基于该装置设计,能有力解决目前无线通信不稳定、受影响大的情况,有效减轻监测人员负担,加快海域环境观测信息更新频率,配合卫星监测法,可显著提升监测效率、有效预防突发性海洋灾难。
1 总体设计
该定位通信装置的主要工作:与浮标中的海水常规测试模块配合,实时采集海水常规测量模块的数据并综合处理,一方面以无线通信方式将数据发送至地面接收端进行解析,另一方面通过存储芯片进行数据备份,以防止无线通信失误造成的数据遗失,且为了明确数据发送的时间和防止浮标因锚生锈老化断裂后偏离原位置,本次设计加入了卫星定位和授时设计。
海域环境监测浮标由于所处地理位置特殊,主要体现在:海平面无遮挡物,光照充足;远海海域无通信基站覆盖;工作环境潮湿,易腐蚀,且需长时间工作。
针对浮标工作的特殊环境,提出利用北斗卫星导航系统所特有的北斗短报文[7]作为无线通信手段,而为了解决海上浮标供能问题,引入可再生绿色太阳能供电模块作为系统长期供能来源,同时,由于工作环境的特殊性,系统的防水性需要着重考虑。海域环境立体监测系统总体结构如图1所示。
图1 海域环境立体监测系统总体结构
2 硬件设计
该海域环境监测浮标系统内部硬件结构如图2所示,主要包括电源管理模块、主控模块、DSP解算模块、卫星定位通信模块、海水常规测量模块和存储备份模块。其中,定位通信装置设计在硬件上,主要与4个模块直接相关:主控模块、卫星定位通信模块、存储备份模块和电源管理模块。该硬件设计在满足定位精度要求和通信成功率的前提下尽可能遵循了电路简单、稳定可靠、功耗低、体积小、成本低的原则。
图2 海域环境监测浮标硬件组成部分
2.1 主控模块
主控模块,需对整个浮标定位通信装置进行控制,包括数据采集、存储、以及北斗短报文的发送,这一系列工作均需要主控模块来控制。由于FPGA具有独特的并行工作模式,且与单片机等控制芯片相比,工作更稳定,性能更可靠,可实现多路数据同时采集,因而近年在各行各业应用广泛[8],因此,为确保海域环境监测浮标可长时间稳定工作,此系统主控模块选用FPGA作为主控模块的核心控制单元。
为减少系统功耗,缩小系统体积,所选FPGA芯片应具备低功耗,小体积的特点。此系统选用Spartan-Ⅵ系列的XC6SLX9芯片,此芯片尺寸为20 mm×20 mm×1.45 mm,具有9 152个逻辑单元,11 440个寄存器,576kb的块RAM(Block RAM),最大可提供200个I/O口[9],可完全满足系统要求,且价格便宜,功耗低,体积小,是目前性价比较高的一款FPGA芯片[10]。其程序配置芯片为XCF04S,外置晶振选用25 MHz有源晶振。
2.2 卫星定位通信模块
针对海面工作特点,利用北斗导航系统不依赖周围网络覆盖的能力,来设计海域环境检测浮标通信装置的卫星定位通信模块。结合本次设计需求,从RDSS(radio determination satellite service)的通信成功率和发射功率、RNSS(radio navigation satellite service)的定位精度和定位需时、模块的体积、外形、质量、工作电压、待机功耗、接口特性、工作环境指标等多方面综合考虑,采用BDM910高集成模块作为本次卫星导航通信模块。该模块外形尺寸为58.3 mm×54 mm×12 mm,质量≤75 g,工作温度为-20~+85 ℃,发射功率≥40 dBm,待机功耗低,能够在湿度≤95%的环境下长期工作,工作可靠性高,且该模块采用BDS+GPS双模定位的定位模式,可在星数不多时增强定位可靠性。卫星定位模块外设电路原理图如图3所示。
图3 卫星定位模块外设电路原理图
2.3 存储备份模块
为防止无线通信失败而导致数据丢失,故设计如图4所示的存储模块来进行15 d数据备份。
图4 存储备份模块原理图
其中,存储器芯片选择Flash Memory(闪存存储器)系列K9K8G08U0M,该芯片由524 288行(页)和2112×8列构成,拥有8 Gbits的内存,属于NAND结构的FLASH芯片[11],可随机读、写,且掉电后数据不会丢失,只要不进行程序擦除,10 a内数据仍不会丢失,可实现多达100 000次的读、写、擦操作[12-13]。其中,写入和读取数据均是在页的基础上完成的,而擦除操作则是基于块的基础上执行。该芯片由8个分开的可擦除的128M字节的块组成,可连续存储15 d的数据。设计两片Flash芯片,通过轮流选通写入和擦除,可最长备份30 d的数据,具体工作流程见3.2数据备份与擦除。
2.4 电源管理模块
考虑到该系统需长时间单独工作在海面,且海面上阳光充足无遮挡,因此适合采用太阳能电池作为该系统的供电装置。为选择合适的太阳能板,先用直流电源进行系统功率测试,除卫星定位通信模块为12 V直接供电外,其余模块均为5 V供电,故设计使用DC-DC芯片DPA15-W24S5GD转出5 V给各模块,原理图如图5(a)所示。主控模块FPGA核供电电压为1.2 V,IO口供电需3.3 V,配置芯片XC6SLX9与晶振也为3.3 V供电,故用线性稳压芯片TPS73HD301PWP转出1.2 V和3.3 V,给主控模块供电,原理图如图5(b)所示。而为了适应DSP先1.2 V、后1.8 V,最后3.3 V的上电顺序,故借由FPGA控制LP5907的使能端,来达到不同步的上电顺序,原理图如图5(c)所示。
(a)一级电压转换
经测试,系统总电流约为0.33 A(其中,卫星定位通信模块发射瞬时电流较大,为1.25 A,但每1 h只需发射1次,故每s平均电流仅为0.000 34 A)。
P=I×U=0.33 A×12 V=3.96 W
(1)
(2)
式中:P为功率,W;I为平均总电流,A;U为供电电压,V;W为电能,kW·h;P为功率,kW;t为时间,h。
根据式(1)、(2)可得:该系统平均1 d仅需要0.095 04 kW·h,使用12 V/20 Ah的太阳能电池供电,可持续工作至少35 h。因此该系统中选用2片输出参数为14 V/100 W,尺寸为900 mm×600 mm×30 mm,质量约为7 kg的单晶硅太阳能板,为12 V/20 Ah的太阳能电池轮流充电。经测试,2片太阳能板晴天一共可发电1.2 kW·h/d,阴天可发电0.2 kW·h/d,为太阳能电池充电,充电时长约为2~8h(电池降压至5 V会自动停止放电,因此电池开始充电时电压一般为5 V左右),同时,设计使用2块太阳能电池轮流工作、充电,充电完成后能够得到一定的休眠时间,可有效延长电池使用寿命,并互为备保设计。
3 软件设计
海域环境监测浮标长期工作在海面,需全自动化完成数据测量、采集、编帧、均值计算、发送和数据备份、擦除等一系列工作,最主要的软件设计包括数据采集与发送、数据备份与擦除和发送信息内容解码等。
3.1 数据采集与发送
数据采集与发送具体工作流程如图6所示,由于不同测量模块的数据传输波特率与频率均不同,卫星定位通信模块数据交换的波特率为9 600 bps、数据更新频率为100 Hz,而温度测量模块的波特率为115 200 bps、数据更新频率为1 Hz,盐密度测量模块和海水酸碱度测量模块则需要接到FPGA的指令,才会测量一次,测量稳定时间≤3 s,波特率为9 600 bps。而FPGA需要匹配不同模块的波特率,每30 s缓存1次数据,并将其组合到一帧数据中,通过RS422串口将其发送至DSP,DSP对连续的120帧数据进行解码与求平均,将最终的平均值再回传给FPGA,再由FPGA将该数据按北斗4.0协议发送到卫星定位通信模块的RDSS单元,RDSS接收数据后直接发送,以完成一次北斗短报文的发送。
图6 数据采集与发送的具体工作流程
3.2 数据备份与擦除
图7 数据备份与擦除具体流程图
3.3 发送信息内容解码
卫星定位通信模块中RDSS无线通信模块每次发送的数据长度为47字节,其中包括卫星定位数据、海水常规测量数据和故障标志字。地面接收机在接收数据后先判断帧头,确定数据类型,而后对信息内容进行解码,并转为十进制数据显示到上位机界面中。具体信息内容解码如下:
3.3.1 卫星定位数据
原始定位数据是由卫星定位模块RNSS单元通过接收北斗和GPS卫星的上行信息后解算得到的数据,共120字节,传给主控模块、DSP解算模块后经过截取、计算,得到最终数据,共34字节。其中包含帧头EB 96和UTC年、月、日和UTC天秒信息、接收机状态、经度、纬度、高度等一系列信息,用于匹配时间、日期,并辅助地面总控台判断浮标是否出现大幅移位情况。除经纬高数据类型为8字节double型,UTC天秒为4字节unsigned int型外,其余均为1字节unsigned char型。
3.3.2 海水测量模块数据
海水测量模块数据是指温度数据、酸碱度数据和盐度数据,均由4字节组成,共12字节。前2个字节为帧头,分别为:AA 01、BB 02和CC 03;而后2个字节为数据:第3个字节为signed int型数据,代表数据符号位和整数部分,第4个字节为unsigned int型数据,代表数据小数部分。
3.3.3 系统故障标志字
FPGA通过判断各单元传输数据是否多次丢字或长时间未能接到单元数据来判断各单元的故障情况,同时自检系统供电电压是否稳定,当短时间内多次出现大的电压波动时则优先判定为系统供电异常。并将故障情况通过系统故障标志字标示。系统故障标志字为单字节unsigned char型数据,具体有6种表示含义,如表1所示。
表1 故障标志字含义
4 系统测试与结果分析
系统测试需配合地面接收设备进行数据接收,再使用VB编写的上位机进行数据处理和还原,上位机界面如图8所示。系统测试包括功能性测试和北斗短报文发送成功率测试。
图8 地面总控设备上位机界面
4.1 系统功能性测试
通过1个月的系统测试,将上位机的解码数据和Flash中的备份数据进行对比,可对该系统的无线定位通信装置进行对比性测试,确定该无线通信不会出现丢帧错帧的情况;同时,对系统的电源管理模块、存储模块和卫星定位通信模块均实现了功能性验证,结果表明,系统可具备长期全自动化工作的能力。
4.2 北斗短报文发送成功率测试
通过在晴天、阴天和雨天进行的多次北斗短报文发送成功率的测试,得到北斗短报文的发送成功率约为:晴天可达到96%,阴天可达87%,雨天可达90%,总体而言,北斗短报文发送成功率在86%以上,可满足工作需要。
5 结束语
本文从总体设计、硬件设计和软件设计三部分详细介绍了基于BDS设计的适用于海域环境监测浮标的定位通信装置,并结合地面接收设备和地面总控设备的专有上位机完成了相关的性能测试与实验验证。结果证明该设计具有较高的发送成功率,且目前未发现丢包的情况,能够适应长期全自动化工作。与海水常规测量传感器配合,可基本满足目前海域监测浮标的定位与通信要求,极大提高环境监测数据的更新频率和环境监测效率,为海上灾害的预防工作提供有效的数据来源。