当前位置: 首页 > article >正文

自抗扰控制(ADRC)这玩意儿挺有意思的,核心就仨部件:跟踪微分器、扩张观测器、非线性反馈。咱们直接上硬货,手撕代码看门道

基于扩张状态观测器的自抗扰控制ADRC仿真模型 ①跟踪微分器TD:为系统输入安排过渡过程得到光滑的输入信号以及输入信号的微分信号。 ②非线性状态误差反馈律NLSEF:把跟踪微分器产生的跟踪信号和微分信号与扩张状态观测器得到的系统的状态估计通过非线性函数进行适当组合作为被控对象的控制量 ③扩张状态观测器ESO作用是得到系统状态变量的估计值及扩张状态的实时作用量。 附赠相关自抗扰学习资料跟踪微分器TD干的事儿就像给控制信号套个缓冲垫。举个栗子突然让电机从0转到1000转TD能让指令变成个平滑曲线。看这段离散实现function [v1, v2] TD(v1_prev, v2_prev, target, r, h) d r*h; a0 h*v2_prev; y v1_prev a0; a1 sqrt(d^2 8*r*abs(y - target)); if abs(y - target) d v1 v1_prev h*v2_prev - r*h*sign(y - target); else v1 v1_prev h*v2_prev - (y - target)*h*r/d; end v2 v2_prev - r*h*sat((y - target), d); end参数r控制跟踪速度越大越快但可能抖。h是步长工程上常取采样周期。重点在非线性函数saturate处理避免微分信号突变。注意第7行的分段处理这就是安排过渡过程的精髓——离目标远时猛追近了就温柔刹车。扩张观测器ESO是ADRC的灵魂能把系统状态和扰动都扒出来。比如二阶系统def eso(z1, z2, z3, y, u, beta1, beta2, beta3, h): e y - z1 z1 h*(z2 beta1*e) z2 h*(z3 beta2*nonlinear_fal(e, 0.5, 0.01) b*u) z3 h*(beta3*nonlinear_fal(e, 0.25, 0.01)) return z1, z2, z3这里z3就是扩张状态——专门吃扰动。nonlinear_fal函数用指数平滑误差避免高频噪声。beta参数组决定观测器带宽经验公式beta13w, beta23w², beta3w³w大概取系统带宽的3~5倍。重点看第4行把控制量u和模型参数b耦合进去这样观测器才能区分系统动态和扰动。基于扩张状态观测器的自抗扰控制ADRC仿真模型 ①跟踪微分器TD:为系统输入安排过渡过程得到光滑的输入信号以及输入信号的微分信号。 ②非线性状态误差反馈律NLSEF:把跟踪微分器产生的跟踪信号和微分信号与扩张状态观测器得到的系统的状态估计通过非线性函数进行适当组合作为被控对象的控制量 ③扩张状态观测器ESO作用是得到系统状态变量的估计值及扩张状态的实时作用量。 附赠相关自抗扰学习资料非线性反馈NLSEF玩的是组合艺术float nlsef(float v1, float v2, float z1, float z2, float z3, float alpha, float delta){ float e1 v1 - z1; float e2 v2 - z2; float u0 alpha1 * fal(e1, 0.5, delta) alpha2 * fal(e2, 0.25, delta); return (u0 - z3) / b; }fal()函数长这样function f fal(e, alpha, delta) if abs(e) delta f abs(e)^alpha * sign(e); else f e / (delta^(1-alpha)); end end这里alpha1时误差大时增益小防止超调误差小时增益大提高精度。z3直接补偿扰动这才是自抗扰的抗字精髓。注意最后除以b把模型参数从控制量里解耦出来实现动态线性化。仿真时注意三点耦合顺序先TD生成理想轨迹再ESO估计状态扰动最后NLSEF生成控制量。参数调试先从ESO开始确保观测器收敛后再调TD速度最后微调非线性函数参数。代码里那些0.5、0.25的指数不是玄学是多次实验后平衡响应速度与稳定性的经验值。完整Simulink模型和调试记录已打包评论区留言获取下次聊聊怎么把这套理论移植到STM32上用C语言手搓实时控制器。

