西門子S7-200 PLC高速計數功能除用于常見的運動控制系統(tǒng)轉速測量之外,在流量計量方面也有著廣泛的用途。
由于PLC內部沒有相應的算法來計算頻率,因此,測定脈沖輸出信號的流量計的瞬時流量就需要在STEP 7 Micro/WIN中通過以下三部分編程來實現:(1) 定義高速計數器計數流量計輸出脈沖;(2) 采用定時中斷采集周期時間內高速脈沖輸入;(3) 計算高速輸入脈沖頻率并通過流量換算公式:瞬時流量(ml/s)=脈沖頻率(pulse/s)÷脈沖當量(pulse/ml)計算瞬時流量。
1 定義高速計數器
脈沖輸出信號的流量計適用于單相計數,因此在主程序中定義高速計數器模式0,將HSC0 的控制字節(jié)SMB37賦值16#C8,啟用高速計數器﹑ 更新初始值﹑設定計數方向為增計數,并使用SM0.1初始化高速計數器,如圖1所示。
圖1定義高速計數器
2 高速輸入脈沖頻率計算
為保證瞬時流量的準確性及實時性,須按照一定的時間間隔采集高速輸入脈沖。示例中采用定時中斷0每隔250ms更新高速輸入脈沖值HC0,并在中斷程序中應用該數值運算得到高速輸入脈沖頻率,如圖2,圖3所示。
圖2定時中斷
圖3 高速輸入脈沖頻率計算
為采集250ms時間間隔的脈沖值,在頻率計算的同時,需要更新高速計數器。由于只是更新初始值,因此初始化高速計數器時設定的控制字SMB37 不用再做更改,調用HSC指令即可。
3 瞬時流量計算
參考流量換算公式,在中斷程序中通過編程運算即可計算出瞬時流量,如圖4所示。
圖4 瞬時流量計算