自适应控制设计(二)

2023-10-27

自适应控制设计(二)

《自适应控制基本思想》一文主要介绍了自适应控制设计的基本思路,但是针对控制率的设计没有具体说明,这里针对反馈控制率的设计步骤进行具体介绍


控制器设计基本思想

对于任何一个动态系统,我们都可以根据Lyapunov稳定性设计其控制器,具体的说就是

  1. 首先根据期望值 xd ,将原系统改为误差系统,即将 x˙=f(x,u) 转化为 e˙=f(e,u,xd) ,利用误差信息,并在此基础上进行控制系统则为闭环控制系统设计,即我们利用系统的输出值,开环控制则不需要任何系统的反馈信号
  2. 在误差系统 e˙=f(e,u,xd) 的基础上,理论上,只要我们构造了某一个Lyapunov函数,为了满足系统稳定性的条件,构造了相对应的控制 u ,则完成了系统控制率的设计

那么包括滑模控制,反馈线性化控制都是基于上述思想进行设计的,也基本代表了现代控制理论的设计思路,其实传统的控制系统设计也是基于满足系统稳定性进行设计,只不过传统的系统稳定性是是基于传递函数,保证系统的特征方程稳定

这里对比一个现代控制理论与传统控制理论设计思路上的区别

  1. 为了满足闭环控制,传统控制理论采用闭环设计,并在此基础上建立系统的传递函数;现代控制系统采用,将原系统转化为误差系统,并基于误差系统进行控制器设计
  2. 系统稳定性分析,传统控制理论建立系统的传递函数,并依据系统的特征方程根的分布,判断稳定性;现代控制理论采用Lyapunov稳定性分析
  3. 控制器设计思路,传统控制理论与现代控制理论都是为了保证系统的稳定性设计控制 u ,即传传统控制理论将 u 代入传递函数中,调整 u 的结构,使得特征方程稳定;现代控制方法找到系统某一Lyapunov函数,对其求导,基于为了保证导数小于零的原则,设计相对应的控制 u

补充说明

对于传统控制,之所以闭环系统鲁棒性高,是因为即使有了外接干扰,不会印象整个系统的特征方程根的分布,然后开环系统的特征方程直接与外界干扰有关,因此鲁棒性差;现代控制系统鲁棒性强的分析是基于Lyapunov稳定性

控制器设计整个思考过程为

  1. 一开始当我们看到一个系统时,首先想到的是如何可以求解输出与输入的解析表达式  y=f(u) ,就可以直接进行控制器的设计 u=f1(yd) ,但是人们发现这其中有两个问题,首先系统的微分方程往往难以求解,其次这种设计属于开环设计,即我们并没有利用输出与期望的误差,系统的稳定性难以保证
  2. 因此人们转而将研究思路放在对微分方程稳定性的研究上,如果我们不直接求解 u=f1(yd) ,而是设计一种控制 u ,使得系统动态调整到期望的值并保持稳定
  3. 从微分方程的最简单形式,单变量线性微分方程,即线性单输入单输出系统(传统控制理论),到多变量非线性微分方程,即多输入多输出系统(现代控制系统理论)

对于很对系统而言,找到系统理想的Lyapunov函数是困难的,为了寻找Lyapunov函数,我们需要对问题进行分解转化。
反馈线性化控制的基本思路,首先设计稳定的误差系统,其次再设计控制使得稳定的误差系统可以保持。

比如可以结合传统控制理论与线控控制理论系统稳定性相关的理论。具体来说,传统控制是通过对线性系统进行拉普拉斯变换后,得到系统的特征方程,并依据特征根的分布进行设计的,那么我们就可以将系统的误差动态系统人为的设计成稳定的线性系统,如果该系统一直满足,那么原系统就可以稳定。如果才能让理想的误差动态系统满足,我们可以再根据现代控制理论,依据Lyapunov,对理想的误差系统进行设计。

比如

s2e+λ1se+λ2e=0 为人为设计的理想稳定的误差系统
es=s2e+λ1se+λ2e ,即需要满足 es=0 ,因此我们需要研究 es 的动态特性,建立 es 的动态系统,并依据Lyapunov稳定性设计其控制率,满足 es=0
es0 e0

设计的理想误差系统的不同衍生出了很多不同的控制方法,比如线性滑模,非线性滑模等等


根据上述讨论,总体设计分为以下两个步骤

