「计算机控制系统」5. 模拟设计法

news2024/11/24 13:56:16

模拟控制器的离散化
数字PID控制器
Smith预估控制

文章目录

  • 模拟控制器的离散化
    • 数值积分法
      • 一阶后向差分法
      • 一阶前向差分法
      • 双线性变换法(Tustin)
    • 零极点匹配法
    • 其他方法
  • 数字PID控制器
    • 模拟PID控制器的离散化
    • 数字PID的改进
    • PID控制各环节的作用
    • PID参数的整定
      • 扩充临界比例度法
      • 扩充阶跃响应曲线法
    • PID控制器的无扰切换
  • Smith预估控制
    • 设计纯滞后补偿控制系统
    • Smith预估器的编排结构


所谓模拟设计法,即是先按照连续系统的设计方法,使用如频率特性、根轨迹等工具,设计出模拟控制器,再进行离散化,得到数字控制器。
优点是使用我们已经比较熟悉的连续系统的设计方法。缺点是性能比模拟系统差,而且未能完全发挥计算机控制的作用。

模拟设计法的步骤:

  1. 根据性能指标,设计连续域的传递函数 D ( s ) D(s) D(s)
  2. 选择合适的离散化方法,将 D ( s ) D(s) D(s)离散化,得到 D ( z ) D(z) D(z)
  3. 检验计算机控制系统的闭环性能,若不满足,需要改进。如重选离散化方法、提高采样频率、重新设计 D ( s ) D(s) D(s)
  4. D ( z ) D(z) D(z)变为数字算法,在计算机上编程实现

模拟控制器的离散化

数值积分法

一阶后向差分法

即把微分 d u ( t ) d t \frac{\text{d}u(t)}{\text{d}t} dtdu(t)变为后向差分: u ( k T ) − u [ ( k − 1 ) T ] T \frac{u(kT)-u[(k-1)T]}{T} Tu(kT)u[(k1)T],对应: s s s变为 1 − z − 1 T \frac{1-z^{-1}}{T} T1z1

特性:

  1. S负半平面映射到Z平面圆 ( u − 1 2 ) 2 + v 2 < ( 1 2 ) 2 (u-\frac{1}{2})^2+v^2<(\frac{1}{2})^2 (u21)2+v2<(21)2
  2. D ( s ) D(s) D(s)稳定,则 D ( z ) D(z) D(z)一定稳定
  3. 变换前后,稳态增益不变。 D ( s ) ∣ s = 0 = D ( z ) ∣ z = 1 D(s)|_{s=0}=D(z)|_{z=1} D(s)s=0=D(z)z=1
  4. 时间响应和频率响应有相当大的畸变
  5. 变换精度低,使用较少

在这里插入图片描述

一阶前向差分法

即把微分 d u ( t ) d t \frac{\text{d}u(t)}{\text{d}t} dtdu(t)变为前向差分: u [ ( k + 1 ) T ] − u ( k T ) T \frac{u[(k+1)T]-u(kT)}{T} Tu[(k+1)T]u(kT),对应: s s s变为 z − 1 T \frac{z-1}{T} Tz1
特性:

  1. S负半平面映射到Z平面 Re ( z ) < 1 \text{Re}(z)<1 Re(z)<1的区域
  2. Z平面单位圆映射到S平面圆 ( σ + 1 T ) 2 + ω 2 = ( 1 T ) 2 (\sigma+\frac{1}{T})^2+\omega^2 = (\frac{1}{T})^2 (σ+T1)2+ω2=(T1)2。T越小,对应S平面的圆越大,稳定性越好
  3. D ( s ) D(s) D(s)稳定, D ( z ) D(z) D(z)不一定稳定
  4. 不能保证稳定性,使用较少

在这里插入图片描述

双线性变换法(Tustin)

z = e T s = e T s 2 e − T s 2 \displaystyle z=e^{Ts}=\frac{e^{\frac{Ts}2}}{e^{\frac{-Ts}2}} z=eTs=e2Tse2Ts
将分子分母分别泰勒展开取前两项,则有: z = 1 + T s 2 1 − T s 2 \displaystyle z=\frac{1+\frac{Ts}{2}}{1-\frac{Ts}{2}} z=12Ts1+2Ts
类比W变换乘以系数 T 2 \frac{T}{2} 2T

