基于ISA總線的高速同步數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)
1.4 總線控制
單片機(jī)系統(tǒng)總線上掛有若干RAM或I/O口,尋址和數(shù)據(jù)傳輸均由CPU發(fā)出指令通過系統(tǒng)總線實(shí)現(xiàn)的。對(duì)于高速數(shù)據(jù)采集,為了提高尋址和數(shù)據(jù)傳輸速度,避免總線沖突或堵塞,必須建立局部總線。系統(tǒng)總線與局部總線應(yīng)該既區(qū)別、又統(tǒng)一,既隔離、又結(jié)合,彼此通過合理的控制邏輯聯(lián)系起來。
總線仲裁的基本原則實(shí)際就是在不同的總線請(qǐng)求時(shí),采用不同長(zhǎng)度的讀寫周期,以使各個(gè)使用者對(duì)總線的占用時(shí)間互相交錯(cuò),而使用者并不感覺到仲裁的存在。在內(nèi)存映射的傳輸方式中,A/D不斷地將轉(zhuǎn)換的數(shù)據(jù)寫入高速緩存RAM,CPU根據(jù)數(shù)據(jù)處理的需要從高速緩存RAM讀取數(shù)據(jù)至雙口RAM1,雙口RAM1還需要將所有單元刷新一遍。這三種操作都要占用卡上的數(shù)據(jù)、地址總線。但它們發(fā)生的時(shí)間是隨機(jī)的,因此對(duì)總線的占用必然會(huì)產(chǎn)生沖突,總線仲裁電路的功能就是對(duì)這三種操作進(jìn)行協(xié)調(diào)。這里,通過五片74LS241二選一開關(guān)協(xié)調(diào)地址計(jì)數(shù)器與CPU1對(duì)高速緩存RAM讀地址的沖突,二片74LS241協(xié)調(diào)高速緩存RAM與AD9048和雙口RAM之間的數(shù)據(jù)傳輸?shù)臎_突。
1.5 PC總線接口技術(shù)
PC系統(tǒng)總線對(duì)4KB的雙口RAM尋址是一個(gè)難點(diǎn)。本數(shù)據(jù)采集卡采用PC總線,又稱8位ISA總線。它使用靈活,便于同8位單片機(jī)構(gòu)成接口電路。有62條引線,分五類:地址線、數(shù)據(jù)線、控制線、輔助與電源線。本數(shù)據(jù)采集卡只用了其中一部分引線:8條數(shù)據(jù)線、10條地址線、IOR和IOW控制線、電源線。譯碼電路詳細(xì)框圖如圖2。
本數(shù)據(jù)采集卡使用308H、309H、30AH三個(gè)口地址實(shí)現(xiàn)在板緩存4KB的尋址。這里的譯碼電路使用了GAL20V8和兩片74HC574。當(dāng)PC機(jī)要訪問某一地址時(shí),首先寫入雙口RAM的低8位地址。此時(shí)GAL20V8的輸出信號(hào)選中74HC574(右),將PC-DB上的數(shù)據(jù)鎖存,形成雙口RAM的低8位地址Addrl;然后寫入雙口RAM的高8位地址。GAL20V8的輸出信號(hào)選中74HC574(左),將PC-DB上的數(shù)據(jù)鎖存,形成雙口RAM的高8位地址Addrh。最后通過選中雙口RAM的片選端cs,完成一次數(shù)據(jù)的讀/寫過程。
1.6 采樣頻率控制電路
采樣頻率挖掘電路是由晶振、可編程分頻器8254及一些控制電路組成。8254是可編程分頻器,工作頻率在8MHz~20MHz。通過不同的分頻數(shù),可以輸出不同頻率,分頻數(shù)在值為2~65535。它的輸出由觸發(fā)控制電路控制。其輸出時(shí)鐘分別送往地址計(jì)數(shù)器、高速緩存RAM的寫信號(hào)控制電路及AD9048的轉(zhuǎn)換脈沖輸入端。
2 系統(tǒng)軟件設(shè)計(jì)
系統(tǒng)軟件的主要功能是為用戶提供一個(gè)良好的操作環(huán)境,及時(shí)響應(yīng)用戶的命令。用戶操作界面采用Vi-sual basic語言編寫。通過采用一系列命令。用戶操作界面采用Visual basic語言編寫。通過采用一個(gè)系列命令按鍵,將電力系統(tǒng)采集到的實(shí)際信號(hào)的波形、故障發(fā)生的時(shí)刻等映射到計(jì)算機(jī)屏幕上,用戶可以對(duì)采集到的信息有一個(gè)直觀的認(rèn)識(shí)。用軟件虛擬硬件操作界面,可以充分利用計(jì)算機(jī)的強(qiáng)大運(yùn)算功能、靈活多變的軟件優(yōu)勢(shì)和VGA強(qiáng)大的顯示功能。為便于系統(tǒng)的擴(kuò)充和軟件復(fù)用,整個(gè)軟件分為幾個(gè)相對(duì)獨(dú)立的功能模塊,模塊內(nèi)代碼封裝,相互之間設(shè)立統(tǒng)一的接口規(guī)范。
由于本系統(tǒng)中不僅有高層次、面向磁般文件的操作,也有許多直接控制硬件的操作,采用了TURBO C和匯編語言混合編程技術(shù),各模塊根據(jù)操作對(duì)象采用適當(dāng)?shù)恼Z言。這樣可以同時(shí)利用高級(jí)語言編程方便、結(jié)構(gòu)性好、匯編語言快速、靈活、針對(duì)性強(qiáng)的特點(diǎn)。
系統(tǒng)軟件框圖如圖3所示。
硬件驅(qū)動(dòng)程序用于完成對(duì)硬件的操作,全部采用匯編語言編寫。使用系統(tǒng)前,先運(yùn)行本程序,程序修改PC機(jī)系統(tǒng)中斷,運(yùn)行后常駐內(nèi)存,和主程序的接口通過標(biāo)準(zhǔn)軟中斷形式。
高速圖形單元是對(duì)PC機(jī)VGA寄存器和顯示存儲(chǔ)器的直接操作,通過調(diào)用相關(guān)函數(shù)和VGA圖形庫(kù),以較快速度將采樣信號(hào)顯示出來。
數(shù)據(jù)分析單元主要是對(duì)采樣信號(hào)進(jìn)行后處理,可以完成小波變換、信號(hào)奇異性檢測(cè)、譜分析和相關(guān)分析等數(shù)據(jù)處理功能,并通過波形輸出單元同時(shí)將時(shí)域信號(hào)和分析結(jié)構(gòu)用曲線顯示來出。
整個(gè)系統(tǒng)提供給用戶的是一個(gè)基于WINDOWS的快速圖形操作界面,系統(tǒng)主控程序協(xié)調(diào)整個(gè)系統(tǒng)的運(yùn)行,控制硬件自動(dòng)運(yùn)行。在系統(tǒng)界面上包括用于波形顯示的高速視口和命令按鍵等,可以通過簡(jiǎn)單操作直觀地觀察實(shí)時(shí)采集到的數(shù)據(jù)波形、幅值和故障發(fā)生的時(shí)刻。同時(shí)提供了對(duì)外的軟件接口,用戶可以按照規(guī)定的格式組織數(shù)據(jù),利用本系統(tǒng)強(qiáng)大的數(shù)據(jù)分析功能處理數(shù)據(jù)。
本高速采集卡具有采樣速率高、運(yùn)行方式靈活、同步時(shí)鐘精度高并符合ISA總線標(biāo)準(zhǔn)等特點(diǎn)。以DS80C320單片機(jī)為核心,采用GPS同步時(shí)間,配合適當(dāng)?shù)耐鈬O(shè)備及合理的總線控制技術(shù)實(shí)現(xiàn)高速數(shù)據(jù)采集。同時(shí)兼有數(shù)字存儲(chǔ)示波器功能和數(shù)據(jù)分析能力,可以廣泛用于電力測(cè)量、電力系統(tǒng)故障定位和繼電保護(hù)領(lǐng)域
評(píng)論