引言
隨著數(shù)字技術(shù)的飛速發(fā)展,數(shù)字化儀器已成為觀測(cè)技術(shù)領(lǐng)域的主流儀器,因而數(shù)據(jù)采集技術(shù)也成為觀測(cè)技術(shù)領(lǐng)域中一個(gè)十分重要的技術(shù)環(huán)節(jié)。伴隨著計(jì)算機(jī)的迅速發(fā)展,以嵌入式為平臺(tái)的數(shù)據(jù)采集系統(tǒng)就應(yīng)運(yùn)而生了,它具有可靠性高,體積小,易擴(kuò)展、功能強(qiáng),開發(fā)周期短、成本低。本論文是基于東方地球物理公司地震采集系統(tǒng)設(shè)計(jì)項(xiàng)目,采用ARM9的嵌入式系統(tǒng),ARM9系列處理器是英國(guó)ARM公司設(shè)計(jì)的主流嵌入式處理器,主要包括ARM9TDMI和ARM9E-S等系列。新一代的ARM9處理器,通過(guò)全新的設(shè)計(jì),采用了更多的晶體管,能夠達(dá)到兩倍以上于ARM7處理器的處理能力。這種處理能力的提高是通過(guò)增加時(shí)鐘頻率和減少指令執(zhí)行周期實(shí)現(xiàn)的。 因此對(duì)其研究具有非常重要的現(xiàn)實(shí)意義。
1 總體設(shè)計(jì)方案
作為一個(gè)通用的工業(yè)數(shù)據(jù)采集系統(tǒng)的硬件平臺(tái),其基本目的是獲取外界信號(hào),例如模擬量、開關(guān)量,并且能夠?qū)?shù)字量信號(hào),轉(zhuǎn)化成模擬量信號(hào)輸出,以達(dá)到對(duì)外部設(shè)備的控制。在此基礎(chǔ)上,本文所要設(shè)計(jì)的系統(tǒng)有以下的要求:
(1)多通道模擬量采集。因?yàn)楣た噩F(xiàn)場(chǎng)的模擬量數(shù)據(jù)非常多,而且各種模擬量所需要的放大倍數(shù)是不一樣的,這就需要可變?cè)鲆娴?a href="http://www.wenjunhu.com/tags/放大器/" target="_blank">放大器。
(2)支持以太網(wǎng)等多種通訊接口。現(xiàn)代工業(yè)測(cè)控現(xiàn)場(chǎng)要求控制器能夠更加速高效的傳輸數(shù)據(jù)。以太網(wǎng)(Ethernet)指的是由Xerox公司創(chuàng)建并由Xerox、Intel和DEC公司聯(lián)合開發(fā)的基帶局域網(wǎng)規(guī)范,是當(dāng)今現(xiàn)有局域網(wǎng)采用的最通用的通信協(xié)議標(biāo)準(zhǔn)。以太網(wǎng)絡(luò)使用CSMA/CD(載波監(jiān)聽多路訪問(wèn)及沖突檢測(cè))技術(shù),并以10M/S的速率運(yùn)行在多種類型的電纜上。以太網(wǎng)與IEEE802·3系列標(biāo)準(zhǔn)相類似。
(3)數(shù)據(jù)采集具有移動(dòng)轉(zhuǎn)儲(chǔ)功能。基于現(xiàn)場(chǎng)的實(shí)際工況,需要控制平臺(tái)在正常工作的情況下,能夠?qū)⒉糠謹(jǐn)?shù)據(jù)通過(guò)移動(dòng)存儲(chǔ)器提取出來(lái),以便在其它設(shè)備上進(jìn)行數(shù)據(jù)分析。
設(shè)計(jì)要求為整個(gè)系統(tǒng)的性能提出了最低要求,它為器件選型和系統(tǒng)內(nèi)部的設(shè)計(jì)提供了指導(dǎo)原則。根據(jù)要求總的系統(tǒng)框圖如下:
圖1 系統(tǒng)的總體結(jié)構(gòu)框圖
2 系統(tǒng)硬件設(shè)計(jì)
構(gòu)建地震采集嵌入式系統(tǒng)必須有硬件支持,嵌入式系統(tǒng)硬件沒有統(tǒng)一的標(biāo)準(zhǔn),根據(jù)應(yīng)用要求對(duì)嵌入式系統(tǒng)進(jìn)行裁剪,系統(tǒng)設(shè)計(jì)的微處理器采用ATMEL公司生產(chǎn)的AT91RM9200微處理器,ARM9的典型應(yīng)用TI公司的OMAP730是最新的無(wú)線通信基帶信號(hào)處理器。該處理器是TI的GPRS Class 12通信模塊與專用于應(yīng)用處理的ARM926通用處理器(GPP)的集成。由于GPP的速度可達(dá)200MHz,因此OMAP730具有兩倍于上一代OMAP710處理器的應(yīng)用處理性能。如同所有的OMAP處理器一樣,OMAP730可支持領(lǐng)先的移動(dòng)操作系統(tǒng),其中包括Microsoft的智能電話與Pocket PC PhoneEdition、Svmbian OS與Series 60、Palm OS以及Linux.它是一個(gè)真正的片上系統(tǒng),片內(nèi)集成了USB、以太網(wǎng)、EBI、MCI、SSC和SPI等多種通信接口,200MIPS的處理速度和先進(jìn)電源管理使這款芯片非常適合于系統(tǒng)控制領(lǐng)域。
設(shè)計(jì)基于AT91RM9200的硬件框圖如下所示:
圖2 系統(tǒng)硬件結(jié)構(gòu)圖
本系統(tǒng)是一款功能強(qiáng)大的微功耗嵌入式高精度數(shù)據(jù)采集系統(tǒng),采用基于ARM9內(nèi)核的工業(yè)級(jí)處理器和嵌入式Linux操作系統(tǒng)。該系統(tǒng)具備豐富的外圍控制接口和通信接口,可通過(guò)IO輸出的形式控制外圍部件以及進(jìn)行多路模擬信號(hào)的切換,采集到的高精度數(shù)據(jù)可以通過(guò)RS232或者高速以太網(wǎng)等方式傳送到遠(yuǎn)程監(jiān)控端。
3 系統(tǒng)軟件設(shè)計(jì)
該系統(tǒng)的實(shí)現(xiàn)是在嵌入式Linux操作系統(tǒng)下完成的。嵌入式系統(tǒng)是以應(yīng)用為中心,以計(jì)算機(jī)技術(shù)為基礎(chǔ),并且軟硬件是可裁剪的,適用于對(duì)功能、可靠性、成本、體積、功耗等有嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。Linux擁有的許多特點(diǎn),比如廣泛的硬件支持,內(nèi)核高效穩(wěn)定,開放源碼,軟件豐富,優(yōu)秀的開發(fā)工具,完善的網(wǎng)絡(luò)通信和文件管理機(jī)制,免費(fèi)的等等,它的這些優(yōu)良特性使得其在嵌入式系統(tǒng)中應(yīng)用十分合適。嵌入式系統(tǒng)是"控制、監(jiān)視或者輔助裝置、機(jī)器和設(shè)備運(yùn)行的裝置"(devices used to control, monitor, or assist the operation of equipment, machinery or plants)。從中可以看出嵌入式系統(tǒng)是軟件和硬件的綜合體,還可以涵蓋機(jī)械等附屬裝置。目前國(guó)內(nèi)一個(gè)普遍被認(rèn)同的定義是:以應(yīng)用為中心、以計(jì)算機(jī)技術(shù)為基礎(chǔ)、軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對(duì)功能、可靠性、成本、體積、功耗嚴(yán)格要求的專用計(jì)算機(jī)系統(tǒng)。
根據(jù)系統(tǒng)要求完成的任務(wù),相應(yīng)的各模塊的設(shè)計(jì)也就有運(yùn)用而生了。
3.1 A/D通道模塊的軟件設(shè)計(jì)
本系統(tǒng)中采用的 ADS1256 芯片,具有 24 位的轉(zhuǎn)換數(shù)據(jù),有效轉(zhuǎn)換位數(shù)會(huì)根據(jù)轉(zhuǎn)換速率、輸入緩沖器及放大器的設(shè)置而有所改變,在輸入緩沖器和放大器的設(shè)置不變的情況下,轉(zhuǎn)換速率成了影響有效位數(shù)的要素。數(shù)據(jù)采集頻率在允許范圍內(nèi)可人為改動(dòng),但無(wú)論采集頻率為多少,ADC的轉(zhuǎn)換速率始終設(shè)置為最高 30Ksps,這是為了滿足在最高采樣頻率下工作時(shí),使有效數(shù)據(jù)位數(shù)始終處于最小值,但并不能照顧在低采樣頻率下工作的情況,因?yàn)檫@時(shí)數(shù)據(jù)量相對(duì)較低,對(duì)轉(zhuǎn)換速率沒有太高的要求,故可以當(dāng)改選用較低采樣頻率工作時(shí),相應(yīng)的將 ADC 工作參數(shù)進(jìn)行設(shè)置,將其改為在較低的低轉(zhuǎn)換速率下工作,當(dāng)然要求是滿足此時(shí)采樣頻率下的數(shù)據(jù)要求,這樣可以提高系統(tǒng)在某些采樣頻率下 ADC 工作的轉(zhuǎn)換精度。
使用ADC模塊時(shí),先要將測(cè)量通道引腳設(shè)置為AINx,然后通過(guò)ADCR寄存器設(shè)置ADC的工作模式,ADC轉(zhuǎn)換通道,轉(zhuǎn)換通道(CLKDIV時(shí)鐘分頻值),并啟動(dòng)ADC轉(zhuǎn)換??梢酝ㄟ^(guò)查詢或中斷的方式等待AD轉(zhuǎn)換完畢,轉(zhuǎn)換數(shù)據(jù)保存在ADDR存器中。ADC轉(zhuǎn)換時(shí)鐘分頻值計(jì)算: CLKDIV= -1(Fadclk為所要設(shè)置的ADC時(shí)鐘,其值不能大于4.5MHZ)。
進(jìn)行多通道AD轉(zhuǎn)換的時(shí)候,首先切換到通道1并進(jìn)行第一次轉(zhuǎn)換,等待轉(zhuǎn)換結(jié)束,再次啟動(dòng)轉(zhuǎn)換,等待轉(zhuǎn)換結(jié)果,讀取ADC結(jié)果。然后切換到通道2并進(jìn)行第一次轉(zhuǎn)換,操作過(guò)程與通道1相同,依次再切換到通道3, 4……,最終完成所有通道的轉(zhuǎn)換。
A/D轉(zhuǎn)換任務(wù)的流程如圖所示:
圖3 A/D任務(wù)轉(zhuǎn)換流程圖
3.2 USB通道模塊的軟件設(shè)計(jì)
USB的拓?fù)浣Y(jié)構(gòu)中居于核心地位的是主機(jī),任何一次USB的數(shù)據(jù)傳輸都必須由主機(jī)來(lái)發(fā)起和控制,所有的USB設(shè)備都只能和主機(jī)建立連接,而目前,大量的扮演主機(jī)角色的是個(gè)人電腦。因此我們目前所使用的USB移動(dòng)設(shè)備都是USB的設(shè)備如U盤,在嵌入式平臺(tái)上使用U盤,就必須使得嵌入式產(chǎn)品支持USB host接口。
USB總線包含4種基本數(shù)據(jù)傳輸類型:控制傳輸、中斷傳輸、批傳輸以及同步傳輸,本文中用到的是控制傳輸和批傳輸。由于一般U盤都屬于mass-storage存儲(chǔ)類,遵循Bulk-Only傳輸協(xié)議和UFI命令規(guī)范。在該種傳輸方式下,有3種類型的數(shù)據(jù)在板卡和U盤之間傳送:CBW, CSW和普通數(shù)據(jù)。CBW是從板卡發(fā)送到U盤的命令,這里為SCSI傳輸命令集(包括標(biāo)志信息,數(shù)據(jù)長(zhǎng)度,UFI命令),完成后U盤向板卡反映當(dāng)前命令執(zhí)行狀態(tài)的CSW,板卡根據(jù)CSW來(lái)決定是否發(fā)送數(shù)據(jù)。
圖4 U盤寫數(shù)據(jù)流程圖
3.3 串口模塊的軟件設(shè)計(jì)
一般工控現(xiàn)場(chǎng)所使用的控制器或者智能儀表都需要具有與PC機(jī)通訊的功能,以充分發(fā)揮PC機(jī)和智能設(shè)備各自資源的優(yōu)勢(shì)??梢栽O(shè)置通訊的波特率,串行口為8位異步通信接口,一幀信息為10位:1位起始位(0), 8位數(shù)據(jù)位(低位先)和1位停止位(1) TXD1為發(fā)送端,RXD1為接收端,這些都是對(duì)USART寄存器的初始化。
完成初始化后,下圖是程序流程圖:
圖5 串口流程圖
4 結(jié)束語(yǔ)
作為嵌入式系統(tǒng)在工業(yè)控制領(lǐng)域的應(yīng)用,本文主要討論了基于AT91系列處理器AT91RM9200、嵌入式Linux操作系統(tǒng)的地震數(shù)據(jù)采集系統(tǒng)的硬件軟件設(shè)計(jì),在對(duì)目前地震測(cè)量技術(shù)發(fā)展進(jìn)行研究的基礎(chǔ)上,對(duì)本數(shù)據(jù)采集的功能和設(shè)計(jì)方法提出了一整套系統(tǒng)的方案。在不斷更新總結(jié)的過(guò)程中完成了采集系統(tǒng)的研發(fā)和制作,并且進(jìn)行了系統(tǒng)的 ADC性能和數(shù)據(jù)存儲(chǔ)各方面的測(cè)試。雖然嵌入式系統(tǒng)是近幾年才風(fēng)靡起來(lái)的,但是這個(gè)概念并非新近才出現(xiàn)。從20世紀(jì)七十年代單片機(jī)的出現(xiàn)到今天各式各樣的嵌入式微處理器,微控制器的大規(guī)模應(yīng)用,嵌入式系統(tǒng)已經(jīng)有了近30年的發(fā)展歷史。作為一個(gè)系統(tǒng),往往是在硬件和軟件交替發(fā)展的雙螺旋的支撐下逐漸趨于穩(wěn)定和成熟,嵌入式系統(tǒng)也不例外。
-
處理器
+關(guān)注
關(guān)注
68文章
19404瀏覽量
230921 -
嵌入式
+關(guān)注
關(guān)注
5091文章
19176瀏覽量
307108 -
計(jì)算機(jī)
+關(guān)注
關(guān)注
19文章
7534瀏覽量
88502
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論