基于LabVIEW的數控機床網(wǎng)絡(luò )測控系統--基于B/S模式的軟件設計 (一)
圖5.2是LabVIEW數據實(shí)時(shí)采集顯示界面,軟件的操作過(guò)程說(shuō)明如下:
本文引用地址:http://dyxdggzs.com/article/270598.htm(1)AD通道校準是指對采集板卡的計量校準,如果測得模擬量沒(méi)有在精度要求范圍內,軟件有自己校準功能。
(2)參數設置界面是按照用戶(hù)的要求來(lái)配置一些參數,比如說(shuō)位移的起始點(diǎn)、終止點(diǎn)、步長(cháng)等參數。
(3)測試界面如上圖5.2所示,也是軟件的主界面,但選擇好測試方式后,(硬件部分連接好的情況下)就開(kāi)始了實(shí)時(shí)采集與顯示。對于采集的數據,測試完畢后,點(diǎn)擊保存可以保存到Excel表中,也可以保存成特定格式的數據,在將此數據倒到分析軟件中,進(jìn)行無(wú)償的分析,從而可以進(jìn)行相應的補償。但是對于工廠(chǎng)中大量的測試數據數據庫是首先存儲方式??梢岳肔abSQL方式向數據庫數據表添加記錄,假設數據表為位移Displacement表。具體步驟如下:
?、俳⑴c數據庫的連接。首先通過(guò)ADO Connection Create.vi創(chuàng )建一個(gè)Connection對象,然后利用ADO Connection Open.vi建立與數據庫的連接。數據庫由ADO Connection Open.vi的ConnectionString指定,此參數由前面板的字符串控件提供,如下圖5.3所示。
?、谏蒘QL命令,執行命令。在前面板table控件中輸入表名,Current和Error控件中輸入字段值。在程序框圖中使用Format Into String生成SQL命令,將它連接到ADO Connection Execute.vi即可執行,同時(shí)可在前面板Command Text控件顯示此命令。
?、蹟嚅_(kāi)與數據庫之間的連接。利用ADO Connection Close.vi關(guān)閉Connection對象,并使用ADO Connection Destroy.vi刪除Connection對象。

(4)歷史數據回放界面,可以根據用戶(hù)需要,按照測試的日期時(shí)間打開(kāi)所需要回放查詢(xún)的文件。數據回放界面繪制出的相應歷史曲線(xiàn)如圖5.4所示。