设计理想误差动态系统
需要人为设计理想的误差动态系统,即

e˙=f(e) ————(1)

如果设计的该误差动态系统(1)是稳定的,即 limte(t)=0 ,那么原系统稳定

控制率设计
根据稳定的误差系统(1),设计反馈控制 u ,即如果设计的控制率可以满足该误差系统,则可以保证原系统稳定


具体步骤

理想误差动态系统设计
定义如下系统

xi˙=xi+1˙xn˙=f(x)+g(x)u+d(t)y=x1i=1,,n1

定义系统误差

ei=xixid  ,  i=1,,n1

我们完全可以这么设计,比如设计误差系统

e1=0

根据该系统求解控制 u ,我们假设 e1=es ,之所以要这么假设,是因为我们设计的 u 并没有在 e1=0 显含,也就是没有办法直接求解,那么只能通过分析 e1=0 的动态系统,看是否可以找到控制 u ,因此我们要把 e1=0 当做一个系统来研究,因此给它设了一个变量 es

补充说明

  1. 如果一个常量 e=0 ,设 f=e ,则 f˙=0

  2. 如果 e(t) 为一变量,  e(t)=0 ,同理设 f=e(t) ,并不等同于 f˙=0 。而应该这么说,为了让  e(t)=0 ,我们需要设计其微分系统 f˙ ,并使其 f˙=0 ,这个与控制系统的设计是一致的
    上述说明看起来很显然,但其实说明,如果为了让一个变量为0,其实应该是分析其微分系统,即对变量求导

  3. 如果 e(t) 中直接显含了控制 u ,那么我们实际上就可以直接设计 u e=0 ,但是这样的设计并不能保证系统的稳定,言外之意是,我们虽然让 e=0 ,但是系统不具备鲁棒性,也就是 e=0 并不能一直保持下去,即使 u 直接显含,我们也可以设 f=e(t) ,并对 f 求导,我们可分析 f 系统的稳定性,这与 u 是否直接显含并无关系

  4. 因此对一个变量求导,再求解控制 u ,使其  e(t)=0 ,主要是从其控制的稳定性角度出发的
  5. 那么如果 e(t) 中直接显含了控制 u ,但又要保证系统的稳定性,该如何设计呢?实际上可以通过对 f 求导后, f˙ 中会出现 u˙ ,我们对 u˙ 设计,并对其求积分可以得到 u

因此,根据上述说明,为了保证 es=0 成立,直接让控制 u 显含并直接求解并不能保证误差系统能够按照我们设定的那样一直保持。对于 e1=es 而言,需要不断的求导直到 u 显含,这样控制器的设计就会很复杂,与我们设计的初衷是违背的,我们是希望能在这一步中,简化控制器的设计,将白了就是为了降低yapunov函数构造的难度。因此我们最好设计一种理想稳定的误差系统,使得在该系统的一阶导里就显含控制 u ,这样就可以降低了Lyapunov函数的构造,又能保证 es=0 的稳定

基于上述考虑,我们可以将理想的误差系统设计为

λ1e1+λ2e2++λn1en1+en=0

理想误差系统控制器设计
设理想的误差系统

es=λ1e1+λ2e2++λn1en1+en

可以改写成如下形式

es=[ΛT 1]e
e=xxd=[e1,,en]
Λ=[λ1,,λn1]T

接下来需要分析 es 的动态特性,我们需要对其求一阶导,在设计之初就是将 u 显含在es一阶导中

e˙s=λ1e1˙++λn1en1˙+en˙
e˙s=λ1e2++λn1en+en˙
e˙s=[0 ΛT]e+a(x)+b(x)u
v=[0 ΛT]e ,则
e˙s=v+a(x)+b(x)u

针对 es 系统,可以设计Lyapunov函数为

V=12e2s

为了保证系统的稳定性,我们需要相对应的控制 u
首先

V˙=ese˙s=es[v+a(x)+b(x)u]

可以采用如下思路进行设计

控制 u 需要消除系统中的非线性项,即 v+a(x)
u 的初版为 u=1b(x)[a(x)+v] ,很显然代入 V˙ 后系统并不稳定,但是结构上简单了很多
V˙=es0

但是该系统并不稳定,因此只是消去非线性项是不够的,还需要额外添加一些项,为了能够利用上 V˙ 中已经存在的 es 项,设额外添加项为

β(x)es

则Lyapunov函数导数转化为

