草庐IT

【控制】自适应控制基本概念

Zhao-Jichao 2023-06-28 原文
目录自适应控制的一点笔记和看法
1【控制】自适应控制基本概念
2【控制】自适应控制,对参考信号跟踪,对未知参数估计的小例子,带程序有结果图
3【控制】自适应控制,模型参考自适应控制,公式推导,有程序有结果图
4【控制】自适应控制,模型参考自适应控制,参考模型如何求取,有程序有图

文章目录

1 什么是自适应控制

自适应控制:英文名称为adaptive control。在日常生活中,所谓自适应是指生物能改变自己的习性以适应新的环境的一种特征。因此,直观地讲,自适应控制可以看作是一个能根据环境变化智能调节自身特性的反馈控制系统以使系统能按照一些设定的标准工作在最优状态。

自适应控制的研究对象是具有不确定性的系统。自适应控制能修正自己的特性以适应对象和扰动的动态特性的变化。

在反馈控制和最优控制中,都假定被控对象是确定系统,然而在众多的工程实践中被控对象数学模型都是不确定系统,下面介绍一下确定系统和不确定系统:

1.1 确定系统

数学模型完全确定的系统(阶次和参数已知)。在性能指标给定的前提下,系统设计的方法有三种:

  1. 根轨迹法
  2. 频率特性法
  3. 状态空间法

1.2 不确定系统

数学模型不完全确定的系统,阶次确定参数不确定或者阶次参数都不确定,工程实践中的不确定性是大量存在的,这种不确定性有时表现在内部,有时表现在外部。

  • 内部不确定: 结构或参数不能确切知道, 如散热系统, 化学反应速度。
  • 外部不确定: 工序改变, 环境改变, 静摩擦, 随机干扰。

面对的这些客观的各式各样的不确定性, 如何综合出适当的控制规律, 使得某一指定的性能指标达到最优和次最优,这就是自适应控制要解决的问题。

当被控对象是不确定系统时,常规控制器不可能得到很好的控制品质。为此,需要设计一种特殊的控制系统,它能够自动地补偿在模型阶次、参数和输入信号方面非预知的变化,这就是自适应控制。

自适应控制要解决的问题就是修正自己的特性(例如综合出适当的控制规律)以使用对象和扰动的动态特性的变化,使某一性能指标达到最优或者次优。简而言之,自适应控制是一种带有在线参数识别的控制方法。

2 发展

  • 自适应控制系统首先是由Draper和Li在1951年提出的,他们介绍了一种能使性能特性不确定的内燃机达到最佳性能的控制系统,这种类型的控制能力能自动的达到最优的操作点,所以叫做最优控制或极值控制。
  • 而自适应这一专业名词是1954年由Tsien在《工程控制论》一书中提出的。
  • 其后,在1955年Benner和Drenick也提出一个控制系统具有“自适应”的概念。
  • 自适应控制发展的重要标志是在1958年Whitaker及同事设计的一种自适应飞机控制系统。
  • 1960年Li和Van Der Velde提出的自适应控制系统,它的控制回路中用一个极限环使参数不确定性得到自动补偿,这样的系统称为自振荡的自适应系统。
  • Petror等人在1963年介绍一种自适应系统,它的控制输入由开关函数或继电器产生,并以与参数值有关的系统轨线不变性原理为基础来设计系统。这种系统称为变结构系统。
  • 20世纪70年代,随着控制理论和计算机技术的发展,自适应控制理论取得了重大进展;
  • 20世纪80年代以来自适应控制理论和设计方法得到了不断发展和完善,再加上计算机技术的发展,自适应控制技术得到更大幅度扩展。

3 应用

自适应控制最初是应用在航空航天领域;随着计算机技术的发展,自适应控制在光学跟踪望远镜、化工、冶金、机械加工领域也成功的应用;目前,自适应控制的应用领域涉及到航空航天、航海、电力、化工、钢铁冶金、热力、机械、林业、通信、电子、原子能、机器人和生物工程。

4 分类

自适应控制的种类很多,包括:

  • 增益自适应控制
  • 模型参考自适应控制(MRAC)
  • 自校正控制(STC)
  • 直接优化目标函数自适应控制
  • 模糊自适应控制
  • 多模型自适应控制
  • 自适应逆控制

其中最主要的,也是最常用的当属模型参考自适应控制(model reference adaptive system,MRAS)和自校正控制系统(self-tuning control system),这是比较成熟的两类自适应控制系统。这类自适应系统的一个主要特点是在线辨识对象数学模型的参数,进而修改控制器的参数。

4.1 模型参考自适应控制

这类自适应控制系统设计方法的理论基础为局部参数优化方法、李雅普诺夫稳定性理论和波波夫(Popov)超稳定性理论。

