变速积分PID控制算法
变速积分PID控制算法
- 变速积分PID控制算法:
- 变速积分PID的基本思想:
- 变速积分的PID积分项表达式:
注:本文内容摘自《先进PID控制MATLAB仿真(第4版)》刘金琨 编著,研读此书受益匪浅,感谢作者!
变速积分PID控制算法:
在普通的PID控制算法中,由于积分系数kik_iki是常数,所以在整个控制过程中,积分增量不变。而系统对积分项的要求是,系统偏差大时积分作用应减弱甚至全无,而在偏差小时则应加强。积分系数取大了会产生超调,甚至积分饱和,取小了又迟迟不能消除静差。因此,如何根据系统偏差大小改变积分的速度,对于提高系统品质是很重要的。变速积分PID可较好地解决这一问题。
变速积分PID的基本思想:
变速积分PID的基本思想是设法改变积分项的累加速度,使其与偏差大小相对应:偏差越大,积分越慢,反之则越快。为此,设置系数f(e(k))f(e(k))f(e(k)),它是e(k)e(k)e(k)的函数。当∣e(k)∣|e(k)|∣e(k)∣增大时,fff减小,反之增大。
变速积分的PID积分项表达式:
ui(k)=ki(∑i=0k−1e(i)+f[e(k)]e(k))Tu_i(k)=k_i (\sum_{i=0}^{k-1}e(i)+f[e(k)]e(k))T ui(k)=ki(i=0∑k−1e(i)+f[e(k)]e(k))T
系数fff与偏差当前值∣e(k)∣|e(k)|∣e(k)∣的关系可以是线性的或非线性的,可设为
f[e(k)]={1∣e(k)∣≤BA−∣e(k)∣+BAB<∣e(k)∣≤A+B0∣e(k)∣>A+Bf[e(k)]=\begin{cases} 1 & \text {}|e(k)|\leq B \\ \frac{A-|e(k)|+B}{A} & \text{} B<|e(k)|\leq A+B \\ 0 & \text{} |e(k)|>A+B\end{cases}f[e(k)]=⎩⎪⎨⎪⎧1AA−∣e(k)∣+B0∣e(k)∣≤BB<∣e(k)∣≤A+B∣e(k)∣>A+B
fff值在[0,1]区间内变化,当偏差∣e(k)∣|e(k)|∣e(k)∣大于所给分离区间A+BA+BA+B后,f=0f=0f=0,不再对当前值e(k)e(k)e(k)进行继续累加;当偏差∣e(k)∣|e(k)|∣e(k)∣小于BBB时,加入当前值e(k)e(k)e(k),即积分项变为ui(k)=ki∑i=0ke(i)Tu_i(k)=k_i\sum_{i=0}^{k}e(i)Tui(k)=ki∑i=0ke(i)T,与一般PID积分项相同,积分动作达到最高速;而当偏差∣e(k)∣|e(k)|∣e(k)∣在B与A+BB与A+BB与A+B之间时,则累加计入的是部分当前值,其值在0−∣e(k)∣0-|e(k)|0−∣e(k)∣之间随∣e(k)∣|e(k)|∣e(k)∣的大小而变化,因此,其积分速度在ki∑i=0k−1e(i)Tk_i\sum_{i=0}^{k-1}e(i)Tki∑i=0k−1e(i)T和ki∑i=0ke(i)Tk_i\sum_{i=0}^{k}e(i)Tki∑i=0ke(i)T之间。变速积分PID算法为:
u(k)=kpe(k)+ki(∑i=0k−1e(i)+f[e(k)]e(k))∗T+kd[e(k)−e(k−1)]u(k)=k_pe(k)+k_i(\sum_{i=0}^{k-1}e(i)+f[e(k)]e(k))*T+k_d[e(k)-e(k-1)]u(k)=kpe(k)+ki(i=0∑k−1e(i)+f[e(k)]e(k))∗T+kd[e(k)−e(k−1)]
这种算法对A,B两个参数的要求不精确,参数整定较容易。
变速积分PID控制算法相关推荐
- 变速积分pid控制器matlab,变速积分PID控制系统设计.docx
课程设计报告 设计题目变速积分PID控制系统设计 课程名称计算机控制技术B 姓名 苏丹学号 2008100731 班级自动化0803 教师闫高伟 摘 要 错误!未定义书签. Abstract 第1章数 ...
- 积分分离PID控制算法
积分分离PID控制算法 积分分离PID控制: 积分分离控制基本思路: 积分分离控制算法表示: 积分分离式PID控制算法程序流程图: 注:本文内容摘自<先进PID控制MATLAB仿真(第4版)&g ...
- 微分先行PID控制算法用C语言实现!
1.微分先行PID控制算法框图 2.微分先行PID控制算法公式 3.微分先行PID控制公式用C语言实现 微分先行的PID算法实现,包括位置型和增量型两种实现方式. (1)位置型 void PIDReg ...
- 经典PID控制算法用C语言实现!
1.经典PID控制算法框图 2.经典PID控制算法公式 3. 经典PID控制公式用C语言实现 float pidUpdate(PidObject* pid, const float error) {f ...
- 四轴PID控制算法详解(单环PID、串级PID)
正文开始:这篇文章分为三个部分: PID原理普及 常用四轴的两种PID算法讲解(单环PID.串级PID) 如何做到垂直起飞.四轴飞行时为何会飘.如何做到脱控? PID原理普及 1. 对自动控制系统的 ...
- PID控制器开发笔记之五:变积分PID控制器的实现
在普通的PID控制算法中,由于积分系数Ki是常数,所以在整个控制过程中,积分增量是不变的.然而,系统对于积分项的要求是,系统偏差大时,积分作用应该减弱甚至是全无,而在偏差小时,则应该加强.积分系数取大 ...
- 【转】增量式PID控制算法
(转载 出处blog.ednchina.com/tengjingshu )blog.ednchina.com/tengjingshu/211739/message.aspx# 当执行机构需要的不是控制 ...
- 浅谈单神经元网络PID控制算法及MATLAB仿真
本文仅用作记录学习单神经元网络PID控制算法过程的心得体会及个人理解,若有错误,欢迎指正! 传送门 神经网络 神经网络的三个主要构成 神经元 单神经元网络PID控制算法 增量式 位置式 神经元的输入 ...
- Pid控制算法-专家PID与模糊PID的C++实现
PID控制算法的C语言实现 八 专家PID与模糊PID的C语言实现 本节是PID控制算法的C++语言实现系列的最后一节,前面7节中,已经分别从PID的实现到深入的过程进行了一个简要的讲解,从前面 ...
最新文章
- MyEclipse断点调试
- 老人与海好词100英文带翻译_《老人与海》经典语录(英文+译文)
- skt7850鸿蒙策略,lol 英雄联盟 SKT状态回暖轻取外卡,SUP难挡Faker
- python os.path模块常用方法详解
- UI设计灵感|如何简易花繁多的数据?功能仪表盘界面设计来看
- 自定义按键_NS推送10.0.0版本更新 新增按键自定义和数据转移功能
- 为Web 开发者Bug 报告和跟踪工具
- Unity AudioMixer效果器设置
- unity如何往下挖地形_Unity 地形
- Discuz!论坛教程之去掉帖子列表页的附件图标的方法
- 超五类网线与六类网线水晶头为什么不可通用
- PowerApps教程07-记录的详细信息显示
- 公司 邮件 翻译 培训 长难句 13
- 可能是国内最火的开源项目 —— PHP 篇
- 实战技法 - 短线操盘 (11)
- 186_一文看懂压敏电阻和tvs的区别
- 10G Ethernet PCS/PMA IP 核
- 读懂常见IRP:IRP_MJ_CLEANUP\IRP_MJ_CLOSE\IRP_MJ_CREATE
- Could not find any downloads that satisfy the requirement tensorflow
- 论文管理工具:Zotero使用心得
热门文章
- 鼠标点击器20+版本使用教程系列(7)鼠标轨迹记录点击器1.1使用教程
- 关于AE渲染高清GIF图片的解决方案
- 意念机Umind及其控制无人机
- 【深度学习篇】---CNN和RNN结合与对比,实例讲解
- 1.《The Leon Professional》
- 计算机文档培训讲座,计算机的基础知识培训讲座.ppt
- 浅入浅出Oracle Spatial GeoRaster 10g影像数据管理(2)
- 服务器通过笔记本共享网络
- 视口锁定解锁lisp_求一个cad 图层锁定和解锁的lisp命令?
- 白话自然语言处理(1)之概述