蘇州中材建設有限公司 黃松濤 林 忠 衛(wèi)明純
工業(yè)控制系統(tǒng)中協(xié)議轉(zhuǎn)換技術(shù)研究
蘇州中材建設有限公司 黃松濤 林 忠 衛(wèi)明純
隨著工業(yè)控制領域的不斷發(fā)展,工業(yè)控制系統(tǒng)的應用越來越廣泛。而工業(yè)控制系統(tǒng)大多由多種工業(yè)設備組合而成,各設備遵循的協(xié)議不同阻礙著工業(yè)控制的發(fā)展。本文通過研究現(xiàn)場總線技術(shù)與網(wǎng)絡通信技術(shù),深入研究工業(yè)以太網(wǎng),設計了一套能適用于商業(yè)網(wǎng)和工業(yè)網(wǎng),具有通用性和可定制性的組態(tài)軟件系統(tǒng),能夠應用于自動化工業(yè)控制領域。本課題采用動態(tài)鏈接庫的方式開發(fā)的組態(tài)軟件控制系統(tǒng),能便于后期驅(qū)動的升級和系統(tǒng)的模塊化管理,同時也能便于通信通道的增加和減少。
工業(yè)控制;現(xiàn)場總線;工業(yè)以太網(wǎng);組態(tài)軟件
工業(yè)通信控制協(xié)議,主要是指應用于工業(yè)控制領域的一些通信協(xié)議。但實際的工業(yè)控制領域是十分復雜的,不同的通信控制設備是工作在不同網(wǎng)絡層次的。而不同的控制層次,使用的通信協(xié)議并不相同,這就導致要實現(xiàn)一套完整的工業(yè)自動控制系統(tǒng),就需要有一種在不同控制層之間能實現(xiàn)協(xié)議轉(zhuǎn)換的機制,這樣才能控制命令以及數(shù)據(jù)在不同控制層之間正確的傳輸。OSI/ISO網(wǎng)絡參考模型以及對應層使用網(wǎng)絡協(xié)議如圖1所示:
圖1 網(wǎng)絡協(xié)議圖
在工業(yè)控制技術(shù)范疇內(nèi),現(xiàn)場總線是非常先進的一項技術(shù),其采用的通信方式是串行的數(shù)字通信,相較于其他的工業(yè)控制技術(shù),從各種指標上來說可以很好的滿足工業(yè)控制領域中對于監(jiān)控的實時性、穩(wěn)定性等要求。但是多種現(xiàn)場總線標準并存是現(xiàn)場總線的一個最大的特點。由于新的技術(shù)與新的事物的正如雨后春筍般涌現(xiàn),到如今,依然沒有任何一種現(xiàn)場總線可以滿足不同用戶的全部需求,正因如此,想要實現(xiàn)不同的需求,就得選擇響應的不同設備。這種多種現(xiàn)場總線標準并存的現(xiàn)狀在未來仍將保持,因此,要實現(xiàn)不同廠家、不同種類的產(chǎn)品的互連,協(xié)議的轉(zhuǎn)換就顯得非常重要。協(xié)議轉(zhuǎn)換結(jié)構(gòu)模型如圖2所示:
圖2 協(xié)議轉(zhuǎn)換結(jié)構(gòu)模型圖
以太網(wǎng)本身是只定義在OSI/ISO七層協(xié)議的物理層以及數(shù)據(jù)鏈路層之間,控制協(xié)議采用的是TCP/IP協(xié)議,用這兩種協(xié)議來保證傳輸?shù)目煽啃砸约按_定信息傳遞的路線。
上層通信往以太網(wǎng)的層面發(fā)展是現(xiàn)在過程控制領域的主流,這種浪潮加快了將傳統(tǒng)的以太網(wǎng)應用到工業(yè)控制領域的腳步。但是在融入現(xiàn)場總線的情況下,存在這一定的問題,那就是以太網(wǎng)在數(shù)據(jù)鏈路層采用的是CSMA/CD介質(zhì)訪問控制協(xié)議。采用這種協(xié)議的話,存在一個較嚴重的缺點。在數(shù)據(jù)傳輸過程中,若數(shù)據(jù)量較大負載較高的情況下,網(wǎng)絡中傳輸?shù)臄?shù)據(jù)就可能產(chǎn)生數(shù)據(jù)擁塞,數(shù)據(jù)的實時性將會被嚴重影響。并且,以太網(wǎng)的不能抵抗外界信號的干擾,沒什么安全性,從而向現(xiàn)場儀表供電也不會成為一個選項。然而以太網(wǎng)技術(shù)發(fā)展到今天,數(shù)據(jù)的傳輸?shù)乃俾侍嵘薮?,實時性得到空前的提高,現(xiàn)在已經(jīng)基本可以應用到工業(yè)控制網(wǎng)絡中,工業(yè)以太網(wǎng)技術(shù)已經(jīng)正式形成。在產(chǎn)品設計時,在媒質(zhì)的選用,產(chǎn)品的強度、適用性以及實時性、可互操作性、可靠性、電磁兼容性和本質(zhì)安全方面,工業(yè)以太網(wǎng)能滿足工業(yè)現(xiàn)場需要的網(wǎng)絡。
工業(yè)以太網(wǎng)在和傳統(tǒng)現(xiàn)場總線的比對中,表現(xiàn)出很明顯的優(yōu)勢。這主要體現(xiàn)在它可以實現(xiàn)智能化現(xiàn)場設備的功能自治性、系統(tǒng)結(jié)構(gòu)的高度分散性以及監(jiān)、管、控一體化,具有低成本、高性能的特點[1]。
以太網(wǎng)同通用現(xiàn)場總線之間的相互連接通常采用的方式是類似隧道的技術(shù)。隧道技術(shù)是一種用于異型網(wǎng)絡互聯(lián)的技術(shù),當兩個同類網(wǎng)絡通過中間復雜的異類網(wǎng)絡互聯(lián)時,常采用隧道技術(shù)進行分組交換[2]。
數(shù)據(jù)幀在通過路由器的時候,頭部不會進行協(xié)議轉(zhuǎn)換的處理,而只是將數(shù)據(jù)幀作為分組,封裝上自己的頭部,然后再向網(wǎng)絡中的另一路由發(fā)送。后繼路由收到數(shù)據(jù)后,先去掉中間網(wǎng)絡的相關頭部信息,再繼續(xù)向后繼的網(wǎng)絡發(fā)送,如此往復。在這樣的一個數(shù)據(jù)傳輸過程中,中間網(wǎng)絡就好比是一個大的隧道,一個多路協(xié)議路由伸展到另一個路由的連接就和其路徑一樣,故而對于分組,它就不用考慮傳輸?shù)木W(wǎng)絡路徑,進而也就大大簡化了路由轉(zhuǎn)發(fā)以及尋址的工作。
現(xiàn)場設備和以太網(wǎng)計算機實現(xiàn)數(shù)據(jù)的交互的過程,是計算機首先從管理模塊獲取到現(xiàn)場設備的基本信息,同時再通過管理模塊得到一個虛擬地址,這個虛擬地址是現(xiàn)場設備在現(xiàn)場總線上的虛擬地址。計算機通過使用總線協(xié)議標準生成一系列數(shù)據(jù)包,這稱為初始化數(shù)據(jù)包,包中帶有控制信息,用來控制數(shù)據(jù)鏈路層。之后,數(shù)據(jù)從鏈路層經(jīng)由物理層發(fā)送給現(xiàn)場總線,實現(xiàn)對總線的控制。與此同時,如果設備要將數(shù)據(jù)發(fā)送給計算機,那么就只用發(fā)送到虛擬地址。
本課題所設計開發(fā)的組態(tài)二次開發(fā)環(huán)境支持的通信協(xié)議有Modbus Tcp和Modbus Serial兩種。工業(yè)控制領域中Modbus通信協(xié)議使用最為廣泛,是工業(yè)控制領域繼承監(jiān)控系統(tǒng)中不可或缺的部分。開發(fā)人員通過該組態(tài)環(huán)境,可以自行添加通信信道,并設置信道參數(shù)。還可以為改信道設計具體的通信協(xié)議字段信息。最后通信驅(qū)動組態(tài)會將所有的配置信息全部轉(zhuǎn)換成XAML語言標記的數(shù)據(jù)格式并寫入系統(tǒng)數(shù)據(jù)緩存區(qū)。
Modbus通信驅(qū)動的運行采用的是多線程的運作方式。其中的每一個Modbus主站都是一個IModbusStation實例化對象,并且在每一個對象中都設定有對應的控制方法來管理Modbus主站的啟動和停止。在每一個Modbus主站實例中,主線程主要是用來監(jiān)控Modbus主站的運行狀態(tài),同時也可以產(chǎn)生和監(jiān)視邏輯處理線程,以便可以實現(xiàn)與該Modbus主站下的所有從站進行數(shù)據(jù)的交互和處理。通信驅(qū)動運行流程如圖3所示:
圖3 通信驅(qū)動運行流程圖
本組態(tài)監(jiān)控系統(tǒng),可以根據(jù)需求,搭載滿足各種通信協(xié)議的驅(qū)動程序。通信驅(qū)動主要通過動態(tài)鏈接庫的形式進行設計與開發(fā)。
從工業(yè)控制的發(fā)展趨勢可以發(fā)現(xiàn),在今后相當長的時間內(nèi),現(xiàn)場總線這種比較成熟的工業(yè)控制技術(shù)將繼續(xù)普遍應用在現(xiàn)場控制中。現(xiàn)場總線之間以及現(xiàn)場總線與以太網(wǎng)之間的更完美的融合,是工業(yè)控制領域發(fā)展的主要方向。協(xié)議作為工業(yè)通信控制的重要部分,更加深入的研究協(xié)議轉(zhuǎn)換將能更大程度上推動現(xiàn)場總線技術(shù)的發(fā)展和普及,使工業(yè)自動化的發(fā)展更上一層樓。
[1]Jim Montague.What's left to say about ind ustrial ethernet.Control Engineering,2001:7-17.
[2]丁磊,費敏銳,陳維剛.現(xiàn)場總線協(xié)議轉(zhuǎn)換機理及實現(xiàn)[J].自動化儀表,2005.