當(dāng)前位置:首頁(yè) > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]基于Nios平臺(tái)的光信號(hào)采集片上系統(tǒng)設(shè)計(jì)

   摘要:介紹基于Altera Excalibur平臺(tái)的光信號(hào)采集片上系統(tǒng)的設(shè)計(jì),詳細(xì)地分析片上系統(tǒng)各個(gè)組成部分的工作原理。作為一個(gè)新型的測(cè)量系統(tǒng),它具有靈活、穩(wěn)定、高效率等特點(diǎn)。

    關(guān)鍵詞:片上系統(tǒng) 光纖光柵 光信號(hào)采集 Nios

引言

一項(xiàng)很有發(fā)展前景的新技術(shù)-纖維光學(xué)及光纖光柵(FBG,F(xiàn)iber Bragg Grating)技術(shù),已經(jīng)被應(yīng)用于溫度及形變?cè)诰€測(cè)量中。FBG傳感器的特征就是具有良好的穩(wěn)定性、可靠性。除此之外,它還具有基于光纖傳感器的一些共有優(yōu)點(diǎn),如對(duì)電磁的不敏感性、尺寸小、傳感器和數(shù)據(jù)獲取裝置之間距離可以很遠(yuǎn);因而能克服傳統(tǒng)的溫度和形變傳感器(如熱電偶和形變測(cè)量器)的很多缺點(diǎn),如重量、硬度方面的缺陷以及對(duì)環(huán)境變化干擾的抵抗能力差等。

    本文主要介紹對(duì)FBG傳感器信號(hào)的快速獲取方法,重點(diǎn)介紹基于FPGA的Altera公司的Excalibur開發(fā)板,設(shè)計(jì)一個(gè)片上嵌入式測(cè)量系統(tǒng),用它來獲取光信號(hào)。與目前具有同樣功能的其它測(cè)量系統(tǒng)相比,它具有靈活、穩(wěn)定、易維護(hù)、高效率等優(yōu)點(diǎn)。本測(cè)量系統(tǒng)的硬件開發(fā)包括,使用Altera Excalibur開發(fā)板配置生成一個(gè)嵌有Nios處理器的“片上”測(cè)量系統(tǒng),以及使用CCD和高速ADC設(shè)計(jì)光電信號(hào)的轉(zhuǎn)換和采集電路;軟件開發(fā)包括,在Apex EP20K FPGA中時(shí)序信號(hào)的Verilog實(shí)現(xiàn),使用C語言對(duì)光電信號(hào)的獲取。

1 系統(tǒng)結(jié)構(gòu)

測(cè)量系統(tǒng)由以下幾部分組成:光學(xué)系統(tǒng)、放置被測(cè)物體內(nèi)的光纖光柵(FBG)和信號(hào)采集處理部分。其中的光學(xué)系統(tǒng)包括光源和分光儀,使用高亮度的激光發(fā)生器作為光源,用于產(chǎn)生入射被測(cè)物體內(nèi)的光纖的光波。它的功率大于1mW,光頻譜位于808~858nm,入射后其中某一波長(zhǎng)的光波被光柵反射回來,并進(jìn)入分光儀。分光儀是由若干面反射鏡和全息光柵組成,主要作用是對(duì)光波進(jìn)行光學(xué)處理后,使光波能夠準(zhǔn)確投射在CCD上,將光信號(hào)轉(zhuǎn)換成電信號(hào),便于信號(hào)的采集和處理。系統(tǒng)中信號(hào)采集處理部分是由CCD線列傳感器ADC轉(zhuǎn)換器以及Altera ExCalibur開發(fā)板組成。它的作用是將投射在CCD上的光信號(hào)先變?yōu)槟M電信號(hào),而后通過ADC將信號(hào)再轉(zhuǎn)換成數(shù)字量信號(hào),然后通過Altera's Excalibur開發(fā)板上的片上Nios嵌入式系統(tǒng),對(duì)這些數(shù)字量信號(hào)進(jìn)行采集和處理,得到相應(yīng)的溫度值和應(yīng)變值,以便完成整個(gè)測(cè)量過程。系統(tǒng)框架示意圖如圖1所示。

