船载多传感器一体化测量数据实时存储方法_3

文档序号:9667073阅读:来源:国知局
储,对于每ping(-个发射接收周期)的测深数据记录,需要考虑测深时波束间隔为 等角模式还是等距模式的情况。基于这些考虑,设计的格式将区分出各种情况,进行判断 后按不同的情况进行选择不同的标识,比如当测深使用等角模式时则使用'EA'格式存储, 此时参考Sonic2024多波束测深仪原始数据传输格式,只记录第一个与最后一个的波束角 度,然后给出波束角度差就可将等角模式下的角度数据完整记录下来。在实现一体化测量 数据存储的前提下,可兼容具有多条带的多波束测深系统如EM950,其一次得到两个条带的 测深数据;也可兼容具有多扇区的多波束系统如EM302,其可产生分布于两个条带中的8个 扇区;还可兼容多个探头的情况,如R2Sonic2024可实现同时使用两个换能器探头进行外 业米集。
[0076]实时存储时,考虑到采集数据的安全性,在进行数据管理时设计保存两套数 据一一既在主控计算机中实时保存,也在传感器内存中保存。主控计算机中得到的数据包 括了内插得到的测量点的瞬时位置和姿态信息,可以直接参与后处理计算。同时,为了提高 测量精度,可以利用GNSS/1MU保存的原始数据进行组合导航后处理,得到更加精确的位置 和姿态信息,然后与测量点信息一同参与数据后处理计算。
[0077] 二、一体化测量数据实时存储方法
[0078] -体化测量数据实时存储过程为:通过三维激光扫描仪及多波束测深仪进行水 上、水下地形信息的采集及存储,同时通过GNSS/1MU提供位置、姿态信息。为保证多源数据 的联系,多传感器之间的空间位置关系通过室内标定获得,实时存储时以配置文件的形式 将其写入到一体化测量数据存储文件中。其具体实施步骤如下:
[0079] (1)多线程网络通信
[0080] 考虑到一体化测量数据实时存储采用的传感器较多,为了更高效地实现一体化存 储,将系统中涉及的数据分为上行数据和下行数据。将三维激光扫描仪、多波束测深仪及 GNSS/1MU发送至采集端需要保存的数据称之为上行数据,包括多波束数据、激光数据、GNSS 数据、惯导数据、监控反馈信息数据等。将监控系统经采集系统发送至三维激光扫描仪、多 波束测深仪及GNSS/1MU的控制命令、参数设置等相关数据称之为下行数据。
[0081] 同时考虑到整个采集过程上行数据量巨大,若整个数据传输仅采用单一线程,势 必会影响显控界面的响应速度。针对此问题,采用多线程网络通信方法来解决,如图9所 不。
[0082] 其具体的步骤如下:
[0083] 步骤1 :将整个实时存储部分分为监控系统和采集系统。监控系统包括各传感器 (三维激光扫描仪、多波束测深仪及GNSS/1MU)监控端(即TCP客户端),采集系统包括各 传感器采集端(即TCP服务器端)和数据存储模块;监控端通过与采集端进行通信连接,发 送控制命令(下行数据);采集端分别与相应监控端和传感器建立通信连接,接收监控端发 送的控制命令(下行数据)和各传感器传输的采集数据信息(上行数据),并将反馈信息发 送给监控端;
[0084] 步骤2 :设计通信报文协议;
[0085] 步骤3 :在建立主线程后,同时构建三个子线程,分别对应多波束测深仪、激光扫 描仪、GNSS/1MU ;主线程主要负责下行数据的通讯传输,三个子线程分别用于接收原始数据 等上行数据,并将实时数据经信号槽机制传输至采集系统中的数据存储模块。
[0086] (2)时间同步控制
[0087] 时间同步控制是一体化测量数据实时存储的首要前提,如果时间同步没有控制 好,会导致后续点云显示变形。因此,船载多传感器一体化测量数据的实时存储过程中,应 该具备尚精度的时间同步控制机制。
[0088] 时间同步控制的作用是为一体化测量数据实时存储中三维激光扫描仪、多波束 测深仪等传感器提供相应的时间同步信号,并记录相应的时间,为一体化测量数据实时存 储提供统一的时间同步基准。其中,时间同步控制基准与GNSS时间同步,时间同步控制模 块主要由主控芯片、电源模块、RTC模块、存储模块、以太网PHY接口模块、主控时钟模块、 EEPR0M模块以及传感器接口等几部分组成(如图10所示)。
[0089]由于系统采集使用的多波束测深仪,其本身具有时间同步控制器,多波束测深仪 采集控制端与GNSS接收机连接,就可以实现与GNSS时间同步。而一体化测量数据实时存 储过程中的三维激光扫描仪,时间同步功能为选配模块,成本较高,因此提出了一种新的基 于单片机的时间同步方法。通过GNSS脉冲与网络通信相结合实现时间同步,该同步方法能 够满足一体化测量数据实时存储对时间同步实时性和稳定性的要求,取得高质量的实时数 据匹配效果,该方法实现简单并且同步误差较小。流程图如图11所示:
[0090] 步骤1 :同步版硬件集成:ArduinoMega2560是采用USB接口的核心电路板,处理 器核心是ATmega2560;
[0091]ArduinoEthernet是Arduino以太网接口版本,米用了Wiznet公司的Ethernet 接口,ArduinoEthernet的处理器核心是ATmega328;
[0092] 将ArduinoEthernet插在ArduinoMega2560开发板上,构成时间同步模块,其中 管脚2连接GNSS/1MU中的GNSS接收机接收脉冲,管脚13连接激光扫描仪发送脉冲,UDE为 网线接口;
[0093] 步骤2:将步骤1组成的同步板(时间同步模块)与GNSS接收机连接接收GNSS脉 冲;
[0094] 步骤3:同步板借助ArduinoEthernet与GNSS接收机进行TCP/IP网络通信,接 收GNSS接收机发送过来的GNSS报文。GNSS脉冲每秒产生一次,与GNSS报文同时到达同步 板,同步板内部建立一个时钟系统,以解析出的第一个UTC时间为初始时间,内部时钟开始 运行;
[0095]步骤4:同步板需要对脉冲是否异常进行检查,同步板内部程序规定若在1. 2s内 没有接收到GNSS脉冲视为脉冲出现异常;同时,根据不同情况执行不同操作。
[0096] 步骤4. 1:脉冲正常
[0097] 脉冲正常即同步板在正常的时间内接收到GNSS的脉冲,接收到脉冲后对这一时 刻的报文进行检查并解析,得出此时的UTC时间。同步板与三维激光扫描仪的采集端进行 TCP/IP网络通信,在解析出的UTC前面加上编号(编号从1开始,依次进行累加),把这一 时间信息通过网络通信发送给三维激光扫描仪的采集端。同时,通过同步板某一指定管脚 (本方法指定为管脚13)的高低电平变化产生脉冲,即管脚初始电平置为高电平,发送给三 维激光扫描仪的采集端时间信息后管脚电平置为低电平,并将此脉冲发送给激光扫描仪。
[0098] 步骤4. 2:脉冲异常
[0099] 脉冲异常即同步板在距离接收到上一个脉冲1. 2s内没有收到GNSS脉冲,同步板 会把此时的内部时钟的时间作为这一秒应该接收到的UTC时间,并在加上相对应的序号后 通过网络通信发送给三维激光扫描仪的采集端,再运用和脉冲正常时相同的方法产生内部 脉冲,发送给三维激光扫描仪。
[0100] 时间同步板对激光扫描仪的采集端发送时间信息的同时,将此时间信息(UTC整 秒)实时存储在同步板上的SD卡中。
[0101] 步骤5:对于不具备时间同步控制器的三维激光扫描仪,其本身采用内部时钟, 三维激光扫描仪测量点只具备相对时间,即通过解析扫描线数据报文,可以得到扫描点的 LineSyncTimer(扫描线开始时间)和ShotSyncTimer(扫描点距本扫描线的时间),需要在 此基础上加上每秒从GNSS获取的UTC整秒数
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1