«上一篇
文章快速检索     高级检索
下一篇»
  应用科技  2020, Vol. 47 Issue (2): 17-22  DOI: 10.11991/yykj.201906003
0

引用本文  

常乐, 杨忠, 张秋雁, 等. 悬挂负载空中机器人的抗摆控制[J]. 应用科技, 2020, 47(2): 17-22. DOI: 10.11991/yykj.201906003.
CHANG Le, YANG Zhong, ZHANG Qiuyan, et al. Anti-swing control research of aerial robot with suspended load[J]. Applied Science and Technology, 2020, 47(2): 17-22. DOI: 10.11991/yykj.201906003.

基金项目

中国南方电网有限责任公司科技项目(066600KK52170074);国家自然科学基金项目(61473144);江苏高校优势学科建设工程资助项目;国家重点研发计划项目(2017YFE0113200);南京航空航天大学研究生创新基地(实验室)开放基金项目(kfjj20180322)

通信作者

杨忠,E-mail:YangZhong@nuaa.edu.cn

作者简介

常乐,男,硕士研究生;
杨忠,男,教授,博士生导师

文章历史

收稿日期:2019-06-10
网络出版日期:2020-01-03
悬挂负载空中机器人的抗摆控制
常乐1, 杨忠1, 张秋雁2, 王少辉1, 李捷文1    
1. 南京航空航天大学 自动化学院,江苏 南京 211106;
2. 贵州电网有限责任公司电力科学研究院,贵州 贵阳 550002
摘要:为了解决悬挂负载空中机器人飞行时产生的负载摆动和残余振荡问题,本文采用滑模变结构方法设计了高度控制器和抗摆控制器。首先建立悬挂负载空中机器人的动力学模型,基于此设计出一阶滑模的高度控制器和二阶滑模的抗摆控制器,并且提出了一种改进型的边界层厚度可变的边界层法来降低抖震现象。最后使用MATLAB和Adams联合仿真,验证控制器的有效性。结果表明,设计出的控制器具有良好的抗摆效果,满足系统要求。
关键词空中机器人    无人机    悬挂负载    抗摆控制    滑模控制    分层滑模    积分反步    可变边界层    
Anti-swing control research of aerial robot with suspended load
CHANG Le1, YANG Zhong1, ZHANG Qiuyan2, WANG Shaohui1, LI Jiewen1    
1. College of Automation Engineering, Nanjing University of Aeronautics and Astronautics, Nanjing 211106, China;
2. Electric Power Research Institute of Guizhou Power Grid Co., Ltd, Guiyang 550002, China
Abstract: In this paper, in order to solve the problem of load swing and residual oscillation during the flight of an aerial robot with suspended load, the sliding mode variable structure method is used to design the height controller and anti-swing controller. Firstly, the dynamic model of an aerial robot with suspended load is established. On this basis, the height controller of the first-order sliding mode and the anti-swing controller of the second-order sliding mode are designed. An improved boundary layer method with variable thickness of boundary layer is proposed to reduce the chattering phenomenon. Finally, the validity of the controller is verified by the joint simulation with MATLAB and Adams. The results show that the designed controller has excellent anti-swing effect and meets the system requirements.
Keywords: aerial robot    unmanned air vehicle    suspended load    anti-swing control    sliding mode control    hierarchical sliding-mode    integral back-stepping    variable boundary layer    

近年来无人机应用的领域越来越广泛,产生了不少的特种作业无人机,称为空中机器人[1-2]。空中机器人有着体积小、机动性强、能够定点悬停等优点,成为了优秀的空中作业平台。空中机器人作业时,负载经常会固定在机身下方,但由于机身下方负载摆放空间有限以及负载外形与机身不匹配的问题,负载的选择存在着大量的限制,而将负载悬挂在机身下方则不再需要考虑这些问题,在货物运输[3-4]、喷洒农药[5]等应用领域有着较大的应用前景。但是空中机器人悬挂负载飞行时,系统的稳定性会受到负载摆动的影响,极大地限制了该方式的应用,所以研究悬挂负载空中机器人的控制器设计有着重要意义。