对应: s s s变为 2 T z − 1 z + 1 \frac{2}{T}\frac{z-1}{z+1} T2z+1z1

特性:

  1. S负半平面映射到Z平面圆 u 2 + v 2 < 1 u^2+v^2<1 u2+v2<1,S平面虚轴映射到Z平面单位圆上

  2. D ( s ) D(s) D(s)稳定, D ( z ) D(z) D(z)一定稳定

  3. 主要应用于低通环节的离散化。不宜用于高通环节。
    在这里插入图片描述

  4. 变换前后,稳态增益不变。 D ( s ) ∣ s = 0 = D ( z ) ∣ z = 1 D(s)|_{s=0}=D(z)|_{z=1} D(s)s=0=D(z)z=1

  5. 变换后 D ( z ) D(z) D(z)的阶次不变,且分子分母阶次相同。如果 D ( s ) D(s) D(s)分子比分母低 p p p次,则说明 D ( z ) D(z) D(z)分子中含有 ( z + 1 ) p (z+1)^p (z+1)p

  6. 使用方便且具有一定精度,工程上使用普遍

零极点匹配法

基本思想:把 D ( s ) D(s) D(s)的零点和极点全部映射到Z平面上

D ( s ) D(s) D(s)原本的零极点按照 z = e s T z=e^{sT} z=esT的方式映射。
D ( s ) D(s) D(s)分子比分母低的阶数用无穷远的零点补全,映射到Z平面 z = − 1 z=-1 z=1处。
在这里插入图片描述

其他方法

  1. Z变换法(脉冲响应不变法)
    直接应用Z变换: D ( z ) = Z [ D ( s ) ] D(z)=Z[D(s)] D(z)=Z[D(s)]
    这种方法可以保证变换前后脉冲响应不变。但是Z变换比较麻烦、多个环节串连无法单独变换、产生频率混叠、其他特性变化较大。所以应用较少。
  2. 带零阶保持器的Z变化法(阶跃响应不变法)
    D ( z ) = Z [ 1 − e − s T s D ( s ) ] \displaystyle D(z)=Z[\frac{1-e^{-sT}}{s}D(s)] D(z)=Z[s1esTD(s)]
    这里的ZOH是假想的,并不真实存在。
    这种方法可以保证变换前后阶跃响应不变。但与Z变换有相同的一系列缺点,所以应用较少。

数字PID控制器

模拟PID控制器的离散化

  1. PID全量控制
    (位置式PID、绝对式PID)
    在这里插入图片描述

  2. PID增量控制
    即是仅输出改变量
    在这里插入图片描述
    适用于阀、步进电机等具有积分特性的被控对象。

数字PID的改进

  1. 抗积分饱和

    • 当输出的控制量很大,超出DA的转换范围或者超过执行机构的执行范围(例如,控制器输出25,但DAC只能输出5;控制器输出120,但阀门只能开到100)此时尽管控制器持续运算、输出,但执行机构没有动作,称为积分饱和。发生积分饱和时,相当于断开闭环控制系统。
    • 遇限削弱积分法
      当控制量进入饱和区,只执行削弱积分项的积分
      在这里插入图片描述
    • 饱和停止积分法
      当控制量进入饱和区,不执行积分。优点是简单易行。缺点是不易使系统退出饱和。
      在这里插入图片描述
  2. 防积分整量化误差

    • 积分项的数值太小,可能在计算机的有限字长中无法表示,发生积分项丢失的现象
    • 解决方法:用双字长存储积分运算结果。当结果小于单字长时,加到低位单元。直到低位单元进位到高位单元。(输出只输出高位单元。相当于扩展了字长,能够表示的最小值变小了)
  3. 微分算法改进

    • 微分放大噪声的作用,极易引入高频干扰
    • 不完全微分PID:
      即使用带惯性环节的实际微分器。
      s → s 1 + T f s s\to\frac{s}{1+T_f s} s1+Tfss
      在这里插入图片描述在这里插入图片描述
    • 微分先行PID
      即把微分提前到比例和积分运算之前
      在这里插入图片描述
  4. 带非灵敏区
    在这里插入图片描述
    偏差小的时候断开控制。可以节约能源、保护执行机构

