串级PID控制在水下机器人俯仰控制系统中的应用

2017-07-18 10:56王建华魏国亮
上海理工大学学报 2017年3期
关键词:控制算法调试轨迹

王建华, 宋 燕, 魏国亮, 袁 彬

(上海理工大学 光电信息与计算机工程学院,上海 200093)

串级PID控制在水下机器人俯仰控制系统中的应用

王建华, 宋 燕, 魏国亮, 袁 彬

(上海理工大学 光电信息与计算机工程学院,上海 200093)

针对水下复杂环境中水下机器人(ROV)俯仰角的控制问题,设计了串级PID控制器.分析了ROV水下受力情况,建立了ROV俯仰控制系统的运动学模型.复杂智能控制算法的实现(软件编程实现等)具有难度,而串级PID比传统PID控制器有更大的调节范围和更快的响应速度,在设计时有更大的灵活性,且可以处理实际中由非线性特性所带来的问题.Simulink仿真结果表明,对于ROV俯仰控制系统,串级PID控制器具有更好的控制性能.运用泳池测试验证了串级PID控制算法在ROV俯仰角控制中的可操作性.

水下机器人; 俯仰控制系统; MATLAB软件; 仿真及试验

近几十年来,由于丰富的海洋世界[1],水下机器人(remotely operated vehicle,ROV)的研究受到了越来越多学者们的关注.然而,由于水下复杂环境的影响,使得ROV的研究过程中出现各种困境.另外,ROV的控制系统因受到外界因素(水流、洋流的流动)的影响而变得非常复杂,甚至出现不稳定的现象,如ROV的深度、俯仰角不可控等.因此,ROV的各种姿态控制成为水下机器人的研究热点以及难点之一[2],特别是俯仰角控制问题.假设除俯仰角控制外的其他方向控制(深度控制、偏航控制等)的控制性能良好.

针对水下机器人的运动控制,很多学者已经开展了大量的研究工作,早期的控制方法为传统PID控制,由于其结构简单、参数易调节,且控制效果好,在工业控制中得到了广泛应用.但考虑到水下环境的复杂性,实际中ROV俯仰控制系统的不确定性及非线性等因素,传统PID控制效果并不理想.与此同时,许多控制算法在ROV的姿态控制研究中被提出来,如自适应控制、鲁棒控制、滑模控制及神经网络控制等,但上述智能控制方法的参数调试繁琐,分析复杂度较高,适应性不强,在工程实际中并没有得到广泛的应用[3-9].

串级PID控制[10]将传统PID控制进行串联,比传统PID控制多一个控制回路及控制变量,因此,它具有更大的调节范围、更好的控制性能和更强的鲁棒性.目前,串级PID控制在水下无人机姿态控制领域中得到了发展[11].将串级PID控制应用到ROV的俯仰控制系统中,在水下复杂环境中改善ROV俯仰角的控制性能.

运用物理学及数学知识,建立了ROV俯仰控制系统模型;将串级PID控制算法首次应用到ROV俯仰控制系统中,并得到了有效的仿真实验及实际测试结果;有效地改善了ROV在复杂水下环境中的作业效率,使ROV的俯仰角可以被瞬时且稳定地控制到一定角度,进而让ROV更快捷、准确地到达目的地.

1 ROV的俯仰控制系统分析

1.1 ROV的俯仰系统建模

研发的ROV整体结构如图1所示.由图1可知,ROV有4个螺旋桨,分别用来控制其前进、上下及俯仰运动等姿态,考虑到实际中ROV的操作结构以及在实际控制过程中的困难,仅针对ROV的俯仰控制系统来研究,假设ROV的偏航控制和深度控制都不考虑,现对其俯仰控制系统进行建模,如图2所示.

图1 ROV的结构Fig.1 Structure of ROV

图2 ROV的俯仰控制系统分析Fig.2 Analysis on the pitch control system of ROV

如图2所示,选择地面坐标系E={Og,Xg,Yg,Zg}与机体坐标系B={Ob,Xb,Yb,Zb}作为建立动力学模型的参考基准.ROV的姿态由欧拉角向量n=[φ θ ψ]T表示,ROV相对于机体坐标系B的转动角速度用w=[p q r]T表示,u1和u2是ROV的前、后螺旋桨的推力,且它们是关于浮心Ob点对称的,L1为u1到ROV的浮心Ob点(亦机体坐标系原点)的距离,M点是ROV的重心,L2为ROV的浮心与重心间的距离,θ为ROV的俯仰角.通过图2的受力分析,可以得到ROV的俯仰控制系统的运动学模型

