4. 软件测速的实现
可编程序控制器是按扫描方式工作的,实验证明,PLC在稳定运行过程中,其扫描周期基本保持不变,因此可以用机组起动程序执行期间的PLC扫描周期作为测量剩磁电压周期的计时单位,即通过测量发电机剩磁电压一个周期所经过的PLC扫描周期数来测得机组的转速,以取得点火转速信号。软件测速的流程如图2所示。

流程图中UF为测速脉冲,C0、C1为测速用的计数器。计数脉冲每2个PLC扫描周期产生一次上升沿,即测速脉冲为高电平时,每2个PLC扫描周期C0加1计数,在测速脉冲为低电平时,每2个PLC扫描周期C1加1计数。显然,机组转速越高,在每个测速脉冲周期,计数器所能加到的最大值越小,当小到一定数值A时,机组转速达到点火转速,即机组起动成功。
5. 软件测速程序实例
下面是上述软件测速方法在西门子S7-300PLC中用指令语句编程的实例。
A "测速"
FP M 0.2
= M 0.3
A M 0.3
JCN m001
L MB 1
INC 1
T MB 1
m001: A M 1.1
FN M 0.4
= M 0.5
A M 1.1
FP M 8.4
= M 8.5
AN M 0.6
= M 0.6
A M 8.5
L C#0
S C 0
A M 1.1
A M 0.6
CU C 0
L C 0
L DB1.DBW 4
<=I
AN M 1.1
= M 8.6
A M 0.5
L C#0
S C 1
A M 0.6
AN M 1.1
CU C 1
L C 1
L DB1.DBW 4
<=I
A M 1.1
= M 8.7
O M 8.6
O M 8.7
= M 2.0
BE
在程序中,"测速"为符号地址,是来自信号处理板的发电机剩磁电压脉冲信号,连接于PLC的开关量输入接口;存储位M2.0为点火转速标志位,若机组转速达到点火转速,M2.0为“1”,否则M2.0为“0”。为了提高测量的精度,在程序设计中,对来自信号处理板的发电机剩磁电压脉冲信号进行了分频处理,以M1.1位作为测速脉冲,其状态的变化频率为发电机剩磁电压频率的1/4。存储位M0.6为计数脉冲,其状态每一个PLC扫描周期翻转一次,则每2个PLC扫描周期产生一次计数脉冲。机组点火转速的比较限值存储在共享数据块DB1中,存储地址为DBW4,此数值要根据不同的原动机类型和所测得的PLC平均扫描周期适当设定。若在测速程序设计时,对发电机剩磁电压脉冲进行四分频,则确定点火转速比较限制A的计算方法为:

式中 P :发电机电枢绕组极对数
nf :设定的原动机点火转速(转/分)
Tj :计数脉冲周期(ms),为2个PLC的平均扫描周期
根据控制系统的需要,对上述程序进行适当修改,也可同时获得发电机组停机转速和超速信号。
6. PLC扫描周期的测取
上述点火转速的检测方法是以PLC平均扫描周期作为计时单位,要根据PLC平均扫描周期来确定比较限值A。PLC平均扫描周期可在运行测试中测取,如在西门子S7-300PLC中,在“ONLINE”状态打开SIMATIC管理器窗口,点击PLC>Module Information>Scan Cycle Time,即可显示PLC扫描周期设置及实际扫描周期信息如图3所示。