PID控制各环节的作用

  1. 比例环节:
    K p K_p Kp的增大,超调量增大,响应速度加快,稳态误差减小(但不能消除)
    如果 K p K_p Kp偏大,系统输出震荡次数变多,调节时间加长
    如果 K p K_p Kp过大,将导致系统不稳定
  2. 积分环节:
    T I T_I TI的增大,超调量减小,响应速度减慢,可以完全消除稳态误差
    如果 T I T_I TI过大,积分作用削弱,对系统动态性能的影响减小,但可能无法消除静态误差
    如果 T I T_I TI过小,系统会不稳定
  3. 微分环节:
    选择合适的 T D T_D TD将使系统的超调量减小,调节时间缩短,允许加大比例控制。
    T D T_D TD太大或太小,都会适得其反

PID参数的整定

扩充临界比例度法

  1. 选择采样周期。通常取被控对象纯滞后的 1 10 \frac1{10} 101
  2. 将PID控制器设置为纯P,减小比例度 ( δ = 1 K p ) (\delta=\frac{1}{K_p}) (δ=Kp1),直到系统等幅震荡。记录临界比例度 δ k \delta_k δk以及临界震荡周期 T k T_k Tk
  3. 选择控制度
  4. 查表,确定 T , K p , T I , T D T, K_p, T_I, T_D T,Kp,TI,TD的值
  5. 试运行,如果性能不满意,可进一步调节参数

控制度 = ∫ 0 ∞ [ e 2 ( t ) d t ] D D C ∫ 0 ∞ [ e 2 ( t ) d t ] A n a l o g \displaystyle 控制度=\frac{\int_0^\infty [e^2(t)\text{d}t]_{DDC}}{\int_0^\infty[e^2(t)\text{d}t]_{Analog}} 控制度=0[e2(t)dt]Analog0[e2(t)dt]DDC,越接近1,说明数字控制器和模拟控制器性能越接近。是一个根据需要选定的值。

整定参数表:

控制度控制规律 T / T k T/T_k T/Tk K P δ k K_P \delta_k KPδk T I / T k T_I/T_k TI/Tk T D / T k T_D/T_k TD/Tk
1.05PI0.030.530.88-
1.05PID0.0140.630.490.14
1.20PI0.050.490.91-
1.20PID0.0430.470.470.16
1.50PI0.140.420.99-
1.50PID0.090.340.430.20
2.00PI0.220.361.05-
2.00PID0.160.270.400.22

扩充阶跃响应曲线法

  1. 控制器不接入系统,将被控量调至给定值附近,并使其稳定。然后测被控对象的单位阶跃响应曲线。
  2. 在曲线的拐点处作切线,求出纯滞后 τ \tau τ和时间常数 T m T_m Tm
  3. 选择控制度
  4. 查表,确定 T , K p , T I , T D T, K_p, T_I, T_D T,Kp,TI,TD的值

整定参数表:
在这里插入图片描述
「图源:刘建昌_计算机控制系统」

PID控制器的无扰切换

实际运行中,需要在自动与手动控制模式之间进行切换。要求切换时不对调节过程带来大的冲击。
在手动控制时,PID算法应该继续计算,减小切换回自动时的冲击。
在这里插入图片描述

Smith预估控制

适用于大滞后或者大延迟
τ / T m > 0.3 \tau /T_m>0.3 τ/Tm>0.3,就可以认为是大滞后或大延迟。如果 τ / T m > 0.5 \tau /T_m>0.5 τ/Tm>0.5,一般就需要特殊处理。因为常规PID 会使系统稳定性变差甚至产生震荡。
在这里插入图片描述

设计纯滞后补偿控制系统

在这里插入图片描述

在计算机控制系统中实现纯滞后补偿:
在这里插入图片描述
在这里插入图片描述

Smith预估器的编排结构

几种不同的控制算法的编排结构:
在这里插入图片描述

研究参数 a k a_k ak变化对于极点的影响:
在这里插入图片描述
将上式称为灵敏度公式,其可以表示某个分母参数变化引起某个极点变化的灵敏度。(越小越不灵敏)
可以看出, k k k越大,对根的影响最大。(稳定时 ∣ p i ∣ < 1 |p_i|<1 pi<1)
且影响与极点之间的距离成反比。
在这里插入图片描述

