摘要:為了保證皮帶輸送機的安全運行,發(fā)揮鋼絲繩芯皮帶在全生命周期中的最大效益,以TCK—GMS600弱磁檢測器為基礎,在Vc++6.0集成開發(fā)環(huán)境下,應用DAQBench(DataAcquisitionBench)控件和多線程技術,開發(fā)了鋼絲繩芯輸送帶電磁在線監(jiān)測系統(tǒng),實現(xiàn)了數(shù)據(jù)采集和存儲、曲線實時顯示、缺陷識別等功能,為鋼絲繩芯皮帶的健康維護奠定基礎。
關鍵詞:DAQBench控件;鋼絲繩芯;在線監(jiān)測;TCK-GMS600
中圖分類號:TP311 文獻標識碼:A 文章編號:1002—1841(2012)06—0046—02
ElectromagneticOn—lineMonitoringSystemfor
SteelCordConveyorBeltBasedonVC++
CHEN Hai-yu,MA Hong-wei,MAO Qing-hua,ZHANG Xu-hui,ZHANG Da-wei
(Xi’an University of Science and Technology,Xi’an 710054,China)
Abstract:In order to ensure safe operation of belt conveyor and produce the best possible results of steel cord conveyor belt in life cycles.Steel cord conveyor belt electromagnetic on-line monitoring system was developed by using VC++6.0 integrated with
DAQBench controls based and multi-threading technology on TCK-GMS600 weak magnetic detector.The system realizes the functions of data acquisition,storage,curve real—time display,defect identification,etc,which makes good foundation for healthy maintenance of steel cord conveyor belt.
Keywords:DAQBench controls;steel cord;on-line monitoring;TCK-GMS600
引言
隨著電磁檢測技術和計算機技術的不斷發(fā)展,為鋼絲繩芯皮帶電磁檢測的數(shù)字化、智能化以及預知維護提供了強有力的技術支撐。在鋼絲繩芯皮帶的監(jiān)測過程中,為了保證監(jiān)測的直觀、可靠,不僅要實現(xiàn)實時監(jiān)測,而且要實時記錄、顯示檢測曲線或圖像,由于皮帶機的運行速度較高(一般運行速度為3~4m/s),數(shù)據(jù)量大,要求數(shù)據(jù)的采集、傳輸和顯示要與之匹配。在軟件系統(tǒng)開發(fā)時,應用一般控件和方法時,常常出現(xiàn)丟失數(shù)據(jù)或曲線繪制失真問題,為此,將借助于多線程技術與控件編程相結合的方法,實現(xiàn)數(shù)據(jù)高速采集、實時存儲與顯示。
1 系統(tǒng)構成
系統(tǒng)是基于計算機的數(shù)據(jù)實時監(jiān)測系統(tǒng),整個系統(tǒng)在VC++6.0集成開發(fā)環(huán)境下,利用DAQBench控件和TCK—GMS600弱磁檢測器實現(xiàn)數(shù)據(jù)的采集、顯示和存儲。DAQBench是一種測量和自動化應用的ActiveX控件的集合,可以很簡單地實現(xiàn)數(shù)據(jù)接收、顯示和分析,此控件也支持VC++6.0環(huán)境下的開發(fā)應用。TCK-GMS600弱磁檢測器,是利用最新弱磁檢測技術開發(fā)的一種先進的鋼絲繩芯皮帶探傷器,具有數(shù)據(jù)采集準確和傳輸速率高等特征。
TCK-GMS600型鋼絲繩芯輸送帶弱磁檢測傳感器采用弱磁檢測方法對輸送帶中鋼絲繩的斷絲、斷股、磨損、銹蝕、接頭移位等損傷故障進行檢測[1]。從圖1弱磁檢測系統(tǒng)安裝圖可
知,該系統(tǒng)先通過弱磁加載模塊對鋼絲繩芯輸送帶中鋼絲繩進行磁化,磁化后鋼絲繩具有微弱剩磁,然后通過磁檢測模塊對輸送帶內(nèi)部缺陷進行檢測,并通過以太網(wǎng)TCP/IP協(xié)議與計算機通訊,實現(xiàn)數(shù)據(jù)傳輸和控制,從而提取出鋼絲繩芯輸送帶內(nèi)部缺陷的原始信號,然后通過上位軟件對缺陷信號進行分析和處理,從而實現(xiàn)對鋼絲繩芯皮帶缺陷信號識別。
2 應用ActiveX控件的系統(tǒng)軟件設計
2.1 DAQBench控件介紹
DAQBench控件是ActiveX控件的集合,它可以快速完成監(jiān)測系統(tǒng)界面設計,利用該控件不僅能快速完成軟件設計,而且能夠使應用程序界面更友好。與其他的開發(fā)軟件相比,DAQBench具有開發(fā)成本低、執(zhí)行效率高、程序彈性大、開放性強、易于擴充等優(yōu)點。當前DAQBench組件包括:用戶界面控件,信息集成控件,分析庫控件,SCADA(Supervisory Control And Data Acquisition)控制單元等[2-3]。
2.2監(jiān)測系統(tǒng)軟件設計
通過以太網(wǎng)TCP/IP協(xié)議與計算機通訊,獲取數(shù)據(jù)傳輸,然后在VC++6.0集成開發(fā)環(huán)境下,采用多線程同步技術,多線同步運行流程圖如2所示,應用DAQBench控件包中的Dchart
Control控件完成數(shù)據(jù)的實時顯示,并且完成數(shù)據(jù)采集和存儲等功能。
TCP/IP是一個4層的分層體系結構,包括應用層、傳輸層、網(wǎng)絡層和網(wǎng)絡接口層,對于傳輸層,其主要協(xié)議有UDP(user data protoco1)和傳輸控制協(xié)議(TCP,Transmission Control Protoco1)。TCP協(xié)議將維護連接并確保數(shù)據(jù)的完整性,由于監(jiān)測系統(tǒng)數(shù)據(jù)量大,且要求數(shù)據(jù)連續(xù)傳輸,系統(tǒng)采用TCP通訊協(xié)議。在Windows系統(tǒng)上完成網(wǎng)絡通信應用程序開發(fā),基本都利用SOCKET套接字進行數(shù)據(jù)通訊[3]。
由于系統(tǒng)中要完成數(shù)據(jù)接收、數(shù)據(jù)存儲和數(shù)據(jù)顯示3個功能,對于后期開發(fā)還要加入數(shù)據(jù)分析處理,所以采用多線程技術完成幾個功能的實現(xiàn),系統(tǒng)采用模塊化編程思想。在VC++6.0下線程分為2種:用戶界面線程(GUI)和工作者(Worker)線程(又稱為后臺線程)[4]。為了使各線程的工作協(xié)調(diào),就要使用線程的同步技術。MFC(Microsoft Foundation Classes)中提供了4種同步方法:臨界區(qū)、信號量、互斥量和事件[5-6]。該系統(tǒng)采用事件同步機制,事件是通過設置自身對象為有信號和無信號控制線程的執(zhí)行或者等待。
2.2.1控件加載設置
安裝完成DAQBench控件包后,就可以和普通控件一樣在VC++6.0中插入控件,插入后就使用控件的屬性、方法和事件對控件進行操作。
2.2.2數(shù)據(jù)接收
根據(jù)TCK-GMS600弱磁檢測器提供的通信協(xié)議編寫通信段代碼,系統(tǒng)采用的是微軟API(即應用程序編程接口)底層升入和C/S(客戶端與服務器)模式,弱磁檢測模塊作為客戶端,當接收到開始命令后,就開始不間斷發(fā)送數(shù)據(jù),上位PC機作為服務器采集數(shù)據(jù),利用線程同步技術實現(xiàn)數(shù)據(jù)不中斷接收。
2.2.3實時數(shù)據(jù)顯示
根據(jù)TCK-GMS600弱磁檢測器特征,其中包含多個傳感器即多通道數(shù)據(jù)采集,通道主要分為14、28、42和56。曲線的繪制是DAQBench控件包中的Dcha Control控件,此控件的特點可以實現(xiàn)X軸自動移動,實現(xiàn)曲線動態(tài)移動效果。為了能夠?qū)崟r準確地顯示每個傳感器的曲線特征,采用一個界面顯示14個傳感器的形式顯示實時曲線,根據(jù)通道數(shù)的變化選擇性的顯示想要查看的曲線圖像。
48 陳海瑜等,基 于VC++ 設計鋼絲繩芯皮帶電磁在線監(jiān)測系統(tǒng) 第6期
2.2.4采集數(shù)據(jù)的存儲
為了方便后面對皮帶具體情況進行全面分析處理或者歷史數(shù)據(jù)繪圖,必須對采集的數(shù)據(jù)存儲,系統(tǒng)數(shù)據(jù)存儲是通過寫入二進制文件的方式進行,采用微軟基礎類(Microsoft Foundation Classes)中的CFile類,此類中對文件的操作是以字符為單位,寫入和讀出是都是按照字符的格式操作,功能簡單,方便使用。在寫入數(shù)據(jù)前要對每個通道的數(shù)據(jù)進行處理,其中包括各通道數(shù)據(jù)的分離和對各通道數(shù)據(jù)根據(jù)傳感器特性相應的進行處理。
2.2.5主要程序段過程設計
系統(tǒng)主要程序設計思想是應用多線程同步技術完成,具體步驟分為以下4個過程:
(1) 定義Cevent類的3個事件對象:接收事件對象eeven-tRev、存儲數(shù)據(jù)事件對象ceventStore、畫線事件對象ceventDraw。并且定義SOCKET類2個對象,一個是用來件監(jiān)聽連接請求的TcpSocket,一個是用來接收數(shù)的AcceptSock,啟動監(jiān)聽等待下位機發(fā)起連接請求,一旦接收到客戶端連接信號,設置線程內(nèi)循環(huán)控制標記為TRUE,啟動接收、存儲和畫曲線3個線程,并創(chuàng)建存儲數(shù)據(jù)的data文件,ceventRev.SetEvent()設置接收事件對象有信號。
(2)啟動3個線程后,3個線程中用while循環(huán)保持運行,線程運行后其中應用函數(shù)WaitForSingleObject函數(shù)等待事件信號,沒有信號時線程停止運行不占用CUP運行時間。
(3)當函數(shù)WaitForSingleObject(ceventRev.m—hObject,IN-FINITE)在接收線程等待到事件信號后,開始執(zhí)行接收數(shù)據(jù)線程,waitForsingleObiect函數(shù)將ceventRev設為無信號狀,當完成
接收數(shù)據(jù)后調(diào)用ceventStore.SetEvent()函數(shù)設置ceventStore為有信號狀。當存儲數(shù)據(jù)線程中WaitForSingleObject(ceventStore.m_hObject,INFINITE)等待到事件信號后,開始執(zhí)行存儲數(shù)據(jù)線程,WaitForSingleObject函數(shù)將ceventStore設為無信號狀,當完成接收數(shù)據(jù)后調(diào)用ceventDraw.SetEvent()函數(shù)設置ceventDraw為有信號狀。當曲線繪制線程中的WaitForSingleObject(ceven—tDraw.m—hObject,INFINITE)等待到事件信號后,開始執(zhí)行曲線繪制線程,WaitForSingleObject函數(shù)將ceventDraw設為無信號狀,當完成接收數(shù)據(jù)后調(diào)用ceventRev.SetEvent()函數(shù)設置ceventRev為有信號狀。整個過程就完成了3個線程直接的同
步協(xié)調(diào)循環(huán)運行。這樣就保證了數(shù)據(jù)實時接收、存儲和顯示。
(4)如果按下停止按鈕則設置線程內(nèi)循環(huán)控制標記為FALSE,此時線程循環(huán)條件為假,線程自動結束,最后關閉數(shù)據(jù)存儲文件和SOCKET對象。
3.實驗測試
由于系統(tǒng)是對新搭建的帶式輸送機實驗平臺的監(jiān)測,設置皮帶運行速度為0.5m/s,其皮帶寬度為80mm,對于新皮帶除了接頭信號外并沒有加入其它損傷信號,所以系統(tǒng)中監(jiān)測出來的信號是標準的接頭信號,監(jiān)測過程中設置弱磁檢測傳感器數(shù)據(jù)發(fā)送頻率為1KHz,通道數(shù)為14,進行數(shù)據(jù)采集,整個系統(tǒng)測試界面部分如圖3所示,根據(jù)曲線顯示說明系統(tǒng)可以實現(xiàn)鋼絲繩芯輸送帶缺陷信號高速實時顯示。
4.結束語
系統(tǒng)是使用DAQBench控件,結合TCK-GMS600弱磁檢測傳感器開發(fā)的,系統(tǒng)中應用windowsAPI編程和多線程同步技術實現(xiàn)了對數(shù)據(jù)的采集、存儲和實時顯示功能,對鋼絲繩芯輸送帶后期數(shù)據(jù)分析處理、缺陷分類以及預知維護提供了基礎數(shù)據(jù),為保證帶式輸送機高效、安全運行奠定了基礎。
參考文獻:
[1]宋曉宇.TCK型鋼絲繩在線無損定量檢測裝置.同煤科技.2007(3);52-53
[2]吳銀川,驗證國,蘇娟,基于DAQBench的數(shù)據(jù)采集系統(tǒng)設計,儀器儀表用戶,2008,15(3);35-36
[3]ADLINKTechnologyInc,DAQBench用戶手冊,Taipei凌華科技,2001.
[4]張國龍,徐曉蘇,基于VC++多線程技術的模擬慣性測量組件設計,中國慣性技術學報,2009,17(1);24-27
[5]孫鑫.VC++深入詳解,北京;電子工業(yè)出版社,2006;530-532
[6]葛亮.VisualC++從入門到實踐,北京;清華大學出版社,2009;285-289
[7]陳秀川,楊云,郭琦,對VC++MFC類庫中Cfile類的派生類的研究和示例,南昌航空工業(yè)學院學報(自然科學版),2004,18(4);79-83
作者簡介:陳海瑜(1984-),碩士研究生,主要研究方向為礦用帶式輸送機在線監(jiān)測系統(tǒng)設計。E-mail;chenhaiyu000@qq.com
上一篇: 第一篇