基于LOS法的自航模航迹跟踪控制算法实现
«上一篇
文章快速检索     高级检索
下一篇»
  应用科技  2018, Vol. 45 Issue (3): 66-70  DOI: 10.11991/yykj.201706005
0

引用本文  

韩鹏, 刘志林, 周泽才, 等. 基于LOS法的自航模航迹跟踪控制算法实现[J]. 应用科技, 2018, 45(3), 66-70. DOI: 10.11991/yykj.201706005.
HAN Peng, LIU Zhilin, ZHOU Zecai, et al. Path tracking control algorithm based on LOS method for surface self-propulsion vessel[J]. Applied Science and Technology, 2018, 45(3), 66-70. DOI: 10.11991/yykj.201706005.

基金项目

国家自然科学基金项目(51379044)

通信作者

韩鹏,E-mail:1210161598@qq.com

作者简介

韩鹏(1997−),男,本科生;
刘志林(1977−),男,副教授,博士

文章历史

收稿日期:2017-06-07
网络出版日期:2017-07-27
基于LOS法的自航模航迹跟踪控制算法实现
韩鹏1, 刘志林1, 周泽才2, 唐昊1, 班良1, 郝留磊2    
1. 哈尔滨工程大学 自动化学院,黑龙江 哈尔滨 150001;
2. 哈尔滨工程大学 船舶工程学院,黑龙江 哈尔滨 150001
摘要:为解决实验室环境下的小型自航模能快速、准确、稳定地实现航迹跟踪问题,利用视线法(line of sight, LOS)将自航模的位置跟踪问题转化为自航模的航向控制问题,通过PID控制器,使自航模的航向角收敛于期望航向角,从而使自航模不断驶向期望航向点。通过设置不同的期望航向点,实现自航模航迹跟踪控制。之后通过MATLAB对其进行仿真研究,验证了其可行性。最后将其用于实验室环境下的自航模航迹跟踪,得到了良好的效果,进一步验证了其工程实用性。
关键词自航模    航迹跟踪    航向控制    视线法    MATLAB仿真    PID控制器    期望航向点    
Path tracking control algorithm based on LOS method for surface self-propulsion vessel
HAN Peng1, LIU Zhilin1, ZHOU Zecai2, TANG Hao1, BAN Liang1, HAO Liulei2    
1. College of Automation, Harbin Engineering University, Harbin 150001, China;
2. College of Shipbuilding Engineering, Harbin Engineering University, Harbin 150001, China
Abstract: Aiming at the small self-propelled model in the laboratory environment, the paper discussed how to realize the path tracking quickly, accurately and stably. The problem of path tracking of the self-propelled model was transformed into the heading control problem of the self-propelled model by the Line of Sight algorithm. Via the PID controller, the heading angle of the self-propelled model converged to the desired course angle, so that the self-propelled model continuously headed towards the desired course point. By setting different expected heading points, the path tracking control of the self-propelled model was realized. Subsequently, through the MATLAB simulation, the feasibility was verified. Finally, the algorithm was used for the path tracking of the self-propelled flight in the laboratory environment, a good effect was obtained and the engineering practicability was further verified.
Key words: surface self-propulsion vessel    path tracking    heading control    LOS algorithm    MATLAB simulation    PID controller    expected heading point    

船舶的航迹跟踪控制,是近年来船舶自动控制领域涌现出来的一个热门课题。目前,国外对无人艇航迹跟踪的研究中有Do等[1-3]根据反步法(backstepping)以及输出重定义等方法得到了全局、一致并以指数趋近稳定的反馈控制律和船舶的航迹状态;国内对于船舶的自主航迹跟踪研究也较多,具有代表性有李铁山等[4]利用自适应积分反演技术、耗散理论以及输入输出线性化等方法对船舶的直线航迹跟踪控制系统设计了非线性控制器。这类控制器一般对被控模型的参数有较高的要求,而在实际的控制应用中,很难准确地辨识出模型的各项参数,导致这一方法在很多应用中无法具体实施。

本文采用的视线(line-of-sight, LOS)算法是自航模航迹跟踪控制的理论基础,该算法通过简单的推导得出自航模跟踪期望航向点所需要的航向角,结合PID控制器,消除航向角偏差,使自航模的当前航向角收敛于期望航向角,以便自航模能够航行在期望航迹线上并且不断向目标航向点靠近,最终行驶到目标航向点,完成对目标点的跟踪控制[5]

LOS算法最大的优点在于其不依赖于被控对象的模型,即可以在模型参数不确定的情况下,或者外界扰动对船模影响较大的环境中设计控制器,完成对目标模型的控制。其次,LOS算法设计简便,抗干扰能力强,控制效果出色也是其被使用的主要因素。因此,对LOS算法的进一步研究和改进对无人艇航迹跟踪控制技术的应用和发展具有重要意义。

1 LOS算法介绍

视线法的导航原理体现在它对舵手操舵和船舶运动的直观理解上[6-8]。该原理认为:如果使被控船舶的航向保持对准视线角(LOS角),那么经过适当的控制,就能使被控船舶到达期望的位置,达到航迹跟踪的效果[8]。而且LOS算法能将传统的控制量从3个自由度的船舶位置 $(x,y)$ 和航向角 $\psi $ 减少到2个自由度的船舶航向角 $\psi $ 和航行速度 $v$ ,这种特性对于欠驱动船舶的控制尤为重要。

1.1 航向角的求取

由于LOS理论认为只要使被控船舶的航向保持对准LOS角,被控船舶就能达到期望的位置,所以如何获得LOS角便成了研究的重点所在。如图1所示,假设航迹跟踪当前的期望位置是 ${{{P}}_{k + 1}} = {\left[ {{x_{k + 1}},{y_{k + 1}}} \right]^{\rm{T}}}$ ,上一次的期望位置是 ${{{P}}_k} = {\left[ {{x_k},{y_k}} \right]^{\rm{T}}}$ ,被控船舶的当前位置记为 ${{P}} = {\left[ {x,y} \right]^{\rm{T}}}$ ,并假设 ${{{P}}_{k + 1}}$ ${{{P}}_k}$ 可以进行测量[9]。则LOS角可以通过下面公式计算得到:

${\psi _{{\rm{LOS}}}} = \arctan \left( {\frac{{{y_{k + 1}} - y}}{{{x_{k + 1}} - x}}} \right)$

式中 ${\psi _{{\rm{LOS}}}} \in \left\langle { - {\rm{\pi }},{\rm{\pi }}} \right\rangle $ ,为LOS角。

Download:
图 1 LOS航迹跟踪控制算法原理

由于LOS法控制原理易于理解、控制效果较其他控制方法更为优越、适用性强,所以LOS法在船舶的航迹跟踪控制中得到了广泛的应用。下面将分别对LOS法的2种导航方式作出分析。

1.2 LOS法导航方式分析

LOS控制算法可以用于直线航迹跟踪和曲线航迹跟踪,是一种较好的航迹跟踪控制算法。该算法通过引入一个可视距离 $\varDelta $ 来协助完成,原理如图2所示[8]

Download:
图 2 LOS航迹跟踪导航方式示意

图2可知,期望航向点 ${{{P}}_{{\rm{LOS}}}} = {\left[ {{x_{{\rm{LOS}}}},{y_{{\rm{LOS}}}}} \right]^{\rm{T}}}$ 与被控船舶当前位置在期望航迹上的投影点相距 $\varDelta = n{L_{pp}}$ ,这里 $n = 2 \sim 5$ ${L_{pp}}$ 为船舶长度,Δ称为被控船舶的可视距离。此时,LOS控制算法可以写成:

${\alpha _\phi } = {\alpha _k} + \arctan \left( {\frac{{ - e}}{\varDelta }} \right)$

