艾默生EC20系列PLC在空壓機聯(lián)控中的應(yīng)用
三 控制程序
空壓機聯(lián)控系統(tǒng)主要是PLC與單片機交換數(shù)據(jù)并確定每臺空壓機的運行方式。
程序的編寫主體上分兩大部分:讀數(shù)據(jù)部分和寫數(shù)據(jù)部分,流程圖如下,
?。ㄒ唬┳x取單片機的信息
根據(jù)空壓機控制器內(nèi)單片機的相關(guān)Modbus通訊協(xié)議,編寫通訊“讀信息指令”的數(shù)據(jù)幀,以PLC中的Modbus通訊指令發(fā)給控制器內(nèi)的單片機,單片機響應(yīng)后返回相應(yīng)的數(shù)據(jù)幀。通過返回幀的相應(yīng)字符串判斷與控制器相連的空壓機的各種故障狀態(tài)工作狀態(tài)以及空壓機的各種壓力溫度數(shù)據(jù),并將返回的各類數(shù)據(jù)存放在相應(yīng)的數(shù)據(jù)寄存器。
在該子程序的開始部分,執(zhí)行站地址加1的操作,即每進入讀數(shù)據(jù)子程序就會讀取上次讀過的程序的下一臺;靠站地址的不斷變化我們實現(xiàn)了讀取數(shù)據(jù)通訊的輪詢操作。
Modbus指令只需要一次上升沿作為發(fā)送使能,第一周期sm124沒有開合的狀態(tài)變化即沒有上升沿,所以第一周期過后靠sm1的常閉上升沿作為Modbus指令的發(fā)送使能。每次發(fā)送的同時靠發(fā)送使能的上升沿把sm135、sm136清位。sm135、sm136與通訊程序沒有任何直接關(guān)系,只是貫穿程序所必須的標志位。
?。ǘ┫騿纹瑱C中寫入相關(guān)信息
整個寫信息部分分下面三塊:
a.邏輯判斷運算部分
供氣壓力是系統(tǒng)各種運行狀態(tài)改變與保持的唯一指標。壓力小于供氣壓力要求下限就要更多的供氣機組運行以增加供氣量,壓力大于供氣壓力要求上限就要把當前運行供氣機組減少以減少供氣量。而處于上下限之間的壓力值時就保持當前機組的運行狀態(tài)不變。
按照工藝控制邏輯來構(gòu)成邏輯判斷運算部分,并且機組按照先開后停的原則順序啟動(1、2、3←→3、2、1)。
為保證數(shù)據(jù)的正確性,需要判斷讀信息子程序的站地址與寫信息程序?qū)?zhí)行控制操作的站地址是否一致,然后需要判斷相應(yīng)的故障信息寄存器是否為0,為0證明無故障或輕故障,不為0則不向該站發(fā)任何控制指令并馬上對下一臺操作。
由于我們對故障進行了分類,所以可以根據(jù)不同類別的故障進行不同的控制操作:
1類故障不讀不寫(相應(yīng)的故障信息寄存器為1)
2類故障只讀不寫(相應(yīng)的故障信息寄存器為2)
沒有故障紀錄(相應(yīng)的故障信息寄存器默認值為0)
對故障分類的控制策略是很有價值的,在以后的控制過程根據(jù)故障類別或者可以作為運行態(tài)的類別,進行有所區(qū)分的控制。不管是通訊控制方式還是數(shù)字I/O控制方式,相信都可以在某種程度上采用這類簡便有效的方法。










