PID超前滞后 VI
- 更新时间2023-02-21
- 阅读时长6分钟
PID超前滞后 VI
所属选板:PID VI
必需:完整版开发系统
实现带超前/滞后功能的PID控制器,通常用作前馈控制机制中的动态补偿器。该VI使用位置算法,是真实指数超前/滞后的逼近。单控制循环可通过该VI的DBL实例实现。并行多循环控制可通过DBL数组实例实现。
添加至程序框图 |
在选板中定位 |
PID超前滞后(DBL数组)

![]() |
输入指定输入值。 | ||||||
![]() |
整定参数指定整定参数。
| ||||||
![]() |
输出范围指定强制转换控制输出的范围。默认值为–100~100,对应于满量程百分比指定的值。 可修改为控制系统适合的范围。例如,可将工程单位相互关联,而不是百分比。控制器在指定最小值或最大值饱和时,该VI实现积分抗饱和。
| ||||||
![]() |
dt (s)指定VI调用的循环周期时间或间隔(单位为秒)。如dt (s)小于等于0,该VI使用内部计时器(1 ms精度)计算自上次调用后的时间。如dt (s)必须小于1 ms,请明确指定该值。默认值为-1。 | ||||||
![]() |
重新初始化?指定是否重新初始化输出为当前输入值。 | ||||||
![]() |
输出返回PID算法的控制输出,用于控制过程。 | ||||||
![]() |
dt输出(s)返回实际时间间隔(单位为秒)。dt输出(s)或者返回dt (s)的值,或者在dt (s)值设为–1时返回计算的间隔。 |
PID超前滞后(DBL数组)

![]() |
输入指定输入值。 | ||||||
![]() |
整定参数指定整定参数。
| ||||||
![]() |
输出范围指定强制转换控制输出的范围。默认值为–100~100,对应于满量程百分比指定的值。 可修改为控制系统适合的范围。例如,可将工程单位相互关联,而不是百分比。控制器在指定最小值或最大值饱和时,该VI实现积分抗饱和。
| ||||||
![]() |
dt (s)指定VI调用的循环周期时间或间隔(单位为秒)。如dt (s)小于等于0,该VI使用内部计时器(1 ms精度)计算自上次调用后的时间。如dt (s)必须小于1 ms,请明确指定该值。默认值为-1。 | ||||||
![]() |
重新初始化?指定是否重新初始化输出为当前输入值。 | ||||||
![]() |
输出返回PID算法的控制输出,用于控制过程。该VI根据输入数组的大小确定输出的长度。 | ||||||
![]() |
dt输出(s)返回实际时间间隔(单位为秒)。dt输出(s)或者返回dt (s)的值,或者在dt (s)值设为–1时返回计算的间隔。 |
PID超前滞后详细信息
该多态VI的DBL数组实例可用于多环PID控制应用。本例中输入的长度确定输出数组的长度。其他输入数组的长度无需与输入相同。该VI按如下方式将其他输入数组重新调整为输入的长度:
- 如输入数组大于输入,则将输入数组截断为输入的长度。不使用数组中的其他值。
- 如输入数组小于输入,则一直重复输入数组的最后一个值,直至与输入的大小匹配。
这样,每个输出计算中必须使用的输入值无需在传递至该VI的数组中重复指定。相反,数组可仅包含一个用于输出计算的值。
范例
关于使用PID超前滞后VI的范例见labview\examples\control\PID中的Simulation - Cascade and Feedforward Surge Tank Level VI。
打开范例
查找相关范例
添加至程序框图




