基于开源软件Ardusub的水下机器人ROV控制系统

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

基于开源软件Ardusub的水下机器人ROV控制系统

摘要:随着海洋资源开发以及水下领域作业任务的增加,水下机器人在水下作

业中发挥着越来越重要的作用。ROV作为水下作业的重要工具,对运动控制算法

要求较高,采用开源软件ArduSub,结合一种模糊串级PID控制算法实现ROV控

制系统的设计,重点对ArduSub的特点、适应配置及PID控制算法原理,包含运

动和姿态方面进行了阐述,能够良好实现ROV的水下控制。

1引言

随着海洋资源开发以及水下领域作业任务的增加,水下机器人在水下作业中

发挥着越来越重要的作用。其中ROV续航持久,成本相对较低,逐渐成为水下作

业的重要工具。ROV工作于水下环境,具有非线性、易受环境影响等特点,对运

动控制算法要求较高,同时要求整个控制系统要有较好的实时性和可靠性。

2开源软件ArduSub简介

ArduSub水下机器人的控制器是一个完整的开源解决方案,提供远程操作控

制(通过智能潜水模式)和全自动的执行任务。作为DroneCode软件平台的一部分,它能够无缝地使用地面控制站的软件,可以监控车辆遥测和执行强大的任务规划

活动。它还受益于DroneCode平台的其他部分,包括模拟器,日志分析工具,为

车辆管理和控制和更高层次的api。

其主要特点在于以下几个方面:

反馈控制和稳定性:ArduSub控制器基于多旋翼自动驾驶系统,具有精确的

反馈控制,可主动维持方向。

深度保持:使用基于压力的深度传感器,ArduSub控制器可以将深度保持在

几厘米内。

航向保持:默认情况下,ArduSub在未命令转动时自动保持其航向。

相机倾斜:通过操纵杆或游戏手柄控制器与伺服或万向节电机进行相机倾斜

控制。

灯光控制:通过操纵杆或游戏手柄控制器控制海底照明。

无需编程:ArduSub控制器适用于各种ROV配置,无需任何自定义编程。大

多数参数可以通过地面控制站轻松更改。

兼容性好:ArduSub兼容许多不同的ROV框架,支持PWM输出。

由于以上特征,使得ArduSub成为一款可以很好适用于水下机器人RPV控制

系统的开源软件。

ArduSub兼容基于串行和以太网的通信接口。使用的硬件自动驾驶仪必须支

持选择的选项。Pixhawk仅支持串行连接,但可以通过配套计算机连接到以太网。其他autopilots原生支持以太网。ArduSub软件主要用于通过ArduSub进行接口,ArduSub是一种开源的跨平台用户界面,适用于所有类型的无人机。该接口通过

系绳连接到ArduSub控制器并显示车辆状态信息,并允许更新参数和设置。最重

要的是,QGC与用于指挥车辆的操纵杆或游戏手柄控制器连接。

ArduSub包含一个高级的电机库,支持多个框架,例如具有6自由度推进器

定位的BlueROV配置(图1所示)、带有并排垂直推进器的矢量ROV(图2所示)、采用单垂直推进器的ROV(图3所示)等等。

在传感器和执行器方面,除了标准的板载传感器(IMU,指南针),ArduSub

控制器还支持许多外部传感器,包括:用于测量和自动深度保持的压力/深度传感器、GPS用于表面位置(不在水下工作),未来,ArduSub控制器将能够与更多

传感器连接,如深度探测仪,扫描声纳,温度传感器和电导率传感器。控制器可

以命令可调光灯,并且可以配置为标准控制伺服系统以及实现其他功能。

图3 采用单垂直推进器的ROV

综上,可以归纳得到ArduSub的主要应用方面包括:观察和探索、破坏发现

和记录、摄影和摄像、船和设备检查、生物取样和测量、水下检索以及学术研究、科技竞赛等等。

3 ROV运动与姿态控制

ROV的动力来源于电机驱动螺旋桨旋转产生的反推力,电机的放置位置、放

置方向和数目直接决定了ROV可以实现的运动形式。以搭载4个电机的ROV系

统为例,如果ROV在多个维度上运动,则电机的实际转速是各维度对电机转速控

制作用的叠加。ROV控制算法的输入量是被控维度的设定值和传感器测量值,输

出是该维度的控制量,然后根据公式把各维度控制量转化为对电机的控制量从而

对电机进行控制。

ROV的控制算法采用PID控制算法,PID算法是目前应用最为广泛的一种控制算法,它根据设定值和反馈值构成控制偏差,将偏差的比例、积分和微分通过线

性组合构成控制量,对被控对象进行控制[1]。在ROV的PID控制中,只考虑了对姿态角的闭环控制作用,对角速度并没有反馈控制。角度-角速度串级PID是在角

度PID的基础上增加一个角速度环PID控制器,即外环是角度PID,内环是角速度环PID,二者共同组成一个控制器。外环PID输入的是角度设定值和测量值,输

出是角速度的期望值;内环PID输入的是角速度的期望值和测量值,输出是该维

度的控制量。角度—角速度串级PID对角度和角速度都有反馈机制,拥有更好的

稳定性和响应速度。

但ROV是一个非线性系统,且难以对其构建精确的模型,上述控制算法不能

够满足要求。模糊控制 (Fuzzy Control) 是模拟人的模糊推理和决策过程的一种非

线性控制方法,不依赖于精确的数学模型,易于实现对不确定性系统及强非线性

系统的有效控制。本文采用模糊控制器根据设定 (期望) 值和测量值的偏差e以及

该偏差的变化率ec,输出PID控制器的比例、积分、微分系数, 然后再进行串级PID控制。在角度—角速度串级PID控制中,由于内环角速度环直接输出各维度

的控制量,所以采用模糊控制器输出内环PID控制器的控制数,外环PID控制器

的系数则采用固定值。

参考文献

[1]王建华,宋燕,魏国亮,袁彬.串级PID控制在水下机器人俯仰控制系统中的应

用[J].上海理工大学学报,2017,39(03):229-235.

相关文档
最新文档