這只是為了容易理解和區(qū)分各類協(xié)議,實際上,隨著各種協(xié)議的發(fā)展,很多自身都跨越了很多層次,能夠實現(xiàn)多層協(xié)議的功能,我們做的劃分只是它最重要的功能所處的協(xié)議層。
前言
在目前軟件事業(yè)部有很大一部分是傳統(tǒng)IT從業(yè)人員,對于工業(yè)控制協(xié)議比較陌生,因此再做工業(yè)大數(shù)據(jù)采集時,對于各類工業(yè)協(xié)議有時容易搞不清楚,我簡單把在做工業(yè)大數(shù)據(jù)采集時常見的幾種工業(yè)協(xié)議整理了一下,以便搞清這些工業(yè)協(xié)議的概念和區(qū)別。
OSI(Open System Interconnect)參考模型
常見的工業(yè)協(xié)議按照OSI(Open System Interconnect)參考模型分到了不同層次
這只是為了容易理解和區(qū)分各類協(xié)議,實際上,隨著各種協(xié)議的發(fā)展,很多自身都跨越了很多層次,能夠實現(xiàn)多層協(xié)議的功能,我們做的劃分只是它最重要的功能所處的協(xié)議層。
物理層
RS232
在串行通訊時,要求通訊雙方都采用一個標準接口,使不同的設備可以方便地連接起來進行通訊。
RS-232-C接口是目前最常用的 一種串行通訊接口。
RS-232-C是美國電子工業(yè)協(xié)會EIA(Electronic IndustryAssociation)制定的一種串行物理接口標準。
RS是英文“推薦標準”的縮寫,232為標識號,C表示修改次數(shù)(“RS-232-C”中的“-C”只不過表示RS-232的版本,所以與“RS-232”簡稱是一樣的)
。
RS-232-C總線標準設有25條信號線,包括一個主通道和一個輔助通道。
工業(yè)控制的RS-232口一般只使用RXD、TXD、GND三條線。通常 RS-232 接口以9個引腳 (DB-9) 或是25個引腳 (DB-25) 的型態(tài)出現(xiàn),一般個人計算機上會有兩組 RS-232 接口,分別稱為 COM1 和 COM2。
RS485
隨著企業(yè)信息化法發(fā)著的需要,企業(yè)在儀表選型時其中的一個必要條件就是要具有聯(lián)網通信接口。
最初是數(shù)據(jù)模擬信號輸出簡單過程量,后來儀表接口是RS232接口,這種接口可以實現(xiàn)點對點的通信方式,但這種方式不能實現(xiàn)聯(lián)網功能。隨后出現(xiàn)的RS485解決了這個問題。
485通訊接口一個對通訊接口的硬件描述,它只需要兩根通訊線,即可以在兩個或兩個以上的設備之間進行數(shù)據(jù)傳輸。
這種數(shù)據(jù)傳輸?shù)倪B接,是半雙工的通訊方式。
在某一個時刻,一個設備只能進行發(fā)送數(shù)據(jù)或接收數(shù)據(jù)。而RS232是全雙工,最少3條通信線(RX,TX,GND),因為使用絕對電壓表示邏輯,由于干擾,導線電阻等原因,通訊距離不遠,低速時幾十米也是可以的。
在RS232或RS485設備聯(lián)成的設備網中,如果設備數(shù)量超過2臺,就必須使用RS485做通訊介質,RS485網的設備間要想相互通信息只有通過“主(Master)”設備中轉才能實現(xiàn),這個主設備通常是PC,而這種設備網中只允許存在一個主設備,其余全部是”從(Slave)”設備。
而現(xiàn)場總線技術是以ISO/OSI模型為基礎的,具有完整的軟件支持系統(tǒng),能夠解決總線控制、沖突檢測、鏈路維護等問題 。
數(shù)據(jù)鏈路層
CAN
控制器局域網CAN( Controller Area Network)屬于現(xiàn)場總線的范疇,是一種有效支持分布式控制系統(tǒng)的串行通信網絡。
是由德國博世公司在20世紀80年代專門 為汽車行業(yè)開發(fā)的一種串行通信總線。
由于其高性能、高可靠性以及獨特的設計而越來越受到人們的重視,被廣泛應用于諸多領域。
CAN協(xié)議分為二層:物理層和數(shù)據(jù)鏈路層。
CAN的信號傳輸采用短幀結構,傳輸時間短,具有自動關閉功能,具有較強的抗干擾能力。
CAN支持多主工作方式,并采用了非破壞性總線仲裁技術,通過設置優(yōu)先級來避免沖突,通訊距離最遠可達10KM/5Kbps/s,通訊速率最高可達40M /1Mbp/s,網絡節(jié)點數(shù)實際可達110個。
由于CAN總線本身的特點,其應用范圍目前已不再局限于汽車行業(yè),而向自動控制、航空航天、航海、過程工業(yè)、機械工業(yè)、紡織機械、農用機械、機器人、數(shù)控機床、醫(yī)療器械及傳感器等領域發(fā)展;
ProfiBus
ProfiBus是德國標準(DIN19245)和歐洲標準(EN50170)的現(xiàn)場總線標準。
由PROFIBUS–DP、PROFIBUS-FMS、PROFIBUS-PA系列組成。
- DP用于分散外設間高速數(shù)據(jù)傳輸,適用于加工自動化領域。
- FMS適用于紡織、樓宇自動化、可編程控制器、低壓開關等。
- PA用于過程自動化的總線類型,服從IEC1158-2標準。
PROFIBUS是一種用于工廠自動化車間級監(jiān)控和現(xiàn)場設備層數(shù)據(jù)通信與控制的現(xiàn)場總線技術。
可實現(xiàn)現(xiàn)場設備層到車間級監(jiān)控的分散式數(shù)字控制和現(xiàn)場通信網絡,從而為實現(xiàn)工廠綜合自動化和現(xiàn)場設備智能化提供了可行的解決方案。
該標準廣泛適用于制造業(yè)自動化、流程工業(yè)自動化和樓宇、交通電力等其他領域自動化。
應用層
ModBus
Modbus是由Modicon(現(xiàn)為施耐德電氣公司的一個品牌)在1979年發(fā)明的,是全球第一個真正用于工業(yè)現(xiàn)場的總線協(xié)議。
ModBus網絡是一個工業(yè)通信系統(tǒng),由帶智能終端的可編程序控制器和計算機通過公用線路或局部專用線路連接而成。
其系統(tǒng)結構既包括硬件、亦包括軟件。
它可應用于各種數(shù)據(jù)采集和過程監(jiān)控。
ModBus網絡只有一個主機,所有通信都由他發(fā)出。網絡可支持247個之多的遠程從屬控制器,但實際所支持的從機數(shù)要由所用通信設備決定。采用這個系統(tǒng),各PC可以和中心主機交換信息而不影響各PC執(zhí)行本身的控制任務。
Modbus協(xié)議是應用于電子控制器上的一種通用語言。==通過此協(xié)議,控制器相互之間、控制器經由網絡(例如以太網)和其它設備之間可以通信==。它已經成為一通用工業(yè)標準。
有了它,不同廠商生產的控制設備可以連成工業(yè)網絡,進行集中監(jiān)控。此協(xié)議定義了一個控制器能認識使用的消息結構,而不管它們是經過何種網絡進行通信的。它描述了一控制器請求訪問其它設備的過程,如何回應來自其它設備的請求,以及怎樣偵測錯誤并記錄。它制定了消息域格局和內容的公共格式。
==Modbus是通訊協(xié)議,而RS232、RS485只能代表通訊的物理介質層和鏈路層。==
Modbus協(xié)議支持傳統(tǒng)的RS-232、RS-422、RS-485和以太網設備。
許多工業(yè)設備,包括PLC,DCS,智能儀表等都在使用Modbus協(xié)議作為他們之間的通訊標準。
軟件接口
OPC
OPC全稱是Object Linking and Embedding(OLE) for Process Control,它的出現(xiàn)為基于Windows的應用程序和現(xiàn)場過程控制應用建立了橋梁。
在過去,為了存取現(xiàn)場設備的數(shù)據(jù)信息,每一個應用軟件開發(fā)商都需要編寫專用的接口函數(shù)。由于現(xiàn)場設備的種類繁多,且產品的不斷升級,往往給用戶和軟件開發(fā)商帶來了巨大的工作負擔。
通常這樣也不能滿足工作的實際需要,系統(tǒng)集成商和開發(fā)商急切需要一種具有高效性、可靠性、開放性、可互操作性的即插即用的設備驅動程序。
在這種情況下,OPC標準應運而生。OPC標準以微軟公司的OLE技術為基礎,它的制定是通過提供一套標準的OLE/COM接口完成的,在OPC技術中使用的是OLE 2技術,OLE標準允許多臺微機之間交換文檔、圖形等對象。
總結
大致上可以這樣理解,
- RS232、RS485是硬件接口技術,
- CAN、ProBus等是現(xiàn)場總線技術,
- ModBus是工業(yè)控制協(xié)議,
- OPC是網絡數(shù)據(jù)接口