(1)

式中:P和Q是与系统本身有关的参量;g为重力加速度;m为质量.

将式(1)转化为状态空间模型

(2)

式中:x1(t)为水下机器人的俯仰角;t为时间;x2(t)为水下机器人的俯仰角的角速度;A1,A2,B是ROV的俯仰控制系统的参数,可通过辨识得到;u(t)为输出信号,它代表系统前、后2个螺旋桨的推力总和,即系统的输入.

1.2ROV俯仰控制系统的参数辨识

运用SIMULINK工具进行ROV俯仰控制系统的参数辨识,具体的辨识过程如下:

a. 人工施加一个瞬时外力作用于水下的ROV上,使得ROV的俯仰角发生变化,测量其姿态的信息,然后通过MATLAB软件编程解析由传感器传回的数据,得到ROV的俯仰角的轨迹变化图,如图3所示;

b. 在基于SIMULINK的ROV俯仰控制仿真系统中,可以通过施加一定的激励使得ROV的俯仰角轨迹发生变化,再利用其中的“Scope”模块得到仿真系统中ROV的俯仰角变化图,如图4所示;

c. 调试SIMULINK中施加到ROV俯仰控制仿真系统的激励大小,同时调节仿真系统模型中的参数,使得ROV的俯仰角轨迹变化图形与上述实际中得到的俯仰角变化图基本一致,并记录此时的系统参数A1,A2和B,即可以辨识出所研究的ROV俯仰控制系统模型的参数.

需要指出的是:图3是在实际中给水下机器人一个瞬时力使其俯仰角发生变化的情况下得到的轨迹图,图中横坐标代表时间,纵坐标代表水下机器人的俯仰角;图4是在SIMULINK仿真平台上,通过给水下机器人俯仰控制系统一个瞬时激励作用,使其俯仰角发生变化而得到的水下机器人的俯仰角轨迹图,横坐标表示时间,纵坐标表示水下机器人的俯仰角(弧度形式).

图3 ROV俯仰角实际变化轨迹Fig.3 Actual trajectory of the pitch angle of ROV

本文的研究目的是将设计的串级PID控制算法应用到ROV的俯仰控制系统中,通过辨识得到系统参数A1,A2和B的值.然后基于给出的串级PID控制器来保证ROV俯仰控制系统的稳定性,即使得ROV在水下执行任务时是可控的,可以稳定地进行运动(前进、后退及转弯).

图4 ROV俯仰角仿真变化轨迹Fig.4 Simulation trajectory of the pitch angle of ROV

2 串级PID控制

2.1 数字PID控制器

在实际研究中,传统PID算法常被用于单个自由度的控制,如深度、偏航和俯仰等,即每个自由度都由1个PID控制器控制,控制输入为该时刻的控制偏差e(k)=r(k)-x(k).其中:r(k)为给定的参考输入;x(k)为实际输出;k为离散的时间步数.通过对偏差e(k)进行比例、积分和微分环节的处理,可以得到控制输出,即为该时刻对应的执行机构的控制指令u(k).然而,数字PID控制算法一般有2种:数字PID位置型控制算法和数字PID增量型控制算法,本文采用数字PID增量型控制算法,具体算法为

(3)

计算机控制是一种采样控制,根据采样时刻的偏差量来计算控制量,因此,需要对式(3)进行离散化处理,过程为

(4)

(5)

将式(4)和式(5)代入式(3),可以得到离散的PID控制表达式为

(6)

式中:Δs=T,Δs为采样间隔;T为系统采样周期,在这里,T应足够的小来保证系统的精度;u(k)为第k次采样时控制器的输出;E(k)为第k次采样时的偏差.

(7)

用式(6)减去式(7),可以得到

(8)

式中:KI为积分系数KI=KpT/Ki;KD为微分系数,KD=KpKd/T.

2.2 串级PID控制系统

串级PID控制由2个串联在一起的PID控制和被控系统组成,其中,一个调节器的输出作为另一个调节器的给定值.相比单级的PID控制,串级PID控制有其优点:控制效果明显提高,系统的工作效率得到改善,克服进入副回路的二次扰动等.

