摘 要: 采用ST公司生產(chǎn)的STM32F103系列主控芯片,該系列芯片能夠產(chǎn)生系統(tǒng)所需要的驅(qū)動線陣CCD的時序信號,通過藍(lán)牙技術(shù)進行數(shù)據(jù)傳輸,使用虛擬儀器編程軟件LabVIEW進行上位機軟件開發(fā),從而能夠完整地做出所要求的一個線陣CCD圖像采集系統(tǒng)。該系統(tǒng)可以實現(xiàn)藍(lán)牙無線數(shù)據(jù)方式采集,軟件界面的開發(fā)時間縮短,操作性強。
關(guān)鍵詞: STM32;線陣CCD;藍(lán)牙技術(shù);LabVIEW;數(shù)據(jù)采集
0 引言
傳統(tǒng)的數(shù)據(jù)采集方式基本上是以有線的方式連接,線多且亂,有時會造成不必要的損失,而且使用大多基于C或C++的軟件界面,操作起來不易,開發(fā)時間比較長,功能上不能往外擴展。電荷耦合器件(Charge Couple Device,CCD)[1]已經(jīng)在非接觸測量領(lǐng)域和傳感領(lǐng)域得到了應(yīng)用,這種器件從20世紀(jì)60年代發(fā)展而來,具有很多優(yōu)點,比如精度高、功耗低、尺寸小,壽命長等。在某一個有關(guān)于CCD的系統(tǒng)中,CCD的驅(qū)動時序要求是很重要的,影響著CCD的信噪比等特性,而像EPROM驅(qū)動、單片機驅(qū)動、IC驅(qū)動以及PLD驅(qū)動存在著很多缺點,比如調(diào)試?yán)щy、邏輯設(shè)計復(fù)雜、驅(qū)動頻率低[2],所以CCD驅(qū)動是所要考慮的。上述的這些問題是該系統(tǒng)所要解決的主要問題,也正是因為這些問題的要求,才設(shè)計出了這樣的一個系統(tǒng)。
根據(jù)上述所提出的問題,采用藍(lán)牙技術(shù)來實現(xiàn)無線數(shù)據(jù)傳輸,它具有很多優(yōu)點,如功耗低、成本低、傳輸速率高、穩(wěn)定性強、安全性高、使用便捷,關(guān)鍵是目前智能手機也都自帶藍(lán)牙功能。而其他的無線技術(shù),比如WIFI,雖然傳輸速率高,但是安全性不夠;ZigBee技術(shù)耗能低、低成本但傳輸速率不高[3]。所以綜合以上考慮,使用藍(lán)牙適配器作為無線傳輸方式。
CCD驅(qū)動方面繼承了實驗室經(jīng)常使用的ARM芯片,該芯片不止作為驅(qū)動芯片,也是整個系統(tǒng)的“大腦”,承擔(dān)著核心的作用,此芯片是ST公司生產(chǎn)的STM32F103系列,選用它主要因為其產(chǎn)生的驅(qū)動時序穩(wěn)定、精確。對于界面開發(fā),選用了LabVIEW作為編程開發(fā)軟件,它是虛擬儀器的軟件開發(fā)工具,虛擬儀器在國內(nèi)已經(jīng)比較成熟,而且它是一種圖形化編程語言,是未來編程語言的發(fā)展趨勢,具有很多優(yōu)點,關(guān)鍵是強大的擴展功能是所需要的。
1 整體方案設(shè)計
系統(tǒng)主要由ARM處理器STM32F103、電平轉(zhuǎn)換、線陣CCD、濾波放大電路、A/D轉(zhuǎn)換及藍(lán)牙傳輸模塊等組成。此圖像采集系統(tǒng)的基本工作步驟是:首先微處理器芯片產(chǎn)生CCD所需要的4種驅(qū)動脈沖信號,使CCD能夠正常工作,然后CCD的光敏單元部分采集到光信號,并且輸出的是模擬信號,為了得到數(shù)字信號,必須經(jīng)過放大處理然后輸入到A/D轉(zhuǎn)換當(dāng)中,微處理器讀取數(shù)字信號結(jié)果并且存入到自己的存儲器當(dāng)中,當(dāng)這樣一幀數(shù)據(jù)接收完成之后,經(jīng)過串口將數(shù)據(jù)送入上位機當(dāng)中處理[4]。系統(tǒng)框架如圖1所示。
2 系統(tǒng)硬件組成
2.1 藍(lán)牙模塊的選擇
采集模塊選用的是藍(lán)牙模塊HC05,這個模塊是實驗室經(jīng)常使用的,在資料和調(diào)試上是非常成熟的。這塊藍(lán)牙器件的數(shù)據(jù)傳輸率范圍極廣,基本上在4 800 b/s~1 382 400 b/s之間,電壓精度要求不高,一般的單片機系統(tǒng)電壓是可以兼容的,此款藍(lán)牙可以與電腦、手機等智能終端配對。表1展示了所使用的藍(lán)牙部分參數(shù)。
2.2 微處理器的選擇
根據(jù)系統(tǒng)的需要,整個測量系統(tǒng)的控制,對于采集信號的調(diào)理和轉(zhuǎn)換,與上位機之間的通信以及藍(lán)牙適配器的連接,對于傳感器CCD的驅(qū)動控制,選擇了由ST(意法半導(dǎo)體)公司出產(chǎn)的一款A(yù)RMv7-M架構(gòu)的32位微處理器。它的內(nèi)核是Cortex-M3,該處理器非常高效,功耗低,實時性能好,而且價格便宜。根據(jù)提供的數(shù)據(jù)資料可以知道該款微處理器最大的工作時鐘頻率達(dá)到了72 MHz,滿足系統(tǒng)的實時性要求。它具有128 KB閃存,20 KB靜態(tài)RAM,滿足圖像采集系統(tǒng)的要求。它具有基本的32位Thumb-2指令集架構(gòu)。此器件在整個的設(shè)計上解決了很多的問題。
2.3 線陣CCD驅(qū)動設(shè)計
在CCD驅(qū)動設(shè)計上,選擇了經(jīng)常使用的TCD1206SUP,該CCD傳感器價格上比較便宜而且滿足要求。此器件的驅(qū)動電壓脈沖是兩相5 V,有效像元數(shù)為2 160個,滿足了實際需求,每一行的輸出像元是2 236個。根據(jù)數(shù)據(jù)每一個是14 m×14 m,有效總長度為30.24 mm。
此款CCD器件TCD1206SUP需要4路驅(qū)動信號,由上述微處理器STM32F103系列來產(chǎn)生滿足需求的時序,包括:兩相電荷轉(zhuǎn)移脈沖、復(fù)位的脈沖RS以及所要的光積分脈沖SH。圖2是波形圖。
由圖2可以解讀出當(dāng)在SH下降沿時,、各自保持為高低電平交替存在,當(dāng)光積分脈沖是處在高電平期間時,驅(qū)動脈沖是高電平,是低電平狀態(tài)的。這樣的驅(qū)動時序是為了保證在光敏區(qū)間的采集信號能夠完完全全地轉(zhuǎn)移到CCD這樣一個模擬移位寄存器當(dāng)中,這是關(guān)鍵所在。但是在控制SH的電平時間上一定要把握住其時間上的要求,因為如果SH的高電平時間過長的話,那么信號轉(zhuǎn)移到模擬移位寄存器里的信號將不僅是有效信號,而且還有少量的噪聲信號[5],這將嚴(yán)重影響有效信號的獲取。實際上噪聲信號的多少主要取決于所設(shè)置的這個SH在高電平上的時間長短[6]。通過以上來看,時間長短是必須注意的地方。
2.4 A/D轉(zhuǎn)換
其實在STM32F103系列處理器的內(nèi)部是有A/D轉(zhuǎn)換模塊的,但是由于CCD驅(qū)動頻率為1 MHz、500 kHz、250 kHz,當(dāng)微處理器工作頻率達(dá)到72 MHz時,A/D轉(zhuǎn)換速度卻達(dá)不到1 MHz,所以需要一個外部的A/D芯片。經(jīng)過提供的數(shù)據(jù)資料分析,采用了AD9945信號處理器。采用AD9945的原因是其采用了40 MHz單通道架構(gòu),設(shè)計主要是為了用于采樣、調(diào)節(jié)交錯和對逐行掃描區(qū)域CCD陣列的輸出。它的內(nèi)部寄存器部分使用的是串行接口。AD9945的組成部分包括:CDS(相關(guān)雙采樣)、VGA(數(shù)字控制增益放大器)、ADC(12位模數(shù)轉(zhuǎn)換器)以及黑色電平鉗位電路[7]。它是由3 V電源供電,功耗典型值大約為140 mW,封裝形式是采用32引腳的LFCSP。
3 硬件系統(tǒng)軟件設(shè)計
TCD1206SUP的SH、、RS這些驅(qū)動時序信號分別是由微處理器STM32F103的TIM1_Channel1、TIM2_Channel1、TIM2_Channel2和TIM3_Channel1這些定時器通道產(chǎn)生的,其中高級定時器TIM1在PWM_1模式工作,而通用定時器TIM2在翻轉(zhuǎn)模式工作,通用定時器TIM3工作在PWM模式。把TIM2的翻轉(zhuǎn)頻率設(shè)置為 0.5 MHz,TIM2_Channel1和TIM2_Channel2的輸出極性相反,TIM3的工作頻率為1 MHz。
TCD1206SUP會在的下降沿輸出信號,它是雙通道的,TIM2_Channel1輸出信號的下降沿以及TIM2_Channel2的下降沿應(yīng)該與TIM3輸出信號的下降沿對齊,這樣才能夠有效、及時地釋放出采集信號。在工作模式上將TIM1設(shè)置為主工作模式,而TIM2設(shè)置為從工作模式。TIM2的門控信號是TIM1的OCxRef,這是一個輸出信號,TIM1的輸出為低電平,參考輸出為高電平;否則輸出為高電平,參考輸出為低電平。這些工作條件是TIM1定時器的計數(shù)值小于它的計數(shù)器預(yù)裝載值。當(dāng)定時器TIM1為高電平的參考電平時,TIM2處在正常工作狀態(tài),反之,在前者處于低電平工作狀態(tài)時,后者將處于停止工作狀態(tài),此時TIM1_Channel1通道將會輸出高電平狀態(tài),所以應(yīng)該始終使TIM2_Channel1的輸出電平為高電平。這一點是關(guān)注的重點部分,是整個驅(qū)動時序的關(guān)鍵,所以一定要控制好這兩個定時器在周期上始終是匹配的。
4 上位機軟件開發(fā)
上下位機的配對主要以主從的形式進行。在下位機部分主要是用藍(lán)牙模塊,使用它作為系統(tǒng)的從機部分,在通過上電之后,與MCU通信,同一時間上,還要等待和允許主機對藍(lán)牙模塊進行搜索。在上位機接口部分,所要求的程序由LabVIEW軟件編寫。在軟件部分,接口所需要的程序由LabVIEW圖形化軟件編寫。作為主機部分,上位機對下位機進行全面的搜索、搜索服務(wù)、建立連接、傳輸數(shù)據(jù)[8]。部分LabVIEW程序框圖如圖3所示。
5 結(jié)論
本文主要介紹了一種基于LabVIEW虛擬儀器機藍(lán)牙技術(shù)的CCD圖像采集系統(tǒng)。此系統(tǒng)解決了許多復(fù)雜的采集問題,實現(xiàn)了無線藍(lán)牙傳輸數(shù)據(jù)圖像采集?;贚abVIEW圖形化編程系統(tǒng)在應(yīng)用上有很大的靈活性,后續(xù)功能升級方面的空間比較大。事實上,這個系統(tǒng)還可以作為其他系統(tǒng)來使用,例如光譜分析時就可以使用。
參考文獻(xiàn)
[1] 王慶有.CCD應(yīng)用技術(shù)[M].天津:天津大學(xué)出版社,2000.
[2] 周根榮,姜平.一種基于高速超微型單片機的CCD驅(qū)動電路設(shè)計[J].電子技術(shù)應(yīng)用,2006,32(3),105-107.
[3] 劉書生,趙海.藍(lán)牙技術(shù)應(yīng)用[M].沈陽:東北大學(xué)出版社,2001.
[4] 趙凱生,劉爽,龍再川,等.基于ARM的線陣CCD測量系統(tǒng)分析[J].光電技術(shù)應(yīng)用,2006,21(1):31-34.
[5] 許秀貞,李自田,薛利軍.CCD噪聲分析及處理技術(shù)[J].紅外與激光工程,2004,33(4):343-346.
[6] 王慶有.圖像傳感器應(yīng)用技術(shù)[M].北京:電子工業(yè)出版社,2003.
[7] 王華偉,劉波,曹劍中.CCD信號處理電路設(shè)計研究[J].科學(xué)技術(shù)與工程,2007,7(16):4153-4156.
[8] 侯國屏,王坤,葉齊鑫.LabVIEW7.1編程與虛擬儀器設(shè)計[M].北京:清華大學(xué)出版社,2005.