非线性扰动观测器的基本设计

news2025/5/21 2:06:12

非线性扰动观测器的基本设计


目录

  • 非线性扰动观测器的基本设计
    • 前言
    • 问题描述
    • 扰动观测器设计
    • 小结
    • 参考资料

前言

因为看到论文中有扰动观测器的设计,但只是大概地明白设计的原理,实际上不明白扰动观测器是如何设计出来的。因此在查阅了相关文献和文章后,将学习到的基本的扰动观测器的设计记录如下。

问题描述

考虑如下这个一个系统
x ˙ = f ( x ) + g 1 ( x ) u + g 2 ( x ) d y = h ( x ) ( 1 ) \begin{aligned} \dot x&=f(x)+g_1(x)u+g_2(x)d\\ y&=h(x)\\ \end{aligned}\qquad(1) x˙y=f(x)+g1(x)u+g2(x)d=h(x)(1)
其中, f ( x ) 、 g 1 ( x ) 、 g 2 ( x ) 、 h ( x ) f(x)、g_1(x)、g2(x)、h(x) f(x)g1(x)g2(x)h(x)都是已知且光滑的连续函数, d d d是未知扰动,如何设计扰动观测器估计未知扰动 d d d

扰动观测器设计

按照之前学习的自适应控制的思想来看,设定扰动估计量 d ^ \hat d d^,扰动误差为 d ~ = d ^ − d \tilde d=\hat d -d d~=d^d

求取误差的动态方程: d ~ ˙ = d ^ ˙ − d ˙ \dot {\tilde d}=\dot {\hat d}-\dot d d~˙=d^˙d˙

在这里我们考虑慢时变的外部扰动,即 d ˙ = 0 \dot d=0 d˙=0,其实此时可以利用自适应控制率来实现对外部扰动的估计了,不过这里是学习基本的扰动观测器。

根据控制理论,如果我们希望 d ~ ˙ \dot {\tilde d} d~˙趋于0,我们可以设计其满足如下的控制率
d ~ ˙ = − l ( x ) g 2 ( x ) d ~ ( 2 ) \dot {\tilde d}=-l(x)g_2(x)\tilde d \qquad(2) d~˙=l(x)g2(x)d~(2)
很显然该控制率从李雅普诺夫稳定性理论来看, d ~ ˙ \dot {\tilde d} d~˙会收敛到0

将误差的动态方程带入到控制率中
d ~ ˙ = d ^ ˙ = − l ( x ) g 2 ( x ) d ~ = − l ( x ) g 2 ( x ) ( d ^ − d ) = − l ( x ) g 2 ( x ) d ^ + l ( x ) ( x ˙ − f ( x ) − g 1 ( x ) u ) ( 3 ) \begin{aligned} \dot {\tilde d}&=\dot {\hat d}\\ &=-l(x)g_2(x)\tilde d\\ &=-l(x)g_2(x)(\hat d -d)\\ &=-l(x)g_2(x)\hat d+l(x)(\dot x-f(x)-g_1(x)u) \end{aligned}\qquad(3) d~˙=d^˙=l(x)g2(x)d~=l(x)g2(x)(d^d)=l(x)g2(x)d^+l(x)(x˙f(x)g1(x)u)(3)
在公式(3)中我们带入了公式(1)的原系统,用以表示 g 2 ( x ) d g_2(x)d g2(x)d。但是上述公式中 x ˙ \dot x x˙是无法得到的变量,因此需要对上述公式进行变换,在两边分别减去 l ( x ) x ˙ l(x)\dot x l(x)x˙,得到:
d ^ ˙ − l ( x ) x ˙ = − l ( x ) g 2 ( x ) d ^ + l ( x ) ( − f ( x ) − g 1 ( x ) u ) ( 4 ) \begin{aligned} \dot{\hat d}-l(x)\dot x&=-l(x)g_2(x)\hat d+l(x)(-f(x)-g_1(x)u)\qquad(4) \end{aligned} d^˙l(x)x˙=l(x)g2(x)d^+l(x)(f(x)g1(x)u)(4)
针对公式(4)进行积分
d ^ − p ( x ) = ∫ − l ( x ) g 2 ( x ) d ^ + l ( x ) ( − f ( x ) − g 1 ( x ) u ) d t ( 5 ) \hat d -p(x)=\int_{}^{}-l(x)g_2(x)\hat d+l(x)(-f(x)-g_1(x)u)dt \qquad(5) d^p(x)=l(x)g2(x)d^+l(x)(f(x)g1(x)u)dt(5)
其中 p ( x ) = ∫ l ( x ) x ˙ d t p(x)=\int_{}^{}l(x)\dot xdt p(x)=l(x)x˙dt,令 z = d ^ − p ( x ) z=\hat d-p(x) z=d^p(x),并对公式(5)进行求导,得到
z ˙ = − l ( x ) g 2 ( x ) ( z + p ( x ) ) + l ( x ) ( − f ( x ) − g 1 ( x ) u ) = − l ( x ) g 2 ( x ) z + l ( x ) ( − f ( x ) − g 1 ( x ) u − l ( x ) g 2 ( x ) p ( x ) ) d ^ = z + p ( x ) ( 6 ) \begin{aligned} \dot z &=-l(x)g_2(x)(z+p(x))+l(x)(-f(x)-g_1(x)u)\\ &=-l(x)g_2(x)z+l(x)(-f(x)-g_1(x)u-l(x)g_2(x)p(x))\\ \hat d&=z+p(x) \end{aligned} \qquad(6) z˙d^=l(x)g2(x)(z+p(x))+l(x)(f(x)g1(x)u)=l(x)g2(x)z+l(x)(f(x)g1(x)ul(x)g2(x)p(x))=z+p(x)(6)
这就是我们看到论文中的扰动观测器的基本原型了,很多都是从这个原型进行变化的,并且要注意到 l ( x ) l(x) l(x)的选择是有要求的。
p ( x ) = ∫ l ( x ) x ˙ d t d p ( x ) d t = l ( x ) d x d t l ( x ) = ∂ p ( x ) ∂ x p(x)=\int_{}^{}l(x)\dot xdt\\ \frac{dp(x)}{dt}=l(x)\frac{dx}{dt}\\ l(x) = \frac{\partial p(x)}{\partial x} p(x)=l(x)x˙dtdtdp(x)=l(x)dtdxl(x)=xp(x)
因此 l ( x ) l(x) l(x)需要满足 l ( x ) = ∂ p ( x ) ∂ x l(x) = \frac{\partial p(x)}{\partial x} l(x)=xp(x),参考别人的文章,确定 l ( x ) l(x) l(x) p ( x ) p(x) p(x)一般有两种方法,1.首先选定 l ( x ) l(x) l(x),再积分;2.选定 p ( x ) p(x) p(x),再求导得到 l ( x ) l(x) l(x)

