什麼是PLC?單片機和PLC有什麼區別?

自二十世紀六十年代美國推出PLC取代傳統繼電器控制裝置以來,PLC得到了快速發展,在世界各地得到了廣泛應用。同時PLC的功能也不斷完善,隨著計算機技術、信號處理技術、控制技術網絡技術的不斷髮展和用戶需求的不斷提高,PLC在開關量處理的基礎上增加了模擬量處理和運動控制等功能。今天的PLC不再侷限於邏輯控制,在運動控制、過程控制等領域也發揮著十分重要的作用。

PLC

PLC (Programmable Logic Controller) 是可編程邏輯控制器,專為工業生產設計的一種數字運算操作的電子裝置,它採用一類可編程的存儲器,用於其內部存儲程序、執行邏輯運算、順序控制、定時、計數與算術操作等面向用戶的指令,並通過數字或模擬式輸入/輸出控制各種類型的機械或生產過程。是工業控制的核心部分。

單片機

單片機(Microcontrollers)是一種集成電路芯片,是採用超大規模集成電路技術把具有數據處理能力的中央處理器CPU、隨機存儲器RAM、只讀存儲器ROM、多種I/O口和中斷系統、定時器/計數器等功能(可能還包括顯示驅動電路、脈寬調製電路、模擬多路轉換器、A/D轉換器等電路)集成到一塊硅片上構成的一個小而完善的微型計算機系統,在各個領域廣泛應用。

諸如手機、汽車電子、工業上的步進馬達、機器手臂的控制等,都可見到單片機的身影。單片機的特點是編程、維護相對複雜,編程方式常用C語言或者彙編語言,成本較低,I/O接口相對有限。

PLC與單片機的區別

  • PLC是應用單片機構成的比較成熟的控制系統,是已經調試成熟穩定的單片機應用系統的產品,有較強的通用性。
  • 單片機可以構成各種各樣的應用系統,使用範圍更廣,但單就“單片機”而言,它只是一種集成電路,還必須與其它元器件及軟件構成系統才能應用。
  • 從工程的使用來看,對單項工程或重複數極少的項目,採用PLC快捷方便,成功率高,可靠性好,但成本較高。
  • 對於量大的配套項目,採用單片機系統具有成本低、效益高的優點,但這要有相當的研發力量和行業經驗才能使系統穩定。

從本質上說,PLC其實就是一套已經做好的單片機(單片機範圍很廣泛)系統。  

PLC的特點

PLC廣泛使用梯形圖代替計算機語言,對編程有一定的優勢。你可以把梯形圖理解成是與彙編等計算器語言一樣,是一種編程語言,只是使用範圍不同。而且通常做法是由PLC軟件把你的梯形圖轉換成C或彙編語言(由PLC所使用的CPU決定),然後利用匯編或C編譯系統編譯成機器碼。PLC運行的只是機器碼而已,梯形圖只是讓使用者更加容易使用而已。

如所說,MCS-51單片機也可以用於PLC製作,只是8位CPU在一些高級應用如:大量運算(包括浮點運算)、嵌入式系統(現在UCOS也能移植到MCS-51)等,有些力不從心而已。不過加上DSP就已經能滿足一般要求了,而且同樣使用梯形圖編程,我們可把梯形圖轉化為C51再利用KEIL的C51進行編譯。不難發現不同型號的PLC會選用不同的CPU,其實也說明PLC就是一套已經做好的單片機系統。  

這樣一看PLC其實並不神秘,不少PLC是很簡單的,其內部的CPU除了速度快之外,其他功能還不如普通的單片機。通常PLC採用16位或32位的CPU,帶1或2個的串行通道與外界通訊,內部有一個定時器即可,若要提高可靠性再加一個看家狗定時器問題就解決了。  