2 光纖光柵(FBG)傳感器工作原理

光纖光柵(FBG)傳感器是光纖傳感器的一種。它不僅可以用于靜態(tài)信號(hào),還可以用于動(dòng)態(tài)信號(hào)的采集,例如溫度、形變和壓力等。

以下結(jié)合圖2介紹光纖光柵(FBG)的工作原理。

光纖光柵(FBG)傳感器的工作原理就是用某一波長(zhǎng)的光信號(hào)來表示我們希望采集的物理量。光纖中的光柵可以被看作是一個(gè)“濾波器”。根據(jù)光柵本身的物理特性,進(jìn)入光纖的光波的某一波長(zhǎng)部分被光柵反射回來,這一波長(zhǎng)的光波就被從入身的光波中“濾除”了。這樣,我們希望采集的物理量就被“調(diào)制”成了這一波長(zhǎng)的光信號(hào)。

圖3 緩沖接口電路

    假設(shè)光柵的反射系數(shù)為neff,光柵之間的幾何距離為dB,通過以下公式得出被反射回的光波的波長(zhǎng)λB=2×neff×dB。機(jī)械應(yīng)力將改變光柵之間的幾何距離,而溫度的變化將改變光柵的反射系數(shù)。可以試想,在已知溫度T0和已知壓力ε0條件下,反射波長(zhǎng)為λB0,那么,可以通過檢測(cè)未知溫度T1和未知應(yīng)力ε1所對(duì)應(yīng)反射波長(zhǎng)λ1與λB0之間的波長(zhǎng)偏移,來計(jì)算得到此刻的溫度T1和應(yīng)力ε1,計(jì)算公式如下:

其中光柵的相關(guān)常系數(shù)c1、c2,由光柵的校準(zhǔn)過程所決定。

應(yīng)力ε1=(λ1-λB0)/[(1-Peff)]×λB0

其中光柵常系數(shù)的Peff是光柵光塑常系數(shù)。

3 CCD圖像傳感器的選擇

為了方便系統(tǒng)對(duì)FBG輸出的光信號(hào)進(jìn)行處理,必須將其轉(zhuǎn)換成電信號(hào),我們采用光電信號(hào)轉(zhuǎn)換器未完成這方面的工作。在本系統(tǒng)中,因?yàn)榘l(fā)光源的波譜范圍是808~858nm,所以我們選用了波譜范圍為200~1100nm的2048個(gè)像素的灰度線列CCD圖像傳感器ILX511B。

CCD將光信號(hào)轉(zhuǎn)換成模擬電信號(hào),每個(gè)像素產(chǎn)生一個(gè)模擬電信號(hào),這樣CCD每次進(jìn)行光電轉(zhuǎn)換就產(chǎn)生2048個(gè)模擬電信號(hào);同時(shí),它將這2048個(gè)像素位置串行地“封裝”成一個(gè)有效數(shù)據(jù)字段,可以在外加時(shí)鐘同步信號(hào)(CLK)和芯片使讀端(ROG)作用下,從CCD中讀出數(shù)據(jù)。外加的同步時(shí)鐘信號(hào)由2087個(gè)時(shí)鐘脈沖組成,在每個(gè)時(shí)鐘脈沖作用下,一個(gè)數(shù)據(jù)位被讀出。這2087個(gè)數(shù)據(jù)位由以下幾部分組成:首部偽數(shù)據(jù)字段(33個(gè)數(shù)據(jù)位)、有效數(shù)據(jù)字段(2048個(gè)數(shù)據(jù)位)、尾部偽數(shù)據(jù)字段(6個(gè)數(shù)據(jù)位)。需要注意的是,為了提高電磁兼容性,CCD的工作方式應(yīng)該選擇為采樣一保持方式;同時(shí),CCD在上電后處于內(nèi)部電路初始化階段,為了避免得到錯(cuò)誤的數(shù)據(jù),最初22 500個(gè)時(shí)鐘脈沖用于初始化CCD,不要在此階段讀出數(shù)據(jù)。

4 ADC接口設(shè)計(jì)與Altera Nios平臺(tái)

4.1 ADC接口設(shè)計(jì)

