用matlab进行pid校正 编程实现,深入浅出PID控制算法(二)————PID算法离散化和增量式PID算法原理及Matlab实现...

本文介绍了如何用MATLAB进行PID控制器的编程实现,包括连续系统到离散化的转换和增量式PID算法。通过采样周期的近似,将模拟PID转换为数字PID,并提供了MATLAB代码示例进行仿真,分析了PID参数对系统性能的影响,如响应速度、超调和稳定性。
摘要由CSDN通过智能技术生成

引言

上篇介绍了连续系统的PID算法,但是计算机控制是一种采样控制,他只能根据采样时刻的偏差来计算控制量,因此计算机控制系统中,必须对公式进行离散化,具体就是用求和代替积分,用向后差分来代替微分,使模拟PID离散化为数字形式的差分方程。

准备工作

在采样周期足够小时,可以作如下近似:

式中

T————为采样周期

k————为采样序号,k=0,1,2….

用这种近似方法,可以得到两种形式数字PID控制算法

位置式PID算法

由前面推倒很容易得到离散化后的表达式

由此式可以看出数字调节的输出u(k)跟过去的所有偏差信号有关,计算机需要对e(i)进行累加,运算量太大,一般不用,重点说明增量式PID算法。

增量式PID算法

由于增量式PID的算法不够方便,不仅对偏差进行累加,占用过多的存储单元,而且不方便写程序,所以需要进行一些改进,对位置式取增量,方法如下:

Matlab仿真

分析过程

1、对G(s)进行离散化即进行Z变换得到Z传递函数G(Z);

2、分子分母除以z的最高次数即除以z的最高次得到;

3、由z的位移定理Z[e(t-kt)]=z^k*E(z)逆变换得到差分方程;

4、PID编程实现

具体实现细节在代码注释中已经给出

%设一被控对象G(s)=50/(0.125s^2+7s),

%用增量式PID控制算法编写仿真程序

%(输入分别为单

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值