开源飞控ACFLY:ADRC安排过渡过程

2023-05-16

 

ACFLY原创文章,转载请说明出处https://blog.csdn.net/weixin_40767422/article/details/87651614

ADRC相关论文资料请加q群:180319060下载

上一篇我们讲了离散最速控制综合函数fsun,链接在此

这篇我们来讲讲ADRC的安排过渡过程,如下图:

 

       我们知道PID的误差求取直接是e=v-y,而控制目标 v 是有可能产生突变的,而对象输出 y 一定是连续的,用连续的缓变的变量追踪可能跳变的变量本身就是不合理的。韩老师针对PID等的这个缺陷提出的解决办法就是安排过渡过程,顾名思义就是安排个路径过去,让输入量缓慢的增大,使其与输出量的差值很小,即可使系统无超调的达到稳态,解决了 PID快速性与超调之间的矛盾。

       比如现在位置是10,目标是80,如果直接求取误差e就等于90了,安排过渡过程就是可以先到20,此时e1=10;再到50,e2=30;然后到80,e3=30。这只是举个例子(路径随意取的),实际安排过渡路径的方法ADRC里用的是离散跟踪微分器(Tracking Differetiator) ,即二阶纯积分对象的离散最速控制,关于TD的推导上篇博客已经说了。如下图:

                                                                      注:图中的fst函数理解为fsun函数

       这个离散系统可以实现x1跟踪输入信号v(t),x2跟踪v(t)的微分,可能这里大家会有点疑问,上图中的fsun函数是这样的:

                                       fsun( x1( t)-v( t) ,x2( t) ,r ,h)                         (1)式

而在上一篇博客所讲的论文里最后推导得到的fsun函数是这样的:

                                       fsun( x1( t) ,x2( t) ,r ,h)                                 (2)式

     可见第一个参数不一样, fsun函数推导的是从当前状态到目标状态的最速路径,论文里把目标状态设为0,目的是为了方便计算,得到的是(2)式,你可能会问如果目标状态不为0就不能用fsun函数了吗?答案是可以的,只需做一下变换就行,把目标状态设为0点,当前状态就变为了x1( t)-v( t),就得到了(1)式。或者可以这样理解,把x1( t)-v( t)看作是整体,当x1( t)-v( t)=0的时候,x1( t)=v( t),即从当前位置到达了目标位置,安排过渡过程我们用的就是(1)式。

        比如当前状态x1( t) 是10,目标状态v( t)是20,为了适应(2)式我们把目标状态设为0点即原点,那么当前位置就变为x1( t)-v( t) = -10,点还是那个点,只是坐标变换一下。TD的作用除了安排过渡过程还给出此过程的微分信号即X2。

        ADRC中非线性组合部份也可以用离散跟踪微分器来给出最佳控制量u,此时的fsun应该是fsun( e1( t) ,e2( t) ,r ,h) ,不用进行变换,因为我们就是让误差e1最速无超调衰减为0。

Conclusion:

       离散跟踪微分器可以用来安排路径,也可以用来控制,它可以输出状态变量x1,x2即过渡路径,也可以输出最优控制量u。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

