0 引言
數(shù)字化信息系統(tǒng)實(shí)驗(yàn)室(Digital Information System,,DIS)是新一代的中小學(xué)實(shí)驗(yàn)教學(xué)系統(tǒng),是先進(jìn)的數(shù)字技術(shù)應(yīng)用到實(shí)驗(yàn)教學(xué)的產(chǎn)物,,也是探究,、創(chuàng)新的實(shí)驗(yàn)教學(xué)新理念注入傳統(tǒng)實(shí)驗(yàn)教學(xué)后的必然結(jié)果。2006年,,教育部將DIS納入了中小學(xué)實(shí)驗(yàn)儀器裝備標(biāo)準(zhǔn),,建議有條件的學(xué)校配備。目前,,國(guó)內(nèi)已有多家企業(yè)有相應(yīng)的產(chǎn)品,,但大多不夠成熟。而國(guó)外的類似產(chǎn)品雖然較為成熟,,但價(jià)格偏高,,難以普及。更重要的是,,國(guó)外的產(chǎn)品不能夠很好地與我國(guó)的實(shí)驗(yàn)教材配合,,難以開(kāi)展教學(xué)。在此提出一種廉價(jià),、功能強(qiáng)大,、基于ARM技術(shù)的DIS采集系統(tǒng)設(shè)計(jì)。它是DIS的一個(gè)重要組成部分,,并已與江蘇教育家教學(xué)裝備有限公司合作形成了產(chǎn)品,。
1 DIS的組成
從物理結(jié)構(gòu)上看DIS,可以分成三個(gè)部分:傳感器端、采集器端和計(jì)算機(jī)端,。三個(gè)部分既緊密聯(lián)系,,又相對(duì)獨(dú)立。三部分之間定義標(biāo)準(zhǔn)的接口,,為不同的傳感器裝置,、采集器的使用方式和計(jì)算機(jī)處理分析軟件的組合提供極大的靈活性;而三者結(jié)合可以提供強(qiáng)大的實(shí)驗(yàn)功能,,供師生創(chuàng)新和探究,。事實(shí)上,用于傳感器物理量轉(zhuǎn)換,、采集器數(shù)字化,、計(jì)算機(jī)數(shù)據(jù)分析的實(shí)驗(yàn)分析模型,也都是當(dāng)今實(shí)驗(yàn)科學(xué)研究的通用模型,。
1.1 傳感器端
傳感器,,又叫換能器,是將物理量轉(zhuǎn)換成電學(xué)量的器件,。測(cè)量不同的物理量,,需要不同的傳感器。對(duì)于DIS來(lái)說(shuō),,傳感器端并非單指?jìng)鞲衅?,而是傳感器和?shí)驗(yàn)裝置的總稱。針對(duì)不同的實(shí)驗(yàn),,如何將傳感器與實(shí)驗(yàn)裝置很好的結(jié)合,,以便容易、真實(shí),、準(zhǔn)確地完成實(shí)驗(yàn),,是DIS傳感器端設(shè)計(jì)的一個(gè)難點(diǎn)。
1.2 采集器端
采集器的功能主要是通過(guò)模/數(shù)轉(zhuǎn)換器件,,將傳感器端提供的電學(xué)模擬量數(shù)字化,,以便作后續(xù)處理。對(duì)于DIS來(lái)說(shuō),,采集器端是其主體,,是一個(gè)復(fù)雜的系統(tǒng),它需要保證數(shù)據(jù)采集的實(shí)時(shí)性,、準(zhǔn)確性,;它需要處理與傳感器端和計(jì)算機(jī)端的交互;考慮到易用性,,它往往還要對(duì)采集的數(shù)據(jù)作一些初步的顯示和分析,。
1.3 計(jì)算機(jī)端
計(jì)算機(jī)端就是指基于通用計(jì)算機(jī)平臺(tái)的DIS相關(guān)軟件集合,,其開(kāi)發(fā)主要體現(xiàn)在軟件。這部分也非常重要,,它提供了強(qiáng)大的數(shù)據(jù)分析和可視化功能,。
2 DIS采集系統(tǒng)硬件設(shè)計(jì)
2.1 總體設(shè)計(jì)
該設(shè)計(jì)選用Atmel公司的AT91SAM7SE512微控制器為控制核心。AT91SAM7SE512微控制器內(nèi)嵌ARM7TDMI處理器核心,,主頻48 MHz,,提供豐富的外設(shè)及接口,而且系統(tǒng)并行總線全數(shù)引出,,擴(kuò)展性強(qiáng)。AT91SAM7SE512性能優(yōu)越,,配以320×240的TFT真彩屏和觸摸屏,,可以對(duì)采集的數(shù)據(jù)作采集器端的簡(jiǎn)單處理和顯示,以豐富DIS系統(tǒng)的使用方式,,提高便攜性和易用性,。
模/數(shù)轉(zhuǎn)換器件(ADC)選用Analog Devices公司的AD7323。AD7323為4通道,,雙極輸入,,12位ADC,最高采樣率達(dá)500 KSPS,。其精度高,,性能強(qiáng),對(duì)于音頻采樣亦是綽綽有余,,完全滿足DIS數(shù)據(jù)采集系統(tǒng)的要求,,并有潛力完成將來(lái)可能出現(xiàn)的高采樣率需求的新實(shí)驗(yàn)。系統(tǒng)的整體硬件結(jié)構(gòu)如圖1所示,。
系統(tǒng)擴(kuò)展了大容量的SDRAM和DataFLASH,,以滿足運(yùn)行較大規(guī)模程序和大容量數(shù)據(jù)存儲(chǔ)的需求。E2PROMI通過(guò)TWI(基本與I2C兼容)總線連接,,以存儲(chǔ)系統(tǒng)重要的非易失性信息,。
2.2 傳感器端的設(shè)計(jì)
如圖2所示,傳感器主要由傳感器前端,、信號(hào)放大電路,、A/D轉(zhuǎn)換電路和單片機(jī)組成。對(duì)于模擬傳感器,,信號(hào)放大電路的輸出直接接至采集器,,由采集器的高精度A/D做模/數(shù)轉(zhuǎn)換,串口只負(fù)責(zé)提供傳感器ID號(hào)等信息,。對(duì)于數(shù)字傳感器,,單片機(jī)負(fù)責(zé)控制本地A/D轉(zhuǎn)換,,并將數(shù)據(jù)通過(guò)串口傳輸?shù)讲杉鳌?shù)字傳感器留有通用無(wú)線模塊的接口,,可以加裝通用無(wú)線模塊,,將數(shù)據(jù)通過(guò)無(wú)線方式傳輸。
2.3 與傳感器端的連接
傳感器分為模擬傳感器和數(shù)字傳感器,。采集系統(tǒng)與傳感器端的連接分為有線和無(wú)線方式,。在有線方式下,傳感器通過(guò)串口與采集器通信,。數(shù)字傳感器的控制信號(hào)和數(shù)據(jù)都通過(guò)串口傳輸,。為了獲得較高的數(shù)據(jù)精度,模擬傳感器的串口只傳輸控制信號(hào),,而將信號(hào)放大電路的輸出直接接至采集器端的高精度ADC,,由采集器采樣處理。數(shù)字傳感器可以通過(guò)加裝通用無(wú)線模塊而變?yōu)闊o(wú)線數(shù)字傳感器(即無(wú)線方式),。通用無(wú)線模塊基于ZigBee將串口數(shù)據(jù)透?jìng)鳌?br />
有線連接的接口加入了保護(hù)電路,,支持熱插拔,以滿足實(shí)用需求,。無(wú)線方式解除了某些實(shí)驗(yàn)中由于連接電纜帶來(lái)的制約,,并使得遠(yuǎn)距離運(yùn)動(dòng)學(xué)實(shí)驗(yàn)成為可能。目前,,國(guó)內(nèi)外同類產(chǎn)品中均沒(méi)有類似的功能,。
2.4 與計(jì)算機(jī)端的連接
采集系統(tǒng)通過(guò)SD卡和USB電纜的方式與計(jì)算機(jī)端進(jìn)行數(shù)據(jù)交換。SD卡體積小,,容量大,,價(jià)格便宜,既可以作為采集系統(tǒng)的擴(kuò)展存儲(chǔ),,又可以作為采集系統(tǒng)與計(jì)算機(jī)端之間或者采集系統(tǒng)彼此之間交換數(shù)據(jù)的媒介,。USB接口通用性強(qiáng),數(shù)據(jù)傳輸率高,,即插即用,,是外設(shè)與計(jì)算機(jī)間通信的理想接口。
3 DIS采集系統(tǒng)軟件設(shè)計(jì)
3.1 總體概述
DIS采集器端的軟件以固件的形式固化在芯片內(nèi)部FLASH之中,。主要功能包括:硬件外設(shè)的驅(qū)動(dòng),、實(shí)驗(yàn)數(shù)據(jù)的實(shí)時(shí)采集與處理、人機(jī)交互以及與傳感器端和計(jì)算機(jī)端之間的通信,。系統(tǒng)總體的軟件架構(gòu)如圖3所示,。DIS采集系統(tǒng)作為一個(gè)數(shù)據(jù)采集的應(yīng)用,首先要確保數(shù)據(jù)采樣的實(shí)時(shí)性和準(zhǔn)確性,;其次,,系統(tǒng)還需要對(duì)數(shù)據(jù)做適當(dāng)?shù)奶幚聿@示,;另外,系統(tǒng)還必須適時(shí)地對(duì)用戶的觸摸操作和計(jì)算機(jī)端的指令做出響應(yīng),。軟件既要保證實(shí)時(shí)性,,又要完成多項(xiàng)復(fù)雜的功能。小型嵌入式系統(tǒng)中常用的簡(jiǎn)單的前后臺(tái)程序開(kāi)發(fā)模型已不能滿足需要,,于是引入了實(shí)時(shí)操作系統(tǒng)(RTOS),。它以多任務(wù)的模型管理程序功能,降低了程序開(kāi)發(fā)的復(fù)雜度,;搶占式的任務(wù)調(diào)度,,保證了系統(tǒng)的實(shí)時(shí)性。
軟件分為三個(gè)層次:設(shè)備驅(qū)動(dòng)層,、實(shí)時(shí)操作系統(tǒng)層和用戶應(yīng)用層,。
3.2 設(shè)備驅(qū)動(dòng)層
設(shè)備驅(qū)動(dòng)層在實(shí)現(xiàn)總線驅(qū)動(dòng)的基礎(chǔ)上進(jìn)而實(shí)現(xiàn)外設(shè)驅(qū)動(dòng)。如圖2所示,,總線驅(qū)動(dòng)包括SPI驅(qū)動(dòng)、USART驅(qū)動(dòng)等,。外設(shè)驅(qū)動(dòng)包括zigBee無(wú)線模塊驅(qū)動(dòng),、LCD驅(qū)動(dòng)、觸摸屏(Touch Screen,,TS)驅(qū)動(dòng)等,。
3.3 實(shí)時(shí)操作系統(tǒng)層
采用小型實(shí)時(shí)操作系統(tǒng)內(nèi)核μC/OS-Ⅱ,負(fù)責(zé)任務(wù)調(diào)度,、任務(wù)間通信,、內(nèi)存管理、互斥訪問(wèn)等,。又移植了FAT文件系統(tǒng)和GUI圖形庫(kù),,共同形成實(shí)時(shí)操作系統(tǒng)的概念。
3.4 用戶應(yīng)用層
具體針對(duì)DIS采集系統(tǒng)的需要,,劃分任務(wù),,完成各項(xiàng)功能。共劃分了五個(gè)任務(wù),,并根據(jù)緊迫性要求設(shè)置了不同的優(yōu)先級(jí),。
(1)采樣任務(wù),負(fù)責(zé)與傳感器端的簡(jiǎn)單通信及實(shí)時(shí)信號(hào)的采集,。由于數(shù)據(jù)采樣的實(shí)時(shí)性和準(zhǔn)確性是采集系統(tǒng)的第一重要任務(wù),,所以設(shè)置為最高優(yōu)先級(jí)。
采樣任務(wù)由點(diǎn)擊圖形用戶界面的響應(yīng)功能發(fā)起,,也可由計(jì)算機(jī)通過(guò)USB命令發(fā)起,。采樣任務(wù)首先檢測(cè)在線的傳感器類型,,獲取他們的ID號(hào),然后設(shè)置采樣率,,裝載采樣中斷,,并打開(kāi)傳感器,最后打開(kāi)中斷進(jìn)入等待狀態(tài),,響應(yīng)指令,。采樣中斷根據(jù)采樣率定時(shí)采樣,如果是模擬傳感器,,則讀取本地A/D,,進(jìn)行模/數(shù)轉(zhuǎn)換;如果是數(shù)字傳感器,,則讀取串口的數(shù)據(jù)緩沖區(qū),,獲得采樣數(shù)據(jù)。對(duì)于特殊的傳感器還要做濾波等特殊處理,。當(dāng)采樣到足夠多的數(shù)據(jù),,則將數(shù)據(jù)包發(fā)送給處理程序。若是本地發(fā)起的采樣任務(wù),,則發(fā)送給界面任務(wù)處理予以顯示,;若是計(jì)算機(jī)通過(guò)USB發(fā)起的,則發(fā)送給USB任務(wù)將數(shù)據(jù)轉(zhuǎn)發(fā)給計(jì)算機(jī)處理,。大致流程圖如圖4所示,。
(2)觸摸屏輸入任務(wù),負(fù)責(zé)實(shí)時(shí)探測(cè)用戶的觸摸操作,,更新輸入坐標(biāo),。
(3)USB通信任務(wù),負(fù)責(zé)響應(yīng)計(jì)算機(jī)端的指令,,根據(jù)需要,,將采集數(shù)據(jù)傳輸?shù)接?jì)算機(jī)端。
在初始化完成后,,任務(wù)運(yùn)行一個(gè)狀態(tài)機(jī),,進(jìn)入空閑狀態(tài)。當(dāng)接到計(jì)算機(jī)的USB中斷請(qǐng)求后,,轉(zhuǎn)換為不同的狀態(tài),,以完成任務(wù)。大致流程圖如圖5所示,。
(4)圖形用戶界面任務(wù),,負(fù)責(zé)與用戶的交互,完成相應(yīng)的操作,,處理顯示數(shù)據(jù)等,。
在初始化完桌面,、菜單等一些窗口后,界面任務(wù)進(jìn)入等待狀態(tài),,等待采樣數(shù)據(jù),,并定時(shí)刷新界面。若有顯示的需求,,界面任務(wù)在接收到數(shù)據(jù)后,,根據(jù)不同的顯示方式作相應(yīng)的顯示。
(5)系統(tǒng)空閑任務(wù),,負(fù)責(zé)收集系統(tǒng)信息,,更新系統(tǒng)狀態(tài),刷新屏幕內(nèi)容等,。顧名思義,,設(shè)置為最低優(yōu)先級(jí)。
正如上面提及的順序,,各任務(wù)優(yōu)先級(jí)從高到低排列為:采樣任務(wù),,觸摸屏輸入任務(wù),USB通信任務(wù),,圖形用戶界面任務(wù),,系統(tǒng)空閑任務(wù)。
4 結(jié)語(yǔ)
經(jīng)過(guò)測(cè)試,,系統(tǒng)完成了設(shè)計(jì)功能,并且經(jīng)過(guò)大批量,,長(zhǎng)時(shí)間的采集,,系統(tǒng)沒(méi)有出現(xiàn)數(shù)據(jù)遺漏和出錯(cuò)情況,能夠穩(wěn)定的運(yùn)行,。
DIS是數(shù)字信息技術(shù)和嵌入式技術(shù)在教育領(lǐng)域的最新應(yīng)用,。分析了DIS系統(tǒng)的整體模型,給出了其主體的一個(gè)具體實(shí)現(xiàn),。由于硬件上定義了統(tǒng)一的接口,,軟件上引入了實(shí)時(shí)操作系統(tǒng),系統(tǒng)的擴(kuò)展性極強(qiáng),。創(chuàng)新性地提出了傳感器的無(wú)線連接方式,,以方便實(shí)驗(yàn)。系統(tǒng)硬件上基于ARM7平臺(tái),,體積小,,重量輕,功耗低,,價(jià)格便宜,;軟件上提供了圖形用戶界面,,支持觸摸操作,使用方便,,界面友好,。系統(tǒng)集數(shù)據(jù)采集與分析顯示于一體,可獨(dú)立使用,,又可以方便地與計(jì)算機(jī)通信,,性能優(yōu)越,穩(wěn)定性好,??梢灶A(yù)見(jiàn),該設(shè)計(jì)在中小學(xué)實(shí)驗(yàn)教學(xué)領(lǐng)域?qū)⒂袕V泛的應(yīng)用前景,。