隨著工業控制技術的發展,PLC已經作為工業控制的基礎廣泛地運用到工業自動化領域中。
可編程控制器的基本組成:
從語辭義上來講,PLC也是一種計算機控制系統,只不過它比一般的計算機具有更強的與工業過程相連接口和更直接地適用于控制要求的編程語言。所以PLC與計算機的組成十分相似,具有中央處理器(CPU),存貯器,輸入/輸出(I/O)接口,電源,編程語言,詳見圖1。
2 PLC編程思想
現代工業生產的控制體系通常需要涉及很多外部的設備,對于設備的動作要求通常十分嚴格。在很長一段時間中,編程需要首先根據具體要求繪制流程圖,然后根據流程圖編寫程序的框架,再在這個流程框架中增加約束信息和報警信息,因此這一編程思想是面對過程的。數據與數據的處理過程是統一的,沒有多少可以重用的代碼,并且如果代碼的數量過大,會對維護工作產生很大壓力。面向過程的PLC編程方法,主要存在的缺陷在于:割裂被控對象在PLC程序和現實中的聯系,使得內部邏輯和被控對象不太明確,從而使程序后期的維護工作變得困難;另外程序內部的邏輯關系復雜,因此控制的流程不夠明確,容易造成錯誤;輸入和輸出都缺乏整體性,程序員通常對于各輸入點和輸出點作出孤立的考慮,無法實現兩者之間有效的邏輯關聯。
3 可編程控制器的編程方法
3.1 編程語言
目前的PLC編程語言主要有梯形圖、語句表、邏輯圖、高級語言等。
梯形圖———這種方法比較適合于初頻道接觸PLC的編程人員使用,因為它比較直觀,簡單易懂,只要具備基本的電路知識,易看懂易編程。
語句表———用助記符表示的PLC的一個功能。PLC在執行程序時,實際上就是按照語句表編寫順序,逐個按照助記符表示的功能進行執行。這種方法比較直觀地反映出編寫程序的大??;在某些指令執行過程中,用語句表編寫比用梯形圖編寫掃描時間較少。但對于初學者和復雜的功能有一定的難度。
邏輯圖———用邏輯關系表達出來的方式編程。它具有邏輯關系比較、清晰,但不易懂。一般情況下不采用此方法。
高級語言———如C語言,Basic語言或專門的高級語言。使用高級語言編程的PLC,一般是中高型PLC。
3.2 程序的結構框圖
在編程序之前,必須首先具備一些資料,這些資料是根據被控對象的要求和條件確定的,一般有:I/O點分布和意義表,參數的定義和地址分配表,被控對象響應的工藝及安全性條件說明書等。
程序框圖是編程的主要依據,用此要盡可能地根據資料詳細化,以便確定應用程序的基本結構。程序框圖包括兩種:程序結構框圖和功能控制框圖。
程序結構框圖是一臺PLC的全部功能部分在內存中前后排列的縮影,使用中可以根據結構圖了解所有功能控制在整一個程序中的位置。
3.3 程序設計結構方式
軟件設計任務的復雜程度決定用戶程序的結構。
(1)線性編程:程序以線性的或順序的方式執行每條指令。基本上是將程序放在一個主程序內全部完成。
(2)分部式編程:程序設計按照動作邏輯功能的不同分成各自獨立的子程序塊,每個子程序完成一項或多項簡單的且獨立的任務。然后由主程序按照工藝有條件或無條件調用子程序。這些子程序在每一個掃描周期內只能調用一次。
(3)結構化編程:獨立編制具有通用性的程序塊或子程序,通過賦給這些通用子程序塊不同的信息或條件,在每個掃描周期內可以反復調用這些通用程序塊。
對于壓鑄機程序設計,由于其有一定的復雜性,建議采用“分部式編程”方法。具有的優點有:易設計、易維護、易擴展。
3.4 安全回路的設計
設計工業化控制程序,安全和信息描述是必要的一個環節。壓鑄機的動作流程具有一定的危險性,因此安全回路的設計是應引起重視。安全指設備和操作人員。安全回路應考慮以下因素,并進行控制:
(1)操作失誤引起的危險或冒險。
(2)外部配件的損壞引起的危險,外部配件包括PLC本身故障和硬件電路信號。
(3)動作工藝流程規定的混亂引起的危險。
(4)特殊性引發的危險,例如:冷室機的空壓射,易引發設備損壞時。停電或電源模塊故障時。
安全回路的設計時大部分采用緊急停止回路,自鎖回路,互鎖回路。外部信號保護回路,順控型回路等方式。同進外部硬件回路也要組成保護回路:如熱繼電器、急停按鈕等。
綜合上述設計PLC的軟件有許多方法,設計人員除保持自己的設計風格和必須遵循本公司的指導性要求外,設計的經驗是至關重要的,所以只有不斷地努力,才能摸索出適合自己的一種有效方法。但一些基本的步驟是公共的。
(1)對被控對象的過程和要求進行分解,繪制出程序的結構框圖,了解和掌握被控對象的控制要求和流程。
(2)確定各單元的功能特性,繪制出功能控制框圖。
(3)選擇合適的程序結構方式,將各功能控制聯系起來。
(4)慎重考慮安全回路的設計,制定故障的形式及控制方案。
(5)編寫各獨立部分的程序,確定各模塊程序的接口資料。
(6)調試各獨立塊程序,調試各模塊的接口程序。調試安全回路程序。
(7)聯機在線調試設備或過程。
4 案例分析
以汽車微電機壓裝控制系統為例,對于PLC編程方法進行詳解。這一系統主要通過觸摸屏TPC、主控單元FPG以及位置控制單元FPG、模擬單元FP0、位移傳感器和伺服電機構成。這一系統主要對伺服電機控制脈沖輸出,而脈沖輸出能夠直接封裝電機的運行狀態,而剩下的輸出則不需要在程序中大量使用,能夠單獨調用。具體如圖2所示。
壓裝流程中,前三項依次為快速工進、預壓和慢速壓裝,這些過程是同向運動,主要目的在于提高工作效率,因此三個過程之間都不能出現任何停頓,采用“P點控制”就能滿足要求。慢速壓裝的運動方向和第四項的快速退回方向相反,并且這一過程需要停頓??焖偻嘶毓δ芙柚癊點控制”實現。具體如圖3所示。
FPWINGR編程軟件不能進行模塊封裝的操作,但這也不會對對象思維產生影響?!癊點控制”的觸發條件是R20,而“E點控制”的目標脈沖頻率是雙字寄存器DT412,也是“E點控制”的目標位置。采用對象封裝,主要目的在于避免數據的隨意訪問,使數據得以繼承。在“E 點控制”中,電機的屬性啟動速度是500Hz,加速時間是100ms,正反方向的定義采用參數的方式固定。如果對這一對象進行調試,則默認繼承了這一屬性。只要對多個內部繼電器觸發R20進行擴展,就能夠被多次調用繼承,也就是多態性。
時序層的基礎包括輸出層和外設層,時序層會根據一定時間順序對輸出層與外設層進行組合,同時輔助必要的數據處理,從而形成應有的功能。壓裝的主流程為“P 點控制”和“E 點控制”模塊,再加上時間延時和計數處理與力峰值功能,最終形成初步的壓裝功能,再經后期調試加上小范圍的改動,形成功能編寫能力。根據這一方法,能夠對所需各功能進行編寫,在完成了整個程序之后,實現整體調試的功能。后期維護需要修改某部分功能時,可以快速定位到要修改的層,再找到相應的模塊;增加功能時,可以迅速查到已有硬件的封裝模塊,直接在時序層增加要求的功能時序。
5 結束語
通過分析以及實際驗證發現,本次研究所采用的編程方法編寫PLC程序,具有清晰的邏輯,并且具有層次分明和運行穩定的優勢。這一編程方法能夠為程序調試以及后期程序的維護以及程序功能的擴展提供重要基礎。將此編程方法應用在復雜的控制系統當中,能夠有效提高編程效率,同時這一編程技術也能夠適用簡單系統,保證了復雜控制系統的集體設計具有更明確的分工,并確保更穩定的性能。
責任編輯:YYX
-
plc
+關注
關注
5010文章
13271瀏覽量
463068 -
可編程控制器
+關注
關注
6文章
535瀏覽量
38846
發布評論請先 登錄
相關推薦
評論