1 引言
智能水下机器人在海洋石油开发、矿物资源开采、打捞和军事等方面都有广泛的应用前景[1][2][3]。水下机器人已经开始取代过去由载人潜器和潜水员所承担的工作,尤其是在大深度和危险区域发挥了更大的优势。水下机器人运动控制的核心是嵌入式计算机系统,它需具有运动控制算法的实现、数据采集、与外设的通讯等功能[4][5][6]。本文以潜艇式有缆遥控水下机器人(ROV,Remotely Operated Vehicle)为对象设计了基于ARM9处理器的嵌入式控制系统,并进行了深度控制的仿真实验。
2 ROV结构
本文设计的可用于水下探测的ROV采用了开架式结构,搭载有声纳、姿态传感器。可以在岸上控制台通过电缆控制ROV完成前进、后退、上浮、下沉、左右转弯等动作。ROV结构如图1所示,耐压舱在中间,左右两边是浮力调节舱。电子舱用来安装高、低频信标机、姿态传感器和控制电路等,还可提供锂电池的空间。浮力舱用来提供浮力,框架把整体固定在一起,保证最大的稳定性。推进器由两个螺旋桨推进器组成,以保证ROV在水中可以自由地做前进、倒退和转艏运动。这种水下机器人结构有利于航向控制和前向运动。在水下运动时,横倾和纵倾运动对于该ROV是不重要的。水下探测ROV的航行速度较慢,其慢速与稳定性是水底探测任务所要求的。
基于浮力调节进行ROV的升沉运动和定深控制可以降低能耗。下潜、上浮运动通过调节两边的浮力调节舱的浮力来实现。ROV采用双螺旋桨推进器,布置在两侧,平行于中轴线。通过这两个推进器,既可以产生前进和后退的推力,也可以产生回转力矩,各自由度之间没有耦合。平行布置的两个推进器连线的中点要与浮心、重心在一条直线上,达到平衡推进。在浮力调节系统上采用了变质量调节系统,通过调节左右两个浮力舱的注排水量,改变整体浮力减少或增加,从而产生下降或上升的作用力。两个浮力调节舱不但能够调节ROV的浮力,还可调节ROV的姿态。螺旋桨推进器正向时最大推力为93千克力,反向时的最大推力为52.2千克力。最大工作水深300m。
3 ROV控制系统设计
3.1 传感器系统
水下探测机器人的控制系统分为水下和水上两部分组成。水上节点采用工控机,工控机安放在母船上,通过光纤通信与底层的嵌入式计算机实现数据通信。其上运行Windows操作系统,其功能是监控水下机器人的运行情况,发送控制命令。水下节点采用基于ARM微处理器的嵌入式计算机,负责传感器数据采集,运动控制算法的实现和通信功能,其上运行QNX操作系统。
水下机器人上安装的传感器有:
(1) 姿态航向传感器
航向动态精度为0.5度,俯仰和横滚的动态精度为0.2度,尺寸:106x29x26mm,重量:0.15kg。
(2) 运动传感器
俯仰和横滚动态精度为0.03度,升沉精度为5cm或5%,尺寸:134x120mm,重量:2kg。
(3) 测扫声纳,长基线和超短基线水声定位系统。基于短基线和深度计获取位置信息,基于姿态传感器获取航向和姿态信息。
(4) 压力传感器用于深度测量。
(5) 可以搭载成像声纳、水下摄像机、荧光计、照明灯等。
3.2 嵌入式控制系统
嵌入式控制系统通过检测装置检测潜器的运动状态,将数据通过网络传输到水面计算机,水面计算机根据预定任务和预设算法计算出控制量,然后将控制量传给潜器,再由嵌入式系统控制潜器的运动装置。嵌入式控制系统框图如图2所示。
嵌入式控制系统的设计基于AT91RM9200处理器,内部集成ARM920T芯核,180MHz运行时有200MIPS处理能力;16KB的数据缓冲,16KB的指令缓冲;全功能MMU(存储器管理单元);16KB的内部SRAM和128KB的内部ROM[7]。
水下机器人的嵌入式系统框图如图2所示。通过I2C总线扩展出12位ADC,用于采集深度传感器数据,获取ROV深度。深度传感器的输出信号是4~20mA的电流信号,本系统采用RCV420精密变换器,可以将4~20mA的环路电流变换成0~5V的电压输出。模数转换器选用AD7992,转换时间2μs,与处理器通过标准的I2C接口进行数据交换。带光耦隔离器的I/O口用于控制浮力筒的开关。RS422和10M/100M以太网接口,用于和水面计算机通信。系统中的姿态传感器和信标机都是串口输出,并且通讯部分也需要一个串口,9200处理器内部串行异步收发器的数目不够,所以需要扩展串口,本系统采用SPI接口,外接两片GM8142进行串口扩展。扩展出的4路RS232串口,2路RS232用于采集航向和姿态传感器数据,获取水下ROV的运行状态。另外2路RS232接口采集高低频信标机数据。12位DAC来控制推进器电机。本系统采用两片4通道、12位精度、串行输入双极性输出的AD5726做为DAC转换器。
调试接口包括:LCD显示器、键盘和触摸屏等人机交互设备。
3.3 软件设计
水下机器人的运动控制软件在实时操作系统QNX下编写,包括网络通信模块、串口通信模块、传感器数据采集模块、数据管理模块、控制器模块。QNX操作系统具有实时性好的特点,采用多进程技术将控制算法、对传感器的信息处理和推力分配算法等统一在实时操作系统的框架下进行管理,从而提高动力定位控制系统的实时性和可靠性。采用多线程技术,接收网络数据和来自串行通讯的数据,保证程序运行的高效性和实时性。
4 横倾角和深度协调控制
调整和保持下潜深度是水下机器人的基本航行能力之一,水下机器人采用了浮力舱调节深度。它的垂直面协调控制系统方框图如图3所示。通过调整左右两个浮力调节舱的注水量来调节ROV整体的浮力,从而控制下潜或者上浮运动。所以要考虑ROV浮力变化的过程,即左右两个浮力调节舱的充水量。ROV处于水面时是正浮力状态,浮力舱充水后,浮力减小到零,进入水下平衡状态。继续向浮力舱充水,浮力变为负值,ROV下潜,并且下潜速度增加。由于两个浮力舱的容积是一定的,所以有最大负浮力的限制。调节两个浮力桶的总浮力控制ROV的下潜深度,同时分别调节左右浮力桶,产生不同的浮力可以使ROV横倾。但一般情况下横倾角不需要控制,保持ROV水平就可以了。
横倾角控制的目的是在ROV初始下潜和上浮阶段,控制ROV的姿态。在水下大部分时间,保持ROV水平状态就可以了。ROV横倾角的控制是通过调节ROV左右两个浮力调节舱的不同的注、排水量来产生左右两个浮力调节舱的浮力差,即产生旋转运动的偏倾力矩。在深度控制时,将深度传感器的测量值作为反馈,横倾角控制采用姿态传感器的测量值作为反馈,都采用积分分离PID控制器。
横倾角、深度协调控制器根据输入期望深度与实际深度的偏差和期望横倾角与实际横倾角的偏差,输出控制ROV下降或者上升所需稳定的作用力,输出控制ROV偏转所需稳定偏转力矩,通过浮力解算输出左右两个浮力调节桶的注、排水量,实现ROV的横倾角控制和深度控制。
积分分离PID控制器具体实现如下:
⑴ 根据实际情况,人为设定一阀值
⑵ 当时,也即偏差值比较大时,采用PD,可避免过大的超调,又使系统有较快的响应。
⑶ 当时,也即偏差值比较小时,采用PID控制,可保证系统的控制精度。
写成计算公式,可在积分项前乘一个系数
ROV在水底的前进和转向运动通过控制两个螺旋桨推进器来实现。给定参数为航速和航向角,输出为两个推进器的推力。这里航向角控制器选择PID调节器。只有两个推进器,推力分配算法简单。
5 仿真研究
为了验证水下探测ROV设计的合理性,进行了仿真研究。
5.1 水下机器人模型建立
水下机器人6自由度运动模型的各个自由度彼此之间存在耦合,由于水下探测ROV常在低速下运动,可以将其运动分解为为水平面运动(包括状态变量)和垂直面运动(包括状态变量)两部分,并且认为这两个自由度之间不存在耦合关系。
结合本文研究对象的情况,设计方案中ROV的外形为左右、前后对称,且重力、浮力分布可使其保持水平状态,无横倾或纵倾。其在水平面运动过程中,ROV满足条件:
此外,由于其只沿纵向平行安装两个水平推进器,推进器的作用只限于产生水下机器人的进退和转艏运动。当左右推进器产生相同推力矢量时可引起进退运动,而当两者产生大小或方向不同的推力时则可引起转艏运动。
根据上述假设和条件可以得到ROV在水平面内的简化模型:
式中:——包含附加质量的质量和转动惯量;—沿方向的流体阻力中线性项和非线性项;
——绕Z轴转动方向的流体阻力的线性项和非线性项;
——为推进器产生的X轴向力和绕Z轴的转艏力矩。
ROV采用压载水舱进行垂直面的位置控制,其在垂直面的模型可以简化为:
式中:——包含附加质量的质量;——沿Z方向流体阻力的线性项和非线性项;
——压载水舱产生的垂向作用力。
5.2 仿真验证
仿真情况设定为:ROV由初始静止状态开始运动。为实现直航,需保持左右推进器输出相同大小和方向的推力。不同推力情况下ROV的速度响应曲线如图4所示。由速度响应曲线可以发现,其速度经过一段时间的增加后最终保持在一定的数值,此时推力与阻力达到动态平衡,ROV作匀速直线航行。令表示ROV在大地坐标系下的位置和姿态。图5为ROV由初态控制ROV垂直下潜到10米处悬停。ROV横倾角的控制是通过调节特种ROV左右两个浮力调节舱的不同的注、排水量来产生左右两个浮力调节舱的浮力差,即产生旋转运动的偏倾力矩。其仿真结果如下图6所示。从仿真实验结果看出所设计的ROV深度协调控制器达到了预期的控制效果。
6 结束语
本文介绍了开架式水下探测机器人的结构、传感器系统,基于AT91RM9200处理器设计了ROV嵌入式控制器。建立了ROV的数学模型,提出了ROV垂直面协调运动控制的方法,并进行了深度和横倾角协调控制仿真。仿真实验证明控制器设计的有效性。
参考文献:
[1] 徐玉如,庞永杰,甘永.智能水下机器人技术展望[J].智能系统学报,2006,1(1):9-16.
[2] 封锡盛,刘永宽.自治水下机器人研究开发的现状和趋势[J].高技术通讯,1999,(9):55-59.
[3] 甘永,王丽荣,刘建成.水下机器人嵌入式基础运动控制系统[J].机器人,2004,26(3):25-29.
[4] MICHAEL J,RUTH A.Robust depth and speed control system for a low-speed undersea vehicle[C].Proceedings of the Symposium on Autonomous Underwater Vehicle Technology.1990:51-58.
[5] 戴学丰,边信黔.6自由度水下机器人轨迹控制仿真研究[J].系统仿真学报,2001,13(3):368-369.
[6] 翟宇毅,马金明,姚志良。超小型潜水机器人沉浮系统设计[J].光学精密工程,2004,12(3):231-234.
[7] 周立功.AMR嵌入式系统基础教程[M].北京:北京航空航天大学,2005.
作者简介:周丽丽(1983-),在读博士,助理研究员,研究方向:机器视觉与安全分析。