模型参考白适应控制系统由参考模型、被控对象、反馈控制器和调整控制器参数的自适应机构等部分组成,其基本原理如下图1所示。这类控制系统包括内回路和外回路两个回路。内环是由被控对象和控制器组成的普通反馈回路,而控制器的参数则由外回路调整。参考模型的输出 y m y_m ym 直接表示了对象输出应当怎样理想地响应参考输人信号 r r r


当参考输入 r ( t ) r(t) r(t) 同时加到系统和模型的入口时,由于对象的初始参数未知,控制器的初始参数不可能整定得很好。故一开始,运行系统的输出响应 y ( t ) y(t) y(t) 与模型的输出响应 y m ( t ) y_m(t) ym(t) 是不可能完全一致,结果将产生偏差信号 e ( t ) e(t) e(t),故可由 e ( t ) e(t) e(t) 驱动自适应机构来产生适当调节作用,直接改变控制器的参数,从而使系统的输出 y ( t ) y(t) y(t) 逐步与模型输出 y m ( t ) y_m(t) ym(t) 接近,直到 y ( t ) = y m ( t ) y(t) = y_m(t) y(t)=ym(t) 为止,当 e ( t ) = 0 e(t)=0 e(t)=0 后,自适应调整过程就自动停止,控制器参数也就自动整定完毕。

模型参考自适应控制(MRAC)可以看作是 参考模型+控制器+自适应率三个部分。

4.2 自校正控制

自校正控制系统可以设想由两个环路组成,其典型结构如下图2所示。

该调节器的内环包括被控对象和一个普通的线性反馈调节器,外环则由一个递推参数估计器和一个设计机构所组成,其任务是辨识过程参数,再按选定的设计方法综合出控制器参数,用以修改内环的控制器。这类系统的特点是必须对过程或者被控对象进行在线辨识(估计器),然后用对象参数估计值和事先规定的性能指标在线综合出调节器的控制参数,并根据此控制参数产生的控制作用对被控对象进行控制。经过多次地辨识和综合调节参数,可以使系统的性能指标趋于最优。

自校正控制可以看作是参数估计+控制器这两部分组成。

5 主要研究

无论是时不变线性系统,还是时变非线性系统,它们与自适应机构所构成的自适应控制系统都是非线性时变系统,分析这类系统的性能是很困难的。

1 稳定性 稳定性问题是一切控制系统的核心问题。因此,设计自适应控制系统应以保证系统全局稳定为原则。如今,随着模型参考自适应控制的发展,各种各样的自适应控制律会不断诞生,要保证系统全局稳定也很困难,特别是因为系统是本质非线性时变的,故当系统存在未建模动态或随机干扰时,要证明自适应控制系统的稳定性就更困难了。

2 收敛性 对于一些自适应系统收敛性的结论都是在一些相当强的假设条件下获得的,并且与具体的算法密切相关。因所使用的收敛性分析方法缺乏普适性,因而不能推广到稍微复杂的系统模型上。

3 鲁棒性 目前,参考模型自适应控制系统一般都是针对被控对象结构已知而参数未知的情况进行设计的,而实际被控对象结构往往难以确切知道,所获得的对象特性中常常未能包括系统的难以描述的寄生高频成分,即未建模动态。计算机仿真表明,这种未建模型动态可能引起自适应控制系统的不稳定,关键原因是自适应控制系统是非线性时变的,,而对于线性反馈控制系统,只有设计的系统有足够的稳定裕量,这种未建模动态是不致于破坏系统稳定性的。这就提出了自适应控制的鲁棒性问题。

4 性能指标 一个自适应控制系统能很好地工作,不仅要求所设计的系统稳定,而且还有满足一定的性能指标要求。由于自适应控制系统是非线性时变的,初始条件的变化或未建模动态的存在都势必要改变系统的运动轨迹,因此,分析自适应控制系统的动态品质是极其困难的。目前,这方面的成果还很少见。

6 特点

1、控制器可调

相对于常规反馈控制器固定的结构和参数,自适应控制系统的控制器在控制的过程中一般是根据一定的自适应规则,不断更改或变动的;

2、增加了自适应回路

自适应控制系统在常规反馈控制系统基础上增加了自适应回路(或称自适应外环),它的主要作用就是根据系统运行情况,自动调整控制器,以适应被控对象特性的变化;

3、适用对象

自适应控制适用于被控对象特性未知或扰动特性变化范围很大,同时又要求经常保持高性能指标的一类系统,设计时不需要完全知道被控对象的数学模型。

Ref.

  1. 自适应控制(1)——自适应控制基本概念
  2. 自适应系统-百度百科
  3. 自适应控制的概念