在實(shí)時(shí)與歷史曲線(xiàn)顯示部分,趨勢曲線(xiàn)能夠形象清楚地描繪出現場(chǎng)數據在一段時(shí)間內的分布趨勢,通過(guò)趨勢圖,操作員可以根據各個(gè)現場(chǎng)數據采集點(diǎn)的數據的變化趨勢看出各個(gè)量的變化情況,且能查看任何歷史時(shí)刻的數據,供現場(chǎng)操作人員作出適當的處理。
5.1.3數據記錄監控模塊DSC的應用
(1)測控系統在上述功能的實(shí)現過(guò)程中,遇到了三個(gè)實(shí)際工程問(wèn)題:
?、俦O控界面中現場(chǎng)數據顯示的速度慢,最慢達到5秒的延遲,很顯然這不符合工業(yè)現場(chǎng)過(guò)程控制實(shí)時(shí)性的要求。
?、谟捎?a class="contentlabel" href="http://dyxdggzs.com/news/listbylabel/label/LabVIEW">LabVIEW軟件本身不像FIX工控軟件一樣,帶有實(shí)時(shí)數據庫。當系統比較小時(shí),即在控制點(diǎn)數少的情況下,實(shí)現監控功能可以利用全局變量的概念,將監視或控制的現場(chǎng)測量點(diǎn)都看作是全局變量,暫且稱(chēng)它們?yōu)?ldquo;全局變量庫”。然后把LabVIEW實(shí)現的各個(gè)功能看作是一個(gè)子程序,每一個(gè)子程序都是從全局變量庫中取數據或向里寫(xiě)數據。也就是將這個(gè)“全局變量庫”看作是一個(gè)實(shí)時(shí)數據庫,現場(chǎng)每一個(gè)測量點(diǎn)都與庫中的參數一一對應。這種方法在控制點(diǎn)數少的情況下還是可行的,但是,當系統是大中型的情況即現場(chǎng)控制點(diǎn)數很多的時(shí)候,在實(shí)踐中發(fā)現,使用全局變量的方法,不僅編程量大,而且數據查找起來(lái)沒(méi)有數據庫查找起來(lái)方便快捷,另外,全局變量一直是編程人員所盡量避免使用的方法。
?、塾捎谠趯?shí)際的過(guò)程控制監視中,要求各個(gè)界面之間來(lái)回的切換,實(shí)現界面的友好操作性。FIX監控軟件通過(guò)編程有調用各個(gè)界面的函數,可以方便的實(shí)現界面之間的切換。然而,在用LabvEIW實(shí)現界面之間切換的過(guò)程中,將上述的“全局變量庫”作在“數據總攬”的界面里,其它各個(gè)子程序(界面),例如,“實(shí)時(shí)和歷史曲線(xiàn)”、“歷史數據”、各個(gè)流程圖等,都是和它進(jìn)行數據交換。所以“數據總攬”子程序起著(zhù)實(shí)時(shí)數據庫的作用,它在系統運行的過(guò)程中不能被關(guān)閉,本課題是利用VI Sevrer技術(shù)使得“數據總攬”子程序在系統己開(kāi)運行時(shí)就以最小化的形式開(kāi)始運行,保證數據的實(shí)時(shí)性。但是,考慮到“歷史數據”和“歷史曲線(xiàn)”兩個(gè)子程序由于需要存取歷史數據的原因,而在系統運行的過(guò)程中不能被關(guān)閉,所以也將它們始終處于最小化的狀態(tài)運行。按照上述的做法,發(fā)現在系統運行過(guò)程中,各個(gè)界面之間切換起來(lái)速度較慢,這不能充分滿(mǎn)足現場(chǎng)過(guò)程控制的實(shí)時(shí)性和可靠性的要求。
(2)基于DSC模塊的問(wèn)題解決方法
第一個(gè)問(wèn)題,數據讀和寫(xiě)的速度有明顯的差別。利用Datasocket技術(shù)編程實(shí)現數據的讀和寫(xiě),寫(xiě)數據的速度卻很快。所以可能是編程中出現的數據緩沖或者程序中等待事件的發(fā)生執行效率低的原因,決定數據顯示部分通過(guò)在前面板直接用Datasocket連接OPC服務(wù)器。結果數據顯示速度明顯達到幾百毫秒,滿(mǎn)足了實(shí)時(shí)要求。而且這種方法開(kāi)發(fā)時(shí)間短,效率高。
用LabVEIW能夠初步實(shí)現數據采集、顯示和存儲等功能的前提下,考慮到NI公司推出的LabVIEW一附加模塊——數據記錄監控模塊DSC(Datalogging and Superviosry Control Module),此模塊是專(zhuān)為過(guò)程控制而設計開(kāi)發(fā)的,是專(zhuān)用于輕松設計和維護分布式監控系統的理想軟件工具。利用這個(gè)模塊可以很方便地完成與設備的連接,包括LabVEIW實(shí)時(shí)目標模塊和OPC設備。從系統概覽到節點(diǎn)執行,該模塊提供了內置式的開(kāi)發(fā)工具,來(lái)成功記錄數據、警報和事件;顯示生產(chǎn)數據隨時(shí)間變化的趨勢;同時(shí)還可通過(guò)網(wǎng)絡(luò )數據庫,利用SQL/ODBC標準查詢(xún)從中提取數據。該模塊的應用增強了搜索和提取數據的靈活性,提高了數據記錄的可靠性和保護能力 。
相比其它附加模塊,DSC模塊有以下六個(gè)特點(diǎn):內置的網(wǎng)絡(luò )開(kāi)發(fā)工具;用于實(shí)現數據共享和與第三方設備結合;應用的安全性設置;針對分布式監控的開(kāi)發(fā)工具;用于分布式數據記錄的網(wǎng)絡(luò )數據庫;實(shí)時(shí)和歷史趨勢曲線(xiàn)。
(3)“LabVEIW+DSC”相結合運用“LabVEIW+DSC”相結合,軟件體系結構圖如圖5.5所示。

為提高系統的開(kāi)放性,選用了“LabVIEW+OPC”的設計方法。就是用LabVIEW作為上位機監控軟件,采用先進(jìn)的網(wǎng)絡(luò )通信技術(shù)——DataSocket技術(shù),通過(guò)OPC服務(wù)器接口來(lái)實(shí)現現場(chǎng)數據共享。這里采用的OPC服務(wù)器是Matrikon公司研發(fā)的,它作為一中間橋梁,實(shí)現了監控軟件LabVIEW和現場(chǎng)智能組件之間的數據通信,通過(guò)OPC配置項建立與底層設備的數據采集點(diǎn)的一一對應關(guān)系。如下圖5.6所示:

圖5.6是OPC服務(wù)器的配置,其中項名Name是用戶(hù)自己定義的對應于現場(chǎng)的數據采集點(diǎn),Item Path必須符合OPC服務(wù)器與MODBUS協(xié)議的語(yǔ)法要求,即“[port].Device. 0~4:”,同時(shí)設置該項是讀數據還是寫(xiě)數據以及數據的類(lèi)型、更新時(shí)間等等 。
LabVIEW訪(fǎng)問(wèn)OPC的方法有很多種,本文采用的是通過(guò)DSC模塊中Tag Configuration Editor引擎,建立LabVIEW和OPC服務(wù)器的連接。DSC模塊使用Tag連接OPC數據項,通過(guò)Tag Configuration Editor,可以將DSC的Tag與OPC數據項對應起來(lái),生成.scf文件,相當于LabVIEW的實(shí)時(shí)數據庫,如圖5.7所示。

c++相關(guān)文章:c++教程
干涉儀相關(guān)文章:干涉儀原理
評論