V˙=esβ(x)es

具体 β(x) 设计可以有很多种,但大体的思路就是让 V˙<0
当然系统的Lyapunov函数也不仅仅局限于 V=12e2s ,也可以设成 V=e2s2b(x)

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

自适应控制设计(二) 的相关文章

  • 【控制理论】滑模控制最强解析

    摘自 xff1a https blog csdn net xiaohejiaoyiya article details 90271529 控制理论 滑模控制最强解析 置顶 Y box 2019 05 16 21 01 20 40459 收藏
  • 滑模控制原理_串讲:控制理论:滑模 SMC理论

    SMC理论可以理解为滑模的控制器理论 xff0c 即它的输出量是间接或者直接作用于被控对象上的 对于被控对象来讲 xff0c 假设 有n个状态变量 xff0c 系统状态和输出方程如下所示 xff1a xff08 1 xff09 如果精确控制
  • Pixhawk之UAV控制理论、ardupilot源码框架介绍

    一 开篇 您有无人机么 xff1f 没有 那赶紧去某宝买一套 昨天 开会开到接近下午一点钟 xff0c 收获相当大 xff0c 原本不太清楚的ardupilot框架现在也大致熟悉了 xff0c 接下来主要就是结合源码了解其控制过程了 xff
  • PID控制器开发笔记之十一:专家PID控制器的实现

    前面我们讨论了经典的数字PID控制算法及其常见的改进与补偿算法 基本已经覆盖了无模型和简单模型PID控制经典算法的大部 再接下来的我们将讨论智能PID控制 智能PID控制不同于常规意义下的智能控制 是智能算法与PID控制算法的结合 是基于P
  • 自适应控制设计(二)

    自适应控制设计 二 自适应控制基本思想 一文主要介绍了自适应控制设计的基本思路 但是针对控制率的设计没有具体说明 这里针对反馈控制率的设计步骤进行具体介绍 控制器设计基本思想 对于任何一个动态系统 我们都可以根据Lyapunov稳定性设计其
  • 自适应神经网络控制

    自适应神经网络控制 基本思路 自适应控制率 u u u 1b x a x v 1 b x 1 b2 x b x 2b2 x es u frac 1 b x a x v left frac 1 varepsilon b x frac 1 va
  • 从不懂到会用,PID从理论到实践~笔记

    从不懂到会用 PID从理论到实践 哔哩哔哩 bilibili PID的适用性 一阶 二阶的线性系统 前馈系统只是对干扰做一个补偿 单闭环系统 双闭环控制系统 一个是还没发生干扰但我知道你会干扰进行反应 一个是看到你对我干扰后并发生后才进行反
  • [非线性控制理论]2_不变性原理

    非线性控制理论 1 Lyapunov直接方法 非线性控制理论 2 不变性原理 非线性控制理论 3 基础反馈稳定控制器设计 非线性控制理论 4 反馈线性化 反步法 非线性控制理论 5 自适应控制器 Adaptive controller 非线
  • [非线性控制理论]4_反馈线性化_反步法

    非线性控制理论 1 Lyapunov直接方法 非线性控制理论 2 不变性原理 非线性控制理论 3 基础反馈稳定控制器设计 非线性控制理论 4 反馈线性化 反步法 非线性控制理论 5 自适应控制器 Adaptive controller 非线
  • [动态系统的建模与分析]9_一阶系统的频率响应_低通滤波器

    动态系统的建模与分析 8 频率响应 详细数学推导 G jw 滤波器 运放滤波器 3 反相同相比例放大电路 Multisim电路仿真 运放滤波器 2 运放反馈原理 运放滤波器 1 理想运放 虚短虚断 现代控制理论 11 现代控制理论串讲 完结
  • [非线性控制理论]1_Lyapunov直接方法

    非线性控制理论 1 Lyapunov直接方法 非线性控制理论 2 不变性原理 非线性控制理论 3 基础反馈稳定控制器设计 非线性控制理论 4 反馈线性化 反步法 非线性控制理论 5 自适应控制器 Adaptive controller 非线
  • 《现代控制系统》第五章——反馈控制系统性能分析 5.4 二阶系统里面极点以及零点带来的影响

    上一节图里面描绘的曲线 仅仅是针对阶跃响应为 的系统来说的 但是这给我们提供了一个很好的例子 许多系统拥有成对的主极点 我们可以通过类似上图的关系来估计系统的阶跃响应 这个方法尽管只是一个估算 但却能在避免拉普拉斯转化的情况下提供一个对超调
  • LTV-MPC

    For compatibility with the adaptive mode the plant model specified in your controller object must be LTI state space OK
  • [现代控制理论]7_线性控制器设计_Linear Controller Design

    现代控制理论 11 现代控制理论串讲 完结 pdf获取 现代控制理论 10 可观测性与分离原理 观测器与控制器 现代控制理论 9 状态观测器设计 龙伯格观测器 现代控制理论 8 5 线性控制器设计 轨迹跟踪simulink 现代控制理论 8
  • 自动化控制重要国际学术会议

    原文地址 http blog sina com cn s blog 3efdb10f01008nh7 html 自动化系 重要国际学术会议 一 A类会议 序号 英 文 名 称 英文简称 中 文 名 称 备 注 二级学科名称 企业信息化系统与
  • [非线性控制理论]3_基础反馈稳定控制器设计

    非线性控制理论 1 Lyapunov直接方法 非线性控制理论 2 不变性原理 非线性控制理论 3 基础反馈稳定控制器设计 非线性控制理论 4 反馈线性化 反步法 非线性控制理论 5 自适应控制器 Adaptive controller 非线
  • 用MATLAB和内点法实现带有时变不等式约束的分布式优化

    文章目录 问题描述 内点法 MATLAB实现 仿真结果 源代码 问题描述 考虑代价函数 f i x i
  • [非线性控制理论]6_滑模控制 (sliding mode control)

    非线性控制理论 1 Lyapunov直接方法 非线性控制理论 2 不变性原理 非线性控制理论 3 基础反馈稳定控制器设计 非线性控制理论 4 反馈线性化 反步法 非线性控制理论 5 自适应控制器 Adaptive controller 非线
  • 《现代控制系统》第五章——反馈控制系统性能分析 5.3 二阶系统的性能

    现在我们看一个单环二阶系统的单位阶跃响应 一个闭环反馈控制系统如下图所示 已知该闭环系统的转换方程为 把受控系统的转换方程代入进去得到 如果给一个阶跃输入 那么 查拉普拉斯逆变换表我们得到时域输出为 其中 同时也是特征方程在s域的根与原点的
  • [现代控制理论]5_系统的可控性_controllability

    现代控制理论 11 现代控制理论串讲 完结 pdf获取 现代控制理论 10 可观测性与分离原理 观测器与控制器 现代控制理论 9 状态观测器设计 龙伯格观测器 现代控制理论 8 5 线性控制器设计 轨迹跟踪simulink 现代控制理论 8