另外,PLC的關鍵技術在於其內部固化了一個能解釋梯形圖語言的程序及輔助通訊程序,梯形圖語言的解釋程序的效率決定了PLC的性能,通訊程序決定了PLC與外界交換信息的難易。對於簡單的應用,通常以獨立控制器的方式運作,不需與外界交換信息,只需內部固化有能解釋梯形圖語言的程序即可。

實際上,設計PLC的主要工作就是開發解釋梯形圖語言的程序。現在的單片機完全可以取代PLC。以前的單片機由於穩定性和抗電磁干擾能力比較的弱和PLC是沒有辦法相比的,現在的單片機已經做到了高穩定性和很強的抗干擾能力在某些領域已經實現了替換。

單片機可以取代PLC嗎?

有人說這是個偽問題,單片機是元器件,PLC是由元器件以及龐大的軟件構成的系統,兩者在這一方面沒有可比性 —— 大多PLC的控制芯片實際上就是單片機,也就是說可以將PLC看成是單片機的二次開發。單論工業防護等級,單片機的穩定性和可靠性能根本比不了PLC這種IP67類的產品( IP為標記字母,第一標記數字表示接觸保護和外來物保護等級,第二標記數字表示防水保護等級)。而且就PLC這種能應對工業惡劣環境的產品還開發出一套冗餘系統。

I/O功能

單片機的I/O點實在有限,而反觀PLC呢?針對不同的現場信號,均有相應的I/O點可與工業現場的器件(如按鈕、開關、傳感電流變送器、電機啟動器或控制閥等)直接連接,並通過總線與CPU主板連接。工業裡幾乎任意一條生產線,都有上百甚至上千I/O點,就這點單片機完全無法比擬。

開發週期

PLC的品牌多達200多種,幾乎每個品牌都有不同編程軟件,而且都在不斷完善自己的編程軟件,使之能夠越來越簡單的服務於電氣工程師,而各種程序塊也是越來越方便人性化的任意去調用,比如PID模塊、運動控制模塊等,大大減輕了工程師的開發壓力也縮短了開發週期。

那單片機要如何實現?沒有現成的模塊使用,那就只能開發,那麼做過非標自動化設備的工程師都會遇到工期不足問題。PLC這種高度集成化模塊化的產品在達到滿足設備所需的開發週期,在工期面前也是抓襟見肘,更不用說如同白紙一張的單片機。

通信距離

現在大多數流水線是要跨區域整合與監視的,所用的通訊方式多為以太網加中繼器,或者直接走民用寬帶光纖,所用的東西到最後很可能是用的就是微軟的IE瀏覽器,很明顯PLC是有RJ-45接口,即使本體沒有RJ-45也可以配備以太網模塊,可單片機搭載的PCB板能加上這個接口然後開發出以太網通信嗎?開發需要多久?

編程語言

這點對單片機來講是一個優勢,同時也是一個劣勢。上面提到PLC的品牌有兩百多種,編程軟件更多,儘管大多數PLC的編程語言都大同小異,但是每接觸一款不同品牌的PLC,電氣工程師就要從PLC的硬件參數、軟元件、編程軟件等等各個方面從頭瞭解一次才能使用的得心應手。而單片機的編程語言用的是C語言或者彙編語言,這對於任何單片機都是通用的。換句話說,學會C語言或者彙編語言,便可以應用任何單片機開發想要的功能(前提是要有相關的電工電子學基礎)。

但話又說回來,電氣工程師不是電子工程師,他們的工作不是單單考慮單片機如何驅動繼電器來控制機床的,甚至有的電氣工程師都不會C語言、彙編語言之類的MCU開發語言。近些年,IEC-61131-3標準的推廣,越來越多的PLC支持多種編程語言,如類似C語言的ST語言,類似電路圖的CFC語言。這種便利的功能是傳統單片機開發環境真的無法實現。

在工業控制領域,PLC佔據絕對優勢,就目前形勢(單片機的功能、穩定性、易用性、編程及維護等)來看,單片機取代PLC那將是一項不可能完成,或者說期限趨向於無窮的艱鉅任務。


分享到:


相關文章: