NLADRC使用指南
Author:辰尘
Date: 7/5/2023
Brief: 由于NLADRC包涵了很多动态系统分析的内容,这里不做具体展开,只是介绍各个参数变化时,会对系统控制产生怎样的影响
我将按照NLADRC的运行流程来逐步讲述各个功能块的使用
TD(跟踪–微分器与过渡过程安排)
以下是根据TD思想建立的离散最速反馈系统
{
f
h
=
f
h
a
n
(
x
1
(
k
)
−
v
(
k
)
,
x
2
(
k
)
,
r
0
,
h
0
)
v
1
(
k
)
=
x
1
(
k
)
+
h
∗
x
2
(
k
)
v
2
(
k
)
=
x
2
(
k
)
+
h
∗
f
h
\begin{cases} fh=fhan(x_{1}(k) - v(k), x_{2}(k), r_{0}, h_{0})\\ v_{1}(k) = x_{1}(k)+h*x_{2}(k)\\ v_{2}(k)=x_{2}(k)+h*fh \end{cases}
⎩
⎨
⎧fh=fhan(x1(k)−v(k),x2(k),r0,h0)v1(k)=x1(k)+h∗x2(k)v2(k)=x2(k)+h∗fh
核心部分是最速综合函数,安排了一个相对合理的过渡过程,一共包含4个参数:
f
h
a
n
(
x
1
,
x
2
,
r
0
,
h
0
)
x
1
为目标控制量
e
.
g
.
角度
θ
x
2
为目标控制量的一阶近似微分
e
.
g
.
角速度
ω
r
0
表示对系统状态量的跟踪速度
fhan( x_{1}, x_{2}, r_{0}, h_{0} )\\ x_{1}为目标控制量\\ e.g.角度\theta\\ x_{2}为目标控制量的一阶近似微分\\ e.g.角速度\omega\\ r_{0}表示对系统状态量的跟踪速度\\
fhan(x1,x2,r0,h0)x1为目标控制量e.g.角度θx2为目标控制量的一阶近似微分e.g.角速度ωr0表示对系统状态量的跟踪速度
r0越大,对系统状态量的跟踪越快,但是 快≠好,r0越大,对噪声的放大效果越明显,且可能出现超调;r0越小,系统的响应越慢,且会出现不可控的极点
一般来说,
r
0
∈
[
0.2
,
20
]
时
\quad r_{0}\in[0.2, 20]时\qquad
r0∈[0.2,20]时比较合适
Tips: r0存在边际递减现象:当r0大于20时,小幅度继续增大r0,对于系统的影响不大,除非以指数级的方式增大r0,但意义不大
h0是fhan内部的迭代步长,类似于系统运行步长h(也称作对象采样周期),可以近似的认为fhan是ADRC系统的一个子系统,同时受两边步长的影响。
- 系统响应速度主要受h和h0两个参数的影响,一般情况下, h 0 ∈ [ 5 h , 15 h ] h_{0}\in[5h,15h] h0∈[5h,15h]是一个比较合理的区间
- 相对来说,h对系统的响应影响更大,但是在确定一个相对可靠的h后,就尽量减少改动,最终的控制效果还是由控制算法决定,TD环节更像是一种滤波,让数据的可用程度变得更高
- r 0 r_{0} r0虽然也会影响系统响应速度,但是主要还是对稳定性上的影响,若想要调整系统响应,改变 h 0 和 h h_{0}和h h0和h是一个更好的选择
对于一个二阶系统而言,
v
1
(
k
)
v_{1}(k)
v1(k)就是对目标控制量的跟踪,而且应用了过渡过程,相较于直接使用
x
1
(
k
)
x_{1}(k)
x1(k)进行系统控制,
v
1
(
k
)
v_{1}(k)
v1(k)通常会取得更好的控制效果