單片機(jī)可以替代 PLC 嗎? 這個(gè)問題如同面粉能代替面條一樣,答案是否定的。第一次聽到這個(gè)答案可能很多人都有疑問,單片機(jī)明明功能那么強(qiáng)大,功能那么豐富為什么不能取代 PLC 呢?
那么今天我們就來了解一下單片機(jī)和 PLC 分別是什么,它們之間有什么區(qū)別。
一、單片機(jī)
單片微型計(jì)算機(jī)(Single Chip Microcomputer ),亦稱微控制單元(Microcontroller Unit),簡(jiǎn)稱 MCU,是一種集成電路芯片,是采用超大規(guī)模集成電路技術(shù)把具有數(shù)據(jù)處理能力的中央處理器(Central Process Unit;CPU)、隨機(jī)存儲(chǔ)器(Random Access Memory;RAM)、只讀存儲(chǔ)器(Read-Only Memory;ROM)、多種 I/O 口和中斷系統(tǒng)、定時(shí)器 / 計(jì)數(shù)器等功能(可能還包括顯示驅(qū)動(dòng)電路、脈寬調(diào)制電路、模擬多路轉(zhuǎn)換器、A/D 轉(zhuǎn)換器等電路)集成到一塊硅片上構(gòu)成的一個(gè)小而完善的微型計(jì)算機(jī)系統(tǒng),在各個(gè)領(lǐng)域廣泛應(yīng)用。諸如手機(jī)、PC 外圍、遙控器,至汽車電子、工業(yè)上的步進(jìn)馬達(dá)、機(jī)器手臂的控制等,都可見到 MCU 的身影。
單片機(jī)出現(xiàn)的歷史并不長(zhǎng),但發(fā)展十分迅猛。它的產(chǎn)生與發(fā)展和微處理器的產(chǎn)生與發(fā)展大體同步,自 1971 年美國(guó) Intel 公司首先推出 4 位微處理器以來,它的發(fā)展到目前為止大致可分為 5 個(gè)階段。
單片機(jī)發(fā)展的初級(jí)階段(1971 年至 1976 年):1971 年 11 月 Intel 公司首先設(shè)計(jì)出集成度為 2000 只晶體管 / 片的 4 位微處理器 Intel 4004, 并配有 RAM、 ROM 和移位寄存器, 構(gòu)成了第一臺(tái) MCS—4 微處理器, 而后又推出了 8 位微處理器 Intel 8008, 以及其它各公司相繼推出的 8 位微處理器。
低性能單片機(jī)階段(1976 年至 1980 年):以 1976 年 Intel 公司推出的 MCS—48 系列為代表, 采用將 8 位 CPU、 8 位并行 I/O 接口、8 位定時(shí) / 計(jì)數(shù)器、RAM 和 ROM 等集成于一塊半導(dǎo)體芯片上的單片結(jié)構(gòu), 雖然其尋址范圍有限(不大于 4 KB), 也沒有串行 I/O, RAM、 ROM 容量小, 中斷系統(tǒng)也較簡(jiǎn)單, 但功能可滿足一般工業(yè)控制和智能化儀器、儀表等的需要。
高性能單片機(jī)階段(1980 年至 1990 年):這一階段推出的高性能 8 位單片機(jī)普遍帶有串行口, 有多級(jí)中斷處理系統(tǒng), 多個(gè) 16 位定時(shí)器 / 計(jì)數(shù)器。片內(nèi) RAM、 ROM 的容量加大,且尋址范圍可達(dá) 64 KB,個(gè)別片內(nèi)還帶有 A/D 轉(zhuǎn)換接口。
16 位單片機(jī)階段(1983 年至 1989 年):1983 年 Intel 公司又推出了高性能的 16 位單片機(jī) MCS-96 系列, 由于其采用了最新的制造工藝, 使芯片集成度高達(dá) 12 萬只晶體管 / 片。
全方位高水平發(fā)展階段(1990 年至今):到目前為止,單片機(jī)也有從傳統(tǒng)的 8 位處理器平臺(tái)向 32 位高級(jí) RISC 處理器平臺(tái)轉(zhuǎn)變的趨勢(shì),但 8 位機(jī)依然難以被取代。8 位單片機(jī)成本低,價(jià)格廉,便于開發(fā),其性能可以滿足大部分的需要,只有在航天、汽車、機(jī)器人等高技術(shù)領(lǐng)域,需要高速處理大量數(shù)據(jù)時(shí),才需要選用 16/32 位,而在一般工業(yè)領(lǐng)域,8 位通用型單片機(jī),仍然是目前應(yīng)用最廣的單片機(jī)。單片機(jī)在集成度、功能、速度、可靠性、應(yīng)用領(lǐng)域等全方位向更高水平發(fā)展。
單片機(jī)的特點(diǎn)是編程、維護(hù)相對(duì)復(fù)雜,編程方式常用 C 語言或者匯編語言,成本較低,I/O 接口相對(duì)有限。
二、PLC
PLC,全稱 Programmable Logic Controller,即可編程邏輯控制器,是一種專門為在工業(yè)環(huán)境下應(yīng)用而設(shè)計(jì)的數(shù)字運(yùn)算操作電子系統(tǒng)。它采用一種可編程的存儲(chǔ)器,在其內(nèi)部存儲(chǔ)執(zhí)行邏輯運(yùn)算、順序控制、定時(shí)、計(jì)數(shù)和算術(shù)運(yùn)算等操作的指令,通過數(shù)字式或模擬式的輸入輸出來控制各種類型的機(jī)械設(shè)備或生產(chǎn)過程。
三、單片機(jī)為什么不能取代 PLC 呢?
1. 穩(wěn)定性與可靠性
有人說這是個(gè)偽問題,單片機(jī)是元器件,PLC 是由元器件以及龐大的軟件構(gòu)成的系統(tǒng),兩者在這一方面沒有可比性。這話沒有錯(cuò),大多 PLC 的控制芯片實(shí)際上就是單片機(jī),也就是說可以將 PLC 看成是單片機(jī)的二次開發(fā),單論工業(yè)防護(hù)等級(jí),單片機(jī)的穩(wěn)定性和可靠性能根本比不了 PLC 這種 IP67 類的產(chǎn)品( IP 為標(biāo)記字母,第一標(biāo)記數(shù)字表示接觸保護(hù)和外來物保護(hù)等級(jí),第二標(biāo)記數(shù)字表示防水保護(hù)等級(jí))。而且就 PLC 這種能應(yīng)對(duì)工業(yè)惡劣環(huán)境的產(chǎn)品還開發(fā)出一套冗余系統(tǒng)。如果穩(wěn)定性與可靠性對(duì)比沒有意義,那么我們就從其他方面分析。
2.I/O 功能
單片機(jī)的 I/O 點(diǎn)實(shí)在有限,而反觀 PLC 呢?針對(duì)不同的現(xiàn)場(chǎng)信號(hào),均有相應(yīng)的 I/O 點(diǎn)可與工業(yè)現(xiàn)場(chǎng)的器件(如按鈕、開關(guān)、傳感電流變送器、電機(jī)啟動(dòng)器或控制閥等)直接連接,并通過總線與 CPU 主板連接。工業(yè)里幾乎任意一條生產(chǎn)線,都有上百甚至上千 I/O 點(diǎn),就這點(diǎn)單片機(jī)完全無法比擬。
3. 擴(kuò)展功能
一條完整的工業(yè)生產(chǎn)線除了控制,還有通信、上位、組態(tài)、運(yùn)動(dòng)控制與顯示等等,這些東西都需要依靠完整的工業(yè)體系與通信協(xié)議去做,例如西門子公司的 PROFIBUS-DP 通信、三菱重工的 CC-LINK 等等。而單片機(jī)和 PC、單片機(jī)和單片機(jī)之間的通信大都用串口。單片機(jī)的串口是全雙工異步通信串口,那么像 MODBUS、PROFIBUS、CAN open、以太網(wǎng)等通信協(xié)議單片機(jī)是否能一一實(shí)現(xiàn)?或許單片機(jī)可以做到,但是這就涉及到下一個(gè)分析點(diǎn),開發(fā)周期。
4. 開發(fā)周期
PLC 的品牌多達(dá) 200 多種,幾乎每個(gè)品牌都有不同編程軟件,而且都在不斷完善自己的編程軟件,使之能夠越來越簡(jiǎn)單的服務(wù)于電氣工程師,而各種程序塊也是越來越方便人性化的任意去調(diào)用,比如 PID 模塊、運(yùn)動(dòng)控制模塊等,大大減輕了工程師的開發(fā)壓力也縮短了開發(fā)周期。那單片機(jī)要如何實(shí)現(xiàn)?沒有現(xiàn)成的模塊使用,那就只能開發(fā),那么做過非標(biāo)自動(dòng)化設(shè)備的工程師都會(huì)遇到一個(gè)問題——工期不足。PLC 這種高度集成化模塊化的產(chǎn)品在達(dá)到滿足設(shè)備所需的開發(fā)周期,在工期面前也是抓襟見肘,更不用說如同白紙一張的單片機(jī)。
5. 通信距離
現(xiàn)在大多數(shù)流水線是要跨區(qū)域整合與監(jiān)視的,所用的通訊方式多為以太網(wǎng)加中繼器,或者直接走民用寬帶光纖,所用的東西到最后很可能是用的就是微軟的 IE 瀏覽器,很明顯 PLC 是有 RJ-45 接口,即使本體沒有 RJ-45 也可以配備以太網(wǎng)模塊,可單片機(jī)搭載的 PCB 板能加上這個(gè)接口然后開發(fā)出以太網(wǎng)通信嗎?開發(fā)需要多久?
6. 編程語言
這點(diǎn)對(duì)單片機(jī)來講是一個(gè)優(yōu)勢(shì),同時(shí)也是一個(gè)劣勢(shì)。上面提到 PLC 的品牌有兩百多種,編程軟件更多,盡管大多數(shù) PLC 的編程語言都大同小異,但是每接觸一款不同品牌的 PLC,電氣工程師就要從 PLC 的硬件參數(shù)、軟元件、編程軟件等等各個(gè)方面從頭了解一次才能使用的得心應(yīng)手。而單片機(jī)的編程語言用的是 C 語言或者匯編語言,這對(duì)于任何單片機(jī)都是通用的。換句話說,學(xué)會(huì) C 語言或者匯編語言,便可以應(yīng)用任何單片機(jī)開發(fā)想要的功能(前提是要有相關(guān)的電工電子學(xué)基礎(chǔ))。但話又說回來,電氣工程師不是電子工程師,他們的工作不是單單考慮單片機(jī)如何驅(qū)動(dòng)繼電器來控制機(jī)床的,甚至有的電氣工程師都不會(huì) C 語言、匯編語言之類的 MCU 開發(fā)語言。近些年,IEC-61131-3 標(biāo)準(zhǔn)的推廣,越來越多的 PLC 支持多種編程語言,如類似 C 語言的 ST 語言,類似電路圖的 CFC 語言。這種便利的功能是傳統(tǒng)單片機(jī)開發(fā)環(huán)境真的無法實(shí)現(xiàn)。
四、結(jié)論
經(jīng)過上面闡述,我們可以看出,PLC 實(shí)際上可以看成是單片機(jī)的二次應(yīng)用開發(fā),但是它又有自己鮮明的特點(diǎn)。到目前為止,中國(guó)的單片機(jī)應(yīng)用和嵌入式系統(tǒng)開發(fā)走過了二十余年的歷程,國(guó)民經(jīng)濟(jì)建設(shè)、軍事及家用電器等各個(gè)領(lǐng)域,尤其是手機(jī)、汽車自動(dòng)導(dǎo)航設(shè)備、PDA、智能玩具、智能家電、醫(yī)療設(shè)備等行業(yè)都是應(yīng)用了單片機(jī)。行業(yè)高端目前有超過 10 余萬名從事單片機(jī)開發(fā)應(yīng)用的工程師。
審核編輯黃昊宇
-
單片機(jī)
+關(guān)注
關(guān)注
6030文章
44499瀏覽量
632173 -
plc
+關(guān)注
關(guān)注
5007文章
13124瀏覽量
461543
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論