Smith预估器采用串联型结构
在这里插入图片描述

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

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

相关文章

win11删除的文件不在回收站原因及找回文件方法

win11是微软最新推出的操作系统&#xff0c;它的外观和功能都有所升级。但是&#xff0c;在使用win11的过程中&#xff0c;有时候你会误删一些重要的文件&#xff0c;而这些文件并没有进入回收站&#xff0c;这该怎么办呢&#xff1f;win11删除的文件不在回收站怎么找回&#x…

[强化学习]学习路线和关键词拾零

强化学习学习方法和路线 学习路线 先从基础教材开始&#xff0c;构建RL的知识框架&#xff0c;熟悉关键名词和公式推导&#xff0c;扩展到Model-Free的Value-Based和Policy-Based方法&#xff0c;同时参考github的代码练习。接下来精读几篇经典论文&#xff0c;如DQN,PPO等。…

Node内置模块 【压缩zlib模块】

文章目录 &#x1f31f;前言&#x1f31f;zlib模块&#x1f31f;关于gzip与deflate&#x1f31f;使用zlib&#x1f31f;压缩与解压缩&#x1f31f;案例&#xff1a;压缩&#x1f31f;案例&#xff1a;解压缩 &#x1f31f;服务端gzip压缩&#x1f31f;HTTP配置&#x1f31f;HTT…

Android Binder图文详解和驱动源码分析

文章目录 前言一、跨进程通讯的过程1. AIDL客户端代码2. AIDL服务端代码3. 通信过程a. 发送请求时序图b. 接收请求时序图 二、Binder一次拷贝1. 发送给Binder驱动的数据2. 一次拷贝示意图 三、Binder驱动源码1. 相关数据结构2. 阅读Binder驱动源码 参考 前言 最近在学习Binder…

Jupyter Notebook的安装与使用

Jupyter Notebook Jupyter Notebook介绍Jupyter Notebook使用安装启动创建文件编写代码和文本常用命令配置文件 Anaconda Jupyter Notebook介绍 Jupyter Notebook是一个基于Web的交互式计算环境&#xff0c;可以让用户以文档形式记录代码、数据分析结果和说明文本&#xff0c;并…

认识ThinkPHP框架

认识ThinkPHP框架 前言一、MVC框架体系二、 ThinkPHP框架文件夹结构三. ThinkPHP下载和基本配置四. ThinkPHP其他东西 前言 ThinkPHP框架是一款非常优秀的PHP框架&#xff0c;是完全由中国人发明的框架 一、MVC框架体系 ThinkPHP框架由MVC框架体系构成&#xff0c;MVC的解释如下…

ubuntu下安装配置grpc

目录 1.准备环境 2.安装protobuf 3.安装cares库 3.安装grpc-1.17.x 1.准备环境 sudo apt-get install pkg-config sudo apt-get install autoconf automake libtool make g unzip sudo apt-get install libgflags-dev libgtest-dev sudo apt-get install clang libc-dev 如…

linux中的vim编辑器

Vim是一款强大的文本编辑器&#xff0c;可以在终端中使用。它有很多优点&#xff0c;比如快速、高效、灵活等&#xff0c;但同时也有一些难以掌握的操作。在本篇博客中&#xff0c;我们将详细介绍Vim的各种功能&#xff0c;以及如何使用它来提高的编辑效率。 1.基本模式 Vim具…

Unity之ShaderGraph入门

前言 随着Unity版本的不断升级&#xff0c;URP&#xff08;可编程渲染管线&#xff09;也越来越普及了。不管是从效果还是性能&#xff0c;都是吊打老版的build-in-shader。所以无论如何我们都要开始 拥抱URP&#xff0c;升级Unity的时候到了。 引擎版本 我这里选择了Unity …

01_Linux操作系统

第一章&#xff1a;Linux操作系统 阶段内容说明&#xff1a; Linux命令&#xff1a;软件测试第一个任务&#xff0c;一般都要进行环境搭建&#xff0c;一部分环境搭建内容是在服务器上实现的&#xff0c;跟服务器交互需要使用Linux命令&#xff08;因为服务器没有图形化界面&a…

Atlassian Confluence CVE-2022-26134 RCE漏洞