式中: $e$ 表示被控船舶的横向跟随误差, ${\alpha _k}$ 是大地坐标系正北方向与期望航迹线 ${{{P}}_k}{{{P}}_{k + 1}}$ 的夹角。本文假设航向角偏差 ${\psi _e} = {\alpha _\phi } - \psi $ ,当 ${\psi _e}$ 趋于零的时候,自航模即向目标航向点行驶,最终到达期望航迹,完成路径跟踪。最后通过简单的PID控制,可以有效地使 ${\psi _e}$ 趋向于零,当前航向角 $\psi $ 便跟踪上了期望航向角 ${\alpha _\phi }$ ,通过连续的控制,自航模可以沿期望航迹行驶。

船舶经控制算法跟踪当前一个期望航向点 ${{{P}}_{k + 1}} = {\left[ {{x_{k + 1}},{y_{k + 1}}} \right]^{\rm{T}}}$ ,当船舶进入该期望航向点一定范围时,则需要自动放弃跟踪该期望航向点,而转入跟踪下一个期望航向点,即令 $k = k + 1$ 。这样就需要一个控制算法来对期望航向点进行判别和切换,本文采用如下算法。

假设存在一个以船舶所跟踪的当前期望航向点 $({x_{k + 1}},{y_{k + 1}})$ 为圆心,以 ${R_0}$ 为半径的圆,若某一时刻,被控船舶的当前位置 ${{P}} = {\left[ {x,y} \right]^{\rm{T}}}$ 满足如下条件:

${\left( {{x_{k + 1}} - x} \right)^2} + {\left( {{y_{k + 1}} - y} \right)^2} \leqslant R_0^2$

则需要将跟踪的当前期望航向点转换成下一个期望航向点。在对 ${\psi _{{\rm{LOS}}}}$ 进行计算时也要切换到下一个去期望航向点,利用下一个期望航向点的数据进行计算。

1.3 航向角映射原理

上述LOS航迹跟踪控制算法在理论上是非常有效的。但是由于这种算法的控制区间在 $\left\langle { - \pi ,\pi } \right\rangle $ 上,使得其在 $ - \pi $ $\pi $ 这两个节点是不连续的。如船舶当前航向角 $\psi {\rm{ = - 17}}{{\rm{9}}^ \circ }$ ,当船舶航向角继续顺时针变化,那么下一刻很可能 $\psi {\rm{ = 17}}{{\rm{9}}^ \circ }$ ,这时算法将会认为船舶做了急速的旋转,从而得到不可预料的结果。这种情况的出现在船舶进行航迹跟踪控制时是非常不利的,它为控制器的设计带来困难并可能出现在船舶跟踪期望航向点时,控制器发生误命令,使得船舶向相反方向绕大圈来跟踪期望航向点,这些都会给实际船舶控制时带来极大的影响[10]

为解决这一问题,我们需要对问题的原因作进一步分析。船舶的控制器与航向角偏差 ${\psi _e}$ 有关,通过分析发现:当 ${\psi _e} \in ( - \pi ,\pi )$ 时,控制器将发出正确的指令指导船模跟踪目标航向点;当 ${\psi _e} \notin ( - {\rm{\pi }},{\rm{\pi }})$ 时,控制器将发出相反的指令从而船模实际航向角可能会从反方向向期望航向角收敛。所以我们只要一个使 ${\psi _e} \in ( - 2{\rm{\pi }}, - {\rm{\pi }}) \cup ({\rm{\pi }},2{\rm{\pi }})$ ${\psi _e} \in ( - {\rm{\pi }},{\rm{\pi }})$ 的映射即可解决上述问题。具体映射方法参照图3[12]

Download:
图 3 航向角偏差的映射说明
2 基于视线法的PID控制器设计

为了使基于LOS控制算法获得的航向角偏差 ${\psi _e}$ 趋近于零,即使得自航模当前航向角跟踪上期望航向角,本文需要采用一种控制方法来控制 ${\psi _e}$ ,使之趋近于零,实现航迹跟踪目的。PID控制图如图4所示。

Download:
图 4 PID控制示意图

图4中可以看出,通过设定合理的PID控制器的参数,便可得到稳定收敛的控制规律,使 ${\psi _e}$ 趋于零[14]。PID控制器的控制规律为

