Modbus技術(shù)已成為一種工業(yè)標(biāo)準(zhǔn)。它是由Modicon公司制定并開發(fā)的。其通訊主要采用RS232,RS485等其他通訊媒介。它為用戶提供了一種開放、靈活和標(biāo)準(zhǔn)的通訊技術(shù),降低了開發(fā)和維護(hù)成本。
Modbus通訊協(xié)議由主設(shè)備先建立消息格式,格式包括設(shè)備地址、功能代碼、數(shù)據(jù)地址和出錯(cuò)校驗(yàn)。從設(shè)備必需用Modbus協(xié)議建立答復(fù)消息,其格式包含確認(rèn)的功能代碼,返回?cái)?shù)據(jù)和出錯(cuò)校驗(yàn)。如果接收到的數(shù)據(jù)出錯(cuò),或者從設(shè)備不能執(zhí)行所要求的命令,從設(shè)備將返回出錯(cuò)信息。
Modbus通訊協(xié)議擁有自己的消息結(jié)構(gòu)。不管采用何種網(wǎng)絡(luò)進(jìn)行通訊,該消息結(jié)構(gòu)均可以被系統(tǒng)采用和識(shí)別。利用此通信協(xié)議,既可以詢問網(wǎng)絡(luò)上的其他設(shè)備,也能答復(fù)其他設(shè)備的詢問,又可以檢測并報(bào)告出錯(cuò)信息。
在Modbus網(wǎng)絡(luò)上通訊期間,通訊協(xié)議能識(shí)別出設(shè)備地址,消息,命令,以及包含在消息中的數(shù)據(jù)和其他信息,如果協(xié)議要求從設(shè)備予以答復(fù),那么從設(shè)備將組建一個(gè)消息,并利用Modbus發(fā)送出去。
BACnet
BACnet是樓宇自動(dòng)控制系統(tǒng)的數(shù)據(jù)通訊協(xié)議,它由一系列與軟件及硬件相關(guān)的通訊協(xié)議組成,規(guī)定了計(jì)算機(jī)控制器之間所有對(duì)話方式。 協(xié)議包括:(1)所選通訊介質(zhì)使用的電子信號(hào)特性,如何識(shí)別計(jì)算機(jī)網(wǎng)址,判斷計(jì)算機(jī)何時(shí)使用網(wǎng)絡(luò)及如何使用。(2)誤碼檢驗(yàn),數(shù)據(jù)壓縮和編碼以及各計(jì)算機(jī) 專門的信息格式。顯然,由于有多種方法可以解決上述問題,但兩種不同的通訊模式選擇同一種協(xié)議的可能性極少,因此,就需要一種標(biāo)準(zhǔn)。即由ISO(國際標(biāo) 準(zhǔn)化協(xié)會(huì)〉于80年代著手解決,制定了《開放式系統(tǒng)互聯(lián)(OSI〉基本參考模式(Open System Interconnection/Basic Reference Model簡稱OSI/RM)IS0- 7498》。
OSI/RM是ISO/OSI標(biāo)準(zhǔn)中最重要的一個(gè),它為其它0SI標(biāo)準(zhǔn)的相容性提供了共同的參考,為研究、設(shè)計(jì)、實(shí)現(xiàn)和改造信息處理系統(tǒng)提供了功能上和 概念上的框架。它是一個(gè)具有總體性的指導(dǎo)性標(biāo)準(zhǔn),也是理解其它0SI標(biāo)準(zhǔn)的基礎(chǔ)和前提。
0SI/RM按分層原則分為七層,即物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層、運(yùn)輸層、會(huì)話層、表示層、應(yīng)用層。
BACnet既然是一種開放性的計(jì)算機(jī)網(wǎng)絡(luò),就必須參考OSIAM。但BACnet沒有從網(wǎng)絡(luò)的最低層重新定義自己的層次,而是選用已成熟的局域網(wǎng)技術(shù), 簡化0SI/RM,形成包容許多局域網(wǎng)的簡單而實(shí)用的四級(jí)體系結(jié)構(gòu)。
四級(jí)結(jié)構(gòu)包括物理層、數(shù)據(jù)鏈路層、網(wǎng)絡(luò)層和應(yīng)用層。
BACnet協(xié)議由以下幾部分組成:樓宇自控設(shè)備功能和信息數(shù)據(jù)的表示方式,五種規(guī)范局域網(wǎng)通訊協(xié)議以及它們之間相互通訊采用的協(xié)議。
OPC規(guī)范簡介
由OPC Task Force制定的OPC(OLE for Process Control)規(guī)范于1996年8月正式誕生了,隨著1997年2月Microsoft公司推出Windows95支持的DCOM技術(shù),1997年9月新成立的OPC Foundation對(duì)OPC規(guī)范進(jìn)行修改,增加了數(shù)據(jù)訪問等一些標(biāo)準(zhǔn),OPC規(guī)范得到了進(jìn)一步的完善。
“OPC 基于Microsoft公司的 Distributed interNet Application (DNA) 構(gòu)架和 Component Object Model (COM) 技術(shù)的,根據(jù)易于擴(kuò)展性而設(shè)計(jì)的。OPC規(guī)范定義了一個(gè)工業(yè)標(biāo)準(zhǔn)接口,這個(gè)標(biāo)準(zhǔn)使得COM技術(shù)適用于過程控制和制造自動(dòng)化等應(yīng)用領(lǐng)域。”O(jiān)PC 基礎(chǔ)委員會(huì)主席Dave Rehbein是這樣描述的
OPC是以O(shè)LE/COM機(jī)制作為應(yīng)用程序的通訊標(biāo)準(zhǔn)。OLE/COM是一種客戶/服務(wù)器模式,具有語言無關(guān)性、代碼重用性、易于集成性等優(yōu)點(diǎn)。OPC規(guī)范了接口函數(shù),不管現(xiàn)場設(shè)備以何種形式存在,客戶都以統(tǒng)一的方式去訪問,從而保證軟件對(duì)客戶的透明性,使得用戶完全從低層的開發(fā)中脫離出來。
基于OPC的軟件結(jié)構(gòu)如圖
由圖可見,應(yīng)用程序與OPC服務(wù)器之間必須有OPC接口,OPC規(guī)范提供了兩套標(biāo)準(zhǔn)接口:Custom標(biāo)準(zhǔn)接口,OLE自動(dòng)化標(biāo)準(zhǔn)接口。通常在系統(tǒng)設(shè)計(jì)中采用OLE自動(dòng)化標(biāo)準(zhǔn)接口。
OLE自動(dòng)化標(biāo)準(zhǔn)接口,及采用OLE自動(dòng)化技術(shù)進(jìn)行調(diào)用,其技術(shù)為上節(jié)所述的OLE自動(dòng)化技術(shù)。OLE自動(dòng)化標(biāo)準(zhǔn)接口定義了以下三層接口,依次呈包含關(guān)系。
OPC Server:OPC啟動(dòng)服務(wù)器,獲得其他對(duì)象和服務(wù)的起始類,并用于返回OPC Group類對(duì)象;
OPC Group:存儲(chǔ)由若干OPC Item組成的Group信息,并用于返回OPC Item類對(duì)象。
OPC Item:存儲(chǔ)具體Item 的定義、數(shù)據(jù)值、狀態(tài)值等信息。
由于OPC規(guī)范基于OLE/COM技術(shù),同時(shí)OLE/COM的擴(kuò)展遠(yuǎn)程OLE自動(dòng)化與DCOM技術(shù)支持TCP/IP等多種網(wǎng)絡(luò)協(xié)議,因此可以將OPC客戶、服務(wù)器在物理上分開,分布于網(wǎng)絡(luò)不同節(jié)點(diǎn)上。
OPC規(guī)范可以應(yīng)用在許多應(yīng)用程序中,如它們可以應(yīng)用于從SCADA 或者dcs系統(tǒng)的物理設(shè)備中獲取原始數(shù)據(jù)的最低層,它們同樣可以應(yīng)用于從SCADA 或者DCS系統(tǒng)中獲取數(shù)據(jù)到應(yīng)用程序中。實(shí)際上,OPC設(shè)計(jì)的目的就是從網(wǎng)絡(luò)上某節(jié)點(diǎn)獲取數(shù)據(jù)。圖4.2.2OPC的客戶/服務(wù)器關(guān)系圖同樣描述了OPC在SCADA系統(tǒng)的應(yīng)用。
采用OPC規(guī)范設(shè)計(jì)系統(tǒng)的好處
在進(jìn)行新型微機(jī)遠(yuǎn)動(dòng)系統(tǒng)的研制中,各個(gè)計(jì)算機(jī)以及各個(gè)模塊的數(shù)據(jù)交換應(yīng)該按照OPC規(guī)范進(jìn)行。這樣做有以下好處:
OPC規(guī)范以O(shè)LE/DCOM為技術(shù)基礎(chǔ),而OLE/DCOM支持TCP/IP等網(wǎng)絡(luò)協(xié)議,因此可以將各個(gè)子系統(tǒng)從物理上分開,分布于網(wǎng)絡(luò)的不同節(jié)點(diǎn)上。
OPC按照面向?qū)ο蟮脑瓌t,將一個(gè)應(yīng)用程序(OPC服務(wù)器)作為一個(gè)對(duì)象封裝起來,只將接口方法暴露在外面,客戶以統(tǒng)一的方式去調(diào)用這個(gè)方法,從而保證軟件對(duì)客戶的透明性,使得用戶完全從低層的開發(fā)中脫離出來。
OPC實(shí)現(xiàn)了遠(yuǎn)程調(diào)用,使得應(yīng)用程序的分布與系統(tǒng)硬件的分布無關(guān),便于系統(tǒng)硬件配置以及,使得系統(tǒng)的應(yīng)用范圍更廣。
采用OPC規(guī)范,便于系統(tǒng)的組態(tài)化,將系統(tǒng)復(fù)雜性大大簡化,可以大大縮短軟件開發(fā)周期,提高軟件運(yùn)行的可靠性和穩(wěn)定性,便于系統(tǒng)的升級(jí)與維護(hù)。
OPC規(guī)范了接口函數(shù),不管現(xiàn)場設(shè)備以何種形式存在,客戶都以統(tǒng)一的方式去訪問,從而實(shí)現(xiàn)系統(tǒng)的開放性,易于實(shí)現(xiàn)與其它系統(tǒng)的接口。