Atlassian Confluence CVE-2022-26134 RCE漏洞 Atlassian Confluence CVE-2022-26134 RCE漏洞 漏洞简介 远程攻击者在未经身份验证的情况下&#xff0c;可构造OGNL表达式进行注入&#xff0c;实现在Confluence Server或Data Center上执行任意代码. 漏洞影响范围 Confluence …

代码优化- 基本概念

思考一个问题&#xff1a;我们可以再抽象语法树上做编译优化吗&#xff1f; 答案是否定的&#xff0c;如果在抽象语法树上做编译优化的话&#xff0c;程序员所写的可能包含错误的代码&#xff0c;可能就被删除了&#xff0c;比如&#xff0c;对下面的程序做不可达代码删除优化…

Hadoop笔记整理

Hadoop 一. 引言 1.1 什么是大数据 大数据:(Big Data):数据量级很大的应用处理。TB级 &#xff0c;日数据增长GB级 K -- M---- G ---- T ----PB ---- EB ---ZB 1024通过对海量数据进行分析&#xff0c;挖掘&#xff0c;进而发现数据内在的规律&#xff0c;从而为企业或者…

【数据结构】超详细讲解:算术表达式转化为后缀表达式、前缀表达式、表达式树的构建

作者&#xff1a;努力学习的大一在校计算机专业学生&#xff0c;热爱学习和创作。目前在学习和分享&#xff1a;算法、数据结构、Java等相关知识。博主主页&#xff1a; 是瑶瑶子啦所属专栏: 【数据结构】&#xff1a;该专栏专注于数据结构知识&#xff0c;持续更新&#xff0c…

Praat脚本-037 | 批量把标注TextGrid生成韵律文本

目录 引题方案一方案二方案三获取脚本关注版权说明 引题 Praat是一种非常出色、轻便、开源免费的标注工具&#xff0c;它的最主要用途是标注&#xff0c;即对语音信号中的一些特征、信息进行标注&#xff0c;保存为TextGrid文件&#xff0c;这个TextGrid文件实质 上就是一种文…

chatGPT写文章-为什么chatGPT写的文章是原创

用chatGPT写文章会重复吗 ChatGPT在生成文本时会优先从先前的训练数据中学习到的文本中选取片段&#xff0c;并根据先前的内容和上下文来生成新的文本。因此&#xff0c;从理论上来说&#xff0c;在相同的输入条件下&#xff0c;每次使用ChatGPT生成文本都可能会产生不同的输出…

Web前端-Vue2.0框架学习

Web前端-Vue框架学习 1. 前端工程化与Webpack1.1 隔行变色的demo实现1.2 webpack的基本使用1.3 webpac插件1.3.1 webpack-dev-server插件1.3.2 html-webpack-plugin 1.4 webpack中的loader&#xff08;加载器&#xff09;1.4.1 css-loader1.4.2 less-loader1.4.3 url-loader &a…

【动态规划】经典问题第四组,背包问题运用(分割等和子集,最后一块石头的重量 II)

前言 小亭子正在努力的学习编程&#xff0c;接下来将开启算法的学习~~ 分享的文章都是学习的笔记和感悟&#xff0c;如有不妥之处希望大佬们批评指正~~ 同时如果本文对你有帮助的话&#xff0c;烦请收藏点赞关注支持一波, 感激不尽~~ 刷题专栏在这里~~ 深入理解动态规划建议关注…

各省份非金融类对外直接投资存量(2003-2020年)

中国各省份在非金融类对外直接投资方面呈现出不同的趋势和特点。截至2021年底&#xff0c;中国全国非金融类对外直接投资存量达到2.9万亿美元&#xff0c;其中&#xff0c;广东、江苏、山东、北京和上海是投资存量排名前五的省份。这五个省份的非金融类对外直接投资存量占全国总…

想想都脊背一凉,细思极恐,大家提早醒悟

一位程序员说了一件很可怕的事&#xff1a; 辛辛苦苦写了几年代码&#xff0c;做了些业务&#xff0c;在一片祥和中有了点成就感。然而回头一看&#xff0c;80&#xff05;是没啥用的&#xff0c;甚至没法写到简历上&#xff0c;让人脊背一凉&#xff01; 有人说&#xff0c;这…