直播课堂
HOME
直播课堂
正文内容
plc编程实现pid 「百说不如一练」如何自己动手写一个PID控制算法?
发布时间 : 2024-10-06
作者 : 小编
访问数量 : 23
扫码分享至微信

「百说不如一练」如何自己动手写一个PID控制算法?

前言

一般来说,各家品牌的PLC都是自带PID功能的,直接调用即可。要求不高的调节场合,直接使用默认参数即可。有些控制要求较高的场合,除了耐心也要讲究一些技巧,不过学会PID通用调试方法,什么控制器都不怕!当然也可以通过下面的(模型+动态图)更直观的学习PID控制。西门子PLC有三种PID功能,可以参考PID功能选型以及故障处理。不过今天重点来说明下,如何自己动手做一个PID控制算法:根据PID的通用算法公式分别用C语言和梯形图来编程实现。(以下图片源自网络)

一、PID控制算法公式

二、C语言程序

直接上C语言代码:

三、梯形图程序

再上PLC梯形图:

其实根据PID算法公式,实现的方法有很多,可以用各种不同的编程语言来实现,欢迎朋友们留言说说你们是如何实现的?

PLC编程过程控制PID指令的使用方式

使用PLC稳定控制一个连续的对象时,典型的控制方式就是使用PID算法实现控制过程。PID是典型的单输入单输出 控制手段,用于执行根据输入的变化量而改变输出值的控制情况。在使用的过程中,可以依照不同的工艺要求,对PID进行叠加、嵌套等处理。

PID指令使用方法

执行对目标值S1、测量值S2、参数S3~S3+6进行设定的程序后,每隔采样时间S3将运算结 果(MV)保存到输出值D中。

PID指令使用方法

S1:保存目标值(SV)的数据寄存器编号

设置为PID运行的控制目标值(控制过程需要稳定的目标值)。PID指令运行过程中,不修改其变量内部数据。

S2:保存测量值(PV)的数据寄存器编号

设置为PID运行过程中的过程值(控制过程反馈的实时状态值),如恒温控制系统,系统的测量温度值就为过程值,应映射设置到S2。

S3:保存参数的数据寄存器编号

PID运行的过程参数。PLC的PID算法可以配置为自整定方式运行,集成了2种自整定方式。分别为:

1、 极限循环法(占用从S3开始的29个连续地址)

2、阶跃响应法的(占用从S3开始的25个连续地址)

D:保存输出值(MV)的数据寄存器编号

此变量为PID运行过程中,通过反馈状态计算后的控制输出值。

参数说明

PID运行过程参数说明,如下表格所示。其中最最关键的几个参数为:

PID整定过程

经验原则(参考):

1、先比例,后积分,再微分

2、参数从小到大设置

3、比例超调后,加积分

4、曲线振荡频繁,则加比例

5、大曲线振荡,则减比例

6、曲线偏离回复慢,则降积分

7、曲线波动周期长,则加积分

使用过程中问题点

在设置S3~S3+29这个区域的时候,若设置为掉电保持区域,一定注意不要将D的地址设置为掉电保持区域,否则可能会出现系统抖动;若需要设置到掉电保持区域,则应在初始化的时候,对D地址的值进行复位。

(转载请注明来源函控自动化工程师头条号)

相关问答

plc能进行pid运算吗?

是的,PLC可以进行PID运算。PID是指比例、积分和微分控制,是一种经典的控制算法,在工业自动化中被广泛应用。PLC通过编程实现PID算法,能够根据输入信号和设定...

西门子PLC300的PID调节怎么编程啊?

现成的块,FB40\FB41基本上不需要编程的直接调用这个块,然后配置下即可当然在线调整参数也比较重要300的PID没有向导的S7-300无向导,直接在周期性中断OB中...

1200PLCPID调节方法?

您好!1200PLC的PID调节方法有很多种,这里我提供一种常用的方法。首先,您需要在PLC中添加一个PID指令块,然后通过调试面板进行PID参数的调节。具体步骤如下:...

关于PLC的PID应用,目标值、设定值、与输出值的关系?

PID是闭环控制系统,这个系统根据反馈的过程值来调整输出值,使过程值向目标值(设定值)靠拢。输出值是根据目标值和过程值的差值变化的,不是根据单独的目标值...

西门子plc的pid指令详解?

西门子plc的pid指令的详解,是用于实现PID控制的指令集,可以在S7-1200PLC中实现温度、压力、液位等过程控制。使用方法如下:1.配置PID控制块:在TIAPortal...

欧姆龙plcpid指令的应用?

欧姆龙PLCPID指令是一种控制指令,主要用于控制系统中的温度、压力、流量等变量,使其达到设定值。PID算法之所以被广泛应用,是因为它可以自适应地对系统进行调...

台达plc的PID指令输出MV怎么转模拟量?

PID输出的是一个模拟量值,你把输出的模拟量4-20mA或者0-10V接到变频器上不就行了,把最小频率设置为30Hz,最大频率为50Hz。可编程逻辑控制器,它采用一类可编程...

怎么实现位置式pid和增量式pid公式的程序化?

(1)位置式PID控制的输出与整个过去的状态有关,用到了误差的累加值;而增量式PID的输出只与当前拍和前两拍的误差有关,因此位置式PID控制的累积误差相对更大;...

信捷plcpid指令详解?

关于这个问题,PLCPID指令是信捷PLC的一个PID控制指令,用于实现闭环控制。具体详解如下:语法:PLCPID(P,I,D,SP,PV,MV,OUT,ENABLE,RESET)...

温控表PID调节控制与PLC温控哪个好?

一般还是直接使用温控器PID调节控制比较好,使用温控器的PID自整定,可以达到很好的温控效果。虹润的PID有用过的就说不错,智能表还可以按照工艺要求的升温曲线...

 大快刀二十一工  高砂义勇队 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部