简化版PID控制器函数块 - PID_Simplified

这是一个函数块定义,定义了一个名为PID_Simplified的函数块,用于实现一个简化版的PID控制器。

函数块定义:

FUNCTION_BLOCK PID_Simplified
VAR_INPUT
	Rst : BOOL;				//复位标志(TRUE:复位)
	E	: REAL;				//控制器输入(偏差)
	Pt_Par	: POINTER TO PID_Par; //PID参数指针
END_VAR
VAR_OUTPUT
	Y   : REAL;					//控制器输出
END_VAR
VAR
	E_i						:REAL; //偏差的累计量(积分项)
	E_Abs				:REAL; //偏差的绝对值
	Out_i					:REAL := 0; //积分项的输出
	Out_i_Last		:REAL := 0; //上一次的积分项输出
	Out_p					:REAL:=0; //比例项的输出
	Count					:UINT; //计数器
	I_Delay				:UINT:=200; //积分项的延迟
END_VAR

变量说明:

输入变量:

  • Rst: 复位标志,当为TRUE时表示需要复位PID控制器。
  • E: 控制器的输入,即偏差值。
  • Pt_Par: 指向PID参数结构体的指针,包含比例、积分、微分等参数。

输出变量:

  • Y: 控制器的输出值。

内部变量:

  • E_i: 偏差的累计量,用于积分项计算。
  • E_Abs: 偏差的绝对值。
  • Out_i: 积分项的输出值。
  • Out_i_Last: 上一次的积分项输出值。
  • Out_p: 比例项的输出值。
  • Count: 计数器,用于计时或计数。
  • I_Delay: 积分项的延迟时间。

功能概述:

该函数块根据输入的偏差值和PID参数,计算出控制器的输出值。具体的计算过程需要根据函数块的具体实现来确定,但通常会包含以下步骤:

  1. 计算比例项:将偏差值乘以比例系数。
  2. 计算积分项:将偏差值进行累加,并乘以积分系数。
  3. 计算微分项:计算偏差值的变化率,并乘以微分系数。
  4. 将比例项、积分项和微分项加和,得到最终的控制器输出值。

该函数块可以用于各种需要进行闭环控制的应用场景,例如温度控制、流量控制、压力控制等。

简化版PID控制器函数块 - PID_Simplified

原文地址: https://www.cveoy.top/t/topic/ilq 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录