經(jīng)過CCD傳感器轉(zhuǎn)換輸出的模擬量,必須通過ADC轉(zhuǎn)換器轉(zhuǎn)換成數(shù)字信號(hào),這樣系統(tǒng)才可以處理這些信號(hào)。因?yàn)镃CD的動(dòng)態(tài)范圍是48.5dB,根據(jù)公式

ADC精度≥動(dòng)態(tài)范圍(dB)/20×log2

可以計(jì)算得到ADC精度≥8.06,所以選擇ADC的精度必須是9位或9位以上的;同時(shí),根據(jù)以下公式計(jì)算ADC的速度:

fs=1×2MHz(CCD的最大時(shí)鐘頻率)=2MHz(采樣和保持方式)。

通過上述計(jì)算和分析,得到所需ADC的兩個(gè)主要特性指標(biāo),即精度至少要9位,采樣的速率必須至少2Msps。

現(xiàn)在,有很多ADC轉(zhuǎn)換器可以應(yīng)用于CCD圖像處理。在綜合考慮了諸多因素后,我們選擇Linear的串行ADCLTC1402。

在設(shè)計(jì)ADC接口電路時(shí),要注意以下一些問題。首先,由于LTC1402內(nèi)部輸入信號(hào)的“保持-采樣”電路的速率達(dá)到80MHz,所以,外部的噪聲和干擾都可以通過LTC1402的輸入端對(duì)A/D轉(zhuǎn)換產(chǎn)生影響。根據(jù)LTC1402數(shù)據(jù)手冊(cè)的要求,我們解決的方法是,在LTC1402的輸入端加上一階的濾波電路,將輸入信號(hào)的頻率限制在一定的范圍內(nèi)。其次,CCD的輸出對(duì)于外界的阻抗變化比較敏感,如果將ADC的輸入端與CCD的輸出直接相連,則CCD的負(fù)載可能隨ADC輸入端內(nèi)部阻抗的變化而變化?;谝陨蟽牲c(diǎn)考慮,我們?cè)贑CD和ADC之間設(shè)計(jì)了緩沖電路,用于阻抗匹配和濾波。緩沖接口電路如圖3所示。

由圖3可計(jì)算ADC的輸入最高頻率:

fg=1/[(2×π×R5×C3)]=10.3MHz。

4.2 Altera Nios平臺(tái)

在細(xì)致分析系統(tǒng)的特點(diǎn)后,我們決定選擇專門針對(duì)SOPC應(yīng)用的Altera Excalibur開發(fā)套件。開發(fā)套件包括以下部分:

*Nios處理器以及外圍接口;

*Quartus II開發(fā)軟件;

*GNDUro編譯器;

*基于APEX EP20K200E FPGA的開發(fā)板;

*相關(guān)的開發(fā)例程。

圖5 時(shí)鐘和控制信號(hào)發(fā)生器的仿真時(shí)序

    我們使用集成在QuartusII中的SOPC Builder工具來配置生成片上系統(tǒng)。SOPC Builder是一個(gè)功能強(qiáng)大的基于圖形界面的片上系統(tǒng)的定義和定制工具,可以在短時(shí)間內(nèi)完成用戶定制的SOPC設(shè)計(jì)。根據(jù)應(yīng)用的需要,從SOPC Builder庫(kù)中選擇IP模塊、存儲(chǔ)器、外圍接口和處理器,并且配置生成一個(gè)高集成度的SOPC系統(tǒng),因而選取以下一些模塊組成片上系統(tǒng):Nios 32bit CPU、Boot Monitor ROM、Communication UART、debugging UART、Timer、Button PIO、User PIO、LCD PIO、LED PIO、DMA、SPI、Seven Segment PIO、External RAM Bus(Avalon TriState Bridge)、External RAM Interface、External Flash Interface。