无人机悬挂飞行研究一直受到国内外研究团队的关注,国内外针对无人机悬挂飞行的问题提出了很多有效的控制方法。文献[6]设计了一种基于反步控制算法的非线性控制器,使得无人机可以在悬挂负载大幅度摆动时仍然能进行很好的轨迹跟踪,但是其并没有对悬挂负载的位置进行控制,飞行过程中存在负载剧烈摆动的情况;文献[7]运用了微分平滑方法设计了针对平面四旋翼无人机悬挂系统的控制器,实现了针对四旋翼无人机悬挂系统的轨迹生成和跟踪;文献[8]中,研究人员使用迭代线性二次型最优控制器,实现了无人机的轨迹跟踪控制并抑制了悬挂负载的摆动,虽然控制效果显著,但是控制器复杂,需要复杂的运算,现有无人机上的机载微处理器不一定能达到要求的运算速度;在文献[9]中,研究人员采用了强化学习的方法,对特定负载的直升机飞行控制系统进行训练,达到了对悬挂负载的轨迹进行规划的目的,但只能在特定重量的负载下才能使用,当改变负载需要重新进行训练,适用性不强;在文献[10]中,研究人员对带挂负载的四旋翼无人机起飞过程进行了研究;文献[11]解决了四旋翼无人机在悬挂负载未知的情况下实现安全起飞的问题,并通过仿真结果证实了其算法的有效性。

综上所述,近年来对无人机悬挂系统的研究成果显著,但是许多方法仍存在一些局限性。针对这些问题,本文设计的位置控制器,既不依赖于模型的线性化,也无需复杂的结构,而是采用了滑模(sliding mode, SM)变结构控制方法,并加入了可变厚度的边界层法,有效地进行了抗摆控制,降低了抖震现象。

1 数学模型

悬挂负载的空中机器人的结构示意图如图1所示。

Download:
图 1 悬挂负载的空中机器人结构

图1(a)是悬挂负载空中机器人的三维示意图,图1(b)是与其对应的二维模型示意图。由于悬挂负载在水平方向的2个自由度相互解耦,研究悬挂负载空中的高度控制和抗摆控制,可在其对称面内简化为二维模型,采用图1(b)作为本文的控制模型。

首先建立2个坐标系[11],惯性坐标系I和机体坐标系B,图中 $\left\{ {{x_i},{z_i}} \right\}$ $\left\{ {{x_b},{z_b}} \right\}$ 分别表示坐标系I和坐标系B的各坐标轴正方向;F表示空中机器人的总升力,方向为沿着机体坐标系的 ${z_b}$ 的正方向; ${m_Q}$ 为空中机器人的质量; ${m_L}$ 为负载的质量; $\alpha $ 为负载的摆角; $\theta $ 表示空中机器人的俯仰角;L为绳的长度;T为绳的张力。根据实际情况可以做出如下合理假设:

假设1 空中机器人为刚性且对称的;

假设2 机体坐标系的原点、质心以及几何中心是重合的;

假设3 负载始终处于空中机器人的下方,即αθ∈(−90°, 90°),图中所示位置 $\alpha $ $\theta $ 均为正;

假设4 绳索的质量不计,且是刚性、不可伸缩的。

假设1和假设2简化了问题的分析,保证了二维示意图以及下面推导的正确性。

假设3成立的前提是无人机的俯仰角 $\theta $ 和负载摆角 $\alpha $ 都不太大,一般来说无人机的俯仰角 $\theta $ 始终处于±45°以内,而负载摆角 $\alpha $ 在控制器的作用下也是能控制在±45°以内的,所以αθ∈(−90°, 90°)是成立的。

假设4成立的前提是绳索的弹性系数较大,从而可以忽略绳的张力T带来的伸长量,而确保绳索是刚性不可收缩的。只要保证绳的张力T始终是大于0的,由式(5),T的数学表达式可推导出,只要αθ∈(−90°, 90°),那么T是始终大于0的。

将总升力F按照图1(b)中惯性坐标系的 ${x_i}$ 轴和 ${z_i}$ 轴的方向进行分解,得到水平方向的力 ${F_X}$ 和竖直方向的力 ${F_Z}$