随机推荐

  • QT之Layout类

    这个类是用来布局的 它有各种各样既定风格的盒子 往这个盒子里添加控件 这些控件就会按照这个盒子的风格来找到自己的位置 举个例子 一个水平盒子往里面添加控件 是按照从左往右的顺序依次添加 QHBoxLayout layout 首先创建一个水平
  • IDEA中编译及运行ssm(非maven)项目

    一直用springboot框架 所有回顾下ssm项目环境配置及启动 1 导入项目 2 配置项目环境 2 1然后添加项目自带的jar包 2 2添加 tomcat server服务器 要不运行时代码会报错 缺少依赖 选择自己电脑上的tomcat
  • 写一篇关于chatGPT的心得体会

    这次使用ChatGPT训练的大型语言模型 让我真正感受到了自然语言处理的强大能力 ChatGPT可以根据用户输入的文本 快速生成准确 流畅的回复 拥有丰富的语义表达能力 可以识别各种语句的结构和意义 快速建立起人机之间的交互 它不仅可以帮助
  • MobaXterm插件连接Linux虚拟机

    一 前言 在VirtualBox里面打开的虚拟机系统界面是非常小的 而且看不到鼠标的光标显示 无法去随意点击和进行文件的手动操作 所以老师这里有一个可以连接虚拟机的插件 MobaXterm插件 这个就相当于是手机的投屏器 可以放大系统界面
  • 微信小程序开发架构——JavaScript的基本概述 和 JavaScript在 Nodejs、小程序中、浏览器中的使用方法

    轻量 是指在入门JavaScript语言时候觉得JavaScript 没有其它语言学习起来那么重 解释性 是指所编写的JavaScript语言它在运行时 机器会把JavaScript语言翻译成机器语言 JavaScript语法接近于Java
  • 数字图像字符识别——数字识别

    本文简单介绍图片字符识别的原理 主要识别图片中的数字 其他字符识别原理类似 大家应该知道 对于人类来说 可以很容易理解一张图片所表达的信息 这是人类视觉系统数万年演变进化的结果 但对于计算机这个诞生进化不到百年的 新星 要让它理解一张图像上
  • 如何从头手写一个富文本编辑器(解析slate源码,连载)

    背景 最近文档很火 老板也要 我也很感兴趣 于是入坑学习实践了一番 一眨眼就是一年过去了 项目初见成效 但是发现困难和挑战也越来越棘手 于是深入研究改编了一下源码 为后面重写源码做准备 我们的项目的成果截图 镇宅一下 文章末尾有demo源码
  • 聊聊2017 OWASP Top 10

    关于OWASP Top10 OWASP项目最具权威的就是其 十大安全漏洞列表 OWASPTop 10 OWASP Top 10不是官方文档或标准 而只是一个被广泛采用的意识文档 被用来分类网络安全漏洞的严重程度 目前被许多漏洞奖励平台和企业
  • moduleName is declared but its value is never read.ts(6133)报错解析

    问题重现 当使用ts语法导入第三方库时 比如koa模块 这时会发现出现这个错误 这个错误因为没有默认导出 问题原因 一般我们使用ts导入其他模块时都会有一个声明文件 不明白可以看我另外一篇 博客 我们进入声明文件中可以发现模块是通过expo
  • 使用Easyexcel对Excel进行读写操作

    1 概述 EasyExcel是一个基于Java的简单 省内存的读写Excel的开源项目 在尽可能节约内存的情况下支持读写百M的Excel github地址 GitHub alibaba easyexcel 快速 简洁 解决大文件内存溢出的j
  • ES6模块

    项目目录 node modules package json server js public index html index js math js babelrc dist 搭建验证环境 npm init y npm install s
  • 小程序中使用for循环,并动态添加class

    前言 小程序中使用for循环 并动态添加class 实现效果 实现代码 index wxml中
  • 考研高数数二 一元函数积分学内容框架

    完整的思维导图链接 https zhimap com m NojzfjkC
  • 第46讲 Android Camera2 API AWB自动白平衡

    本讲是Android Camera专题系列的第46讲 我们介绍Android Camera2 API专题的AWB自动白平衡 包括如下内容 为什么要做白平衡 什么是自动白平衡 Android Camera颜色处理流程 AWB模式 AWB Lo
  • Java运算符优先级顺序

    Java运算符优先级顺序 图集说明 1 算数运算符 补充两个 单目运算符 正号 10 10 单目运算符 负号 n 10 n 10 1 除法规则 若两个操作数都是整型 结果也是整型 除数不能为0 若两个操作数有一个是浮点型 结果是浮点型 Sy
  • python爬虫十三:详细了解scrapy

    1 Scrapy log信息的认知 2019 01 19 09 50 48 scrapy utils log INFO Scrapy 1 5 1 started bot tencent 2019 01 19 09 50 48 scrapy
  • Matlab安装 MinGW-w64 编译器的方法

    最近用Matlab实现机器学习算法 学习到支持向量机时 提示需要运行lib svm包需要安装 MinGW w64 C 编译器 在这里把步骤列一下 1 下载MinGW w64 C 编译器 点击下载 安装时注意选择32位还是64位的 1 安装时
  • Windows混音器API使用

    1 首先用mixerGetNumDevs 函数获取系统中的混音器设备的数量 一般 机器上都至少有一个混音器设备 声卡 如果机器上没有连接其它的音频设备 那么也就只有声卡这一个混音器设备 我的机器上接有一个名为USB EMP Audio De
  • go-redis 框架基本使用

    文章目录 redis使用场景 下载框架和连接redis 1 安装go redis 2 连接redis 字符串操作 有序集合操作 流水线 事务 1 普通事务 2 Watch redis使用场景 缓存系统 减轻主数据库 MySQL 的压力 计数
  • 自适应控制设计(二)

    自适应控制设计 二 自适应控制基本思想 一文主要介绍了自适应控制设计的基本思路 但是针对控制率的设计没有具体说明 这里针对反馈控制率的设计步骤进行具体介绍 控制器设计基本思想 对于任何一个动态系统 我们都可以根据Lyapunov稳定性设计其