技術頻道

      LabVIEW實現基于OPC的PC與PCC實時通訊

      摘 要:針對現代工業過程控制中實時通訊要求和現場總線存在的缺點,用現在流行的開放式標準接口技術OPC規范,設計了一種基于LabVIEW的PC與PCC實時數據通訊方案,并給出了具體的實現過程。該方案已成功運用于“面向高分子及其復合材料開發的測試關鍵技術平臺”中,實際應用證明了該方案可省去復雜的語言編程,簡化開發過程,是一種建立全面的工業自動化控制系統和實現測控系統的網絡化的有效方法。

      關鍵詞:OPC;PCC;LabVIEW;實時通訊

      Abstract: To realize real-time communication in modern industrial process control and to ameliorate the deficiency of field-bus, the real-time data communication between PC and PCC based on OPC is designed, by using LabVIEW as the upper supervisory software. And also the detailed produces and programs are given out. This design method is successfully applied to the key technologies test platform on facing polymer macromolecule and polymer composite development. The result shows that this method can dispense with complicated programming, simplify the process of development. It is a efficient method to build facilely comprehensive industry automation control system and implement networked measurement and control system.

      Keywords: OPC;PCC;LabVIEW;Real-time Communication

      1 引言

        PC機與PCC(Programmable Computer Controller)通訊時,PCC作為下位機完成輸出控制、數據采集及狀態判別工作,PC機完成資料(數據)分析、計算、存儲、顯示、打印輸出,以實現對被控系統的監控。此系統工作模式已在現代工業控制領域得到廣泛應用。然而,如何有效而簡便地實現監控系統的實時通訊一直是人們想解決的問題。OPC(OLE for Process Control)技術的出現為解決此問題提供了可能。

        OPC是一種基于window NT技術規范的標準接口協議,使得在使用第三方硬件時,只要硬件開發商提供OPC Server軟件,開發人員無需編寫低層的驅動程序,通過用戶軟件的OPC Client,即可與之進行數據交互,不同廠家之間軟硬件的集成變得易于實現。采用OPC技術,客戶不需要了解工控系統的內核,而只需要以OPC Client/OPC Server的訪問方式獲取實時數據[1,2,3,4]。

        本文詳細介紹了一種基于LabVIEW的PC與B&R PCC2003實時通訊的具體實現過程,成功地實現了控制系統的實時通訊。

      2 系統結構組成

        面向高分子及其復合材料開發的測試關鍵技術平臺用于聚合物材料的性能測試。主要包括毛細管流變單元、單螺桿擠出單元和注塑單元等功能模塊單元,其控制系統采用基于CAN的現場總線智能控制系統結構,控制器選用B&R可編程計算機控制器PCC2003??刂葡到y結構簡圖如圖1所示。

        其中,主控制站負責主機驅動,CAN I/O擴展站負責毛細管流變單元、密煉單元以及注塑單元等功能模塊單元的控制;人機界面為現場操作單元;計算機數據采集與分析系統負責數據采集與動態數據處理以及輸出測試結果。因此,實現PC與主控制站PCC的實時數據交換是該測控系統的關鍵。


      圖1 控制系統結構簡圖

        設計中上位機選用研華工業控制計算機,下位機選用B&R(貝加萊)公司PCC2003系統。PC與PCC之間的物理連接采用RS232接口,上位機數據采集與動態信號處理系統基于LabVIEW8.0軟件平臺進行二次開發。

      3 通訊方案設計與實現

        LabVIEW將需要發布的數據送到OPC服務器后,通過串口RS232傳給底層設備(PCC);PCC的數據傳到OPC服務器,LabVIEW讀取數據并在前面板中顯示出來,從而得到現場數據。其中,OPC可稱為“軟件總線”,應用程序讀取OPC數據源, OPC Server將現場數據轉換為OPC統一格式的數據,從而可以使配置更加簡潔、通用。在這里,OPC提供的數據類型主要有:①實時測量數據:料筒溫度、熔體壓力、螺桿扭矩、轉速等。②控制參數:開、關、運行狀態信息、硬件連接狀態和軟件系統狀態等。

        因此,基于OPC技術實現PC與PCC的實時通訊,關鍵在于如何建立OPC服務器各數據項與PCC中各端口地址一一對應并實現連接,以及在LabVIEW中開發的各實時監控程序如何訪問OPC服務器。

        3.1 PCC與OPC服務器實時通信的實現

        3.1.1 PCC通信參數設置

        設置PCC與PC通訊的基本參數(如通訊端口地址、通訊協議、通訊波特率等)供OPC服務器使用,并開放PC訪問PCC需要的內存區和數據區。

        3.1.2 OPC服務器的建立

        使用OPC通信協議,需運行一個OPC服務器,需對OPC Server組態[5],如圖2所示。


      圖2 OPC 服務器設置

        1)通信路徑設置

        通信路徑設置包括PVI(Process Visualization Interface)Connections, Lines, Devices, Stations, CPUs,Tasks的設置,其對應功能如表1所示。其中PVI Connections可以設置為本地通信或基于TCP/IP的遠程通信。

        2) OPC Server對象設置

        OPC Server由三類對象組成:服務器(Server)對象、組(Group)對象、數據項(Item) 對象,它們共同實現OPC服務器接口定義功能。OPC服務器對象是OPC組對象的容器,通過調用OPC服務器對象建立應用程序和底層設備的會話,并返回會話句柄,使用此句柄可以在OPC服務器對象的基礎上創建OPC組對象。OPC組對象是一系列相關數據的集合,通過在它上面創建OPC項對象,建立與現場測試節點的關聯,訪問OPC項對象就可返回現場測試數據。OPC項定義了數據的數值(Value)、品質(Quality)、時間戳(TimeStamp)、設備號(Device NO.)、板卡號(Board NO.)、通道號(Channel No.)等屬性。

        OPC Server對象對應PCC內存區和數據區特定地址的變量,LabVIEW通過OPC Client, OPC Server用這些變量與PCC進行數據交互。服務器對象、組對象與數據項對象可以形成樹狀目錄管理,最多可建立6層目錄。在每個對象對應的參數對話框中設置其參數并選擇其通信路徑,數據項對象的數據類型及地址等要與PCC變量一致。

        3) OPC Server訪問方式配置

        訪問OPC服務器的方式有兩種:本地訪問(Local Communication)和遠程訪問(Network Communication)。在“Server Parameter”中配置OPC Server的訪問方式。通常情況下,為了實現透明訪問,OPC服務器和客戶程序位于不同的機器上,客戶程序通過提供遠程計算機名和OPC服務器ID實現遠程訪問OPC服務器。OPC服務器和客戶程序也可以位于同一計算機上,此時可以設置為本地訪問或遠程訪問OPC服務器。

        3.2 LabVIEW與OPC Server實時通訊的實現

        PC與PCC實時數據通信任務是通過LabVIEW實時讀寫PCC中的現場測試數據來實現的。由于LabVIEW軟件平臺支持DataSocket技術,因此LabVIEW可以通過DataSocket中隱含的一個NI OPC Client與B&R PVI OPC Server進行通訊,從而實現PC與PCC的實時數據交互。

        在LabVIEW中利用DataSocket技術訪問OPC服務器從而實現與PCC實時通訊的方法有兩種[6,7]:

        1) 前面板控件直接鏈接

        DataSocket的前面板對象連接是不需要任何編程的數據傳輸方法,只需將前面板對象與OPC數據項對象一一對應即可。因此在數據變量關系不是很復雜的情況下,用前面板對象連接方法更加簡單,可以大大節省編程時間,提高開發效率。建立前面板對象與OPC數據項對象鏈接的方法是:在需要鏈接的前面板對象上右擊,在彈出的對話框中選擇Properties選項中的Data Binding,彈出如圖3所示的對話框進行前面板對象的鏈接設置。


      圖3前面板控件鏈接

        在Data Binding Selecting的下拉菜單中選擇DataSocket;在Mode中選擇鏈接的類型后,在DataSocket URL旁選擇DSTP Server,這時就會鏈接到剛剛設置好的OPC服務器上,選擇與正在設置的變量對應的服務器上的變量名即可,如圖4所示。鏈接后前面板對象的右上角會出現一個鏈接指示燈,運行程序時,若鏈接正確指示燈顯示綠色,否則為紅色。

        2)DataSocket 編程

        利用控件屬性直接鏈接實現網絡數據傳輸,具有無須編程、簡單易用的特點;缺點是數據不透明,只能在客戶端設置好的控件間傳輸、顯示,無法對數據進行有效的處理。如果需要在客戶端處理服務器傳入的數據,必須利用DataSocket函數庫提供的API函數模塊,通過編程實現。


      圖4 OPC服務器上的變量名的鏈接

        DataSocket函數庫包含Open、Close、 Read、Write和Select等功能模塊。DataSocket Read和DataSocket Write函數讀寫數據之前,必須用DataSocket Open函數打開URL指定的與OPC服務器中的項相對應的連接,其中URL的格式opc://localhost/servername/itemID,其中opc指DataSocket傳輸協議,中間兩段分別指宿主機IP地址或標識和服務器的名字,最后一段是數據項,這一項名要與OPC服務器中對應項項名一致。另外為了保證讀取數據不丟失,在DataSocket Open函數中利用一個枚舉類型的常數設置DataSocket連接的模式為緩沖模式;為了提高寫數據的效率,可以將讀寫的數據如單精度浮點數、無符號整型量和開關量都統一通過Variant函數轉換成變體的數據類型,尤其是在寫傳輸數據的屬性如時間、名稱的時候需要轉換函數。

      4 實驗結果與分析

        “面向高分子及其復合材料開發的測試關鍵技術平臺”中的單螺桿擠出模塊是目前測試平臺所有模塊中最復雜的一個測試模塊,它要求測試精度高,涉及的變量種類多,要求能夠實時顯示并保存現場的壓力值、四段溫度值,電機的轉速、扭矩,振動信號的幅度、頻率,擠出產品的重量等,并有嚴格的時間控制要求,還要進行關鍵參數的報警保護設置。運行LabVIEW程序,設置完所有參數后,點擊“開始測試”進行測試,如圖5所示。


      圖5 基于OPC通信的單螺桿擠出模塊測試

        在右側上方的單螺桿擠出模塊模型顯示區,能實時顯示當前擠出機的四段溫度值,壓力值,電機的轉速、扭矩,振動信號的幅度、頻率,擠出產品的重量實際值等。整個系統性能穩定,數據傳輸速率快,精確性好,達到了工業現場高效率的實時數據傳輸要求,大大降低了數據傳輸過程中的差錯率,證明該通信方案的有效性。

      5 結束語

        此方法同樣適用于Profibus,CAN等通訊總線。 LabVIEW軟件平臺可以同時與多個OPC服務器相連,一個OPC服務器也可與多個PCC相連,用戶可以自行定義、增加或刪除,從而很容易實現系統集成和具有更高的系統互連性,并且可以滿足大量數據源通信的標準機制。本系統通信方案的有效實現對于同類型的系統有很高的實用參考價值。

        本文作者的創新點:首次將工控領域的最新技術————OPC技術,應用到聚合物加工領域;將OPC接口技術作為開放工控系統的中間件,LabVIEW作為上位機用戶界面開發軟件,實現了多變量實時數據的批處理,最終實現精密化控制,并為系統的信息集成提供了全面解決方案。

      參考文獻:

        [1] Raul Alves Santos, Julio E. Normey-Rico, Alejandro Merino Gomez, OPC based distributed real time simulation of complex continuous processes[J]. Simulation Modelling Practice and Theory. 2005 (13): 525–549

        [2] OPC Foundation. OPC DA 2.05a Specification[Z].http://www.OPCfoundation.org.2002

        [3] 蔡思文,祁耀斌等. OPC客戶端設計及其在監控系統的應用[J]. 微計算機信息.2007,5-1 :106-108

        [4] 熊望枝,焦青松等. OPC 數據采集服務器的研究與設計[J].微計算機信息. 2007 ,3-1 : 24-25

        [5] B&R Automation Studio help. pviopc.2004

        [6]戴鵬飛,王勝開等.測試工程與LabVIEW應用[M].電子工業出版社.2006.5

        [7]National Instruments. LabVIEW User Manual[M].Temas: National Instruments,2003

      文章版權歸西部工控xbgk所有,未經許可不得轉載。

      主站蜘蛛池模板: 日本中文一区二区三区亚洲| 国产免费伦精品一区二区三区| 国产在线观看91精品一区| 中文字幕精品一区二区三区视频| 国产高清在线精品一区| 国产成人无码AV一区二区| 精品视频午夜一区二区| 97se色综合一区二区二区| 少妇特黄A一区二区三区| 精品人体无码一区二区三区| 国产视频福利一区| 国产精品久久久久一区二区三区| 乱色精品无码一区二区国产盗| 国产精品毛片a∨一区二区三区| 丝袜美腿高跟呻吟高潮一区| 国产在线精品观看一区| 国产一区二区三区在线| 日韩精品一区二区三区在线观看l| 91国偷自产一区二区三区| 精品一区二区三区无码免费视频| 精品日韩亚洲AV无码一区二区三区| 中文字幕AV一区中文字幕天堂| 国产免费播放一区二区| 亲子乱AV视频一区二区| 色婷婷AV一区二区三区浪潮| 国产亚洲日韩一区二区三区| 91久久精一区二区三区大全| 国产在线一区二区在线视频| 中文字幕VA一区二区三区| 亚洲国产精品乱码一区二区| 少妇无码一区二区三区免费| 91午夜精品亚洲一区二区三区| 国产91久久精品一区二区| 无码人妻精品一区二区三区蜜桃| 日本精品无码一区二区三区久久久 | 国产一区二区三区免费看| 亚洲一区二区三区国产精华液| 精品一区二区三人妻视频 | 无码人妻精品一区二区三18禁 | 亚洲一区爱区精品无码| 日韩免费视频一区二区|