天堂网www中文天堂在线/色操在线/成人精品视频一区二区三区/欧美特黄一片aa大片免费看

  • 采用Modbus協議實現DCS系統中監控級數據集成———采用Modbus協議實現DCS系統中監控級數據集成

      數據集成是DCS系統中的關鍵。一個典型DCS系統從結構上可分為四層[1]:現場級、控制級、監控級和治理級。本文討論的是監控級,在這一級有很多并列的子站,一般采用計算機作為為機接口,各站點可按功能劃分,分別采集相應的現場信號和控制某些局部設備。但是,各站點之間不是孤立的,它們必須互相配合、協調才能保證產品質量和實現連續生產,這就需要各站點能互通訊息。另外,上級治理網也需要與監控級子站交互數據,以實現全局的監控和優化。


                 然而,子站是采用不同開發平臺、不同通訊協議組成的異構系統,可能由不同的廠家和個為開發。要為每種協議寫一個轉換接口或驅動是比較繁瑣的,特別是在站點和協議較多的時候。因此,怎樣有效集成數據,避免信息孤島的出現,是DCS系統中常碰到難點題目之一。


                 比較好的方法是各站點都采用標準協議進行數據通訊,而不必為每一種協議開發一個通訊接口。目前這方面的協議比較多,Modbus就是其中的一種。


            

     


             1 Modbus協議簡介


                 Modbus協議包括ASCII、RTU、PLUS、TCP等,并沒有規定物理層。此協議定義了控制器能夠熟悉和使用的消息結構,而不管它們是經過何種網絡進行通訊的[2]。標準的Modicon控制器使用RS232C實現串行的Modbus。RS232C規定了連接器針腳、接線、信號電平、波特率、奇偶校驗等信息,Modbus的ASC水、RTU協議則在此基礎上規定了消息、數據的結構、命令和就答的方式,如圖1所示。數據通訊采用Maser/Slave方式,Master端發出數據請求消息,Slave端接收到正確消息后就可以發送數據到Master端以響應請求;Master端也可以直接發消息修改Slave真個數據,實現雙向讀寫。


            

     

        圖2是一個典型的Modbus應用示例。Modbus可以應用在支持Modbus協議的PIC和PLC之間、PLC和個人計算機之間、計算機和計算之間、遠程PLC和計算機之間以及遠程計算機之間(通過Modem連接),可見Modbus的應用是相當廣泛的。由于Modbus是一個事實上的產業標準,很多廠家的PLC、HMI、組態軟件都支持Modbus,而且Modbus是一個開放標準,其協議內容可以免費獲得,一些小型廠商甚至個人都可根據協議標準開發出支持Modbus的產品或軟件,從而使其產品聯進到Modbus的數據網絡中。因此,Modbus有著廣泛的應用基礎。


                 在實際應用中,可以使用RS232、RS485/422、Modem加電話線、甚至TCP/IP來聯網。所以,所以,Modbus的傳輸介質種類較多,可以根據傳輸間隔來選擇。


             2 Modbus的具體應用


                 這里先容的Modbus的具體應用是某廠的水泥生料生產質量控制系統。此系統中一共有5個子站:鈣鐵分析儀、四元素分析儀、料位位/料漿塞、配料秤、配庫。每一個子站由一臺計算機和相關軟、硬件組成,控制系統組成如圖3所示。


            

     


                 從圖3可看出,系統基本上是兩個控制回路:一路由鈣鐵分析儀、配料秤及控制算法組成,實現磨前精配,即出磨生料質量的在線實時閉環控制;另一路由四元素分析儀、料漿塞、料位儀組成,實現摩后調配,即進窯前料漿質量的均化控制。配庫算法在第二條回路中起控制、優化和網絡接口的作用。系統控制參數的改變由兩個事件觸發:鈣鐵儀分析的結果和四元素分析的結果。這兩個分析結果由對用戶定期采得的實際生產中的樣品的分析得到。從圖3還可看出,各站之間是相互聯系的,它們的協作關系到生料生產的質量。


                 在網絡設計中,不僅要實現各站之間數據交換,同時還要考慮到網絡的靈活性、通用性、可擴展性。例如,數據源站點應能比較輕易地增減數據、目標站點可能有多個、數據流向應該是雙向的、所有生料系統的數據需送到廠級DCS中,因此網絡的實現比較復雜。


                 由于Modbus協議具有多樣性、可靠性等特點,而且是產業級標準協議,完全可以適合具體應用,因此用Modbus實現網絡。


                 要在每個站點都用源程序實現Modbus是不實現的,由于應用程序開發平臺不一樣,有Visual C++等,不可能實現代碼復用。但是,每個站點讀寫Modbus數據的操縱又是相同的,為解決這個題目,我們采用COM技術。COM也是軟件模塊之間數據通訊的標準。COM的特點是語言無關性、對時程的透明性和可以實現二進制重用。由于它的接口是開放的,所以支持COM技術的客戶程序可以通過其公共接口調用COM組件的內部功能。眾所周知,在Windows2000中,COM+甚至是構成操縱系統的基礎。


                 最后,采用ATL開發出了兩個COM組件,即Modbus Master組件和Modbus Slave組件。ATL是一個基于C++模擬技術的框架,它主要用在甚至COM的軟件開發上,使用它可以大大簡化組件的開發過程并進步代碼的效率[5]。Master和Slave組件都包含ASCII、RTU、TCP三種方式,實現了Class0、Class1規定的功能[3]。每個子站的客戶程序不需要了解Modbus的具體協議和實現方式,只需調用組件公然出來的方法,就可以與遠程計算機交換數據,實現Modbus協議透明、網絡數據傳輸透明。例如Slave真個組件,客戶端只需修改其連接數據就可以使變化反應到Master端,而Master端修改了數據后,Slave端會觸發事件通知客戶。


                 網絡結構沒有使用點對點的連接,而是采用了星型連接,在一個站點上建立一個實時數據庫,相當于一個數據中心。所有站點都只與數據中心相連,各站數據也發送到數據中心集中。網絡結構見圖4。


            

     


             3 討論


                 3.1 關于具體應用


                 圖4所示的網絡結構中,一方面,系統封裝了Modbus協議和網絡的實現,實現了功能復用,減少了重復操縱,并且使網絡調試比較方便;另一方面,星型結構使增加數據、增加站點都很方便,原則上每個站點都可以取得任意站點的數據,而不需要增加新的連接。在圖4所示的網絡結構下,可以方便地把配庫和配料秤相連,實現半庫調配(根據料漿質量反饋控制配料秤配方),將控制回路增加到3條。部分實時數據還可以存進歷史數據庫,以便長期保存和事后分析查詢。


                 3.2 Modbus協議的其它特點


                 除了在簡介中提到的應用廣泛的特點外,Modbus還有其它特點。Modbus協議需要對數據進行校驗,串行協議中除有奇偶校驗外,ASCII模式采用LRC校驗,RTU模式采用16位CRC校驗,但TCP模式沒有額外規定校驗,由于TCP協議是一個面向連接的可靠協議。另外,Modbus采用主從方式定時收發數據,在實際使用中假如某Slave站點斷開后(如故障或關機),Master端可以診斷出來,而當故障修復后,網絡又可自動接通。因此,Modbus協議的可靠性較好。


                 Modbus定義了很多功能,對產業上的實際應用考慮比較全面。而且協議仍在發展中,用戶還可自定義功能碼。可見,Modbus的擴展性是比較好的。


                 對于一些重復發送的檢測數據,可以采用Unsolicited方式,即Master端不需發送請求,而由Slave端主動發送數據。這樣可以降低網絡數據流量,以進步傳輸速度。因此,Modbus協議應用也比較靈活。


                 3.3 與NetDDE協議的對比


                 NetDDE協議有幾個缺點:一是技術太老,Win98平臺上沒有32位的API,只有16位的,因此在32位平臺上實現起來較困難,而且NetDDE不能實現串行連接;二是傳

     
     
    網站首頁  |  關于我們  |  聯系我們  |  廣告服務  |  版權隱私  |  友情鏈接  |  站點導航