相关文章:

自抗扰控制(ADRC)这玩意儿挺有意思的,核心就仨部件:跟踪微分器、扩张观测器、非线性反馈。咱们直接上硬货,手撕代码看门道

基于扩张状态观测器的自抗扰控制ADRC仿真模型 ①跟踪微分器TD:为系统输入安排过渡过程,得到光滑的输入信号以及输入信号的微分信号。 ②非线性状态误差反馈律NLSEF:把跟踪微分器产生的跟踪信号和微分信号与扩张状态观测器得到的系统的状态估计通过非线性函数进行适当…...

COMSOL实战:从微波炉到压电泵的多物理场魔法

comsol软件教程,电热力耦合,动网格,传热,优化,微波加热,压电(非comsol官网搬运) comsol仿真教程,多物理场,建模仿真,低频电磁今天咱们来点硬核的—…...

Zotero文献管理效率革命:Ethereal Style插件深度应用指南

Zotero文献管理效率革命:Ethereal Style插件深度应用指南 【免费下载链接】zotero-style zotero-style - 一个 Zotero 插件,提供了一系列功能来增强 Zotero 的用户体验,如阅读进度可视化和标签管理,适合研究人员和学者。 项目地…...

​源码级赋能:基于Spring Boot/Vue的企业级AI视频平台二次开发实战与架构解析(GB28181/边缘计算/算法商城)

引言:从“黑盒采购”到“源码可控”的行业变革 在安防集成商和技术决策者的会议室里,有一个共识正在形成:“黑盒软件”正在成为企业数字化转型的枷锁。 传统的视频监控软件往往依赖特定的硬件锁(Key)或封闭的API&…...

Asian Beauty Z-Image Turbo惊艳案例:单卡RTX4090每秒1.8帧的Turbo实时生成

Asian Beauty Z-Image Turbo惊艳案例:单卡RTX4090每秒1.8帧的Turbo实时生成 东方美学图像生成的本地高效解决方案 在数字内容创作蓬勃发展的今天,高质量人像图像生成需求日益增长,特别是具有东方美学特色的图像。传统云端生成方案虽然方便&am…...

AI辅助开发新思路:让快马AI为你的下拉词功能注入智能排序与语义联想

AI辅助开发新思路:让快马AI为你的下拉词功能注入智能排序与语义联想 最近在开发一个需要智能下拉词功能的项目时,我发现传统的前缀匹配方式已经不能满足用户需求了。于是我开始探索如何用AI来增强下拉词功能,让它变得更智能、更人性化。经过…...

wiliwili与Switch视频播放:解锁离线观影新体验

wiliwili与Switch视频播放:解锁离线观影新体验 【免费下载链接】wiliwili 专为手柄控制设计的第三方跨平台B站客户端,目前可以运行在PC全平台、PSVita、PS4 和 Nintendo Switch上 项目地址: https://gitcode.com/GitHub_Trending/wi/wiliwili 在没…...

微信小程序-live-player-实时视频-截图与文件流转换实战

1. 微信小程序live-player组件基础使用 微信小程序的live-player组件是专门用于播放实时视频流的核心组件。我在多个实际项目中使用过这个组件,发现它比普通的video组件更适合直播场景。live-player支持RTMP、FLV等常见直播协议,延迟可以控制在3秒以内&…...

Qwen3-VL宠物健康应用:症状图片识别部署案例

Qwen3-VL宠物健康应用:症状图片识别部署案例 1. 为什么用Qwen3-VL做宠物健康助手? 你有没有遇到过这样的情况:半夜发现猫咪耳朵发红、狗狗爪子肿胀,又不敢贸然带它去医院,想先查查可能是什么问题?翻遍养宠…...

零配置部署!VoxCPM-1.5-WEBUI让语音合成变得像上网一样简单

零配置部署!VoxCPM-1.5-WEBUI让语音合成变得像上网一样简单 你是否曾为视频配音找不到合适的声音而烦恼?是否想过制作有声读物却苦于录音设备和时间成本?或者,你只是想体验一下,让AI用你喜欢的音色为你朗读一段文字&a…...