水下机器人在水下完成任务时需要对其各种姿态进行控制,如深度、偏航和俯仰等.ROV的姿态信息是机载的各类传感器实时采集得到的,如惯导传感器和水位压力传感器等.由式(1)可知,ROV的俯仰控制系统中含有非线性因素,单级的PID控制不能满足其控制精度,因此,采用串级PID控制方法来进行控制,即响应速度快的姿态角速度控制放在内环,响应速度慢的姿态角控制放在外环,串级PID控制流程如图5所示.

图5 串级PID控制系统结构Fig.5 Structure of the cascade PID control system

如图5所示,串级PID控制系统是先进行外环控制,即俯仰角回路控制,然后进行内环控制,即俯仰角速度回路控制.其中,先给定俯仰角的参考值xr,然后经外环PID控制算法计算后得到俯仰角速度的参考值,再经内环PID控制算法计算后可以得到ROV俯仰控制系统的输入值,经过这一系列的控制可以使得系统的输出值x1跟随事先给定的参考值xr.需要说明的是,由于该串级PID控制的内、外环的采样周期大小是相同的,因此,采样频率在容许范围内取得较高以满足响应速度较快的内环控制.

3 串级PID调节器的参数调试

PID控制参数的调试是PID控制过程中至关重要的一步,其参数调试的效果好坏将直接影响被控系统能否正常工作[12].在调试中,PID控制器有3个参数需要整定:比例系数Kp,积分系数Ki和微分系数Kd.根据已有的研究成果和经验,PID控制器的参数调节可以用理论和实验两种方法.然而,考虑到ROV在实际复杂环境下无法得到准确的控制系统模型,依靠理论方法进行PID参数整定,要获得较好的结果不太现实,因此,选用实验方法来进行PID参数整定,又叫凑试法,图6给出了其参数调试界面图,具体调试过程如下:

第1步 先进行比例系数Kp的调节.增大Kp后,系统的响应将会加快,但如果Kp过大,将会使得系统产生大的超调且出现振荡现象,不利于系统的稳定.

第2步 调节积分系数Ki.Ki的大小将会影响系统的超调和产生振荡现象,并且,若Ki过大,将会使系统静差消除速度减慢.

第3步 微分系数Kd的调节.增大Kd的值可以使系统响应速度增大,超调量减小,稳定性增加,但对干扰的抑制能力减弱.

图6 基于Labview的PID参数调试图Fig.6 Debugging figure of PID parameters based on Labview

在研发ROV的过程中,针对PID参数的调节问题,使用Labview软件进行其参数调试,通过改变PID的各个值进而使得ROV的俯仰角的变化满足其性能要求.

综上所述,根据ROV的俯仰控制系统的响应情况来修改参数Kp,Ki和Kd的值,直到满足系统的性能要求为止.

4 仿真及试验

4.1 系统仿真

串级PID控制算法被应用到ROV的俯仰控制系统中来控制ROV的俯仰角,根据ROV在实际中的运动情况,通过系统辨识建立系统模型,利用MATLAB/SIMULINK工具箱对其进行仿真且给出仿真结果.仿真模型如图7所示.

在ROV俯仰控制系统仿真时,给定的俯仰角参考值分别是15°和45°,且对比了串级PID控制与传统PID控制的效果,仿真结果如图8所示.实线代表串级PID控制作用下的ROV俯仰角轨迹图,运行仿真系统3~4 s后,ROV的俯仰角基本稳定在15°(即ROV保持仰头15°的姿态前进),且超调量小,响应速度快;虚线表示传统PID控制作用下ROV俯仰角轨迹图,相比串级PID控制算法,其响应速度慢.由于此次的水下机器人俯仰控制研究处于初步阶段,因此,做系统的控制时考虑的是定轨迹跟踪,即在实际中,控制水下机器人的俯仰角使其保持在某个固定角度进行水下运动,仿真结果如图9所示.黑色线条是在做水下机器人仿真试验时给定的参考轨迹,红色线条代表水下机器人俯仰角的轨迹.可以看出,该结果验证了串级PID算法的有效性.下一步准备研究的是水下机器人俯仰角的变跟踪控制,即给定的参考轨迹是随时间变化的,但在实际的过程中由于水下环境因素的复杂性,会带来很多未知困难,因此,这将是接下来研究的重点及难点.

