經鵬/黑龍江龍煤礦業(yè)集團股份有限公司雙鴨山分公司信息管理中心
淺析PLC程序模塊化的工業(yè)應用
經鵬/黑龍江龍煤礦業(yè)集團股份有限公司雙鴨山分公司信息管理中心
PLC具有通用性強、使用方便、適應面廣、可靠性高、抗干擾性能強、編程簡單等特點。PLC在工業(yè)自動化控制特別是順序控制中的地位在現在乃至今后一段很長的時間內將是其他控制系統(tǒng)不能替代的。
目前,PLC在國內外已廣泛應用于鋼鐵、石油、化工、電力、建材、機械制造、汽車、輕紡、交通運輸、環(huán)保及文化娛樂等各個行業(yè)。開關量的邏輯控制是PLC最基本、最廣泛的應用領域,它取代傳統(tǒng)的繼電器電路,實現邏輯控制、順序控制,既可用于單臺設備的控制,也可用于多機群控及自動化流水線。如注塑機、印刷機、訂書機械、組合機床、磨床、包裝生產線、電鍍流水線等。
工業(yè)PLC程序的模塊化早有體現,在西門子開發(fā)PLC編程軟件時,就已經制作過一些小的功能塊。在我們編程過程中應用這些功能塊,會使整個程序變得簡單且更具有條理性和實用性。隨著工業(yè)自動化水平的飛速發(fā)展,更多先進的控制理論和控制方法應用到工業(yè)自動化發(fā)展中,西門子編程軟件中的小功能塊已經無法滿足技術成熟的大規(guī)模工業(yè)PLC程序的模塊化需求,需要更全面的提升模塊化進程,完善具體本行業(yè)的程序模塊化功能。此功能的實現需要從程序制作初期就對具體的功能進行分類,編制初始的流程圖和中斷嵌套,這樣才可以滿足整體的工藝流程和具體的設備動作之間的有效銜接和具體控制關系[1],本文依據基本的編程理論和一些具體的實踐經驗討論工業(yè)PLC程序的模塊化進程和具體實施方法。
1.程序模塊化的必要性及實施方法。
現在很多大的集團公司和企業(yè)都擁有自己獨立的技術和豐富的設計經驗,他們擁有自己的品牌產品,這些都是工業(yè)技術成熟的標志,但是他們生產或設計另一臺相似的工業(yè)設備后,還需要程序員重新編寫相似的PLC程序和大量的程序校核,很少有一個固定的程序模式,更缺少把程序模塊化和系統(tǒng)化,這樣嚴重影響了設備的調試進程,更不利于設備的運行和維護。
下面針對天津鋼管集團有限公司技術中心中間實驗研究項目CTP440Ⅵ穿軋復合機組程序的具體應用,來說明PLC程序模塊化和系統(tǒng)化的工業(yè)應用。
該項目采用了西門子S7-300的PLC控制系統(tǒng)[2],在對S7-300編程過程[3]中可以看出,程序相對復雜,而且條件往復循環(huán),若沒有中斷子程序進行合理化調用,很容易出現錯誤。所以,考慮把具體的程序模塊化編寫PLC程序,最后在需要調用的模塊中調用這些模塊化后的子程序,使程序富有邏輯性和可讀性,PLC運行和掃描都會相對流暢,具體方法實施如下:
(1)首先把整個區(qū)域的工藝流程熟悉,并細心的劃分好整體的塊:前臺、主機、后臺他們各占一個功能塊。
(2)再把前臺的各個設備細分出來,單獨做它們的程序功能塊,具體做該設備的手動、自動、半自動模式下具體的動作觸發(fā)和終止,連鎖條件和啟動條件都應考慮周到,這樣單獨對設備編寫程序會使程序結構清楚,邏輯合理,編寫簡單。然后在前臺的主循環(huán)功能塊中調用各個設備的程序功能塊。
(3)主機分為運行和調整兩個模式:當運行的時候,必要的連鎖條件和啟動條件是必不可少的,還有一些故障的停車條件也應該認真考慮,把這些主機的控制條件有條理性的羅列出來,然后在一個功能塊中把主機運行的整個過程編寫出來。當把主機運行和調整兩大功能塊都編寫好以后,在主機的主循環(huán)功能塊中調用相應子功能塊。
(4)后臺分為后臺一段和后臺二段:后臺一段和后臺二段設備之間關聯很多,所以選擇把兩段設備放在一起編寫應用程序,即方便前后關聯,也為以后審查程序更容易找到關聯項。
(5)在主的循環(huán)功能塊中,調用前臺、主機和后臺的主循環(huán)功能塊,這樣整個程序的編寫任務完成,進入程序審查階段。
(6)程序審查就應先對單體設備的單個動作進行審查,然后前臺、主機和后臺主循環(huán)功能的審查,最后對主循環(huán)功能塊審查。上述編程給審查帶來合理的審查順序。
這種模塊化編程方法可以提高生產效率,減少勞動強度,有效促進公司產品的產業(yè)化進程。
2.模塊化的程序嵌套層次。
模塊化后的PLC程序將整個程序簡單化了很多,程序編寫和修改也方便,并且增強可讀性和實用性,然而并不是把所有程序模塊化就是最好,程序無限的模塊化的理論是不成立的,這里就應該考慮嵌套層次的問題,例如西門子S7-300中允許的嵌套層次最大是8,橫河FA-M3 PLC允許的中斷次數為4。所以,制作流程圖時候就應該考慮到具體嵌套層次的深度,直接不斷的中斷,不停的跳轉,當不小心把程序編寫成死循環(huán)的時候,整個程序就開始在一塊程序中循環(huán)掃描,對其他程序的掃描功能就消失,這樣編寫出來的程序是肯定不能正常運行的,為了杜絕死循環(huán),提高程序的利用率,就應該減少程序的嵌套層次。建議編寫程序時考慮好具體的步驟和需要達到的目的,先有明確的思路,再根據前期編程的流程圖,劃分好嵌套的層次和等級,最后規(guī)劃程序的整體結構,這樣編寫出來的程序,即實用,又簡潔,層次鮮明,可讀性高,穿軋復合機組的程序不僅能滿足了客戶的需要,還實現了程序的模塊化,層次鮮明。該項目PLC程序在嵌套層次上,關系明確,層次不深,中斷次數很少,整體是一個大的循環(huán)、子程序中大多不存在循環(huán),更沒有死循環(huán)。這樣的程序在應用過程中,既滿足了PLC模塊化的應用,又充分利用了PLC的嵌套層次的局限性,
會影響程序的正常運行,程序中的嵌套會使程序掃描過程中靈活地控制整個實驗機組的正常運行,實現了運用該機組進行一次穿孔,二次穿孔,限動軋管等多個功能,體現了多功能復合軋機在無縫鋼管實驗領域的強大功用[4、5]。
工業(yè)PLC程序的編寫,需要成熟的模塊化編程思路和合理的嵌套層次,兩者相輔相承,缺一不可。多數經典程序的編寫都是用必要的功能塊加上合理的嵌套來完成的,很多成熟的PLC區(qū)程序都擁有自己獨立的程序塊,這樣才更容易實現工業(yè)技術要求,更方便程序的編寫和應用;PLC程序需要合理化的嵌套,這樣程序才可以正常并流暢的運行。所以,建議程序員使用符合IEC1131-3國際標準的FBD功能塊編寫程
【1】廖常初.S7-300/400PLC應用技術[M].北京:機械工業(yè)出版社,2002.
【2】王永華.現代電氣控制及PLC應用技術[M].北京:北京航空航天出版社,2003
【3】廖常初.可編程序控制應用技術[M].(第三版)重慶:重慶大學出版社,2002.
【4】方承遠主編.工廠電氣控制技術[M].北京:機械工業(yè)出版社,2005.
【5】阮友德.電氣控制與PLC,北京:人民郵電出版社,2009年.