开源飞控ACFLY:ADRC安排过渡过程 的相关文章

  • openstack中ipv6三种获取IP地址方式

    前言 openstack共有三种用于ipv6的寻址的模式 xff0c 分别是dhcpv6 stateful dhcp stateless以及slaac 1 xff09 slaac模式 Address discovered from an O
  • 华为S5720-52X-PWR-LI/S5720-52X-LI交互机堆叠和VLAN配置

    主要配置流程为 xff1a 交换机设备上电通过console线或网线连接到交换机后 xff0c 进行参数和堆叠配置断电 xff0c 连接好光纤重新上电 1 首次登录交换机 使用Putty软件 xff0c 通过串口 xff0c 连接到交换机
  • 配置Intel REALSENSE相机的一些坑

    最近入手了一个intel REALSENSE相机 xff0c 看别人都是直接使用配套的USB3的线连接电脑就安装好了 xff0c 但是我却要倒霉的配置了一个下午 xff0c 终于在今天晚上配置好了 xff0c 记录一下这个下午踩过的坑 xf
  • 高斯滤波知识点总结——KF、EKF、UKF以及IF、EIF等

    高斯滤波知识点总结 KF EKF UKF以及IF EIF等 1 引言 本文是我在学习 Probabilistic Robotics 这本书中第三章 高斯滤波过程中的一些知识总结 本文主要是整理高斯滤波算法的知识点和一些讨论 xff0c 具体
  • Git 学习小结

    Git 安装和使用教程 git 提交 全部文件 git add git add xx命令可以将xx文件添加到暂存区 xff0c 如果有很多改动可以通过 git add A 来一次添加所有改变的文件 注意 A 选项后面还有一个句点 git a
  • ROS 串口

    64 TOC ROS学习笔记 ROS中使用串口进行通讯测试 参考两篇文献 xff0c 感谢原作者 xff1a https blog csdn net qq 44623066 article details 125626937 https b
  • sklearn库之sklearn.cluster.KMeans的学习

    这篇呢是接着上一篇kmeans的学习 xff0c 这篇主要是介绍调用机器学习的库来使用集成的kmeans 哈哈会调用就行 xff0c 主要学习呢就是看官方文档 xff0c 学习这个包装类的参数 xff0c 返回值以及它方法 这里面有好多ex
  • docker容器开启ssh端口

    docker容器开启ssh端口 启动一个docker容器 加端口 port 22 docker run dit p port 22 p port1 port restart span class token operator 61 span
  • PID中各个参数意义

    1 比例部分 xff1a PID是比例 积分 微分的简称 xff0c PID控制的难点不是编程 xff0c 而是控制器的参数整定 增大比例系数使系统反应灵敏 xff0c 调节速度加快 xff0c 并且可以减小稳态误差 但是比例系数过大会使超
  • 关于多线程,你必须知道的那些玩意儿

    进程与线程 概念 进程和线程作为必知必会的知识 xff0c 想来读者们也都是耳熟能详了 xff0c 但真的是这样嘛 xff1f 今天我们就来重新捋一捋 xff0c 看看有没有什么知识点欠缺的 先来一张我随手截的活动监视器的图 xff0c 分
  • 多传感器融合-搭建ROS工程

    多传感器融合搭建记录1 Tag3 0 一 安装Terminator二 vscode创建功能包三 ROS相关基础1 添加源文件2 添加launch文件3 ROS话题通讯 四 添加代码1 发布者publishera 点云发布类CloudPubl
  • Win11配置Matconvnet错误使用 vl_compilenn>nvcc_compile和datacu.hpp undefined的问题

    初始配置环境 xff1a 电脑 xff1a 联想R9000K Win11 显卡 xff1a 3080 Matlab 2021b Visual Studio 2017 Professional VS安装位置 xff1a D VisualStu
  • openstack/ovn环境,虚拟机连接外网设置

    当使用OVN来做为neutron的后端 xff0c 来实现SDN方案时 xff0c 我们也会需要虚拟机连接外网 xff0c 本文记录操作方法 xff1a 环境 xff1a pike版本 xff0c 创建好net1 xff0c 子网subne
  • 软件环境:安装报Error opening file for writing

    环境 xff1a 办公电脑 xff0c win10 xff0c 64位 xff1b 现象 xff1a 昨天给电脑升级工作相关软件 xff0c 安装报错 xff1b 解决 xff1a 先是更改目录权限等等诸多方案 xff0c 都无效 xff0
  • 卡尔曼滤波原理讲解以及基于陀螺仪和加速度计的角度估计:自己记录一下

    基于陀螺仪和加速度计的角度估计
  • oracle 新建用户

    1 打开命令行窗口 xff0c 输入 slqplus 回车 2 create user 用户名 identified by 密码 xff1b 回车 3 授权权限 xff1a grant connect resource dba to 用户名
  • 解决MySQL 8.0 SQLYog工具连接报错1251

    报错提示 xff0c 如图 xff1a 错误号码1251 Client does not support authentication protocol requested by server consider upgrading MySQ
  • vc中m_开头的意义

    一种变量命名方法 匈牙利命名法 xff0c m即member xff0c 即定义的变量为成员变量 这是一种命名规范
  • amixer

    1 查看有多少个接口可以操作 amixer controls amixer contents 2 get系列 amixer sget 39 Playback Path 39 0 3 set系列 amixer cset numid 61 2
  • 目标跟踪算法综述

    前言 目标跟踪是计算机视觉领域研究的一个热点问题 xff0c 其利用视频或图像序列的上下文信息 xff0c 对目标的外观和运动信息进行建模 xff0c 从而对目标运动状态进行预测并标定目标的位置 目标跟踪算法从构建模型的角度可以分为生成式

随机推荐