3. 船舶运动坐标系与位置表达

在动力定位(DP)系统中,控制器要回答的第一个问题不是“该出多少推力”,而是“船现在到底在哪、船头朝哪”。这个问题的答案完全依赖于坐标系。同一艘船、同一组位置传感器数据,放在不同坐标系里表达,数值可能截然不同;如果坐标系定义或换算关系搞错,DP 控制器就会把一条实际偏移 3 米的船当成已经就位,或者把船头方向判断反,最终表现为推力方向错误、船位缓慢漂移甚至振荡。本节围绕 DP 中最常用的三套坐标系——大地坐标系、北东地坐标系和船体坐标系——讲清它们的定义、相互换算,以及位置偏移与旋转如何进入 DP 控制回路。

三套坐标系的分工

大地坐标系是全局参考,通常取当地地理坐标(经纬度)或工程上常用的局部平面坐标。它的作用是给整条船一个“绝对位置”,让 DP 知道目标点在地球表面的哪里。由于经纬度不便直接做米制运算,工程上一般先把目标点和船舶位置投影到一个局部平面上,这个平面就是北东地坐标系的基础。

北东地坐标系(NED)是 DP 运算的主坐标系:原点取在作业区某固定参考点(例如目标点或平台中心),X 轴指北、Y 轴指东、Z 轴垂直向下。它的好处是三个轴都是米制长度,且方向与航海习惯一致,控制器可以直接在这个平面里做位置误差计算。需要注意 Z 轴向下为正,这与很多数学教材的右手系习惯不同,读传感器垂向数据时要留意符号。

船体坐标系固定在船上:原点常取船舶旋转中心或船中,X 轴指向船首,Y 轴指向右舷,Z 轴向下。推进器、传感器、作业设备的位置都在这个坐标系里描述。船体坐标系随船一起平移和旋转,因此它表达的是“相对船自身”的量,而 NED 表达的是“相对大地”的量。

北东地坐标系(NED,局部平面) 北 X 东 Y 参考原点 O 目标点 (N_t, E_t) 船首 x_b 右舷 y_b 船体坐标系(随船平移+旋转) ψ 位置 (N, E) 换算关系 NED ← 船体系 N = N₀ + x_b·cosψ − y_b·sinψ E = E₀ + x_b·sinψ + y_b·cosψ 船体系 ← NED x_b = ΔN·cosψ + ΔE·sinψ y_b = −ΔN·sinψ + ΔE·cosψ 符号约定 ψ:船首相对正北顺时针 ΔN = N_t − N,ΔE = E_t − E Z 轴向下为正 旋转矩阵 R(ψ) 把船体系 误差映射到 NED 推力方向

位置偏移与旋转如何进入控制回路

DP 的控制目标可以概括为:把船体坐标系下的实际位置和艏向,与目标位置和艏向比较,得到误差,再把误差转换成 NED 平面内的推力指令。这里有两个关键环节。

第一是平移。传感器(如 DGNSS 天线、声学位置参考)往往不装在旋转中心,而是装在船体某处。它们测到的是天线位置,控制器需要先按船体坐标系中的安装偏移量(例如 x_b = +35 m、y_b = −2 m)把测量值折算到旋转中心,否则船一转艏向,天线画出的轨迹就是一个圆弧,控制器会误以为船在平移。折算公式正是上面 SVG 中的旋转关系:把偏移量用当前艏向旋转到 NED 平面,再从测量位置中扣除。

第二是旋转。位置误差在 NED 中算出来是“北向误差、东向误差”,但推进器布局是按船体方向布置的。控制器必须用艏向角 ψ 把 NED 误差旋转回船体坐标系,才能合理分配给艏推、主推和侧推。若 ψ 用错(例如把顺时针为正误当成逆时针为正),旋转矩阵方向就反了,表现为船在目标点附近画圈或越推越偏。

举个教学示例(数值为假设,仅用于说明计算过程):设目标点 N_t = 100.0 m、E_t = 50.0 m,船舶旋转中心当前 N = 96.0 m、E = 53.0 m,艏向 ψ = 30°(船首偏北偏东)。则 ΔN = 4.0 m,ΔE = −3.0 m。换算到船体系:x_b = 4.0×cos30° + (−3.0)×sin30° = 3.464 − 1.5 = 1.964 m(船首方向还差约 2 m),y_b = −4.0×sin30° + (−3.0)×cos30° = −2.0 − 2.598 = −4.598 m(船需要向左舷移动约 4.6 m)。控制器据此判断:主要误差在横向,应优先使用侧推或艏推组合,而不是一味加大主推。

判断换算是否正确,有一个简单自检:当 ψ = 0(船首正北)时,船体系与 NED 应完全重合,x_b 等于 ΔN、y_b 等于 ΔE;当 ψ = 90°(船首正东)时,船首方向对应东向,x_b 应等于 ΔE。用这两个极端角度验算,能快速发现旋转矩阵写反或符号错误。

工程上容易踩的坑

  • 旋转中心不统一。不同传感器、不同推进器若各自以不同参考点描述偏移,必须先统一到同一个旋转中心,否则误差会随艏向变化而周期性出现。
  • 艏向基准不一致。罗经给出的艏向与 NED 的北向必须同源(真北或同一磁差修正),否则位置环和艏向环会互相“打架”。
  • Z 轴符号。NED 的 Z 向下为正,垂向参考(如升沉补偿)接入时若符号取反,会导致垂向控制反向。
  • 大艏向角下的耦合。当船接近横风横流作业、艏向偏离目标较大时,平移误差与旋转误差强耦合,应先把艏向拉回再收位置,避免推进器饱和。

把这些关系理清后,后续讨论多源定位融合与参考切换时就有了共同语言:无论切换哪个位置参考,最终都要统一折算到同一个旋转中心、同一个 NED 平面、同一套艏向基准上,DP 控制器看到的“位置”才是一致的。