图7 ROV俯仰控制系统仿真Fig.7 Simulation for the pitch control system of ROV

图8 传统PID和串级PID控制作用下 ROV俯仰角的仿真轨迹Fig.8 Simulation trajectory of the pitch angle of ROV with the traditional PID and cascade PID control

在ROV模型中新加入了扰动项后进行仿真,画出了带有扰动的系统模型的状态x1和参考状态xr的跟踪曲线(下页图10),且与未加扰动的系统模型的跟踪曲线(图9)进行比较,结果表明:如果ROV模型中含有扰动,在相同的控制作用下,ROV依然可以跟踪给出参考轨迹,相比之下,只是会有1~2 s的延迟;从实际出发,考虑到ROV在水下运动时,由于水流的影响,扰动无处不在,图11(见下页)是根据实时测量的ROV在水下的姿态信息而画出的轨迹图,可以看出,俯仰角轨迹波动的误差在±2°以内,是可以被允许的,因此,验证了该控制方法的有效性.

图10 带扰动的水下机器人俯仰角的跟踪轨迹Fig.10 Tracking trajectory of the pitch angle of ROV with disturbance

图11 ROV俯仰角的实际轨迹Fig.11 Actual trajectory of the pitch angle of ROV

4.2 试 验

采用由欧舶智能科技有限公司提供的ROV试验平台来验证串级PID控制算法在实际中的有效性,需要说明的是,本文中的所有试验数据都从该平台获得.在实际的ROV研发中,采用JSON通信格式(C语言编写)作为其通信规则,通讯方面使用了USR-WIFI232-D2模组将用户的物理设备连接到WiFi无线网络或是以太网上,且该模组可以提供USART数据传输接口的解决方案.JY-901作为串口中断接收模块,用来采集实际的ROV俯仰角变化的数据且发送此数据到上位机.12C是用来发出转速命令给直流无刷电机,通过此命令可以使ROV改变其俯仰角的大小.具体的串级PID控制算法的程序框图如图12所示.对应的部分相关串级PID控制算法实现程序如图13所示.

图12 串级PID控制程序流程图Fig.12 Flow chart of the program for the cascade PID control

图13 串级PID控制算法程序代码Fig.13 Procedure code of the cascade PID control

在实际的ROV研发过程中,采用C语言进行编程实现,通过JSON通信格式,实时地发送传感器数据到上位机.之所以采用JSON通信格式,是方便用户的后续开发.上位机界面如图14所示.

通过大量的泳池试验调试,最终得出了一系列效果较好的控制参数,如表1所示.

通过实时地测量,利用传感器获得一系列ROV俯仰角变化的数据值,基于串级PID控制算法及这些实时测得的数据,可以得到ROV俯仰角的实际轨迹变化图,如图11所示.

图14 上位机界面图Fig.14 Interface diagram on PC

由图11可以看出,线条表示实际的ROV俯仰角在串级PID控制算法作用下的响应曲线,与仿真结果相对应.试验中给出的ROV俯仰角设定角度是15°,图中曲线有点波动,波动的误差在±2°以内,从实际的角度来看,由于ROV自身的设备存在硬性的测量误差,这个波动误差是可以被允许的.

表1 ROV的俯仰角串级PID控制参数Tab.1 Cascade PID control parameters for the pitch angle of ROV

将研发的ROV放到泳池中进行试验,如图15所示,通过试验可知,串级PID控制算法能够实现ROV俯仰角的控制且控制性能良好.

图15 水下机器人泳池试验Fig.15 Pool tests of ROV

5 结论与展望

针对水下复杂环境中ROV俯仰角控制问题,提出了一种串级PID控制方法.该控制算法通过构造2个闭环回路,分别运用PI和PD控制器对角速度和角

度进行控制.达到了角度的快速响应和角速度精确控制的目的.Simulink仿真结果(图8)表明,相比传统PID控制器,串级PID控制器具有更好的灵活性和更高的控制精度.实际中,通过泳池测试,验证了串级PID控制算法在ROV俯仰角控制中的有效性.