小结

本文针对非线性扰动观测器的设计进行了基本的解释,我学习的还很浅显,遇到具体问题还需要具体分析,进行些许的变形。如果后续学习到新的东西再过来补充更新。

参考资料

  1. Do K D . Practical control of underactuated ships[J]. Ocean Engineering, 2010, 37( 13):1111-1119.
  2. Chen W H , Yang J , Guo L , et al. Disturbance-Observer-Based Control and Related Methods—An Overview[J]. IEEE Transactions on Industrial Electronics, 2016, 63(2):1083-1095.
  3. Chen W H , Ballance D J . A nonlinear disturbance observer for robotic manipulators[J]. Industrial Electronics IEEE Transactions on, 2000, 47(4):932-938.
  4. Chen W H . Disturbance observer based control for nonlinear systems[J]. IEEE/ASME Transactions on Mechatronics, 2004, 9(4):706-710.
  5. 非线性扰动观测器NDOB的推导与实例 - 知乎 (zhihu.com)

如果您觉得我写的不错,麻烦给我一个免费的赞!如果内容中有错误,也欢迎向我反馈。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/471300.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

树的刷题,嗝

今天忘记带本子了,就没有学习java了,于是一心刷题,好烦遇到了两个奇怪的题目,我没跟题解写的,但是我是没想到奇怪的样例. no.1 617. 合并二叉树 难度简单1221收藏分享切换为英文接收动态反馈 给你两棵二叉树: root1 和 root2 。 想象一下,当你将其中…

【数据结构】第十三站:排序(中)快速排序

本文目录 一、快速排序递归法1.快速排序思想2.hoare版本实现快速排序3.hoare版本的优化1>使用随机值rand()函数2>三数取中3>三路划分 4.证明hoare版本的key在左边,必须让右边先走5.挖坑法实现快速排序6.将前面快排的一趟排序给提取出来7.双指针法实现快速排…

java小技能:使用FeignClient

文章目录 引言I FeignClient1.1 定义FeignClient1.2 启用FeignClient1.3 使用FeignClient引言 一款不错的SpringCloud 脚手架项目:注册中心(nacos)+RPC(feign) https://blog.csdn.net/z929118967/article/details/127966912 RPC(feign):使用Feign的方式,进行微服务调…

AlgoC++第九课:手写AutoGrad

目录 手写AutoGrad前言1. 基本介绍1.1 计算图1.2 智能指针的引出 2. 示例代码2.1 Scale2.2 Multiply2.3 Pow 总结 手写AutoGrad 前言 手写AI推出的全新面向AI算法的C课程 Algo C,链接。记录下个人学习笔记,仅供自己参考。 本次课程主要是手写 AutoGrad …

逆向动态调试工具简介

常用逆向工具简介: 二进制尽管属于底层知识,但是还是离不开一些相应工具的使用,今天简单介绍一下常用的逆向工具OD以及他的替代品x96dbg,这种工具网上很多,也可以加群找老满(184979281)&#x…

java实现乘法的方法

