PI校正环节的程序实现推导过程
PI校正环节在经典控制论中非常有用,特别是对负反馈控制系统,基本上都有PI校正环节。
1.下面分别说明比例环节和积分环节的作用,以阶跃信号为例。
①比例环节单独作用
以上分析说明,若只有比例环节的控制系统,阶跃响应也是一个阶跃信号,但会存在一定静差,且静差值随Kp增大而减小,但始终存在,不随时间变化。
输出的理论波形跟实际的数字控制输出波形会不一致。因为实际数字控制系统每隔一个计算周期运算一次,而在这个计算周期中,输出量只受上一次的调节参数和中间变量的控制。所以可能会出现超调情况。
②比例-积分共同作用
拉氏反变换
以上分析说明,当加入积分项后,阶跃响应为一逐渐上升的曲线,且误差分量随时间逐渐趋于零;KI越大,误差分量衰减越快,KP越大,误差分量衰减越慢。
PI校正环节的优缺点:
比例系数Kp增大,则会减小稳态误差,减小了上升时间,提高了响应速度,但会引入并逐渐增大超调量,直至系统振荡;
积分环节提高了系统型别,消除稳态误差,但参数KI若过大,积分作用太强,会在大偏差阶段引起过大超调,调节时间变长,最后振荡。
2.PI环节的表达式
传递函数
微分方程
对应的离散方程为
写成序列形式
写出相应的 z 变换系统方程
根据序列形式,可以写出程序代码:
#define Ts 0.00001 // 采样时间
typedef struct PI_Ele{float kp; // 比例环节系数float ki; // 积分环节系数float x1;float x2;float yout;float y1;
} PI_Vector;
#define PI_Macro(PI_Vector v) \ // 算法的宏定义v.yout = (v.kp+v.ki*Ts)*v.x2-v.kp*x1+v.y1; \v.x1 = v.x2; \v.y1 = v.yout;
转载于:https://www.cnblogs.com/tuxinbang/p/10705442.html
PI校正环节的程序实现推导过程相关推荐
- 1029 C语言文法定义与C程序的推导过程
program à external_declaration | program external_declaration 程序→ <外部声明> | <程序> <外部声明 ...
- 均值漂移Mean Shift原理及推导过程
1.概述 Mean Shift的概念最早由Fukunage在1975年提出,后来由Yizong Cheng对其进行扩充,主要提出了两点的改进:一是定义了核函数,二增加了权重系数.核函数的定义使得偏移值 ...
- python运行程序-Python程序的执行过程
1.C++和C都是属于编译型语言,本来的.c文件都是用高级语言编写的,计算机是不能识别高级语言的,所以,必须要通过编译,链接等手段,将.c文件转换成可执行文件,可执行文件就是纯二进制文件,然后计算机才 ...
- Softmax vs. SoftmaxWithLoss 推导过程
Softmax vs. SoftmaxWithLoss Softmax function: Softmax Loss function(cross-entropy): SoftmaxWithLoss的 ...
- 手眼标定_全面细致的推导过程
点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 本文转自 | 新机器视觉 本文解决的问题: 机械手搭载双目相机,手 ...
- 关于罗德里格斯公式(Rodrigues‘sFormula)的详细推导过程
关于罗德里格斯公式[Rodrigues'sFormula]的详细推导过程 1 旋转向量 2 罗德里格斯公式 2.1 罗德里格斯公式定义 2.2 罗德里格斯公式推导 3 旋转矩阵到旋转向量的转换 1 旋 ...
- 数字录波器的理解——如何完成这一过程的(无数学推导过程)
数字滤波器的理解 ······· 接触数字录波器之前一定接触过模拟滤波器,这种实实在在的东西-物理上存在的,给我们的感觉灰常好.我们都接触过复域也就是(频率分析域)的拉普拉斯变换和傅里叶变换,一个单位 ...
- 生成两组相互独立服从标准正态分布的随机数(推导过程)
生成两组相互独立服从标准正态分布的随机数(推导过程) 预备知识:均匀分布的特殊地位 生成两组独立的服从标准正态分布的随机数 预备知识:均匀分布的特殊地位 设 F ( x ) F(x) F(x)满足:( ...
- 快速傅里叶变换(FFT)的推导过程(DIT)
FFT是一种快速计算DFT的算法.按时间抽选的基-2FFT推导过程如下: 首先给出DFT的计算公式: X(k)=DFT[x(n)]=∑n=0N−1x(n)WnkN X ( k ) = D F T [ ...
最新文章
- IOS开发笔记13-Object-C中的NSString
- android 彩蛋 miui,MIUI12最新更新,安卓11彩蛋终于出现,流畅度提升
- .NET开发框架(二)-框架功能简述
- Oracle Sql 胡乱记
- 《深度学习:Java语言实现》一一1.3人工智能与深度学习
- 使用 Google gflags 简化命令行参数处理
- iscsi:IO操作流程(三)
- Linux学习总结(55)——Linux 运维常用脚本
- matlab无法打开.m文件查看
- python系统学习_【Python系统学习】基础篇
- 毕设项目 - 基于SSM的企业公寓宿舍后勤管理系统(含源码+论文)
- json在线解析工具
- MyEclipse破解 CI-2018.9.0版本
- Notepad++下载
- 线程的优先级(详细)
- DataLossError : corrupted record at XXXXXXX,BERT预训练报错
- C#.Net实现AutoCAD块属性提取
- 立体栅格地图_三维栅格地图构建之三:点集到栅格的投射
- 0013-图像的阈值化-OTSU、固定阈值法、基于局部的阈值化
- MSN 与六度分隔理论(转)
热门文章
- Symbian开发系列 - 入门篇
- 程序员 专属的新年祝福原来是这样的! (附中奖名单)
- C# TripleDES NoPadding 时对待加密内容进行补字节(8个字节为一个Block)
- cassandra命令
- Widgets 整理
- [小梅的体验课堂]Microsoft edge canary mac版本体验
- Linux下截取指定时间段日志并输出到指定文件
- 软工实践原型设计——PaperRepositories
- 丢失/root目录导致命令行-bash-4.1#,解决方法
- 搭建Solr集群的推荐方案