通过仿真试验及泳池测试,可以看出实际中ROV俯仰角的控制并不完全稳定,误差一直存在,原因有3方面:a. 水下环境的复杂度(水流、洋流的存在即干扰无处不在);b. 通讯过程中环境的不完善(传输时滞、输入饱和等通讯现象的存在);c. ROV自身的传感器等设备的缺陷,传感器本身会有测量误差等缺点.

由此可见,解决实际中存在的以上研究问题也是作者下一步的重要工作.

[1] 朱心科,金翔龙,陶春辉,等.海洋探测技术与装备发展探讨[J].机器人,2013,35(3):376-384.

[2] 徐玉如,肖坤.智能海洋机器人技术进展[J].自动化学报,2007,33(5):518-521.

[3] 彭秀艳,张文颖,贾书丽.基于BP算法的船舶航向模糊PID控制研究[J].控制工程,2013,20(4):623-626.

[4] 彭秀艳,贾书丽.船舶横向运动鲁棒PID控制及优化[J].控制工程,2014,21(3):455-458.

[5] 彭秀艳,胡忠辉,贾书丽.基于嵌入积分滑模策略的船舶运动控制[J].控制工程,2014,21(1):49-52.

[6] 廖勤武,王朝立,梅迎春.基于超声的非完整移动机器人避障控制[J].上海理工大学学报,2009,31(4):402-405.

[7] 邢志伟,封锡盛.水下机器人神经网络自适应逆控制[J].控制工程,2003,10(3):235-238.

[8] 王永富,柴天佑.自适应模糊控制理论的研究综述[J].控制工程,2006,13(3):193-198.

[9] 钱炜,付东翔,李晓燕,等.越障机器人的设计与研究[J].上海理工大学学报,2002,24(3):264-267.

[10] DASH P,SAIKIA L C,SINHA N.Flower pollination algorithm optimized PI-PD cascade controller in automatic generation control of a multi-area power system[J].International Journal of Electrical Power & Energy Systems,2016,82:19-28.

[11] VELAZQUEZ M,CRUZ D,GARCIA S,et al.Velocity and motion control of a self-balancing vehicle based on a cascade control strategy[J].International Journal of Advanced Robotic Systems,2016,13.

[12] 王伟,张晶涛,柴天佑.PID参数先进整定方法综述[J].自动化学报,2000,26(3):347-355.

(编辑:石 瑛)

Application of Cascade PID Control in the Pitch Control System of a Remotely Operated Vehicle

WANG Jianhua, SONG Yan, WEI Guoliang, YUAN Bin

(SchoolofOptical-ElectricalandComputerEngineering,UniversityofShanghaiforScienceandTechnology,Shanghai200093,China)

In terms of the pitch angle control of a remotely operated vehicle (ROV) in the complex underwater environment,a cascade PID controller was designed.The force situation of the underwater ROV was analyzed,and the kinematics model of the pitch control system of the ROV was established.The cascade PID controller has bigger adjusting range and faster response speed than traditional PID controllers,so it is more flexible when designing,and can deal with the problem produced by the practical nonlinear factors.The simulation results show that the cascade PID controller provided is of better control performance than traditional PID controllers for the pitch control of the ROV.The pool tests illustrate the feasibility of the cascade PID controller in the pitch angle control of the ROV.

remotelyoperatedvehicle;pitchcontrolsystem;MATLABsoftware;simulationandtest

1007-6735(2017)03-0229-07

10.13255/j.cnki.jusst.2017.03.005

2016-10-08

国家自然科学基金资助项目(61403254,61374039);沪江基金资助项目(C14002,D15009);上海市地方高校能力建设项目(15550502500)

王建华(1989-),男,硕士研究生.研究方向:水下机器人控制算法.E-mail:jianhua026637@163.com

宋 燕(1979-),女,副教授.研究方向:模型预测控制、机器人控制.E-mail:sonya@usst.edu.cn

TP 13

A

猜你喜欢
控制算法调试轨迹
轨迹
轨迹
基于航拍无人机的设计与调试
轨迹
FOCAS功能在机床调试中的开发与应用
基于ARM+FPGA的模块化同步控制算法研究
进化的轨迹(一)——进化,无尽的适应
无线通信中频线路窄带临界调试法及其应用
调压柜的调试与试运行探讨
一种优化的基于ARM Cortex-M3电池组均衡控制算法应用