$\delta = {k_1}{\psi _e} + {k_2}{\psi _e} + {k_3}\int_0^t {{\psi _e}} {\rm d}t$ (4)

由于舵角 $\delta $ 与当前航向角 $\psi $ 成比例变化,航向角偏差为

${\psi _e} = \psi - {\psi _{\rm LOS}}$ (5)

由式(1)、(2)可以看出,如果某一时刻,系统存在一个较大的 ${\psi _e}$ ,经PID控制便会产生一个舵角,该舵角会控制自航模偏向期望航向点航行,此时自航模的当前航向角就趋近于自航模期望航向角, ${\psi _e}$ 减小。通过不断控制,只要 ${\psi _e}$ 存在,那么便会出现一个控制舵角使 ${\psi _e}$ 减小,直到 ${\psi _e}$ 趋于零,即自航模达到了期望航迹线[13-14]

3 MATLAB仿真结果及分析

本次MATLAB仿真试验中,主要为2个转角,第一个是90°的小转角,第二个是 ${\psi _e} < $ 90°的较大转角。仿真航迹图如图5所示,自航模从点(1 800,1 200)处开始跟踪期望航迹。期间航向角速度、航向角及控制舵角变化曲线分别如图6~8所示。

Download:
图 5 期望航迹与仿真航迹比较
Download:
图 6 航向角速度变化曲线
Download:
图 7 航向角变化曲线
Download:
图 8 控制舵角变化曲线

图7可以看出,自航模的期望航向角共进行了3次变化,第1次和第3次变化时引起少许超调,而第2次期望航向角变化使得实际航向角的变化出现较大延迟,这与图5中的航迹变化是一致的。总体上看,无论 ${\psi _e} < $ 90°还是 ${\psi _e} > $ 90°,实际航向角均可收敛于期望航向角,因此,LOS算法可以控制船舶实现不同情况下的路径点跟踪。

4 自航模实验 4.1 自航模系统

本文采用的自航模系统是一个小型的自航模实船实验平台,利用此平台可以完成一些基本的自航模实船仿真实验。本实验平台由小型可充气式水池、自航模、单目视觉摄像头、上位机4部分组成。

图9 是实验室环境下自航模实船试验仿真平台中的可充气水池以及小型自航模的实物图。小型自航模长约为66 cm,宽25 cm,高18 cm,最小回转半径约为0.6 m,为减少小船横摇,船体整体为扁平状。水池采用中型充气气垫水池,规格为350 cm×350 cm。

Download:
图 9 自航模航迹跟踪平台仿真水池

图10是本实物仿真平台的构架图。利用本平台,可以对不同的航迹跟踪控制算法进行实际验证,达到实物仿真的目的。本试验中的期望航迹通过不连续的一组有序的路径点组成。2个相邻路径点之间可得到一条线段,所有路径点所得到线段相接,即得到我们的期望路径。

Download:
图 10 自航模实物仿真平台结构
4.2 自航模实验分析

在实验过程中,保持自航模的航速为U = 0.289 1 m/s。在图5所示的航迹图中选取部分点位,其具体实验数据如表1所示。

表 1 自航模航迹跟踪实验数据

图11是基于LOS算法的自航模曲线航迹跟踪实验结果。该试验中自航模所要跟踪的航迹线为锐角,可以将这条曲线航迹看成是2条直线航迹。如图11所示,自航模首先跟踪第1个期望航向点(0.8,1.5),从图中可以看出,此阶段跟踪效果较好。当LOS法判断为继续跟踪下一个期望航向点时,自航模迅速转舵,但由于自航模本身的惯性,此时出现一定的超调,随着LOS算法以及PID控制器的迅速调节,自航模最终快速的跟踪期望航迹,并达到第2个路径点(2.3, 0.5),实现航迹跟踪控制。

Download:
图 11 基于LOS算法的曲线航迹跟踪实际航迹
5 结论

1) 本文首先通过MATLAB仿真验证LOS法的可行性,仿真结果表明,将LOS法应用于小型自航模航迹跟踪时有良好的控制效果。

