弄懂有關PLC程序設計理論是重要的,沒有這方面的理論準備或指導,僅靠在實踐中摸索,簡單的問題還好辦,複雜的就不好辦了。不僅無從下手,而且花了很多時間與精力,也難編出效率較高、質量也較高的程序,常常是事倍功半。
編程的具體實踐,以及在這個實踐中得來的知識或技能,即經驗,也是重要的。沒有經驗,僅有理論,既無法深刻理解理論,又無法靈活應用理論。這正如學數學,如僅瞭解一些定理或記住一些公式,沒有作相應的練習,肯定是學不好的。更不用說,任何理論也都只是經驗的總結,歸根到底也都有是來自實踐。
1、經驗積累
經驗有別人的,也有自己的,都很重要。前者要靠細心學習,後者要靠用心積累,都要在一定的時間與必要的精力。別人的經驗有上了書的或登載在雜誌上的。有的是細心學習別人的,但多數是我自己的經驗。所有的例子都經我測試過,都經實踐證明是可行的。我想,別的書本或雜誌上介紹的也會是這樣的。所以學習這樣楊功的經驗是必要的。
還有就是你同事的經驗,也是值得學習。這種經驗離你很“近”,很易借鑑。自己的經驗則是最重要的。要在自己的實踐中,積累自己的經驗。同時,最好在學別人的經驗時,也能親自作些測試,能使自己也有類似的經歷,進而把這些經驗變成自己的。這也是自己經驗的重要積累。
還有一些失敗的經驗,這往往是不會公開的,但這些經驗也要學習,也要積累。經驗的積累要用自己的腦記,更要用電腦記。最好作些分類,建立一個自用的程序庫,以便於隨時引用。
2、經驗昇華
經驗還有待昇華。昇華有三個層次:
最低的層次就是建立一個典型的程序庫,供今後再用。若程序複雜,還可建一些功能塊,或子程序,以便以後引用。
其次,要總結出有效算法。如單按鈕起停程序庫等。
最高層次的昇華是把經驗上升到理論的高度,為豐富PLC程序設計理論作貢獻。我想,隨著PLC使用的普及與提高,是會有越來越多從經驗中昇華出來的,而又能用以指導實踐的PLC編程理論的。
3、經驗應用
經驗積累、經驗昇華都是為了應用。經驗應用有三方面:
1)用作工程設計模板。設計新系統時,選用一個或幾個與現設計工程類似的,已取得成功的工程,作樣板進行設計。這既可減輕設計的工作量,又增加設計的成功率。這也是信息可重用的一大好處。
2)用作程序設計參考。在無成功的工程可作樣板時,在新設計的邏輯中,仍有相當一部分控制邏輯,可採用或借用已有典型邏輯,這也可減少設計的工作量,增加設計的成功率。
3)用作算法設計參考。在既無樣板可參照,又無典型可採用時,還可運用過去的一些成功的算法。
經驗是寶貴的,但是經驗特別是個人經驗,總是有限的。所以,經驗的應用也還要與編程理論相結合。我們是維修電工不是電氣工程師,找準了自己的位置,明確了方向。電氣工程師不會去現場進行PLC接線,但是維修電工不僅要現場給PLC接線,而且還要掌握如何修改程序,我們就知道自己應該掌握哪些知識,應該從怎麼學習PLC,我談談自己的看法。
第一,作為維修電工我們要從硬件開始學習,必須掌握PLC的I/O輸入輸出點,PLC的每個部位起什麼作用的。在日常維修工作中,PLC外部最容易出現問題就是I/O點的損壞,需要更換到PLC的備用輸入輸出點。外部接線更改完成後,還需要更改PLC內部的程序的I/O點的的定義,我還需要掌握軟件方面的知識。
三菱PLCFX2N接線端子功能介紹
第二點,作為維修電工我們要從軟件開始時學習,學習各種PLC編程軟件裡的上載和下載在哪裡操作。在維修的工作中,PLC的I/O輸入點外部更改後,內部的程序也需要修改,這個時候我們就需要把PLC的內部程序上載了,然後修改程序。修改完了,在下載到PLC的裡。(每個品牌的PLC上傳和下載都不一樣,如果大家有興趣可以留言,我們以後再分享如何進行PLC的上傳和下載)。
第三點,作為維修電工我們要從PLC的硬件構造也要掌握,對我們以後維修工作中,PLC出現問題,需要簡單的維修PLC有幫助。
1)、中央處理器(CPU)
一般由控制器、運算器和寄存器組成,這些電路都集成在一個芯片內。CPU通過數據總線、地址總線和控制總線與存儲單元、輸入/輸出接口電路相連接。
與一般的計算機一樣,CPU是整個PLC的控制中樞,它按PLC中系統程序賦予的功能指揮PLC有條不紊的進行工作。CPU主要完成下述工作:
(1)接收、存儲用戶通過編程器等輸入設備輸入的程序和數據。
(2)用掃描的方式通過I/O部件接收現場信號的狀態或數據,並存入輸入映像寄存器或數據存儲器中。
(3)診斷PLC內部電路的工作故障和編程中的語法錯誤等。
(4)PLC進入運行狀態後,執行用戶程序,完成各種數據的處理、傳輸和存儲相應的內部控制信號,以完成用戶指令規定的各種操作。
(5)響應各種外圍設備(如編程器、打印機等)的請求。
PLC採用的CPU隨機型不同而不同,目前,小型PLC為單CPU系統,中型及大型則採用雙CPU甚至多CPU系統。目前,PLC通常採用的微處理器有三種:通用微處理器、單片微處理器(即單片機)、位片式微處理器。
第四,作為維修電工我們要從PLC的編程語言也要掌握:
1、梯形圖語言(LD)與電氣操作原理圖相對應,具有直觀性和對應性;電氣設計人員易於掌握,目前在小型PLC上應用廣泛!
2、指令表語言(IL)指令表編程語言是與彙編語言類似的一種助記符編程語言,和彙編語言一樣由操作碼和操作數組成。在無計算機的情況下,適合採用PLC手持編程器對用戶程序進行編制。目前基本上沒什麼人使用,但是我們也應該瞭解!
3、功能模塊圖語言(FBD)功能模塊圖語言是與數字邏輯電路類似的一種PLC編程語言。這是一種較新的編程方法,用方框圖的形式來表示操作功能,類似於數字邏輯門電路的編程語言。有數字電路基礎的人很容易掌握,由於功能模塊圖能夠清楚表達功能關係,使編程調試時間大大減少。目前,這種語言是發展趨勢,國際電工協會正在實施發展這種新式的編程標準,而且某些PLC製造廠家,已經在中型及大型PLC開始支持這種語言了!
4、順序功能流程圖語言(SFC),順序功能流程圖語言是為了滿足結構化和標準化而設計的編程語言。對於負責的控制系統,內部聯鎖、互鎖極其複雜的情況下,採用流程圖語言可以很直觀地看到設備的動作順序。比較容易讀懂程序,不同的人員都比較容易理解其他人編寫的程序,因為程序按照設備的動作順序進行編寫,規律性較強,不需要複雜的互鎖電路,更容易設計和維護系統。目前這種編程語言最適合從事工藝設計的工程技術人員,因此,它是一種效果顯著、深受歡迎、前途光明的編程語言。
5、結構化文本語言(ST)結構化文本語言是用結構化的描述文本來描述程序的一種編程語言。它是類似於高級語言的一種編程語言。在大中型的PLC系統中,常採用結構化文本來描述控制系統中各個變量的關係。主要用於其他編程語言較難實現的用戶程序編制。這五種編程語言,我們必須應該要掌握就是梯形圖,也是最容易掌握的編程語言。