$\left\{ {\begin{array}{*{20}{c}} {{F_X} = - F\sin \theta } \\ {{F_Z} = F\cos \theta } \end{array}} \right.$

根据假设2和3,可以得到悬挂负载与空中机器人的相对位置:

$\left\{ {\begin{array}{*{20}{c}} {{x_L} = {x_Q} + L\sin \alpha } \\ {{z_L} = {z_Q} - L\cos \alpha } \end{array}} \right.$ (1)

式中: $\left\{ {{x_L},{z_L}} \right\}$ 为悬挂负载在惯性坐标系下的坐标; $\left\{ {{x_Q},{z_Q}} \right\}$ 为空中机器人在惯性坐标系下的坐标。

同时对式(1)两边求对时间的二阶导数,可以得到负载的加速度在水平和竖直2个方向的分量:

$\left\{ {\begin{array}{*{20}{c}} {{{\ddot x}_L} = {{\ddot x}_Q} - L\dot \alpha \sin \alpha + L\ddot \alpha \cos \alpha } \\ {{{\ddot z}_L} = {{\ddot z}_Q} + L\dot \alpha \cos \alpha + L\ddot \alpha \sin \alpha } \end{array}} \right.$ (2)

图1(b)所示,对空中机器人和悬挂负载进行牛顿第二定律分析可以得到:

$\left\{ \begin{array}{l} {m_Q}{{\ddot x}_Q} = {F_X} + T\sin \alpha \\ {m_Q}{{\ddot z}_Q} = {F_Z} - T\cos \alpha - {m_Q}g \\ {m_L}{{\ddot x}_L} = - T\sin \alpha \\ {m_L}{{\ddot z}_L} = T\cos \alpha - {m_L}g \\ \end{array} \right.$ (3)

将式(3)代入到式(2)可以得到绳中的张力T和负载摆动的角加速度 $\ddot \alpha $

$\left\{ \begin{array}{l} T = \dfrac{{{m_L}( - {F_X}\sin \alpha + {F_Z}\cos \alpha + L{M_Q}{{\dot \alpha }^2})}}{{{m_Q} + {m_L}}} \\ \ddot \alpha = - \dfrac{1}{{{m_Q}L}}({F_X}\cos \alpha + {F_Z}\sin \alpha ) \\ \end{array} \right.$ (4)

将式(4)回代到式(3),可以就得到悬挂负载的空中机器人的动力学模型:

$\left\{ {\begin{array}{*{20}{l}} {\begin{array}{*{20}{c}} {{{\ddot x}_Q} = \dfrac{{{m_Q} + {m_L}{{\cos }^2}\alpha }}{{({m_Q} + m){m_Q}}}{F_X} + \dfrac{{{m_L}\sin \alpha \cos \alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z} + } \\ {{\rm{ }}\dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{{\dot \alpha }^2}\sin \alpha {\rm{ }}} \end{array}} \\ {{{\ddot z}_Q} = \dfrac{{{m_L}\sin \alpha \cos \alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_X} + \dfrac{{{m_Q} + {m_L}{{\sin }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z} - } \\ \quad \quad \quad {\dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{{\dot \alpha }^2}\cos \alpha - g{\rm{ }}} \\ {\ddot \alpha = - \dfrac{{\cos \alpha }}{{{m_L}L}}{F_X} - \dfrac{{\sin \alpha }}{{{m_L}L}}{F_Z}{\rm{ }}} \end{array}} \right.$ (5)
2 控制器设计

滑模变结构控制[12-15]因为滑动模态对于参数摄动和外界扰动等不确定因素具有不敏感性,并且滑动模态的动态品质可以预先设计,成为一种有效的鲁棒控制方法,已经在很多领域得到广泛应用。近年来,滑模变结构控制大量的应用在欠驱动系统上,而悬挂负载空中机器人是一个典型的欠驱动系统,所以本文采用滑模变结构的方法来设计空中机器人的位置控制器及抗摆控制器,并在此基础上采用了改进过的边界厚度可变的边界层法[16],有效地降低了滑模控制器固有的抖震现象。

首先对模型可以进行简化,由于摆角 $\alpha $ 较小,近似为0,所以:

$\left\{ {\begin{array}{*{20}{l}} {\dfrac{{{m_L}\sin \alpha \cos \alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z} \ll \dfrac{{{m_Q} + {m_L}{{\cos }^2}\alpha }}{{({m_Q} + m){m_Q}}}{F_X}} \\ {\dfrac{{{m_L}\sin \alpha \cos \alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_X} \ll \dfrac{{{m_Q} + {m_L}{{\sin }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z}} \\ {\dfrac{{\sin \alpha }}{{{m_L}L}}{F_Z} \ll \dfrac{{\cos \alpha }}{{{m_L}L}}{F_X}} \end{array}} \right.$

所以式(5)可简化为:

$\left\{ \begin{array}{l} {{\ddot x}_Q} = \dfrac{{{m_Q} + {m_L}{{\cos }^2}\alpha }}{{({m_Q} + m){m_Q}}}{F_X} + \dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{{\dot \alpha }^2}\sin \alpha \\ {{\ddot z}_Q} = \dfrac{{{m_Q} + {m_L}{{\sin }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z} - \dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{{\dot \alpha }^2}\cos \alpha - g \\ \ddot \alpha = - \dfrac{{\cos \alpha }}{{{m_L}L}}{F_X} \end{array} \right.$

该模型自动解耦成2部分,一部分是只与水平方向分力 ${F_X}$ 有关的摆动模型部分;一部分为只与竖直方向分力 ${F_Z}$ 有关的高度模型部分。

2.1 高度控制器设计

悬挂负载的空中机器人的高度模型为

${\ddot z_Q} = \frac{{{m_Q} + {m_L}{{\sin }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_Z} - \frac{{{m_L}L}}{{{m_Q} + {m_L}}}{\dot \alpha ^2}\cos \alpha - g$

模型可写成如下形式:

$\left\{ \begin{array}{l} {x_2} = {{\dot x}_1} \\ {{\dot x}_2} = {f_1}({{x}}) + {b_1}({{x}}){F_Z} \\ \end{array} \right.$

式中: ${{x}} = {[{z_Q},{\dot z_Q},{x_Q},{\dot x_Q},\alpha ,\dot \alpha ]^{\rm{T}}}$ ${x_1} = {z_Q}$ ${x_2} = {\dot z_Q}$ ${f_1}({{x}}) = $ $ - \dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{\dot \alpha ^2}\cos \alpha - g$ ${b_1}({{x}}) = \dfrac{{{m_Q} + {m_L}{{\sin }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}$

由上述模型可以看出,该模型是单自由度和单控制输入的非欠驱动系统,只需要设计一级滑模面即可。所以构造如下的滑模面:

${s_1} = {c_1}{e_z} + {\dot e_z}$

式中: ${c_1}$ 为正的常数,适当的选择c1的值可以得到期望的响应;误差 ${e_z} = {z_Q} - {z_{{Q_{_d}}}}$ ,其中 ${z_{Q_{_d}}}$ 为期望高度位置,是给定的常数,所以 ${\dot e_z} = {\dot z_Q} = {x_2}$

${s_1}$ 求导可得:

${\dot s_1} = {c_1}{\dot x_1} + {\dot x_2} = {c_1}{x_2} + {f_1}({{x}}) + {b_1}({{x}}){F_Z}$

定义如下的李雅普诺夫函数:

${V_1} = \frac{1}{2}{s_1}^2$ (6)

对式(4)求导可得:

${\dot V_1} = {s_1}({c_1}{x_2} + {f_1}({{x}}) + {b_1}({{x}}){F_Z})$

采用指数趋近率[17-18]

$ - {\varepsilon _1}{\rm{sgn}} ({s_1}) - {K_1}{s_1} = {c_1}{x_2} + {f_1}({{x}}) + {b_1}({{x}}){F_Z}$

于是可以得到高度控制器的控制率:

${F_Z} = \frac{{ - {c_1}{x_2} - {f_1}({{x}}) - {\varepsilon _1}{\rm{sgn}} ({s_1}) - {K_1}{s_1}}}{{{b_1}({{x}})}}$ (7)

此时,构造的李雅普诺方程的导数为

${\dot V_1} = - {\varepsilon _1}\left| {{s_1}} \right| - {K_1}{s_1}^2 \leqslant 0$

所以高度跟踪误差是渐近稳定的。

2.2 抗摆控制器设计

悬挂负载空中机器人的摆动模型为

$\left\{ {\begin{array}{*{20}{l}} {{{\ddot x}_Q} = \dfrac{{{m_Q} + {m_L}{{\cos }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}{F_X} + \dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{{\dot \alpha }^2}\sin \alpha } \\ {\ddot \alpha = - \dfrac{{\cos \alpha }}{{{m_L}L}}{F_X}} \end{array}} \right.$ (8)

式(8)可以改写成如下形式:

$\left\{ \begin{array}{l} {x_4} = {{\dot x}_3} \\ {{\dot x}_4} = {f_2}({{x}}) + {b_2}({{x}}){F_X} \\ {x_6} = {{\dot x}_5} \\ {{\dot x}_6} = {f_3}({{x}}) + {b_3}({{x}}){F_X} \\ \end{array} \right.$

式中: ${x_3} = {x_Q}$ ${x_4} = {\dot x_Q}$ ${f_2}({{x}}) = \dfrac{{{m_L}L}}{{{m_Q} + {m_L}}}{\dot \alpha ^2}\sin \alpha $ ${b_2}({{x}}) =$ $ \dfrac{{{m_Q} + {m_L}{{\cos }^2}\alpha }}{{({m_Q} + {m_L}){m_Q}}}$ ${x_5} = \alpha $ ${x_6} = \dot \alpha $ ${f_3}({{x}}) = 0$ ${b_3}({{x}}) = - \dfrac{{\cos \alpha }}{{{m_L}L}}$

由式(8)可以看出,摆动模型部分是一个具有2个自由度一个控制输入的欠驱动系统,所以采用分层滑模控制的方法进行控制器的设计。首先将系统模型化成以下2个子系统:

$A:\left\{ {\begin{array}{*{20}{l}} {{x_2} = {{\dot x}_1}} \\ {{{\dot x}_2} = {f_1}({{x}}) + {b_1}({{x}}){F_X}} \end{array}} \right.$
$B:\left\{ {\begin{array}{*{20}{l}} {{x_4} = {{\dot x}_3}} \\ {{{\dot x}_4} = {f_2}({{x}}) + {b_2}({{x}}){F_X}} \end{array}} \right.$

然后构造第一级滑模面:

${s_2} = {c_2}{e_x} + {\dot e_x}$
${s_3} = {c_3}{e_\alpha } + {\dot e_\alpha }$

式中: ${c_2}$ ${c_3}$ 为大于零的常数; ${e_x} = {x_Q} - {x_{{Q_{_d}}}}$ ${e_\alpha } = \alpha -$ $ {\alpha _d}$ ${x_{{Q_{_d}}}}$ 为期望位置,是给定的常数; ${\alpha _d}$ 为期望的摆角,即 ${\alpha _d} = 0$ ;所以 ${\dot e_x} = {\dot x_Q} = {x_2}$ ${\dot e_\alpha } = \dot \alpha = {x_4}$

根据等效控制理论[16],可以得到每个子系统的等效控制率:

${u_{{\rm{eq}}_{\rm{1}}}} = - \frac{{{c_1}{x_2} + {f_1}({{x}})}}{{{b_1}({{x}})}}$
${u_{{\rm{eq}}_2}} = - \frac{{{c_2}{x_4} + {f_2}({{x}})}}{{{b_2}({{x}})}}$

由于摆动模型是一个欠驱动系统,控制量的数量少于状态量的数量,总的控制率必须包含每个子系统的控制量,所以定义总的控制量为

${F_X} = {u_{{\rm{e}}{{\rm{q}}_{\rm{1}}}}} + {u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{{\rm{SW}}}}$

式中 ${u_{{\rm{SW}}}}$ 为总的滑模面的切换控制率。

设计第二层滑模面:

$S = {a_1}{s_2} + {a_2}{s_3}$

式中a1a2为常数。定义李雅普诺夫函数:

$V = \frac{1}{2}{S^2}$

$V$ 求导可得:

$\begin{split} \dot V = & S\dot S = S[{a_1}({c_1}{{\dot x}_1} + {{\dot x}_2}) + {a_2}({c_2}{{\dot x}_3} + {{\dot x}_4})] = \\ & {\rm{ }}S[{a_1}({c_1}{x_2} + {f_1} + {b_1}({u_{{\rm{e}}{{\rm{q}}_{\rm{1}}}}} + {u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{{\rm{SW}}}})) + \\ & {\rm{ }}{a_2}({c_2}{x_4} + {f_2} + {b_2}({u_{{\rm{e}}{{\rm{q}}_{\rm{1}}}}} + {u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{{\rm{SW}}}}))] = \\ & {\rm{ }}S[{a_1}{b_1}({u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{{\rm{SW}}}}) + {a_2}{b_2}({u_{{\rm{e}}{{\rm{q}}_{\rm{1}}}}} + {u_{{\rm{SW}}}})] \end{split} $

同样,采用指数趋近率[17-18]

$ - {\varepsilon _2}{\rm{sgn}} (S) - {K_2}S = {a_1}{b_1}({u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{SW}}) + {a_2}{b_2}({u_{{\rm{e}}{{\rm{q}}_1}}} + {u_{{\rm{SW}}}})$ (9)

式中:ε2K2均为正数。由式(9)可以求出 ${u_{{\rm{SW}}}}$

$\begin{array}{l} {u_{{\rm{SW}}}} = {({a_1}{b_1} + {a_2}{b_2})^{ - 1}}[ - {a_2}{b_2}{u_{{\rm{e}}{{\rm{q}}_1}}} - {a_1}{b_1}{u_{{\rm{e}}{{\rm{q}}_2}}} - \\ \quad {\rm{ }}{\varepsilon _2}{\rm{sgn}} (S) - {K_2}S] \end{array} $

于是可以得到总的控制率为

$\begin{split} & \quad \quad \quad \quad \quad {F_X} = {u_{{\rm{e}}{{\rm{q}}_{\rm{1}}}}} + {u_{{\rm{e}}{{\rm{q}}_2}}} + {u_{SW}} = \\ & {u_{{\rm{e}}{{\rm{q}}_1}}} + {u_{{\rm{e}}{{\rm{q}}_2}}} + \dfrac{{ - {a_2}{b_2}{u_{{\rm{e}}{{\rm{q}}_1}}} - {a_1}{b_1}{u_{{\rm{e}}{{\rm{q}}_2}}} - {\varepsilon _2}{\rm{sgn}} (S) - {K_2}S}}{{{a_1}{b_1} + {a_2}{b_2}}} = \\ & \dfrac{{{a_1}{b_1}}}{{{a_1}{b_1} + {a_2}{b_2}}}{u_{{\rm{e}}{{\rm{q}}_1}}} + \dfrac{{{a_2}{b_2}}}{{{a_1}{b_1} + {a_2}{b_2}}}{u_{{\rm{e}}{{\rm{q}}_2}}} + \dfrac{{ - {\varepsilon _2}{\rm{sgn}} (S) - {K_2}S}}{{{a_1}{b_1} + {a_2}{b_2}}} \end{split} $ (10)

此时李雅普诺夫函数的导数为

$\dot V = S( - {\varepsilon _2}{\rm{sgn}} (S) - {K_2}S) = - {\varepsilon _2}\left| S \right| - {K_2}{S^2} \leqslant 0$ (11)

由式(11)可知,系统总滑模面满足李雅普诺夫意义下的稳定,是渐近稳定的。对于2个子滑模面,可以通过式(10)所设计的总控制输入使其能够渐近稳定,一旦任意一个状态脱离滑模面,总的切换控制 ${u_{{\rm{SW}}}}$ 都会将其拉回到所属的滑模面。

2.3 边界层设计

由于滑模控制器自身存在抖震现象,为了减少这种现象,本文采用边界层法,用饱和函数 ${\rm{sat}}(S)$ 来代替符号函数 ${\rm{sgn}} (S)$

${\rm{sat}}(S) = \left\{ {\begin{array}{*{20}{c}} {1{\rm{ , }}S > \mathit{\Delta} } \\ {kS{\rm{ , }}\left| S \right| \leqslant \mathit{\Delta} } \\ { - 1{\rm{ , }}S < \mathit{\Delta} } \end{array}} \right.,k = 1/\mathit{\Delta} $

式中 $ {\mathit{\Delta} } $ 为边界层厚度。 ${ \mathit{\Delta} } $ 的大小会直接影响系统的连续性、稳定性以及控制精度。 $ {\mathit{\Delta} } $ 越小,控制精度越高,抖震越明显; ${ \mathit{\Delta} } $ 越大,控制精度越低,抖震越小。所以可以采用边界层厚度可变的方法,让系统在误差 $e$ 较大时边界层变厚,误差较小时边界层变薄,从而兼顾控制精度与降低抖震,满足系统需求。可变边界层厚度的表达式为

$\mathit{\Delta} {\rm{ = }}\left\{ {\begin{array}{*{20}{l}} {{\mathit{\Delta} _1},{\rm{ }}\left| e \right| < {e_{\min }}} \\ {{\mathit{\Delta} _2},{\rm{ }}\left| e \right| > {e_{\max }}} \\ {\dfrac{{({e_{\max }} - \left| e \right|){\mathit{\Delta} _1} + (\left| e \right| - {e_{\min }}){\mathit{\Delta} _2}}}{{{e_{\max }} - {e_{\min }}}},\;\;\;{\text{其他}}} \end{array}} \right.$

式中: $0 < {\mathit{\Delta} _1} < {\mathit{\Delta} _2}$ ,分别为最小和最大边界层厚度,当系统误差的绝对值小于设定的最小误差 ${e_{\min }}$ 时,边界层厚度为 ${\mathit{\Delta} _1}$ ;系统误差的大于设定的最大误差 ${e_{\max }}$ 时,边界层厚度为 ${\mathit{\Delta} _2}$ ;在两者之间则线性变化。

3 仿真结果与分析

在实际使用中,悬挂负载空中机器人的主要任务是带着负载飞行到指定的位置,并要求整个飞行过程中负载的摆角要尽可能小,到达指定位置后负载应无残余震荡。所以设计以下实验:让空中机器人从惯性坐标系的原点 $(0,0)$ ,飞行到指定位置 $(2,3)$ 。本文采用Adams作为物理仿真软件,与MATLAB进行联合仿真,悬挂负载的空中机器人的参数分别为: ${m_Q} = 10\;{\rm{ kg}}$ ${m_L} = 1\;{\rm{ kg}}$ $L = 1\;{\rm{ m}}$ ${{g = 9}}{\rm{.81\;m/}}{{\rm{s}}^2}$

采用控制律式(7)和(10)进行控制,控制器的参数分别为:c1=5、c2=20、c3=13、a1=12、a2=10、K1=3、K2=0.8、ε1=0.5、ε2=0.8、 ${e_{{h_{\min }}}}$ =0.8、 ${e_{{h_{\max }}}}$ =5.2、 ${e_{{b_{\min }}}}$ =0.7、 ${e_{{b_{\max }}}}$ =3.8。其中 ${e_{{h_{\min }}}}$ ${e_{{h_{\max }}}}$ ${e_{{b_{\min }}}}$ ${e_{{b_{\max }}}}$ 分别代表高度控制器和抗摆控制器设计的可变边界层的系统误差的最小最大值。参数的设计采用试凑法,若 ${e_{\min }}$ 过小则控制精度过低,抖震大幅减小; ${e_{\min }}$ 过大则抖震过大,控制精度很好;若 ${e_{\max }}$ 过大则控制精度很好,但抖震过大; ${e_{\max }}$ 过小则控制精度过低,抖震大幅减小。

为了验证本文设计的控制器的有效性,下面使用基于积分反步(integral backstepping, IB)法设计的控制器与本文设计的控制器的控制效果进行对比。

为了比较算法的抗扰能力,在仿真实验中将反馈给控制器的信号加入了幅值为0.01的高斯白噪声,仿真结果如图2~8所示。

Download:
图 2 IB控制与SM控制下的水平位置响应
Download:
图 3 IB控制与SM控制下的水平速度响应
Download:
图 4 IB控制与SM控制下的高度位置响应
Download:
图 5 IB控制与SM控制下的高度速度响应
Download:
图 6 IB控制与SM控制下的摆角响应
Download:
图 7 SM控制器水平方向的控制输入
Download:
图 8 SM控制器竖直方向的控制输入

图2~6为在本文设计的控制器和IB控制器的作用下空中机器人的响应曲线。由仿真曲线可以看出:本文设计的控制器在水平位置和高度位置响应上都要比IB控制器要快;并且在抗摆的效果上也比IB控制器好,在整个飞行过程,响应曲线都很平稳,摆角始终控制在±5°以内,并且到达指定位置之后没有残余震荡;空中机器人和负载同时达到稳定的时间比IB控制的时间少。图78为本文设计的控制器输出的控制信号曲线,可以看出设计的控制器输出变化平稳,输出的幅值也在合理范围之内,并且在加入了可变厚度的边界层之后,有效地降低了抖震现象。

通过以上分析可以看出,本文设计的控制器具有较好的控制效果,能够很好地完成控制任务。

4 结论

本文设计的控制器,很好地解决了悬挂负载空中机器人飞行运动时产生的负载摆动和残余振荡问题。根据仿真结果与分析可以得出如下结论:

1)采用分层滑模控制方法能够解决驱动量少于自由度的控制问题,值得其他欠驱动系统推广使用;

2)本文针对悬挂负载空中机器人的二维模型进行了控制器设计,仿真结果说明了控制算法的有效性,可以考虑将本方法进一步运用到三维模型中;

3)本文设计的边界层厚度可变的边界层法能够有效降低滑模控制存在的抖震现象,值得深入研究;

4)仿真结果表明,本文所设计的控制器能够将负载摆角始终控制在±5°以内,控制效果较好,具有实际应用价值,可应用于货物运输等领域。

参考文献
[1] TOGNON M, FRANCHI A. Nonlinear observer-based tracking control of link stress and elevation for a tethered aerial robot using inertial-only measurements[C]//Proceedings of 2015 IEEE International Conference on Robotics and Automation. Seattle, USA, 2015: 3994–3999. (0)
[2] 王冠林, 朱纪洪. 空中机器人系统及关键技术[J]. 飞航导弹, 2009(6): 52-59. (0)
[3] MENOUAR H, GUVENC I, AKKAYA K, et al. UAV-enabled intelligent transportation systems for the smart city: applications and challenges[J]. IEEE communications magazine, 2017, 55(3): 22-28. DOI:10.1109/MCOM.2017.1600238CM (0)
[4] MO Rigen, GENG Qingbo, LU Xin. Study on control method of a rotor UAV transportation with slung-load[C]//Proceedings of the 2016 35th Chinese Control Conference. Chengdu, China, 2016: 3274–3279. (0)
[5] 刘泽锋, 唐宇, 骆少明, 等. 多旋翼植保无人机变量喷洒系统设计[J]. 农机化研究, 2018, 40(12): 47-54. DOI:10.3969/j.issn.1003-188X.2018.12.009 (0)
[6] KLAUSEN K, FOSSEN T I, JOHANSEN T A. Nonlinear control of a multirotor UAV with suspended load[C]//Proceedings of 2015 International Conference on Unmanned Aircraft Systems. Denver, CO, USA, 2015: 176–184. (0)
[7] SREENATH K, MICHAEL N, KUMAR V. Trajectory generation and control of a quadrotor with a cable-suspended load - A differentially-flat hybrid system[C]//Proceedings of 2013 IEEE International Conference on Robotics and Automation. Karlsruhe, Germany, 2013: 4888–4895. (0)
[8] ALOTHMAN Y, GU Dongbing. Quadrotor transporting cable-suspended load using iterative Linear Quadratic regulator (iLQR) optimal control[C]//Proceedings of the 2016 8th Computer Science and Electronic Engineering. Colchester, UK, 2017: 168–173. (0)
[9] FAUST A, PALUNKO I, CRUZ P, et al. Learning swing-free trajectories for UAVs with a suspended load[C]//Proceedings of 2013 IEEE International Conference on Robotics and Automation. Karlsruhe, Germany, 2013: 4902–4909. (0)
[10] PALUNKO I, FIERRO R, CRUZ P. Trajectory generation for swing-free maneuvers of a quadrotor with suspended payload: a dynamic programming approach[C]//Proceedings of 2012 IEEE International Conference on Robotics and Automation. Saint Paul, MN, USA, 2012: 2691–2697. (0)
[11] 高皜, 曹琳, 曹茂永. 倒立摆系统基于能量控制的起摆控制策略研究[J]. 山东科技大学学报(自然科学版), 2016, 35(6): 95-100. DOI:10.3969/j.issn.1672-3767.2016.06.015 (0)
[12] XIA Yuanqing, FUMengyin, DENG Zhihong, et al. Recent developments in sliding mode control and active disturbance rejection control[J]. 控制理论与应用, 2013, 30(2): 137-147. DOI:10.7641/CTA.2013.20498 (0)
[13] LEVANT A. Higher-order sliding modes, differentiation and output-feedback control[J]. International journal of control, 2003, 76(9/10): 924-941. (0)
[14] YANG Liang, YANG Jianying. Nonsingular fast terminal sliding-mode control for nonlinear dynamical systems[J]. International journal of robust and nonlinear control, 2011, 21(16): 1865-1879. DOI:10.1002/rnc.1666 (0)
[15] 彭继慎, 刘盼, 宋立业. 倒立摆的神经网络自适应滑模控制[J]. 控制工程, 2018, 25(11): 1976-1981. (0)
[16] 赵文杰, 刘吉臻. 一种改进的边界层滑模控制方法[J]. 系统仿真学报, 2005, 17(1): 156-158, 180. DOI:10.3969/j.issn.1004-731X.2005.01.040 (0)
[17] 张翔, 王德石, 李景熹. 滑模控制器趋近律仿真研究[J]. 微处理机, 2008, 29(1): 80-81. DOI:10.3969/j.issn.1002-2279.2008.01.027 (0)
[18] 王健, 蔡宇萌. 主动悬架的滑模控制指数趋近率参数优化[J]. 重庆理工大学学报(自然科学版), 2017, 31(9): 15-21. DOI:10.3969/j.issn.1674-8425(z).2017.09.003 (0)