驱动开发的常用工具

2.3.3 驱动开发的常用工具 嵌入式驱动开发涉及硬件调试、软件调试、代码编译等多个环节,掌握合适的工具可以大幅提升开发效率。本节将系统介绍驱动开发中常用的四大类工具:交叉编译工具链、调试工具、开发板与仿真器、文档与源码工具,并结合RK3588平台给出具体的使用方法。…...

Clawdbot+Qwen3-32B部署指南:Ollama模型注册与配置详解

ClawdbotQwen3-32B部署指南:Ollama模型注册与配置详解 1. 开始前的准备:理解Clawdbot与Qwen3-32B的关系 在动手之前,先理清楚几个关键概念。Clawdbot(现在已更名为OpenClaw)本质上是一个智能代理框架,它本…...

Nemo文件管理器:超越基础操作的7个高效场景解决方案

Nemo文件管理器:超越基础操作的7个高效场景解决方案 【免费下载链接】nemo File browser for Cinnamon 项目地址: https://gitcode.com/gh_mirrors/ne/nemo Nemo作为Cinnamon桌面环境的默认文件管理器,不仅仅是简单的文件浏览工具,它隐…...

WiFi CSI感知技术全攻略:从原理到实践的深度探索

WiFi CSI感知技术全攻略:从原理到实践的深度探索 【免费下载链接】Awesome-WiFi-CSI-Sensing A list of awesome papers and cool resources on WiFi CSI sensing. 项目地址: https://gitcode.com/gh_mirrors/aw/Awesome-WiFi-CSI-Sensing 一、技术原理&…...

2026生成式引擎优化(GEO)深度实测报告:基于Hakuna Matata平台的五大主流大模型对抗性测试全景分析

摘要:本文以“Hakuna Matata”测试平台为基准场,针对百度文心一言、Moonshot AI(Kimi)、腾讯元宝、阿里千问、字节豆包五大国内主流生成式AI平台,开展了一场史无前例的生成式引擎优化(GEO)对抗性…...

新手入门:在快马上亲手实现第一个限流器,看懂‘rate limit exceeded’

最近在学习后端开发时,经常遇到"rate limit exceeded"这个错误提示。作为新手,一开始完全不明白这是什么意思,直到在InsCode(快马)平台上动手实现了一个简单的限流器,才真正理解了它的原理。今天就来分享一下这个入门项…...

LabVIEW以声卡为数据采集设备开发数据采集处理系统。 具备声卡参数设置,实现文件自动存储、...

LabVIEW以声卡为数据采集设备开发数据采集处理系统。 具备声卡参数设置,实现文件自动存储、以及文件手动存储两种功能,进行采集数据的分析,包括频域分析,滤波处理等功能; 程序实验报告在工业测量和实验室场景中&#x…...

3步掌握VideoFusion:零基础一站式视频处理神器

3步掌握VideoFusion:零基础一站式视频处理神器 【免费下载链接】VideoFusion 一站式短视频拼接软件 无依赖,点击即用,自动去黑边,自动帧同步,自动调整分辨率,批量变更视频为横屏/竖屏 项目地址: https://gitcode.com/gh_mirrors/vi/VideoFusion 一、为什么选…...

解决了黄金价格api数据源不稳定的问题

最近在做一个实时金融数据项目,我比较关心的就是黄金价格的稳定获取。起初,我用的一些常规接口总会出现延迟或者返回空数据的情况。页面显示几秒前的价格,或者直接空白,让我意识到:稳定可靠的黄金价格api比漂亮的图表更…...

VideoCombine节点故障急救:6个非典型解决方案助你恢复视频合成功能

VideoCombine节点故障急救:6个非典型解决方案助你恢复视频合成功能 【免费下载链接】ComfyUI-VideoHelperSuite Nodes related to video workflows 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-VideoHelperSuite 在视频创作的关键环节,…...

