当执行机构需要的是控制量的增量(例如驱动步进电机)时,应采用增量式PID控制。根据递推原理可得:

增量式PID控制算法:

根据增量式PID控制算法,设计了仿真程序,被控对象如下:

PID控制参数:kp=8,ki =0.10,kd =10。增量式PID阶跃跟踪结果如图所示。

仿真程序:

%Increment PID Controller

clear all;

close all;

ts=0.001;

sys=tf(400,[1,50,0D);

dsys=c2d(sys,ts,'z');

[num,den]tfdata(dsys,'v');

u_1=0.0;u_2=0.0;u_3=0.0;

y_1=0;y_2=0;y_3=0;

x=[0,0,0]‘;

error_1=0;

error_2=0;

for k=1:1:1000

time(k)=k*ts;

yd(k)=1.0;

kp=8;

ki=0.10;

kd=10;

du(k)=kp*x(1)+kd*x(2)+ki*x(3);u(k)-u_1+du(k);

if u(k)=10

u(K)=10;

end

if u(k)<=-10

u(k)=-10;

end

y(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;

error=yd(k)-y(k);

u_3-u_2;u_2-u_l;u_1-u(k);

y_3=y_2y_2-y_1;y_1=y(k);

x(1)=error-error_1;

x(2)-error-2 *error_1+error_ 2;

x(3)=error;

error_2=error_1;

error_1=error;

end

figure(1);

plot(time,yd.'r',time,y,'k', linewidth',2);xlabel('time(s));ylabel('yd.y);

legend('ideal position value' ,'tracking position value');

由于控制算法中不需要累加,控制增量△u(k)仅与最近k次的采样有关,所以误动作时影响小,而且较容易通过加权处理获得比较好的控制效果。

在计算机控制系统中,PID控制是通过计算机程序实现的,因此它的灵活性很大。一些原来在模拟PID控制器中无法实现的问题,在引入计算机以后,就可以得到解决,于是产生了一系列的改进算法,形成非标准的控制算法,以改善系统品质,满足不同控制系统的需要。

增量式PID控制算法及仿真相关推荐

  1. 增量式PID控制算法

    增量式PID控制算法 增量式PID控制算法概述: 注:本文内容摘自<先进PID控制MATLAB仿真(第4版)>刘金琨 编著,研读此书受益匪浅,感谢作者! 增量式PID控制算法概述: 当执行 ...

  2. 【转】增量式PID控制算法

    (转载 出处blog.ednchina.com/tengjingshu )blog.ednchina.com/tengjingshu/211739/message.aspx# 当执行机构需要的不是控制 ...

  3. 位置式 PID 控制算法和增量式 PID 控制算法

    数字 PID 控制算法通常分为位置式 PID 控制算法和增量式 PID 控制算法 一.位置式 PID 算法 : e(k): 用户设定的值(目标值) - 控制对象的当前的状态值 比例P : e(k)积分 ...

  4. C语言实现PID算法:位置式PID和增量式PID

    原创者微信公众号 PID算法可以说是在自动控制原理中比较经典的一套算法,在现实生活中应用的比较广泛. 大学参加过电子竞赛的朋友都应该玩过电机(或者说循迹小车),我们要控制电机按照设定的速度运转,PID ...

  5. 位置式PID与增量式PID区别浅析

    1PID控制算法 什么是PID PID 控制器以各种形式使用超过了 1 世纪,广泛应用在机械设备.气动设备 和电子设备.在工业应用中PID及其衍生算法是应用最广泛的算法之一,是当之无愧的万能算法 PI ...

  6. 基于自适应算法和增量式PID算法的模拟直升飞机控制系统

    基于自适应算法和增量式PID算法的模拟直升飞机控制系统 文章目录 基于自适应算法和增量式PID算法的模拟直升飞机控制系统 控制系统硬件 单片机系统 传感器系统介绍 直升机模拟系统介绍 系统模块介绍 A ...

  7. 位置式和增量式PID控制

    PID控制是一个二阶线性控制器 定义:通过调整比例.积分和微分三项参数,使得大多数的工业控制系统获得良好的闭环控制性能. 优点 a. 技术成熟 b. 易被人们熟悉和掌握 c. 不需要建立数学模型 d. ...

  8. 位置式PID与增量式PID区别浅析(百度百科增量式PID讲解思路概念更明确清晰)

    位置式PID与增量式PID区别浅析 Z小旋 2019-04-26 08:55:12  59882  收藏 713 分类专栏: NXP智能车学习 文章标签: 位置式PID PID 增量式PID 版权 1 ...

  9. 学习笔记—增量式PID详细实现(C语言)

    增量式PID指数字控制器的输出只是控制量的增量∆uk.当执行机构需要的控制量是增量,而不是位置量的绝对数值时,可以使用增量式PID控制算法进行控制. 1.公式推导: 增量式PID控制算法可以通过位置式 ...

最新文章

  1. CentOS安装编译环境
  2. Ngrok: 使用 Ngrok 实现内网穿透
  3. Leetcode69场双周赛-第二题5961.链表最大孪生和
  4. C++基础:各种输入方法总结
  5. 【转】spin_lock、spin_lock_irq、spin_lock_irqsave区别
  6. github 6月开源项目_我的开源项目如何在短短5天内在GitHub上赢得6,000颗星
  7. java jndi tcp_spring配置下通过tomcat的jndi服务连接数据库
  8. 网络协议:TCP流量控制
  9. 自拍会不会被大数据_大数据教你自拍 脸占画面1/3最漂亮
  10. python实现矢量分级渲染_AE 栅格图分级渲染
  11. ehcache缓存原理_Mybatis-09-缓存
  12. Datatypes In SQLite Version 3
  13. html制作跑马灯,html跑马灯制作
  14. 我的世界联机侠服务器文件夹,我的世界联机侠空岛服务器怎么建 | 手游网游页游攻略大全...
  15. 深入理解LTE网络的CDRX
  16. 进化计算(六)——NSGA II代码实现(Matlab)
  17. 睡眠即醒 蓝牙_如果您的Mac从睡眠中随机醒来,请尝试防止蓝牙唤醒功能 | MOS86...
  18. Android有线投屏实践
  19. jquery end()用法
  20. set_xscale 表示x轴缩放比例,一张图明明白白

热门文章

  1. mac bigsur python3.8 安装pillow失败
  2. 2023最新支付宝微信运动步数网页源码+附带原始接口
  3. GTS、GCK,GSR全称
  4. 【100%通过率】华为OD机试真题 C++ 实现【最接近最大输出功率的设备 /查找充电设备组合】
  5. Word文档中多个编号放同一行的方法(非技术)
  6. 营销活动·章鱼架构设计
  7. 从浪潮之巅到千里之行,区块链能否实现赢家通吃?
  8. Scrapy Tutorial
  9. Visual Studio2022编译报错解决方法
  10. “数字化”与“信息化”的区别是什么?