我们都知道,乘法运算的核心思想就是两个数相乘,如果能将乘法运算转化成一个加数的运算,那么这个问题就很容易解决。比如我们要实现23的乘法,首先需要定义两个变量:2和3。我们将这两个变量定义为一个变量:2x…

如何利用Mybatis-Plus自动生成代码(超详细注解)

1、简介 MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 特性 无侵入:只做增强不做改变,引入…

一例感染型病毒样本的分析

这个样本是会释放两个dll和一个驱动模块,通过感染USB设备中exe文件传播,会向C&C下载PE执行,通过rookit关闭常用的杀软,是一例典型的感染型病毒,有一定的学习价值。 原始样本 样本的基本信息 Verified: Unsigned …

免费无需魔法会语音聊天的ChatGPT

今天发现了一个很好的ChatGPT,可以语音聊天,而且免费无需魔法 角色目前包括夏洛克、雷电影等等,对话的声调完全模拟了原角色! 目前只有英文和日语两种对话,我们可以文字输入或者语音输入,中文即可&#xff…

泰克Tektronix DPO5204B混合信号示波器

特征 带宽:2 GHz输入通道:4采样率:1 或 2 个通道上为 5 GS/s、10 GS/s记录长度:所有 4 个通道 25M,50M:1 或 2 个通道上升时间:175 皮秒MultiView zoom™ 记录长度高达 250 兆点>250,000 wf…

M序列测量幅频特性

M序列 M 序列是一种伪随机序列,具有很好的伪噪声特性,常用于信道噪声测试和保密通信。不过 M 序列还有一个用途,也就是本文所介绍的——通过 M 序列测量频率响应。在讨论这个问题之前,我们先介绍 M 序列的特征与生成方法。 M 序列…

活力二八:CRM助力销售管理再现“浓缩”新活力

活力28、沙市日化! 央视段子手朱广权再次喊出这句口号时,迅速激活了人们心中对于曾经“日化一哥”的记忆。 作为市场占率曾超 70% 的家清品牌,活力二八业务始于1950年,前身为沙市油脂化工厂,伴随中国改革开放大潮&…

第十一章_SpringBoot集成Redis

总体概述 redisTemplate-jedis-lettuce-redission之间的的联系 1、redisTemplate是基于某个具体实现的再封装,比如说springBoot1.x时,具体实现是jedis;而到了springBoot2.x时,具体实现变成了lettuce。封装的好处就是隐藏了具体的…

大家都在用的视频音频提取器,免费用!

随着互联网的日益普及,人们可以通过多种方式获取和分享媒体内容,例如通过社交媒体、视频共享网站等。但是,在处理媒体文件时,提取其中的音频或视频仍然是一个挑战。这就是为什么越来越多的人都在使用免费的视频音频提取器。 这些…

Node框架 【Koa】介绍、安装以及使用

文章目录 🌟前言🌟介绍🌟koa优势🌟洋葱模型🌟安装🌟具体步骤:🌟创建项目目录🌟初始化项目🌟进入目录,安装koa 🌟使用🌟案例&#x1f3…

C++STL详解(十一)-- 位图(bitset)

文章目录 位图的介绍位图的引入位图的概念位图的应用 位图的使用位图的定义位图的成员函数位图运算符的使用 位图的模拟实现成员函数构造函数set reset testflip,size,countnone,any,all 位图应用题扩展位图模拟实现代码 位图的介绍 位图的引入 有一道面试题: 给40亿个不重复…

QFIELD-GIS工具 定位功能使用方法

一、 简介 定位是一款GIS APP重要功能,可以帮助我们快速在地图上找到现在所处的位置。结合地图我们就可以快速了解我们所处环境的情况。同时可以利用APP的信息标注采集功能采集当前位置的信息到数据库中。 下面我们来介绍【QFIELD-GIS】如何进行GPS定位、如何…

平衡二叉树的实现(包含旋转)

平衡二叉树是子啊二叉排序树的基础上建立的,他的概念就是这棵树中的任意节点的平衡因子都必须要大于1或是小于-1。平衡因子就是这个节点的左子树高度减右子树高度所得到的差。那么,它有什么优点呢?为什要在二叉排序树的基础上来建立这个平衡二…

语音芯片排行榜,为何唯创知音WT588F语音芯片如此受欢迎

随着智能家居、智能玩具、智能机器人等领域的快速发展,语音芯片逐渐成为智能硬件的重要组成部分。在众多语音芯片中,唯创知音WT588F语音芯片备受关注,成为市场上备受欢迎的产品。那么,WT588F语音芯片具备哪些功能,为何…

您的云,您做主:Google Distributed Cloud Hosted 全面可用

近日,谷歌宣布Google 分布式云(GDC) 托管的全面可用性来扩展该产品组合,它支持具有最严格要求的客户的需求,包括机密、受限和绝密数据。 GDC Hosted 包括部署、操作、扩展和保护完整托管云所需的硬件、软件、本地控制平面和操作工具。此外&…