有关【控制】自适应控制基本概念的更多相关文章

  1. Ruby Readline 在向上箭头上使控制台崩溃 - 2

    当我在Rails控制台中按向上或向左箭头时,出现此错误:irb(main):001:0>/Users/me/.rvm/gems/ruby-2.0.0-p247/gems/rb-readline-0.4.2/lib/rbreadline.rb:4269:in`blockin_rl_dispatch_subseq':invalidbytesequenceinUTF-8(ArgumentError)我使用rvm来管理我的ruby​​安装。我正在使用=>ruby-2.0.0-p247[x86_64]我使用bundle来管理我的gem,并且我有rb-readline(0.4.2)(人们推荐的最少

  2. ruby-on-rails - 带 Spring 锁的 Rails 4 控制台 - 2

    我正在使用Ruby2.1.1和Rails4.1.0.rc1。当执行railsc时,它被锁定了。使用Ctrl-C停止,我得到以下错误日志:~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.2/lib/spring/client/run.rb:47:in`gets':Interruptfrom~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.2/lib/spring/client/run.rb:47:in`verify_server_version'from~/.rvm/gems/ruby-2.1.1/gems/spring-1.1.

  3. ruby-on-rails - openshift 上的 rails 控制台 - 2

    我将我的Rails应用程序部署到OpenShift,它运行良好,但我无法在生产服务器上运行“Rails控制台”。它给了我这个错误。我该如何解决这个问题?我尝试更新ruby​​gems,但它也给出了权限被拒绝的错误,我也无法做到。railsc错误:Warning:You'reusingRubygems1.8.24withSpring.UpgradetoatleastRubygems2.1.0andrun`gempristine--all`forbetterstartupperformance./opt/rh/ruby193/root/usr/share/rubygems/rubygems

  4. Unity 热更新技术 | (三) Lua语言基本介绍及下载安装 - 2

    ?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------

  5. C51单片机——实现用独立按键控制LED亮灭(调用函数篇) - 2

    说在前面这部分我本来是合为一篇来写的,因为目的是一样的,都是通过独立按键来控制LED闪灭本质上是起到开关的作用,即调用函数和中断函数。但是写一篇太累了,我还是决定分为两篇写,这篇是调用函数篇。在本篇中你主要看到这些东西!!!1.调用函数的方法(主要讲语法和格式)2.独立按键如何控制LED亮灭3.程序中的一些细节(软件消抖等)1.调用函数的方法思路还是比较清晰地,就是通过按下按键来控制LED闪灭,即每按下一次,LED取反一次。重要的是,把按键与LED联系在一起。我打算用K1来作为开关,看了一下开发板原理图,K1连接的是单片机的P31口,当按下K1时,P31是与GND相连的,也就是说,当我按下去时

  6. 计算机毕业设计ssm+vue基本微信小程序的小学生兴趣延时班预约小程序 - 2

    项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU

  7. ruby-on-rails - 使用 HTTParty 的非常基本的 Rails 4.1 API 调用 - 2

    Rails相对较新。我正在尝试调用一个API,它应该向我返回一个唯一的URL。我的应用程序中捆绑了HTTParty。我已经创建了一个UniqueNumberController,并且我已经阅读了几个HTTParty指南,直到我想要什么,但也许我只是有点迷路,真的不知道该怎么做。基本上,我需要做的就是调用API,获取它返回的URL,然后将该URL插入到用户的数据库中。谁能给我指出正确的方向或与我分享一些代码? 最佳答案 假设API为JSON格式并返回如下数据:{"url":"http://example.com/unique-url"

  8. ruby-on-rails - 在 Rails 控制台中使用 asset_path - 2

    在我的Character模型中,我添加了:字符.rbbefore_savedoself.profile_picture_url=asset_path('icon.png')end但是,对于数据库中已存在的所有角色,它们的profile_picture_url为nil。因此,我想进入控制台并遍历所有这些并进行设置。在我试过的控制台中:Character.find_eachdo|c|c.profile_picture_url=asset_path('icon.png')end但这给出了错误:NoMethodError:undefinedmethod`asset_path'formain:O

  9. ruby-on-rails - 带有 Pry 的 Rails 控制台 - 2

    当我进入Rails控制台时,我已将pry设置为加载代替irb。我找不到该页面或不记得如何将其恢复为默认行为,因为它似乎干扰了我的Rubymine调试器。有什么建议吗? 最佳答案 我刚发现问题,pry-railsgem。忘记了它的目的是让“railsconsole”打开pry。 关于ruby-on-rails-带有Pry的Rails控制台,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

  10. ruby - 将全局 $stdout 重新分配给控制台 - ruby - 2

    我正在尝试将$stdout设置为临时写入一个文件,然后返回到一个文件。test.rb:old_stdout=$stdout$stdout.reopen("mytestfile.out",'w+')puts"thisgoesinmytestfile"$stdout=old_stdoutputs"thisshouldbeontheconsole"$stdout.reopen("mytestfile1.out",'w+')puts"thisgoesinmytestfile1:"$stdout=old_stdoutputs"thisshouldbebackontheconsole"这是输出。r

随机推荐