技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 基于VB6.0的工控機數(shù)據(jù)采集系統(tǒng)的開發(fā)

基于VB6.0的工控機數(shù)據(jù)采集系統(tǒng)的開發(fā)

時間:2008-08-25 11:45:00來源:ronggang

導語:?本文介紹了基于VB6.0和工控機的坦克炮控系統(tǒng)試驗平臺數(shù)據(jù)采集系統(tǒng)的開發(fā)技術(shù),詳細說明了該系統(tǒng)的設計方法和關鍵環(huán)節(jié),給出了PCL818H和PCL813B數(shù)據(jù)采集卡的特點和應用方法以及VB6.0訪問數(shù)據(jù)庫的技術(shù)
摘 要:本文介紹了基于VB6.0和工控機的坦克炮控系統(tǒng)試驗平臺數(shù)據(jù)采集系統(tǒng)的開發(fā)技術(shù),詳細說明了該系統(tǒng)的設計方法和關鍵環(huán)節(jié),給出了PCL818H和PCL813B數(shù)據(jù)采集卡的特點和應用方法以及VB6.0訪問數(shù)據(jù)庫的技術(shù)。 關鍵詞:VisualBasic6.0;工控機;坦克炮控系統(tǒng); 數(shù)據(jù)采集; PCL-818H   前言:隨著武器裝備的不斷升級換代,性能的不斷提高,對維修后試驗技術(shù)的要求也不斷提高。新近幾年裝備部隊的主戰(zhàn)坦克火控系統(tǒng)對維修后的試驗要求相當嚴格,現(xiàn)行的試驗手段多為手工操作,自動化程度低,精確度很差,新型坦克炮控系統(tǒng)試驗平臺的開發(fā)正是基于這一背景提出的,本文介紹了該平臺的數(shù)據(jù)采集系統(tǒng)的開發(fā)技術(shù)。 1、 硬件系統(tǒng)設計   1-1、被測參數(shù)分析   按照有關規(guī)定,對維修后的坦克炮控系統(tǒng)需要進行靜態(tài)參數(shù)和動態(tài)參數(shù)的檢測[1]。需檢測的靜態(tài)參數(shù)共有94路±15V范圍的電壓信號,動態(tài)參數(shù)有位移、拉力、壓力、轉(zhuǎn)速、漂移等12路信號,位移、拉力信號為標準傳感器輸出信號,范圍為±5V和0-5V,轉(zhuǎn)速和漂移信號為陀螺儀組輸出的檢查信號,為±15V的電壓信號。另外,為了測量位移和拉力,需要使用液壓元件以及電磁鐵作為執(zhí)行元件進行相應的操作,故需進行相應的控制。   1-2、數(shù)據(jù)采集卡   數(shù)據(jù)采集卡的選擇是硬件系統(tǒng)建設的關鍵,基于性能的穩(wěn)定性和性價比的原因,選用了研華的ISA總線產(chǎn)品。根據(jù)需要,使用了3塊PCL813B和1塊PCL818H。這兩款板卡都可支持雙極性±5V的輸入范圍,我們另制作了一塊外圍端子板將±15V的電壓轉(zhuǎn)換為±5V[2-3]。   PCL813B具有32路單端隔離模擬量輸入,本應用中使用它采集94路靜態(tài)電壓信號。它采用了12位分辨率A/D轉(zhuǎn)換器AD574,轉(zhuǎn)換時間為25μs,數(shù)據(jù)傳送速率達25Kbps,輸入范圍為雙極性±5V、±2.5V、±1.25V和±0.625V,單極性為0~10V、0~5V、0~2.5V和0~1.25V,A/D轉(zhuǎn)換觸發(fā)方式為軟件觸發(fā)。   PCL-818H是一款多功能采集卡,本應用中使用它采集動態(tài)信號及控制液壓閥和電磁鐵。它提供了5個最為常用的測量和控制功能:12位的A/D轉(zhuǎn)換,D/A轉(zhuǎn)換,數(shù)字輸入,數(shù)字輸出和計時器/計數(shù)器。它的特點是:   (1) 16路(單)或8路(雙)差分模擬量輸入;  ?。?) 12位模數(shù)轉(zhuǎn)換,100KHZ的采樣頻率;   (3) 16路數(shù)字輸入和輸出;  ?。?) 可通過軟件改變增益的值;  ?。?) 軟件可選擇邏輯輸入范圍(雙極性)。   兩塊板卡使用方法基本相同,由于篇幅限制,下面僅以818H對模擬量的輸入采集為例介紹采集卡的使用。   編寫PCL-818H的程序的關鍵是使用板卡上的16個寄存器。它需要16個連續(xù)的PC機I/O空間地址,每個口地址與采集板內(nèi)的寄存器相對應。每個寄存器的地址是通過指定到板卡基地址的偏移量。例如,BASE+0是這個板卡的基地址,并且BASE+7表示基地址+7個字節(jié)。如果板卡的基地址是300h,則BASE+7寄存器的地址就是307h,結(jié)果見表1。   表1、 寄存器的作用及相應的I/O端口地址
  PCL-818H模擬輸入的16個端口,可以構(gòu)成16個單端輸入或者8對差分輸入,輸入通道的工作方式利用跳線設置,軟件控制對一個或多個通道的操作。輸入信號經(jīng)放大電路后,由一個逐次逼近式A/D轉(zhuǎn)換為12位數(shù)字信號。   PCL-818H提供了軟件、時鐘步進和外部信號3種觸發(fā)方式。軟件觸發(fā)的觸發(fā)器是由軟件控制的,當在軟件寄存器中寫入數(shù)值后,啟動A/D轉(zhuǎn)換,這種方式適用于低速A/D轉(zhuǎn)換。時鐘步進觸發(fā)適用于轉(zhuǎn)換速度要求很高的系統(tǒng),PCL-818H提供的8254定時/計數(shù)器用來為A/D提供一個固定觸發(fā)源,計數(shù)器1和計數(shù)器2級聯(lián)在一起提供了一個周期精確的觸發(fā)脈沖,非常適合于需要固定且精確的采樣頻率的系統(tǒng)。把外部觸發(fā)信號接在CN3的35腳,可以實現(xiàn)外部觸發(fā),適用于不需要周期采樣的系統(tǒng),外部信號的上升沿啟動A/D轉(zhuǎn)換。根據(jù)該系統(tǒng)的需要,我們選擇了軟件觸發(fā)方式。   1-3、工控機的選擇   工控機(IPC)是一種具備特殊性能的計算機,能在惡劣的工業(yè)生產(chǎn)環(huán)境下,保證系統(tǒng)的連續(xù)穩(wěn)定運行,并能承受環(huán)境中的高(低)溫、沖擊、振動、電磁干擾、潮濕、粉塵等不利因素[4]??紤]到軍用的特殊性,我們選擇了車載使用方便的工業(yè)便攜機,型號為華北工控的REPC-815,該機具有8槽PCI/ISA擴展能力,液晶屏可360℃旋轉(zhuǎn),具有防暴功能。 [align=center] 系統(tǒng)結(jié)構(gòu)圖[/align] 2、軟件系統(tǒng)的設計   系統(tǒng)的軟件設計采用了VB6.0,VB6.0以其易學、高效、功能強大以及所開發(fā)的系統(tǒng)界面友好等特點受到了眾多用戶的歡迎,在數(shù)據(jù)采集和工業(yè)控制領域得到了廣泛應用。本系統(tǒng)的軟件部分主要有數(shù)據(jù)采集處理和數(shù)據(jù)管理兩部分組成,實現(xiàn)的功能有數(shù)據(jù)采集的控制、數(shù)據(jù)處理、數(shù)據(jù)的管理以及試驗報告的輸出。下面給出了數(shù)據(jù)采集和存儲兩個關鍵環(huán)節(jié)的代碼。   2-1、模擬電壓的讀取   VB雖然易學且功能強大,但也有其自身的弱點,比如對硬件的直接訪問僅靠VB自身是無法解決的。但是它可以通過調(diào)用板卡提供的驅(qū)動函數(shù),實現(xiàn)對I/O的訪問和控制,而且支持事件驅(qū)動,這樣就使VB可以很方便地編制數(shù)據(jù)采集軟件[5]。   在Windows環(huán)境下調(diào)用驅(qū)動程序,需要在工程中添加一個模塊Driver.bas,模塊中定義了PCL-818H的所有常量,全局變量,函數(shù),數(shù)據(jù)結(jié)構(gòu),狀態(tài)代碼和消息。可以直接在程序中調(diào)用文件中定義的這些量實現(xiàn)數(shù)據(jù)的讀取。在Driver.bas文件的最后定義了許多API函數(shù),但都不是私有的,工程里的所有窗體都可以調(diào)用這些函數(shù)。模擬值的讀取分為如下5步:  ?。?)、打開設備   ErrCde=DRV_DeviceOpen(0,DeviceHandle)   如果ErrCde為0表示成功,否則返回錯誤信息。   (2)、配置輸入通道范圍   lpAIConfig.DasChan=int Channel ‘設置通道   lpAIConfig.DasGain=0 ‘設置增益為0   ErrCde=DRV_AIConfig(DeviceHandle,lpAIConfig)   (3)、讀取電壓值IConfig)   AiVolIn.chan=lpAIConfig.DasChan ‘電壓輸入通道   AiVolIn.Gain=lpAIConfig.DasGain ‘電壓輸入增益   AiVolIn.TrigMode=AiCtrMode ‘觸發(fā)模式   AiVolIn.voltage=DRV_GetAddress(voltage) ‘讀入電壓值   ErrCde=DRV_AIVotageIn(DeviceHandle,AivolIn)  ?。?)、返回值   fnGetValue=voltage  ?。?)、關閉設備   ErrCde=DRV_DeviceClose(DeviceHandle)   2-2、數(shù)據(jù)庫的訪問   VB6.0提供了相當強的數(shù)據(jù)庫存儲能力,可以直接支持Microsorft Access數(shù)據(jù)庫[6].VB在單機環(huán)境訪問數(shù)據(jù)庫的技術(shù)有DAO和ADO,既可用控件也可用代碼編程實現(xiàn)。本應用中利用控件并不合適,故采用了比較靈活的ADO代碼編程方法。假定在C:\mydatabase\mydata.mdb數(shù)據(jù)庫中存在”pkxt”表格,name、testdata、giveddata、conclusion是其字段名,界面中幾個Text文本框中顯示了試驗數(shù)據(jù),將數(shù)據(jù)寫入數(shù)據(jù)庫的代碼如下:   Private Sub Form_Load() ‘ 窗體裝載事件   Dim strSQL As String   Set cn = New ADODB.Connection ‘建立新的連接   cn.Provider = "microsoft.jet.oledb.3.51" ‘ 數(shù)據(jù)庫引擎   cn.ConnectionString = "C:\mydatabase\mydata.mdb" ‘數(shù)據(jù)庫路徑   cn.Open ‘打開連接   Set adors = New ADODB.Recordset ‘打開“pkxt”表的一個記錄集   adors.LockType = adLockOptimistic   strSQL = "select *" & "from pkxt"   adors.Source = strSQL   Set adors.ActiveConnection = cn   adors.Open   adors.AddNew   End Sub   Private Sub Form_Unload(Cancel As Integer) ‘卸載窗體事件   cn.Close ‘關閉連接   End Sub   ‘在“保存“按鈕的單擊事件中將界面中的數(shù)據(jù)寫入記錄集   Private Sub Command1_Click()   adors.Fields("name") = Text1.Text ‘檢測項目名稱   adors.Fields("testdata") = Val(Text2.Text) ‘檢測值   adors.Fields("giveddata") = Val(Text3.Text) ‘給定的指標值   adors.Fields("conclusion") = Text4.Text ‘檢測結(jié)論   adors.Update   adors.Close   End Sub   2-3、報表輸出   對報表的輸出,VB6.0提供了很多方法,其中DataReport設計器和Printer對象方法特點鮮明。利用Printer對象方法需要編寫較多的代碼,但極具靈活性;DataReport設計器是VB6.0新增的功能,它只提供了最基本的功能,但具有非常易用的特點。由于本系統(tǒng)數(shù)據(jù)比較簡單,所以使用了DataReport設計器實現(xiàn)試驗報告的輸出。 3、結(jié)論   經(jīng)過反復調(diào)試,我們開發(fā)的基于VB的工控機數(shù)據(jù)采集系統(tǒng)實現(xiàn)了預期的各項功能,達到了各項技術(shù)指標要求。該系統(tǒng)在我軍某坦克中修單位使用了近半年,界面友好,功能豐富,運行可靠,有著較高的推廣應用價值,并且對其它行業(yè)多參數(shù)數(shù)據(jù)采集系統(tǒng)有參考價值。 參考文獻   [1]ZTZ96坦克修理指南[M].北京:中國人民解放軍總裝通保部,2000.   [2]張勁松,張濤. 計算機工業(yè)控制[M].北京:中國電力出版社,2003.   [3]凌澄,PC工業(yè)控制系統(tǒng)精粹[M].北京:清華大學出版社,1998.   [4]孫延才,王杰.工業(yè)控制計算機組成原理[M].北京:清華大學出版社,2003.   [5](美)Steven Holzner,詳實翻譯組翻譯.Visual Basic 6技術(shù)內(nèi)幕[M].北京:機械工業(yè)出版社,1999.   [6]effrey P.McManus . VisualBasic數(shù)據(jù)庫訪問技術(shù)[M].北京:機械工業(yè)出版社,1999.

標簽:

點贊

分享到:

上一篇:雙泵恒壓供水變頻調(diào)速控制的研究

下一篇:微能WIN-V63矢量控制變頻器在...

中國傳動網(wǎng)版權(quán)與免責聲明:凡本網(wǎng)注明[來源:中國傳動網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動網(wǎng)(m.u63ivq3.com)獨家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個人轉(zhuǎn)載使用時須注明來源“中國傳動網(wǎng)”,違反者本網(wǎng)將追究其法律責任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負版權(quán)法律責任。

網(wǎng)站簡介|會員服務|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動網(wǎng)-工業(yè)自動化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務平臺

網(wǎng)站客服服務咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號 | 營業(yè)執(zhí)照證書 | 不良信息舉報中心 | 粵公網(wǎng)安備 44030402000946號