ADRC最速综合函数fhan实现

2023-05-16

ADRC最优综合函数fhan函数测试

fhan函数是ADRC的跟踪微分控制器的核心函数,使得状态变量可以快速跟踪上系统输入。
本例中,设理想输入v=sin(t);用状态变量x1跟踪输入,x2跟踪输入的导数dv,设计matlab程序以及仿真结果如下所示:
fhan函数定义:

function fh=fhan(x1,x2,r0,h0)
d=r0*h0*h0;
a0=h0*x2;
y=x1+a0;
a1=sqrt(d*(d+8*abs(y)));
a2=a0+sign(y)*(a1-d)/2;
sy=(sign(y+d)-sign(y-d))/2;
a=(a0+y-a2)*sy+a2;
sa=(sign(a+d)-sign(a-d))/2;
fh=-r0*(a/d-sign(a))*sa-r0*sign(a);

fhan函数验证fhan_test.m

clc
clear all
close all
%最速综合函数fhan函数测试以及验证结果
h=0.001;
h0=10*h;
r0=20;
num=1;
den=[1 1 1];
[A,B,C,D]=tf2ss(num,den);
tend=10;
t=0:h:tend;
v=sin(t);
dv=cos(t);
x1=zeros(tend/h,1);
x2=zeros(tend/h,1);


for k=1:1:tend/h
    fh=fhan((x1(k)-v(k)),x2(k),r0,h0);
    x1(k+1)=x1(k)+h*x2(k);
    x2(k+1)=x2(k)+h*fh;
end

