新聞中心

EEPW首頁(yè) > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 探地雷達(dá)信號(hào)的數(shù)據(jù)采集與顯示研究

探地雷達(dá)信號(hào)的數(shù)據(jù)采集與顯示研究

作者: 時(shí)間:2010-06-07 來(lái)源:網(wǎng)絡(luò) 收藏

摘要:介紹了使用控制板HY-6070 C進(jìn)行方法以及應(yīng)用VC++編程進(jìn)行數(shù)據(jù)堆積顯示的軟件編制結(jié)果。實(shí)際使用證明它們均正確有效。
關(guān)鍵詞:;;堆積顯示

本文引用地址:http://m.butianyuan.cn/article/195399.htm

隨著電子技術(shù)和計(jì)算機(jī)技術(shù)的迅速發(fā)展,幾種商業(yè)化的系統(tǒng)開(kāi)始得到了初步應(yīng)用,其中具有代表性的有加拿大探頭及軟件公司(SSI)的PulseEKKO系列、瑞典地質(zhì)公司(SGAB)的RAMAC鉆孔地質(zhì)雷達(dá)系統(tǒng)、美國(guó)地球物理探測(cè)設(shè)備公司(GSSI)的SIR系統(tǒng)及日本應(yīng)用地質(zhì)株式會(huì)社(OYO)的Georadar系列等。但是,這些國(guó)外產(chǎn)品造價(jià)昂貴,且測(cè)量的局限性較大,嚴(yán)重地影響了它的普及。鑒于探地雷達(dá)具有廣泛的用途對(duì)其進(jìn)行了開(kāi)發(fā)研制,目前已研制成功。由于篇幅限制,文中在此重點(diǎn)介紹數(shù)據(jù)采集部分和顯示軟件。

1 數(shù)據(jù)采集
在探地雷達(dá)數(shù)據(jù)采集試驗(yàn)中,所使用的是HY-6070 C通用數(shù)據(jù)采集控制板,此板的功能主要是A/D與D/A數(shù)據(jù)轉(zhuǎn)換。其接口是ISA總線型的,可以直接插入具有ISA總線擴(kuò)展槽的計(jì)算機(jī)中,在計(jì)算機(jī)的控制下構(gòu)成采集、監(jiān)視輸入系統(tǒng)和模擬量電壓、數(shù)字電壓信號(hào)輸入系統(tǒng)。HY-6070 C板上安裝有12 bit分辨率的A/D轉(zhuǎn)換器,其通過(guò)率為40 kHz。為用戶提供了兩種模擬信號(hào)輸入方式:16路單端輸入和8路雙端輸入。通過(guò)硬件設(shè)置,模擬電壓信號(hào)輸入范圍可以是0~5 V,土2.5 V,±5 V。此板還提供了1路12 bit D/A轉(zhuǎn)換模擬電壓輸出通道。在HY-6070 C板上還裝有可編程定時(shí)/計(jì)數(shù)器82C54,其中82C54的定時(shí)/計(jì)數(shù)器1和定時(shí)/計(jì)數(shù)器2級(jí)連,用以生成定時(shí)啟動(dòng)A/D轉(zhuǎn)換的信號(hào)。定時(shí)/計(jì)數(shù)器O單獨(dú)引出,供用戶使用。HY-6070 C板支持軟件觸發(fā)、定時(shí)觸發(fā)和外觸發(fā)3種A/D電路啟動(dòng)轉(zhuǎn)換工作方式。支持軟件查詢和中斷申請(qǐng)數(shù)據(jù)傳送工作方式。HY-6070 c板還為用戶提供了16路數(shù)字輸入/輸出通道信號(hào),接口電平符合TTL電平標(biāo)準(zhǔn)。
文中利用軟件編程啟動(dòng)HY-6070 C板的A/D轉(zhuǎn)換功能。在軟件觸發(fā)方式下,每次啟動(dòng)A/D轉(zhuǎn)換前由軟件切換通道,然后發(fā)送A/D轉(zhuǎn)換啟動(dòng)命令來(lái)觸發(fā)A/D轉(zhuǎn)換。當(dāng)A/D轉(zhuǎn)換完成后,可通過(guò)軟件查詢A/D完成位,當(dāng)程序測(cè)到A/D完成位為“1”時(shí),即可讀取A/D轉(zhuǎn)換的12 bit數(shù)據(jù)。
A/D采樣程序步驟如下:
(1)設(shè)置板上的模擬信號(hào)輸入通道(共16個(gè)通道,編號(hào)為0~15);
(2)設(shè)置A/D觸發(fā)方式,這里設(shè)置為軟件觸發(fā);
(3)開(kāi)始觸發(fā)A/D轉(zhuǎn)換;
(4)等待并查詢A/D轉(zhuǎn)換完成標(biāo)志;
(5)對(duì)接收到的數(shù)據(jù)進(jìn)行存儲(chǔ)。
在HY-6070 c數(shù)據(jù)采集卡內(nèi)預(yù)先分配了各種地址,程序通過(guò)訪問(wèn)這些地址并對(duì)其進(jìn)行相應(yīng)的讀寫操作來(lái)控制A/D采樣的實(shí)現(xiàn)。在實(shí)際應(yīng)用中,可以直接利用由C語(yǔ)言編制的應(yīng)用程序來(lái)控制采集卡進(jìn)行A/D轉(zhuǎn)換,只需調(diào)用頭文件為dos.h中的outport(address,data)(address為地址值,data為要向該地址輸出的數(shù)據(jù))與inportb(ADaddress)(ADadress是A/D轉(zhuǎn)換數(shù)據(jù)所存儲(chǔ)的地址)兩個(gè)函數(shù)即可,但是應(yīng)用程序的使用環(huán)境必須是DOS操作系統(tǒng)。這給應(yīng)用程序的使用者帶來(lái)了諸多不便。因此為了讓用戶方便使用,作者制作了基于Windows操作系統(tǒng)的顯示軟件。由于Windows操作系統(tǒng)不能像DOS那樣直接讀取采集卡的板內(nèi)地址,因此要想面向數(shù)據(jù)采集卡編程,首先需要安裝數(shù)據(jù)采集卡的驅(qū)動(dòng)程序,既讓W(xué)indows操作系統(tǒng)能夠識(shí)別到此硬件。在接下來(lái)的編程中還必須使用到數(shù)據(jù)采集卡自帶的兩個(gè)文件,HKIoMFC.H和HKIoMFC.lib,在這兩個(gè)文件中定義了對(duì)采集卡進(jìn)行控制的變量與函數(shù)體,編程時(shí)即可直接調(diào)用。