同時(shí),SOPC Builder自動(dòng)產(chǎn)生一些必需的仲裁邏輯來協(xié)調(diào)系統(tǒng)中以上各個(gè)部件的工作,我們將系統(tǒng)的工作頻率設(shè)為33MHz。定制完片上系統(tǒng)的硬件后,SOPC Builder還為編寫操作這些片上硬件的軟件代碼提供了一個(gè)軟件開發(fā)環(huán)境,這個(gè)軟件環(huán)境包括語言頭文件、外圍接口的驅(qū)動(dòng)以及實(shí)時(shí)操作系統(tǒng)的內(nèi)核,極大地方便了軟件的開發(fā)。

5 系統(tǒng)實(shí)現(xiàn)

以下分兩部分來分析和介紹:①在ApexEP20K FPGA中,使用Verilog編寫時(shí)鐘和控制信號(hào)發(fā)生器用于驅(qū)動(dòng)CCD和ADC,并且協(xié)調(diào)兩者的工作;②使用C語言編寫程序,通過SOPC Builder配置的SPI接口讀取ADC輸出的數(shù)據(jù)。

5.1 時(shí)鐘和控制信號(hào)發(fā)生器

使用Verilog編寫時(shí)鐘和控制信號(hào)發(fā)生器,用于產(chǎn)生驅(qū)動(dòng)CCD和ADC的時(shí)鐘和控制信號(hào)。時(shí)鐘發(fā)生器的工作原理是:使用頻率為33MHz的系統(tǒng)時(shí)鐘,作為時(shí)鐘發(fā)生器的輸入和同步售,用于產(chǎn)生所需的CCD和ADC驅(qū)動(dòng)的時(shí)鐘和控制信號(hào)。根據(jù)系統(tǒng)的要求和CCD以及ADC芯片特性,將產(chǎn)生的CCD時(shí)鐘頻率設(shè)為1MHz;同時(shí)把ADC的時(shí)鐘頻率設(shè)為33MHz。在時(shí)鐘發(fā)生器中,還需對(duì)產(chǎn)生CCD和ADC兩個(gè)高速設(shè)備的時(shí)鐘和控制信號(hào)進(jìn)行匹配,使得兩者能夠正常地工作。

現(xiàn)在詳細(xì)地分析這兩個(gè)高速設(shè)備如何完成時(shí)序的匹配。由于系統(tǒng)中的CCD和ADC都是依靠外加時(shí)鐘同步的高速設(shè)備,因此,這兩個(gè)設(shè)備之間的時(shí)序的匹配對(duì)于能否獲取正確有效的數(shù)據(jù)來說至關(guān)重要。為了使兩個(gè)設(shè)備協(xié)同工作,首先要分析每個(gè)設(shè)備所需的外加時(shí)鐘和控制兩個(gè)外加信號(hào),分別是CCD_ROG和CCD_CLK。CCD_ROG信號(hào)使得CCD的輸出數(shù)據(jù)有效,也就是每次從CCD讀取數(shù)據(jù)時(shí),都要先給CCD_ROG一個(gè)低電平,將CCD置光電轉(zhuǎn)換后的數(shù)據(jù)一位位地輸出。ADC進(jìn)行模數(shù)轉(zhuǎn)換也需要兩個(gè)外加信號(hào),分別是ADC_CONV和ADC_CLK。ADC_CONV信號(hào)使ADC芯片開始進(jìn)行模數(shù)轉(zhuǎn)換,每次進(jìn)行轉(zhuǎn)換前都要給ADC_CONV一個(gè)高電平;同時(shí),轉(zhuǎn)換過程和轉(zhuǎn)換后的結(jié)果輸出在ADC_CLK信號(hào)的同步完成。

由于需要先從CCD光電轉(zhuǎn)換器讀出模擬數(shù)據(jù),所以,要通過CCD_ROG給CCD一個(gè)長(zhǎng)度為t1(t1=4000ns)的低電平。在CCD_ROG重新變?yōu)楦唠娖胶螅珻CD就在CCD_CLK信號(hào)的同步下輸出數(shù)據(jù)了,在每個(gè)CCD_CLK作用下輸出一個(gè)模擬量數(shù)據(jù)。CCD每次輸出的2087個(gè)模擬量分別由33個(gè)首部偽數(shù)據(jù)字段、2048個(gè)有效數(shù)據(jù)和6個(gè)尾部偽數(shù)據(jù)字段組成。其中的2048個(gè)有效數(shù)據(jù)和首部偽數(shù)據(jù)字段的后20個(gè)數(shù)據(jù)就是我們希望得到的,所以從第14個(gè)數(shù)據(jù)到第2081個(gè)數(shù)據(jù)中的每個(gè)模擬量,都通過ADC_CONV(ADC_CONV的高電平寬度為4ns),給出一個(gè)高電平啟動(dòng)ADC;同時(shí),在ADC_CLK的作用下,完成模數(shù)轉(zhuǎn)換過程和數(shù)字量輸出。圖4、圖5是時(shí)鐘和控制信號(hào)發(fā)生器的程序流程和仿真時(shí)序圖。

    5.2 SPI接口的編程