2) 在小转角航迹跟踪过程中,跟踪效果良好,而大转角跟踪过程初期,会出现的较小的超调,经过控制算法的调节,最终实现航迹跟踪的效果。在转角过大的情况下,对于航迹跟踪点进行切换时出现的超调,可能使小船完全偏离航向,由于控制器的限制,目前本文并未得到有效减少超调的方法。

3) 在自航模航迹跟踪控制实验中,小船可稳定快速地实现预定航迹的跟踪,表明LOS法可有效应用于实际的水面无人艇控制。

与目前普遍采用的仿真研究方式不同,本文在基于LOS法设计的控制器在MATLAB理论验证的前提下,又利用实验室自航模实物仿真平台做了实船试验。结果表明,该算法能够应用于实际的小型自航模的航迹跟踪,具有一定的工程实用性。

对于本文的后续研究,可以从控制器的改进方面入手,可选用较为复杂的滑模控制、自适应PID等先进控制理论,结合LOS法,得到更好的实际控制效果。

参考文献
[1] 金平仲. 船舶喷水推进[M]. 北京: 国防工业出版社, 1986: 41-136. (0)
[2] DO K D, PAN J. Global waypoint tracking control of underactuated ships under relaxed assumptions[C]//Proceedings of the 42nd Conference on Decision and Control. Maui, USA, 2003: 1244−1249. (0)
[3] DO K D, JIANG Z P, PAN J. Robust global stabilization of underactuated ships on a linear course: state and output feedback[J]. International journal of control, 2003, 76(1): 1-17. DOI:10.1080/0020717021000048233 (0)
[4] 李铁山. 船舶直线航迹非线性设计方法[D]. 大连: 大连海事大学, 2005. (0)
[5] 于瑞亭. 欠驱动水面船舶的全局镇定控制方法研究[D]. 哈尔滨: 哈尔滨工程大学, 2012. (0)
[6] PARK W G, YUN H S, CHUN H H, et al. Numerical flow simulation of flush type intake duct of waterjet[J]. Ocean engineering, 2005, 32(17/18): 2107-2120. (0)
[7] PARK W G, JANG J H, CHUN H H, et al. Numerical flow and performance analysis of waterjet propulsion system[J]. Ocean engineering, 2005, 32(14/15): 1740-1761. (0)
[8] FOSSEN T I, BREIVIK M, SKJETNE R. Line-of-Sight Path following of underactuated marine craft[J]. IFAC proceedings volumes, 2003, 36(21): 211-216. DOI:10.1016/S1474-6670(17)37809-6 (0)
[9] 班良. 小型自航模控制系统设计与实现[D]. 哈尔滨: 哈尔滨工程大学, 2014. (0)
[10] HARVALD S A. Resistance and propulsion of Ships[M]. New York: John Wiley & Sons, 1983: 57-599. (0)
[11] 董飞垚, 雷虎民, 周池军, 等. 导弹鲁棒高阶滑模制导控制一体化研究[J]. 航空学报, 2013, 25(9): 2212-2218. (0)
[12] 杨震, 王岩, 刘志林. 一种欠驱动船舶编队滑模鲁棒控制方法[J]. 电机与控制学报, 2014, 18(11): 90-96, 105. DOI:10.3969/j.issn.1007-449X.2014.11.014 (0)
[13] 朱齐丹, 于瑞亭, 夏桂华, 等. 风浪流干扰及参数不确定欠驱动船舶航迹跟踪的滑模鲁棒控制[J]. 控制理论与应用, 2012, 29(7): 959-964. (0)
[14] 金小婷, 杜佳璐, 汤占军. 基于Backstepping的非线性船舶航迹跟踪控制器设计[J]. 科学技术与工程, 2012, 12(13): 3146-3149, 3154. DOI:10.3969/j.issn.1671-1815.2012.13.025 (0)
[15] 胡寿松. 自动控制原理简明教程[M]. 2版. 北京: 科学出版社, 2008. (0)