张 云,吴 昊
(南京交通职业技术学院 电子信息工程学院,江苏 南京 210000)
本文针对该无人作业船舶,研究了水面无人作业船的航迹跟踪问题,设计了基于滑模变结构控制的航迹跟踪控制器,实现水面无人作业船的自主导航。水产养殖自动导航船的研究有助于扩大养殖规模,降低人力成本,提高我国水产养殖的自动化水平。
上述用于水产养殖的无人作业船主要由船体、明轮推进器、水草切割系统、自动均匀投饵系统以及自动导航系统等组成。本平台GPS模块选用的是Trimble公司的BD982型高精度GNSS接收机模块及其IO界面板。Trimble BD982 GNSS能够实现船舶位置的精确定位以及航向数据的采集。无人作业船的主控制器采用了由S3C2440芯片组成的ARM9内核微处理器模块,是整个控制系统的核心。
船舶航行至作业区域后会通过GPS、AHRS等其他传感器获得船舶当前的位置信息、航向角信息、航速、切割器位置、吃水深度以及避障距离等信息[1]。同时将这些信息传送到主控制器,主控制器通过与设定航迹的对比,得出需要调整的航向角,来实现无人作业船的自主导航。与此同时,船舶会实时调整明轮转速以及切割台的高度,并且开启切割装置与传送装置以及自动投饵系统。之后将以设定的船速航行,按照规划好的路径开始均匀投饵,并且开始切割并收集水草。通过传感器检测到水草装满船舱以后,切割装置将停止切割,并且提升出水面,开始自动返航。
考虑到无人作业船的安全性与可操作性,该船舶设计了手动控制、遥控控制以及自动控制3种操作方式[2]。手动控制主要是在驾驶室内的操作,通过操作手柄控制左右明轮电机的刹车、倒车与调速,通过相应的按钮开关控制切割、输送及割台电机的开关,通过相应的旋钮调速开关控制切割、输送和割台电机速度控制的电位器。遥控控制主要是针对船上无人以及在停靠岸时,在岸上的人等对明轮推进器等各种装置进行操纵的方式,有利于减轻船的载重以及劳动强度,控制更加灵活安全可靠。明轮推进器的遥控控制采用的是N-4Q FHSS遥控器和XY3000接收机,具有三通道调速控制,分别调节速度与方向。主控制器将接收机输出的带有占空比的PWM信号量通过外部检测中断后计算出此时的占空比,转换成0~100%占空比的PWM信号传输给电机驱动器来实现调速[3]。控制系统总体设计如图1所示。
图1 控制系统总体设计框图
自动控制主要是对割台升降自动调节,并用于轨迹跟踪的运动控制。其中,割台升降调节主要是根据限位开关和超声波传感器来自动调节割台高度以及切割深度。轨迹跟踪的运动控制主要是GPS自主导航,根据由GPS输出的位置、航向和速度等信息,经过ARM9中央处理器的导航控制算法,输出PWM控制量控制明轮推进器[4]。
水面船舶在开阔水域航行,只是通过舵来控制航向进而来控制航向偏差。明轮仅仅是作为驱动装置,提供水面船舶前进的动力,并不作为控制器的控制输入使用。由于水面船舶的横向位移y和航向角ψ的改变,仅仅是通过舵角δ的转矩来实现的,所以系统局部有明显的欠驱动特性[5]。根据以上分析得出,在无外界干扰的情况下,水面无人作业船的直线航迹控制目标是通过适当的方法得出δ,使得水面船舶的航迹偏差y和航向角ψ都趋近于零,以实现水面船舶的无外界干扰下的直线航迹控制目标。
滑模变结构控制属于变结构控制系统范畴。该控制方法与常规控制方法的根本差别在于控制的不连续性,即该控制方法表现为一种使系统“结构”能随时间变化的开关特性。该控制特性可以使系统在一定特性下沿规定的状态轨迹作小幅度、高频率的上下运动,即所谓的滑动模态或“滑模”运动。水面无人作业船舶具有明显的欠驱动与非线性特性,运用滑模变结构控制的方法设计航迹跟踪控制器可以有效保障系统的鲁棒性[6,7]。
水面船舶航迹控制系统的非线性数学模型为:
式中,y、ψ代表船舶的位置和航向;和分别为其一阶导数;r为船舶在船体坐标系下的艏摇角速度;r˙分别为其对应的一阶导数;T为时间常数;K是表征水面无人作业船回旋性能指标的参数,即旋回性指数,α是非线性项模型系数。
式中,u为控制输入;d为控制干扰,|d|≤。水面船舶航迹控制的控制目标为xi→0,i=1,2,3,4。取误差方程为:
根据以上系统描述,取滑模函数为:
式中,ci>0,i=1,2,3。
根据以上分析,将控制律设计为等效控制与切换控制之和为:
式中,λ>0,u即为设计的基于滑模变结构控制的航迹跟踪控制器。下文中通过仿真及实验的方式验证其可行性。
本节对水面船舶航迹跟踪系统的滑模控制算法进行了仿真研究及分析。应用MATLAB/Simulink中的S-Function模块搭建Simulink仿真模型。控制目标为xi→0,i=1,2,3,4,被控对象的初始状态取[0.15 0 0 0],取c1=27、c2=27、c3=9、ρ=1.0、λ=1.0,采用控制律式(6)~式(8)。滑模控制中,采用饱和函数方法,取边界层厚度Δ为0.05,仿真试验结果如图2和图3所示。
图2 系统状态的响应图
图2和图3为初始状态为[0.15 0 0 0]时系统状态的响应与控制输入图,系统状态在能在2 s左右的响应时间内收敛至零。由图可以看出,系统各个状态响应时间短,响应速度快,收敛性好,系统具有非常好的鲁棒性,由此证明了该控制算法的可行性。
图3 控制输入
实验地点选取在某池塘进行,采用如图4所示长、宽、高为1.4 m、0.85 m、0.4 m的600 W功率的明轮船搭载控制系统进行实验,以期证明上所述方法的可行性与有效性。图5中标注的①、②、③、④的红色虚线是船舶的规划路径,实线为船舶的实际路径曲线。
图4 明轮动力移动平台
如图5所示,从起始点到位置①,船舶的跟踪轨迹相对比较平滑,行驶比较平稳;从位置①到位置②,最初沿设定路线跟踪,跟踪过半后,跟踪精度迅速下降,船舶未能准确到达位置②;从位置②到位置③跟踪偏差较大;从位置③到位置④,由于干扰强度突然变大,跟踪轨迹出现迂回后最终到达位置④,但该段航迹偏差很大,控制效率很低。原始条件下的导航实验失败。在导航信号不稳定或干扰较大的情况下,无人船虽然能够完成规划的路线,但其控制精度较差。
图5 原始条件航迹跟踪实验
图6为引入滑模控制后的航迹跟踪效果图,从起始点到位置①,船舶的跟踪轨迹相对比较平稳;从位置①到位置②,位置②到位置③,位置③到位置④虽然有一定的跟踪误差,但是跟踪相对平稳,控制效率较高。协调各参数后进行实验,结果如图7所示,导航曲线基本能和设定路线重合,导航误差较小,控制精度较好,且稳定性较高。
图6 引入滑模控制的航迹跟踪图
图7 各参数协调后实验效果
本文主要介绍无人水面船舶的直接航迹控制,在正确描述直接航迹跟踪问题的基础上,将滑模变结构控制与欠驱动船舶航迹跟踪问题相结合,设计了基于欠驱动船舶直接航迹跟踪的控制律。利用MATLAB/Simulink仿真验证了该控制器的稳定性与收敛性,并通过实验验证了该控制律的可行性。