%%
figure(1)
plot(t,v,'r--',t,x1,'b-','linewidth',2)
xlabel("时间t/s")
ylabel("v,x1")
legend("v","x1")
grid on
figure(2)
plot(t,dv,'r--',t,x2,'b-','linewidth',2)
xlabel("时间t/s")
ylabel("dv,x2")
legend("dv","x2")
grid on
%%
figure(3)
x11=x1';
plot(t,v-x1','r-','linewidth',2)
axis([0,10,-1,1])

仿真结果图
在这里插入图片描述
在这里插入图片描述
误差曲线如图所示:
在这里插入图片描述

结果验证

该函数实现了x1快速无超调地跟踪输入信号v,而x2作为v的近似微分,跟踪过程的微分信号。

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

ADRC最速综合函数fhan实现 的相关文章

  • 我已经多次看到ADRC(自抗干扰控制)

    最开始是看到无名用ADRC 无名似乎17年就开始弄ADRC了 http www docin com p 2101934503 html ACfly和无名他们确实早就认识 https blog csdn net wang2012113132
  • ADRC自抗扰控制自学笔记(包含simulink仿真)(转载)

    他这里让我很好理解了跟踪微分器 非线性PID 准确说是非线性PD xff0c 所以可以看到输入是两根线而不是三根线 xff09 也就是说传统PID是线性的 xff1f 但是不是那些系统是非线性的 xff0c 比如无人机 xff0c 平衡车
  • 自抗扰控制理论(一)ADRC的原理

    摘自 xff1a https zhuanlan zhihu com p 115283894 自抗扰控制理论 xff08 一 xff09 ADRC的原理 Chenglin Li 厦门大学 飞行器设计硕士在读 0 相关参考链接 Chenglin
  • 无名的ADRC的C语言实现

    分为ADRC h和ADRC c 确实看头文件有用 xff0c 有哪些变量都一目了然 和ACfly一样的是比如都有beta这个参数 ADRC c 本程序只供购买者学习使用 xff0c 版权著作权属于无名科创团队 xff0c 无名科创团队将飞控
  • 我的ADRC调参经验总结

    提示 xff1a 本文是在前人基础上搭建的ADRC模型 xff0c 并根据这一模型学习如何对其进行调参时产生的 xff0c 部分结论来自论文 目录 前言一 控制系统简介二 调参步骤1 前后结果效果对比2 调参经验 总结参考链接 前言 ADR
  • ADRC算法Auto Disturbances Rejection control

    自抗扰控制 其中 xff0c e 61 v t y t 是控制系统参考输入量v t 与被控对象输出量y t 之间的差值 xff0c kp比例系数 ki积分系数 xff0c xff0c kd微分系数 优点 xff1a 1 仅由误差来决定控制
  • ADRC从入门到放弃0

    ADRC xff1a 自抗扰控制器 其中 xff0c 在对自抗扰理论的 研究中 xff0c 引入了带宽概念这一个崭新的思路 xff0c 极大的简化了自抗扰技术使用时参数整定 的问题 xff0c 同时时域分析的方法可以发现利用带宽的概念还有利
  • 自抗扰(ADRC)控制原理及控制器设计

    自抗扰控制是在PID控制算法基础上进行改进的新型控制方法 xff0c 它具有不依赖于控制对象模型 不区分系统内外扰的结构特点 常用的自抗扰控制器主要由跟踪微分器 xff08 Tracking Differentiator xff0c TD
  • 无传感器永磁同步电机电机自适应自抗扰ADRC控制策略

    提示 xff1a 无速度传感器永磁同步电机电机自适应自抗扰控制策略 xff0c 在2022年10月12日晚上23 xff1a 00写完的 人生的路真的很难走 xff0c 身边也发生了很多不好的事情 xff0c 关于一些研究成果和simuli
  • 自抗扰控制ADRC之扩张观测器

    目录 前言 1 被控对象 被观测对象 2 非线性观测器 2 1仿真分析 2 2仿真模型 2 3仿真结果 3 线性观测器 3 1仿真模型 3 2仿真结果 4 总结和学习问题 前言 什么叫观测器 xff1f 为什么该类观测称为扩张观测器 xff
  • 【控制理论】用ADRC控制倒立摆

  • 【ADRC】扩张状态观测器(ESO)

    扩张状态观测器是自抗扰控制中非常重要的一个环节 xff0c 在我学习这部分内容后 xff0c 在写本篇文章时 xff0c 大致可以按照三个步骤来做实验 xff0c 推导 xff0c 由这三个步骤来由浅入深地去理解扩张状态观测器 ESO xf
  • 【ADRC】自抗扰控制

    在根据前面四篇文章的自抗扰控制各个功能部分的分解介绍以及对于PID算法原理的分析之后 xff0c 具体可以查看我的主页 之后我们可以画出自抗扰控制的框图 xff0c 并作出自抗扰的仿真了 自抗扰的组成部分 ADRC说得更直白一些 xff0c
  • ADRC/Matlab一步步实现跟踪微分器TD(附完整PLC测试代码链接)

    TD微分器的主要作用 就是安排过渡过程 产生跟踪信号和微分信号 滤除噪声 关于Adrc的理论分析不是本篇博客的重点 主要也是能力所限 相关理论大家可以看韩京清教授的论文 专栏有简单的学习笔记 感兴趣的同学可以看看 链接如下 ADRC自抗扰的
  • ADRC的simulink仿真实现与m代码实现

    本文章以最简单的二阶系统为例 xff0c 介绍其simulink仿真实现和m代码实现 案例中的二阶系统如下所示 经典ADRC的基本结构如下 xff1a 本案例中的simulink仿真整体结构 xff08 为便于理解 xff0c 结构图与上述
  • ADRC控制系统离散形式的稳定性证明

    1 引言 这个问题是最近课题组一个师兄的SCI控制论文的一部分 xff0c 应师兄之邀 xff0c 博主贡献了控制系统稳定性的数学证明 博主目前的研究方向跟控制领域毫无关联 xff0c 只负责其中的系统收敛性证明 师兄的控制系统是一个较为一
  • 自抗扰控制(ADRC)

    1 ADRC控制原理和结构 xff08 1 xff09 最速跟踪微分器 TD xff08 2 xff09 扩张状态观测器 ESO xff08 3 xff09 非线性状态误差反馈 NLSEF 2 ADRC控制仿真 xff08 1 xff09
  • (ADRC)自抗扰控制器学习总结(一)

    ADRC自抗扰控制基本思想要点 xff1a 1 标准型与总扰动 xff0c 扩张状态与扰动整体辨识 xff0c 微分信号生成与安排过渡过程以及扰动的消减与控制量产生 ADRC主要构成 xff1a 1 gt 跟踪微分器 xff08 TD xf
  • 自抗扰控制(ADRC)仿真系统(matlab/simulink)的搭建

    一 现在关于自抗扰控制技术方面的研究已经比较成熟了 xff0c 基本上熟悉结构以后都可以找到例子实现 xff0c 今天以一个简单的例子来介绍自抗扰控制的仿真系统搭建 xff0c 不必畏惧 xff0c 熟悉皆可达 1 首先自抗扰控制分为TD
  • ADRC(自抗扰控制器)技术附Matlab代码框架

    自抗扰控制器 Auto Active Disturbances Rejec ion Controller ADRC 是韩京清学者提出的 xff0c 是一种继PID控制器后的一种新型的实用的控制技术 它不是一种独立的技术 xff0c 可以理解

随机推荐

  • 【视觉SLAM】MonoRec: Semi-Supervised Dense Reconstruction in Dynamic Environments from a Single Moving C

    Citations xff1a F Wimbauer N Yang L von Stumberg et al MonoRec Semi Supervised Dense Reconstruction in Dynamic Environme
  • Win10蓝屏问题:SYSTEM_THREAD_EXCEPTION_NOT_HANDLED

    最近一段时间 xff0c 我一直出现蓝屏的情况 xff0c 以为是 span class token constant CPU span 散热不行导致的重启 xff0c 因为比较频繁所以在此记录解决这个问题 xff0c 还是一贯的风格 xf
  • Android Studio实现文件管理器

    项目目录 一 项目概述二 开发环境三 详细设计1 布局设计2 程序运行时申请权限3 查看文件4 删除文件5 搜索文件6 新建文件 四 运行演示 一 项目概述 本次带来的文件管理器 xff0c 能够对SD卡的目录进行管理 主要功能包括新建文件
  • Failed to install the following Android SDK packages as some licences have not been accepted. bu

    报错信息 Android 开发者工具 Android开发者构建工具28 0 3 Android开发者平台28的协议都没有被接受 Failed to install the following Android SDK packages as
  • Jetson TX1 介绍

    前因 Jetson TX1 核心模块目前已经停产 xff0c 但是我们发现市面上有很多二手模块可以很容易获取 xff0c 同时 xff0c 英伟达对于Jetson TX1 的所有软件支持依然集成在了SDK manager中 xff0c 在最
  • Received status code 400 from server: Bad Request

    一 报错信息 FAILURE span class token operator span span class token class name Build span failed span class token keyword wit
  • Oracle VirtualBox虚拟机安装

    1 到官网下载虚拟机安装包 xff08 https www virtualbox org wiki Downloads xff09 2 下载后的样子 3 选择安装路径 4 选择要安装的功能 5 安装 6 安装完成
  • VirtualBox虚拟机安装Red Hat Enterprise Linux7.2

    1 首先安装好VirtualBox 2 下载好rhel server 7 2 xff0c 下载好长这样 3 点击新建 xff0c 在弹出窗口中输入名称 xff0c 选择类型和版本 xff0c 之后点击下一步 4 选择内存大小 xff0c 根
  • HTML 页面中的 target 用法

    值含义 blank在新窗口中打开链接 parent在父窗体中打开链接 self在当前窗体打开链接 此为默认值 top在当前窗体打开链接 xff0c 并替换当前的整个窗体 框架页 一个对应的框架页的名称在对应框架页中打开
  • VirtualBox挂载RedHat光盘

    1 使用root用户登录RedHat系统 xff0c 点击设备 gt 安装增强功能 2 安装增强功能后桌面会出现一个光盘标志 xff0c 弹出框点取消 3 为防止后续步骤出错 xff0c 此处重新分配光盘 点击设备 gt 分配光驱 xff0
  • RedHat系统使用yum安装软件

    使用yum命令安装软件 xff0c 此处以system config users为例 1 配置yum源配置文件 xff08 存放在 etc yum repos d文件夹下 xff09 xff1b 切换到 etc yum repos d文件夹
  • 初识HTML

    什么是HTML xff1f HTML 指的是超文本标记语言 HyperText Markup LanguageHTML 不是一种编程语言 xff0c 而是一种标记语言标记语言是一套标记标签 markup tag HTML 使用标记标签来描述
  • Window 安装MySQL8

    1 下载安装包 官网下载MySQL安装包 xff0c 下载地址 https dev mysql com downloads mysql 2 解压缩 将下载好的压缩包解压至你的安装目录 xff0c 我的路径为E tools MySQL ins
  • Windows 安装Navicat 连接MySQL

    1 下载Navicat Premium 进入官网https www navicat com cn download navicat premium下载Navicat Premium 2 安装 选择安装路径 然后一直点击下一步 xff0c 直
  • win10 安装Python3.8和pip

    下载安装包 1 进入Python官网https www python org xff0c 选择Windows 2 往下滑 xff0c 找到3 8 10 xff0c 选择Download Windows installer 64 bit xf
  • jeston TX1/TX2 系统迁移至SD卡的正确步骤

    如果是刚刚开始Nvidia jeston TX1 TX2 开发的初学者 xff0c 希望本文可以帮助节省时间 首先上张图 xff0c 完成配置后的 jeston TX1 载板使用的是作者自己设计的EdgeBox EHub tx1 tx2 E
  • win 10安装IPython

    什么是IPython Ipython是一种交互式解释器 Ipython的性能优于标准Python的shell IPython支持变量自动补全 xff0c 自动缩进 xff0c 支持 bash shell 命令 xff0c 内置了许多很有用的
  • Java连接MySQL数据库

    Java连接MySQL数据库 数据库帮助类DBHelper java 使用的JDBC驱动是 mysql connector java 8 0 25 jar span class token keyword import span java
  • ubuntu安装cmake

    参考 xff1a ubuntu安装cmake 陈 洪 伟的博客 CSDN博客 ubuntu安装cmake 注意 xff1a https cmake org download 下载cmake时 xff0c 要下载Source distribu
  • ADRC最速综合函数fhan实现

    ADRC最优综合函数fhan函数测试 fhan函数是ADRC的跟踪微分控制器的核心函数 xff0c 使得状态变量可以快速跟踪上系统输入 本例中 xff0c 设理想输入v 61 sin t 用状态变量x1跟踪输入 xff0c x2跟踪输入的导