基于PHP、asp.net、java、Springboot、SSM、vue3的高校自动排课系统的设计与实现

目录 可选框架 可选语言 内容 可选框架 J2EE、MVC、vue3、spring、springmvc、mybatis、SSH、SpringBoot、SSM、django 可选语言 java、web、PHP、asp.net、javaweb、C#、python、 HTML5、jsp、ajax、vue3 内容 李哥讲程序开发666。 修改个人信息、自动排课等功能&…...

基于PHP、asp.net、java、Springboot、SSM、vue3的高校课堂考勤系统的设计与实现

目录 可选框架 可选语言 内容 可选框架 J2EE、MVC、vue3、spring、springmvc、mybatis、SSH、SpringBoot、SSM、django 可选语言 java、web、PHP、asp.net、javaweb、C#、python、 HTML5、jsp、ajax、vue3 内容 随着教育的深化变革,成百上千的同学走进大学的…...

保姆级教程:Langchain框架详解 - 大模型开发者的必备技能

什么是Langchain Langchain是一款提供给用户与大模型之间快捷沟通的代理框架,其核心设计思想就是整合各大模型厂商的接口,给用户提供一个快捷入口能快速实现自己的agent。 核心组件 •agent:Langchain的核心部分,所有的操作都围…...

EdgeRemover:Windows Edge浏览器彻底卸载的智能方案 - 释放系统资源新方法

EdgeRemover:Windows Edge浏览器彻底卸载的智能方案 - 释放系统资源新方法 【免费下载链接】EdgeRemover PowerShell script to remove Microsoft Edge in a non-forceful manner. 项目地址: https://gitcode.com/gh_mirrors/ed/EdgeRemover 核心价值定位 用…...

效率倍增:用快马平台智能优化你的openclaw更新工作流

最近在折腾openclaw的更新命令时,发现每次手动输入各种参数和检查依赖实在太费时间了。经过一番摸索,我发现用InsCode(快马)平台可以大幅优化这个流程,今天就把我的经验分享给大家。 智能参数补全 以前最头疼的就是记不住各种参数组合&#x…...

PyTorch 2.8镜像基础教程:torch.compile加速、FlashAttention-2启用参数详解

PyTorch 2.8镜像基础教程:torch.compile加速、FlashAttention-2启用参数详解 1. 镜像环境快速验证 在开始使用PyTorch 2.8镜像前,我们需要先确认环境是否正常工作。打开终端,运行以下命令: python -c "import torch; prin…...

3分钟实现Figma中文界面:设计师的本地化解决方案

3分钟实现Figma中文界面:设计师的本地化解决方案 【免费下载链接】figmaCN 中文 Figma 插件,设计师人工翻译校验 项目地址: https://gitcode.com/gh_mirrors/fi/figmaCN FigmaCN是一款专为中文设计师打造的浏览器插件,通过3800条人工校…...

3大维度重构投资决策:用TradingAgents-CN打造智能交易系统

3大维度重构投资决策:用TradingAgents-CN打造智能交易系统 【免费下载链接】TradingAgents-CN 基于多智能体LLM的中文金融交易框架 - TradingAgents中文增强版 项目地址: https://gitcode.com/GitHub_Trending/tr/TradingAgents-CN 在数字化投资时代&#xf…...

Win11网络卡顿?用Wireshark抓包5分钟定位问题(保姆级实战)

Win11网络卡顿?用Wireshark抓包5分钟定位问题(保姆级实战) 最近在玩《英雄联盟》时,每次团战画面都会卡成PPT,Zoom视频会议也经常出现"机器人音效",作为IT工程师的我决定用Wireshark揪出真凶。没…...

SDMatte处理动物与宠物图像效果展示:毛发级精度的自然抠图

SDMatte处理动物与宠物图像效果展示:毛发级精度的自然抠图 1. 为什么宠物抠图这么难 给宠物照片抠图可能是设计师最头疼的任务之一。想象一下,一只金毛犬站在浅色地毯上,毛发边缘几乎和背景融为一体;或者一只黑猫蜷缩在深色沙发…...