西门子S7-1200PLC系统有五种不同模块,分别为 CPU 1211C、CPU 1212C 、 CPU 1214C、CPU1215C和CPU1217C。其中的每一种模块都可以进行扩展,以*您的系统需要。可在任何 CPU 的前方加入一个信号板,轻松扩展数字或模拟量 I/O,同时不影响控制器的实际大小。
产品简介
详细介绍
辽宁西门子S7-1200模块(代理商)欢迎您
FB43 “PULSEGEN” 高级功能
表1. FB43 “PULSEGEN” 控制模式
模式 | MAN_ON | STEP3_ON | ST2BI_ON |
---|---|---|---|
三步控制 | 0 | 1 | Any |
双极控制范围的两步控制 (-*~*) | 0 | 0 | 1 |
单极控制范围的两步控制 (0~*) | 0 | 0 | 0 |
手动模式 | 1 | Any | Any |
三步控制
图1. FB43 “PULSEGEN” 三步控制图
表2. FB43 “PULSEGEN” 三步控制表
自动模式 | INV | QPOS_P | QNEG_P |
---|---|---|---|
MAN_ON=0 | -*<INV<0 | 0 | 1 |
0<INV<* | 1 | 0 | |
0 | 0 | 0 |
手动模式 | POS_P_ON | NEG_P_ON | QPOS_P | QNEG_P |
---|---|---|---|---|
MAN_ON=0 | 0 | 0 | 0 | 0 |
1 | 0 | 1 | 0 | |
0 | 1 | 0 | 1 | |
1 | 1 | 0 | 0 |
RATIOFAC
RATIOFAC在三步控制中可以改变正脉冲持续时间与负脉冲持续时间的比率,校正由于加热和制冷的机制不同而导致的差异。
RATIOFAC < 1
正脉冲持续时间 = ( INV / 100 ) * PER_TM
负脉冲持续时间 = ( INV / 100 ) * PER_TM * RATIOFAC
如下图2.所示:
图2.RATIOFAC从 1 到 0.5;负脉冲波形变化图
RATIOFAC > 1
正脉冲持续时间 = ( INV / 100 ) * ( PER_TM / RATIOFAC )
负脉冲持续时间 = ( INV / 100 ) * PER_TM
如下图3.所示:
图3.RATIOFAC从 1 到 2;正脉冲波形变化图
两步控制
图4. 双极调节
如下图5. 图6. 图7.所示:
黑色:正脉冲;红色:负脉冲
图5. INV=0时,正负脉冲时序图
图6. INV=50时,正负脉冲时序图
图7. INV= - 50时,正负脉冲时序图
图8. 单极调节
如下图9. 图10.所示:
黑色:正脉冲;红色:负脉冲
图9. INV= - 20时,正负脉冲时序图 (INV<0,正脉冲一直为0,负脉冲一直为1)
图10. INV=50时,正负脉冲时序图
常问问题
如果INV对应的脉宽与当前的分辨率不符,实际脉冲数是多少?
假设:CONT_C.CYCLE=10S,PULSEGEN.CYCLE=1S,分辨率为10%
INV(%) | 脉冲个数 |
---|---|
34 | 3 |
35 | 4 |
36 | 4 |
45 | 4 |
46 | 5 |
由上表红色数字可看到,采用 “四舍六入,五靠双 (靠经较接近的双数)”的方式计算
P_B_TM的作用?
FB43(PULSEGEN)基本使用
FB43 “PULSEGEN”用于构造一个PID控制器,以生成脉冲输出,用于比例执行器。还可以配置带有脉宽调制的两步或三步PID控制器,通常与FB41一起使用。
图1. FB41"CONT_C" 与FB43 “PULSEGEN”
主要参数
图2. FB43 “PULSEGEN" 程序块
注:以TIA Potal V13 SP1为例,该功能块在STEP 7中的管脚与其相同
表1. FB43 “PULSEGEN" 的输入参数
表2. FB43 “PULSEGEN" 的输出参数
表3. FB43 “PULSEGEN" 的静态变量
FB43 “PULSEGEN" 的工作模式
脉宽调制
在每个周期持续时间内,脉冲的持续时间和输入变量成比例。 通过 PER_TM 分配的周期与 PULSEGEN 指令的处理周期不同。 相反,PER_TM 周期由 PULSEGEN 指令的多个处理周期组成,因此每个 PER_TM 周期中 PULSEGEN 调用的次数决定了脉冲宽度的精度。
图3. FB43 “PULSEGEN" 脉宽调制
调节值的精度
由上图可见:
“采样比率”为 1:10(CONT_C 调用与 PULSEGEN 调用之比)时,此示例中的调节值精度将限制为 10%,换言之,只能在输出 QPOS_P 以 10% 为步长的脉冲持续时间对设置的输入值 INV 进行模拟。
精度将随每次 CONT_C 调用中 PULSEGEN 调用的次数的增加而提高。
例如,如果调用 PULSEGEN 的频率是调用 CONT_C 频率的 100 倍,则获得的操作值范围的精度为 1%。
自动同步
可以使脉冲输出与更新输入变量 INV 的指令(例如 CONT_C)自动同步。 这样可以确保尽快将输入变量的变化输出为脉冲。
脉冲执行器以对应周期持续时间 PER_TM 的时间间隔评估输入值 INV,并将该值转换成相应长度的脉冲信号。
由于通常以较慢的循环中断等级计算 INV,因此在 INV 更新之后,脉冲执行器应尽快开始将离散值转换为脉冲信号。
为此,块可以使用以下步骤来与周期的起始点同步:
如果 INV 发生变化,且块调用不在周期的*个或后两个调用循环中,则执行同步。 脉冲持续时间将重新计算,并在下一个循环与新周期一起输出。
图4. FB43 “PULSEGEN" 自动同步
如果 SYN_ON = FALSE,自动同步将关闭。