基于MSP430的小型望遠(yuǎn)鏡防抖系統(tǒng)設(shè)計
1 引 言
防抖系統(tǒng)正日益廣泛地應(yīng)用于照相機(jī)和望遠(yuǎn)鏡等光學(xué)設(shè)備中。防抖主要分為光學(xué)防抖和電子防抖,光學(xué)防抖通過光學(xué)器件進(jìn)行影響穩(wěn)定;電子防抖采用軟件的方法,針對數(shù)字圖像設(shè)計基于圖像處理的影像穩(wěn)定算法[1]。對于望遠(yuǎn)鏡來說,在放大視角的同時,也會將手的抖動造成的影像晃動放大,在高倍望遠(yuǎn)鏡中尤其明顯。天文望遠(yuǎn)鏡、軍用望遠(yuǎn)鏡等高倍望遠(yuǎn)鏡在使用時通常需要配合三腳架,而大多數(shù)的手持望遠(yuǎn)鏡在沒有影像穩(wěn)定措施的情況下觀察效果受到擾動。如果觀察者站在車、船、飛機(jī)上時,晃動的影響更加嚴(yán)重,即使把望遠(yuǎn)鏡裝到三角架上,也不能消除晃動的影響。因此,開發(fā)適合望遠(yuǎn)鏡使用的影像穩(wěn)定系統(tǒng)已經(jīng)成為一項(xiàng)迫切的任務(wù),防抖動望遠(yuǎn)鏡將會具有很大的市場前景。
影像穩(wěn)定屬于跟蹤控制問題。文獻(xiàn) [2]設(shè)計了一種采用形狀可變的流體棱鏡進(jìn)行抖動補(bǔ)償?shù)姆椒?。本文設(shè)計了以 MSP430單片機(jī)為核心的防抖控制系統(tǒng),給出了系統(tǒng)硬件設(shè)計電路,使用 C430語言進(jìn)行軟件調(diào)試,以實(shí)現(xiàn)對望遠(yuǎn)鏡防抖系統(tǒng)的有效控制。
2 系統(tǒng)硬件設(shè)計
望遠(yuǎn)鏡防抖系統(tǒng)原理如圖 1所示,其原理是:在望遠(yuǎn)鏡光路中加入一組可動鏡片,稱為補(bǔ)償鏡片。補(bǔ)償鏡片在自身所在平面內(nèi)做上下左右兩個自由度的運(yùn)動,來糾正因手在俯仰和偏航方向的抖動所引起的光線偏轉(zhuǎn),使光線仍然按照期望的軌跡到達(dá)目鏡,從而達(dá)到穩(wěn)定影像的目的。
該系統(tǒng)硬件主要有以下幾部分組成:感知望遠(yuǎn)鏡抖動的陀螺儀 CG-L53B;鏡片伺服直線電機(jī)的集成功率放大器 TCA0372;MCU采用 MSP430F169芯片;做電源穩(wěn)壓的 MAX8863芯片?!?/p>
基于MSP430的小型望遠(yuǎn)鏡防抖系統(tǒng)設(shè)計
2.1 MSP430F169單片機(jī)
MSP430 是 TI公司的一種具有超低功耗的功能強(qiáng)大的 16位單片機(jī), MSP430F169是該系列中的一種型號,具有 FLASH存儲器。這款單片機(jī)的程序代碼為 60KB+256B的 FLASH,2KB的 RAM,且具有強(qiáng)大的中斷功能。 MSP430系列單片機(jī)能在 8MHz晶體的驅(qū)動下,實(shí)現(xiàn) 125ns 的指令周期; 16位的數(shù)據(jù)寬度、 125ns的指令周期以及多功能的硬件乘法器相配合。數(shù)字控制的振蕩器 DCO允許在 6微秒內(nèi)從低功耗模式喚醒。該芯片配置了帶有 3個捕獲/ 比較寄存器的 16位定時器 A和定時器 B、12位快速 A/D轉(zhuǎn)換器(帶有內(nèi)部參考電平、采樣保持和自動掃描特性)、雙 12位 D/A轉(zhuǎn)換器兩個通用同步 /異步串行通訊接口 USART、DMA。除此之外,該單片機(jī)還具有超低功耗的優(yōu)點(diǎn),運(yùn)行在 1MHz時鐘條件下時,工作電流視工作模式不同為 0.1~280µA[3]。
由于 MSP430F169具有以上的特點(diǎn),可以承擔(dān)本系統(tǒng)電路中的多種工作,使整體電路得到簡化。
2.2 陀螺儀電路設(shè)計
基于MSP430的小型望遠(yuǎn)鏡防抖系統(tǒng)設(shè)計
由于在輸出電壓Vref和Vout之間存在著殘余載波噪音,連接了一個低通濾波器來消除高次諧波成分;為了消除輸出電壓在靜止?fàn)顟B(tài)時由于溫度變化等因素的影響而產(chǎn)生的波動,連接了一個普通高通濾波器;在地與Vref之間用4.7uF電容連接來穩(wěn)定Vref輸出。
2.3 電機(jī)驅(qū)動功放電路設(shè)計
對于電機(jī)驅(qū)動功放電路采用線性電路方式,如圖 3所示。線性功放電路的特點(diǎn)是線性度好,失真小,頻帶寬,不會產(chǎn)生噪聲和電磁干擾,在照相機(jī)等小型設(shè)備的電機(jī)驅(qū)動中應(yīng)用廣泛。其最大缺點(diǎn)是效率低,在功率較大時,晶體管功耗大,發(fā)熱嚴(yán)重,但在小功率電機(jī)等設(shè)備的控制中,使用線性功放電路比較方便,盡管效率不高,但在小功率驅(qū)動中并不會損失太多功率[4]。
3 軟件設(shè)計
為了節(jié)省內(nèi)存空間,便于編制、閱讀、擴(kuò)充和修改程序,軟件采用了模塊化結(jié)構(gòu),每個功能模塊又由相應(yīng)的子程序組成,實(shí)現(xiàn)特定功能。程序流程圖如圖 4所示,其中,初始化模塊實(shí)現(xiàn)對程序中所用到的寄存器、常量、變量的定義,對系統(tǒng)時鐘、 ADC、DAC、定時器和看門狗等模塊的初始化,并設(shè)置中斷,還要初始化控制變量和一些標(biāo)志值。
初始化結(jié)束后,程序進(jìn)入循環(huán)等待狀態(tài),并開始計時,在斷電定時結(jié)束前,由通用定時器設(shè)定采樣周期,向主程序的采樣標(biāo)志賦值,啟動控制算法。
本系統(tǒng)使用了兩個定時器:通用定時器和看門狗定時器。通用定時器用于系統(tǒng)采樣和控制時,看門狗定時器給定一個時限,當(dāng)系統(tǒng)運(yùn)行到達(dá)這個時間后, MSP430向電源模塊給出斷電信號,達(dá)到省電的目的?!?/p>
基于MSP430的小型望遠(yuǎn)鏡防抖系統(tǒng)設(shè)計
控制算法是在中斷服務(wù)程序中執(zhí)行的??撮T狗定時器工作在定時器模式,定時周期就是數(shù)字控制的采樣周期,每個周期定時產(chǎn)生中斷,中斷服務(wù)程序的內(nèi)容包括信號的 A/D轉(zhuǎn)換與濾波、計算控制量并輸出 PWM波形。中斷服務(wù)程序的執(zhí)行速度要足夠快,在一個周期內(nèi)完成規(guī)定的任務(wù),在程序設(shè)計上要進(jìn)行優(yōu)化。
有些情況下,觀察者需要人為地使望遠(yuǎn)鏡轉(zhuǎn)動一個比較小的角度,為防止這個轉(zhuǎn)動被誤認(rèn)為是抖動,在讀取角速度的值后會進(jìn)行判斷,根據(jù)實(shí)驗(yàn)結(jié)果,通常人為移動的速度比較大,并且在移動時間內(nèi)角速度值幾乎相等,可以明顯區(qū)別于抖動。
4 實(shí)物調(diào)試
在實(shí)驗(yàn)的時候用陀螺產(chǎn)生的不規(guī)則信號作為參考位置信號,調(diào)試的結(jié)果如圖 5所示。可以看到,對于最高頻率在 10Hz以下的不規(guī)則信號,系統(tǒng)的跟蹤效果也比較滿意。
基于MSP430的小型望遠(yuǎn)鏡防抖系統(tǒng)設(shè)計
5 結(jié)論
本文設(shè)計了以 MSP430F169單片機(jī)為核心的望遠(yuǎn)鏡防抖系統(tǒng),采用跟蹤參考信號的位置伺服控制方法,具有系統(tǒng)簡單,穩(wěn)定性好,功耗低等優(yōu)點(diǎn),并且能夠達(dá)到滿意的跟蹤精度,為進(jìn)一步研制防抖望遠(yuǎn)鏡提供了參考。