ADRC算法Auto Disturbances Rejection control

ADRC算法Auto Disturbances Rejection control 自抗扰控制 其中,e=v(t)-y(t)是控制系统参考输入量v(t)与被控对象输出量y(t)之间的差值,kp比例系数,ki积分系数,,kd微分系数优点:1.仅由误差来决定控制2.运算量低,可以以极高的速率运行缺点:1.误差的取法e=v-y,使得初始时刻误差较大,容易造成控制系统快速性和超调的矛盾,比如输入为阶跃信号的时候,会导致误差函数也是一个阶跃信号,对…

大家好,又见面了,我是你们的朋友全栈君。

 

自抗扰控制

ADRC算法Auto Disturbances Rejection control

 

ADRC算法Auto Disturbances Rejection control

其中,e=v(t)-y(t)是控制系统参考输入量v(t)与被控对象输出量y(t)之间的差值,kp比例系数,ki积分系数,,kd微分系数

优点:

1.仅由误差来决定控制

2.运算量低,可以以极高的速率运行

缺点:

1.误差的取法e=v-y,使得初始时刻误差较大,容易造成控制系统快速性和超调的矛盾,比如输入为阶跃信号的时候,会导致误差函数也是一个阶跃信号,对控制系统的稳定性有影响。

2.实际中,参考输入量v(t)一般不可导,甚至不连续,并且y(t)中又常常存在噪声干扰,因而e(t)=v(t)-y(t)通常是不可导的,其微分信号难以利用,因而限制了PID控制器的应用。

3.经典pid的比列,误差,积分项是线性组合输出最后的控制量的,线性组合并不是一个最优的组合方案,常会引起系统快速性和超调量之间的矛盾

4.严格上说,积分项虽然消除了静态固有误差,但是会大大影响控制的稳定性能,积分反馈有许多副作用

 

针对上面的4个缺点,ADRC提出了改进方法

1.为了防止跳变信号,对信号作如下处理,就是用下面的微分跟踪器

 

u=−rsign(x1−v+x2|x2|2r)

如下图所示,使用这种变换实际上是模仿最短时间到达一个点的概念,在到达平衡处前恒定加速运动,过平衡位置后恒定减速运动,使目标点在规定的加速度下以最短的时间到达目标点,并且到达速度为0,其中v是当前位置

ADRC算法Auto Disturbances Rejection control

2. 微分器的改进

借助于高等数学有

ADRC算法Auto Disturbances Rejection control

或者由拉氏变换

 

ADRC算法Auto Disturbances Rejection control

ADRC算法Auto Disturbances Rejection control

即:采样周期越短,噪声被放大越大,因此采用如下改进:

ADRC算法Auto Disturbances Rejection control

问题:这里怎么证明噪声不被放大呢?

ADRC算法Auto Disturbances Rejection control

3. 非线性加权平均

è¿éåå¾çæè¿°

其中v0为输入信号,目的是实现v1跟踪v0, v2跟踪到v1的导数,即间接实现v2跟踪到输入v0的导数,举例如下

有一个系统,其中输入信号为v0(t),

ADRC算法Auto Disturbances Rejection control

ADRC算法Auto Disturbances Rejection control

ADRC算法Auto Disturbances Rejection control

ADRC算法Auto Disturbances Rejection control 

ADRC算法Auto Disturbances Rejection control 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/145868.html原文链接:https://javaforall.net

(0)
上一篇 2022年5月16日 下午12:40
下一篇 2022年5月16日 下午12:40


相关推荐

  • c++const用法_const头文件

    c++const用法_const头文件C++——const

    2022年4月21日
    58
  • [教學] 申請 Manus 免費帳號,不用等待立即開通

    [教學] 申請 Manus 免費帳號,不用等待立即開通

    2026年3月15日
    4
  • 利用git上传本地文件、文件夹到Github

    利用git上传本地文件、文件夹到Github利用git上传文件至github是特别常用的,总结以下内容供参考使用。第一步:下载git工具,[这里是链接](https://git-scm.com/downloads),选择适合自己的版本进行安装。第二步:安装完成后,找到Gitbash,双击打开。第三步:输入自己的用户名和邮箱(为注册GITHUB账号时的用户名和邮箱)$gitconfig–globaluser.name”co

    2022年5月13日
    40
  • TPS和QPS的区别和理解

    TPS和QPS的区别和理解TPS transactionp 是单位时间内处理事务的数量 QPS queryperseco 是单位时间内请求的数量 TPS 代表一个事务的处理 可以包含了多次请求 很多公司用 QPS 作为接口吞吐量的指标 也有很多公司使用 TPS 作为标准 两者都能表现出系统的吞吐量的大小 TPS 的一次事务代表一次用户操作到服务器返回结果 QPS 的一次请求代表一个接口的一次请求到服务器返回结

    2026年3月26日
    3
  • Pycharm安装PyQt5(详细教程)

    Pycharm安装PyQt5(详细教程)Python 使用 Pycharm 安装 PyQt5 详细教程 QtDesigner 用于像 VC 的 MFC 一样拖放 设计控件 PyUIC 用于将 QtDesigner 生成的 ui 文件转换成 py 文件 QtDesigner 和 PyUIC 都包含在 PyQt5 中 所以我们只需要安装 PyQt5 塻块然后再指定 QtDesigner 和 PyUIC 即可为了避免篇幅过长 本文只讲安装配置 使用可查看 PyCharm

    2026年3月19日
    2
  • 矩阵初等变换与线性方程组求解

    矩阵初等变换与线性方程组求解知识点 初等变换 阶梯矩阵 最简矩阵 初等矩阵 矩阵求逆之初等变换法 矩阵的秩 线性方程组的解 一个 无穷个 齐次线性方程组的零解和非零解 线性方程组的求解方法 齐次 非齐次 笔记

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号