ADC將模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào)后,Nios通過SPI接口讀入這些信號(hào)并進(jìn)行相應(yīng)的處理。我們通過Quartus II中的SOPC Builder為Nios核配置SPI接口。在我們的系統(tǒng)中,將SPI配置為從設(shè)備。軟件通過訪問存儲(chǔ)器中映射的5個(gè)16位的寄存器來控制和讀寫SPI接口。讀入的數(shù)據(jù)通過MOSI引腳逐位進(jìn)入移位寄存器。通過移位寄存器的移位和緩沖后,一幀數(shù)據(jù)進(jìn)入寄存器rxdata,同時(shí)將狀態(tài)寄存器的rrdy位置1,通過訪問rxdata就得到一幀數(shù)據(jù)。數(shù)據(jù)被讀取后,rrdy位自動(dòng)置回0。如果前一幀數(shù)據(jù)還未從rxdata讀取,后一幀數(shù)據(jù)就會(huì)將原數(shù)據(jù)覆蓋,造成錯(cuò)誤,同時(shí)將狀態(tài)寄存器的ROE(Read Overwrite Error)位置成1。SPI接口共有4個(gè)引腳,分別是MISO(Master Input Slave Output)、MOSI(Master Output Slave Input)、SCLK(同步時(shí)鐘)和SS_n。當(dāng)SS_n為低電平時(shí),從設(shè)備可以在SCLK同步作用下讀入數(shù)據(jù)。系統(tǒng)中的SPI接口是從設(shè)備,所以只使用MOSI、SCLK和SS_n三根引腳。圖6是Nios中SPI與ADC的接口示意圖。

從ADS的芯片特性可知,當(dāng)ADC_CONV在一個(gè)高電平的作用下,ADC開始進(jìn)行模數(shù)轉(zhuǎn)換。ADC_CONV回復(fù)到電平后,因?yàn)镾S_n和ADC_CONV連在一起,所以Nios中的SPI就處于可以讀入數(shù)據(jù)的狀態(tài)了;同時(shí),在ADC_SCK的作用下ADC輸出數(shù)據(jù),而SPI也在相同的時(shí)鐘SCLK的作用下,通過MOSI讀入數(shù)據(jù)。為了能夠準(zhǔn)確得到數(shù)據(jù),還要將SPI寄存器rxdata的位數(shù)設(shè)為13位。軟件中,我們將通過等待SPI寄存器的rrdy位的置位,來讀取rxdata中的數(shù)據(jù),與此同時(shí)寄存器中roe的狀態(tài)決定此幀數(shù)據(jù)的讀取過程中是否存在數(shù)據(jù)溢出現(xiàn)象。以下是相關(guān)的讀取數(shù)據(jù)的軟件代碼。

do{

//讀一行CCD數(shù)據(jù)

for(i=0;i<2069;i++){

//等待,直到準(zhǔn)備好

while(spi->np_spistatus&np_spistatus_rrdy_mask)==0)

;

//從SPI數(shù)據(jù)寄存器讀數(shù)據(jù)

c[i]=spi->np_spirxdata;

}

//讀覆蓋狀態(tài)

b=spi->np_spistatus&np_spistatus_roe_mask;

}while(b==8);

結(jié)論

本系統(tǒng)經(jīng)過仿真測(cè)試,其功能達(dá)到了設(shè)計(jì)要求,并用HP邏輯分析儀驗(yàn)證了系統(tǒng)功能。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