2 顯示軟件
利用Visual C++6.0在Windows操作系統(tǒng)下開(kāi)發(fā)應(yīng)用程序主要是使用MFC(Microsoft Fbundation Class)類庫(kù)。MFC是微軟為Windows程序員提供的一個(gè)面向?qū)ο蟮腤indows編程接口,它簡(jiǎn)化了Windows編程工作。使用MFC類庫(kù)的優(yōu)點(diǎn):首先,MFC提供了一個(gè)標(biāo)準(zhǔn)化的結(jié)構(gòu),這樣開(kāi)發(fā)人員不必從頭設(shè)計(jì)創(chuàng)建和管理一個(gè)標(biāo)準(zhǔn)Windows應(yīng)用程序所需的程序,而是從一個(gè)比較高的起點(diǎn)編程,可節(jié)省大量的時(shí)間;其次,它提供了大量的代碼,指導(dǎo)用戶編程時(shí)實(shí)現(xiàn)某些技術(shù)和功能。MFC庫(kù)充分利用了Microsoft開(kāi)發(fā)人員多年開(kāi)發(fā)Windows程序的經(jīng)驗(yàn),并可以將這些經(jīng)驗(yàn)融入到自己開(kāi)發(fā)的應(yīng)用程序中去。
Visual C++6.0集成環(huán)境對(duì)MFC提供了多種界面友好的輔助工具,用AppWizard可以生成新的類,可以對(duì)類成員進(jìn)行維護(hù)。MFC提供了一種機(jī)制,把Windows的消息與類的某個(gè)成員直接聯(lián)系起來(lái),減少程序員中間的處理過(guò)程。比如在菜單中加了一個(gè)命令項(xiàng),指定其命令I(lǐng)D,然后用ClassWizard可以指定此菜單ID與類的成員函數(shù)相聯(lián)系,所需要的編程就是實(shí)現(xiàn)該成員函數(shù)的代碼,其他代碼均由MFC和Class-Wizard負(fù)責(zé)處理。這種機(jī)制提高了程序開(kāi)發(fā)效率,而且Visual C++提供了MFC的所有源代碼,這些源代碼不僅可供參考,還為應(yīng)用程序的調(diào)試提供了方便,源代碼的開(kāi)放性也是MFC獲得成功的一個(gè)主要原因。
作者所設(shè)計(jì)的顯示軟件是基于單文檔(SDI)框架結(jié)構(gòu)的應(yīng)用程序,其外觀如圖1所示。


由圖可見(jiàn),單文檔的外觀與常見(jiàn)的Windows應(yīng)用程序相似,因此操作方便,只需要選擇各個(gè)菜單執(zhí)行相應(yīng)的功能即可。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