基于PXA270的移動(dòng)天文觀測(cè)系統(tǒng)設(shè)計(jì)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
近幾年來(lái),隨著人類文明社會(huì)的發(fā)展和人民生活水平的提高,越來(lái)越多的人渴望了解探知宇宙的奧秘。目前進(jìn)行科普天文觀測(cè)一般過(guò)程為:查天文歷書、星圖等確定星體位置;尋找合適觀測(cè)地點(diǎn)(為避開(kāi)城市燈光及污染等因素);不斷調(diào)整望遠(yuǎn)鏡,尋找欲觀測(cè)天體;定位天體后架設(shè)攝影器材進(jìn)行拍攝。整個(gè)觀測(cè)過(guò)程中存在諸多不便,如天體在天空中不斷運(yùn)動(dòng),每次觀測(cè)之前必須查閱相關(guān)資料確定天體位置,然而星歷表厚重而不直觀,簡(jiǎn)易星圖由于天體運(yùn)動(dòng)的因素必須在指定時(shí)間進(jìn)行觀測(cè);望遠(yuǎn)鏡手工調(diào)整非常繁瑣;拍攝不便。
為了解決上述問(wèn)題而開(kāi)發(fā)本系統(tǒng)。它的主要特點(diǎn)如下:通過(guò)計(jì)算,在屏幕上顯示出當(dāng)時(shí)當(dāng)?shù)匦菆D,觀測(cè)者無(wú)需攜帶天文資料,在屏幕上將觀測(cè)內(nèi)容實(shí)時(shí)顯示出來(lái),使觀測(cè)者無(wú)須忍受長(zhǎng)時(shí)間單眼觀測(cè)的視覺(jué)疲勞,同時(shí)提高了觀測(cè)效果;可對(duì)觀測(cè)圖像進(jìn)行實(shí)時(shí)處理;可非常方便地拍攝、保存觀測(cè)結(jié)果;可對(duì)結(jié)果進(jìn)行一些圖像處理,增強(qiáng)可辨性,系統(tǒng)自動(dòng)記錄觀測(cè)日志,方便整理觀測(cè)資料。
1 嵌入式開(kāi)發(fā)平臺(tái)介紹
本系統(tǒng)采用深圳億道電子開(kāi)發(fā)的一套基于IntelXScale PXA270處理器的Liod嵌入式開(kāi)發(fā)平臺(tái)。Liod開(kāi)發(fā)平臺(tái)得名手億道電子的理念“Leading is our du-ty”,是一套功能強(qiáng)大的嵌入式開(kāi)發(fā)平臺(tái),主頻高達(dá)520 MHz,支持Intel Wireless MMX及Step Speed技術(shù),超低功耗,超高性價(jià)比。核心板(XSBase270-Core)+底板設(shè)計(jì)(XSBase270-DVK-Ⅱ),擴(kuò)展更靈活,應(yīng)用更豐富。同時(shí)具有完善的功能接口,具有完善的Win CE/Linux雙操作系統(tǒng)支持。本系統(tǒng)主要用到LCD、觸摸屏、全功能串口等。
2 系統(tǒng)硬件設(shè)計(jì)
移動(dòng)天文觀測(cè)系統(tǒng)以Liod板為主控板,在此基礎(chǔ)上擴(kuò)展了相關(guān)電路,制成一塊附屬板,整體硬件框圖如圖1所示。
在本系統(tǒng)中,XScale與附屬板通過(guò)串口相互通信,附屬板與GPS模塊、指南針模塊的通信也使用串口,因此需要對(duì)附屬板上的單片機(jī)串口進(jìn)行復(fù)用,以實(shí)現(xiàn)所需功能。
使用CD4053模擬開(kāi)關(guān)來(lái)實(shí)現(xiàn)串口復(fù)用功能,通過(guò)單片機(jī)的控制引腳切換不同的串口信號(hào)來(lái)源。
GPS采用了Ho1ux GR-85接收模塊,具有快速追蹤定位12顆衛(wèi)星的能力,數(shù)據(jù)更新速率為1 Hz。GPS模塊用來(lái)得到當(dāng)?shù)亟?jīng)緯度及準(zhǔn)確時(shí)間的信息。
數(shù)字指南針采用了周立功ZNJV2模塊,磁場(chǎng)測(cè)量范圍為50 A/m,機(jī)首方向顯示分辨率為2°,機(jī)首方向精度為3°,補(bǔ)償后精度可達(dá)到0.5°,數(shù)字指南針模塊用于安放望遠(yuǎn)鏡時(shí)準(zhǔn)確指向。
溫度傳感器采用DALLAS的DS18B20芯片,其分辨率為0.062 5℃,精度為0.5℃。溫度傳感器測(cè)量大氣溫度,用于計(jì)算大氣折射率。
動(dòng)力機(jī)構(gòu)采用廉價(jià)云臺(tái)機(jī)構(gòu),其內(nèi)部為勻速交流同步電機(jī),通過(guò)控制電機(jī)轉(zhuǎn)動(dòng)時(shí)間長(zhǎng)短控制其所轉(zhuǎn)角度。
3 天體視位置計(jì)算算法[!--empirenews.page--]
天體的視位置是天文觀測(cè)中最重要的一個(gè)數(shù)據(jù)。天體的視位置最初是通過(guò)查閱相關(guān)歷書得到,這種查表求天體的視位置方法存在很大問(wèn)題,主要是計(jì)算繁瑣,效率低,定位的周期長(zhǎng),天體的數(shù)據(jù)量大,整本年歷有大量數(shù)據(jù),而且每年都必須進(jìn)行數(shù)據(jù)更新。這種方法顯然不能滿足應(yīng)用的需要。這里實(shí)現(xiàn)的方法是將天體的運(yùn)動(dòng)簡(jiǎn)化為數(shù)學(xué)模型,通過(guò)對(duì)數(shù)學(xué)模型中相對(duì)固定的參數(shù)進(jìn)行運(yùn)算,最終得出天體的位置,通過(guò)實(shí)驗(yàn)比對(duì)驗(yàn)證了這種方法的準(zhǔn)確性和高效性。
星表就是通常所說(shuō)的恒星坐標(biāo)表,它由天體的視位置經(jīng)過(guò)一系列的換算而得到星表歷元平位置,在星表中載有恒星的赤道平坐標(biāo),坐標(biāo)的周年變化和恒星的白行等。
FK5是由德國(guó)海德堡天文所編制的近年來(lái)人們普遍使用的一種絕對(duì)星表。目前,這種由星表求解天體視位置的方法已被廣泛用于求解天文三角形中。
從FK5星表出發(fā),經(jīng)過(guò)與編制星表相反的步驟來(lái)求天體的視位置,通過(guò)對(duì)影響恒星視位置的各種因素,如大氣折射、視差、光行差、歲差、章動(dòng)、自行等誤差的分析,給出計(jì)算恒星視位置的數(shù)學(xué)模型,其基本流程圖如圖3所示。
按照以上算法編寫出相關(guān)函數(shù)庫(kù),主程序?qū)⑾嚓P(guān)變量如輸入觀測(cè)地點(diǎn)經(jīng)緯度、欲觀測(cè)星體等數(shù)據(jù)即可計(jì)算出星體視位置。FK5星表以文件形式存放。
4 視頻數(shù)據(jù)采集及顯示
圖像數(shù)據(jù)的顯示可以通過(guò)直接寫屏來(lái)實(shí)現(xiàn)。Linux工作在保護(hù)模式下,用戶態(tài)進(jìn)程是無(wú)法直接使用顯卡:BIOS里提供的中斷調(diào)用來(lái)實(shí)現(xiàn)直接寫屏,故Linux抽象出FrameBuffer。這個(gè)設(shè)備來(lái)供用戶態(tài)進(jìn)程實(shí)現(xiàn)直接寫屏。 FrameBtlffer主要是根據(jù)VESA標(biāo)準(zhǔn)實(shí)現(xiàn)的,所以只能實(shí)現(xiàn)最簡(jiǎn)單的功能。
直接寫屏的過(guò)程:
(1)打開(kāi)一個(gè)FrameBuffer設(shè)備;
(2)通過(guò)調(diào)用mmap()把顯卡的物理內(nèi)存空間映射到用戶空間;
(3)直接寫內(nèi)存。
由于直接寫屏是直接對(duì)顯存進(jìn)行修改,同QT對(duì)程序界面的刷新并不協(xié)調(diào),因此有時(shí)會(huì)出現(xiàn)顯示上的瑕疵,為此使用另一種方法顯示圖像數(shù)據(jù),即利用QT庫(kù)中的QImage類來(lái)實(shí)現(xiàn)。
以上論述了如何進(jìn)行采集及顯示,但在實(shí)際的系統(tǒng)中存在多個(gè)任務(wù),各個(gè)模塊之間需要相互配合,如果簡(jiǎn)單地采用上述方法,由于視頻采集的速度較慢,將會(huì)造成阻塞,影響系統(tǒng)性能,因此使用線程技術(shù)。
在視頻設(shè)備初始化后開(kāi)啟一個(gè)采集線程,此線程不斷采集新的視頻數(shù)據(jù),采集完一幀數(shù)據(jù)會(huì)改寫狀態(tài)變量;顯示部分采用定時(shí)顯示,每隔一段時(shí)間判斷狀態(tài)變量是否為“已采集完畢”狀態(tài),如果是則進(jìn)行顯示。由于需要耗時(shí)等待的采集過(guò)程在線程中運(yùn)行,通過(guò)Linux系統(tǒng)的自動(dòng)調(diào)度,系統(tǒng)運(yùn)行十分流暢。
5 觀測(cè)的結(jié)果
觀測(cè)結(jié)果包括:拍攝到的圖像、拍攝時(shí)所在地的經(jīng)緯度、拍攝時(shí)間、大氣溫度及拍攝的星體名稱等。存儲(chǔ)時(shí)以文件的形式按時(shí)間存儲(chǔ),形成觀測(cè)日志。
對(duì)天體視位置計(jì)算算法及望遠(yuǎn)鏡實(shí)際指向進(jìn)行了測(cè)試。天體視位置算法的測(cè)試是選擇有代表性的四個(gè)天體(太陽(yáng)、大鳥(niǎo)六、月球、金星),通過(guò)與專業(yè)天文軟件 STARCALC的計(jì)算結(jié)果進(jìn)行比對(duì),衡量計(jì)算誤差的大小。望遠(yuǎn)鏡實(shí)際指向的測(cè)試采用現(xiàn)場(chǎng)測(cè)量的方法。使用的主要測(cè)試工具為計(jì)算機(jī)、量角器等,測(cè)試數(shù)據(jù)如表1所示。
從比較結(jié)果可以看出,由本系統(tǒng)的天體視位置計(jì)算算法得出的方位角平均誤差為0.261°,高度角平均誤差為0.155°,小于系統(tǒng)使用望遠(yuǎn)鏡(物鏡焦距360 mm,目鏡焦距20 mm)視角6.35°,滿足系統(tǒng)觀測(cè)要求。
圖4給出北京時(shí)間2008年6月27日20:22:49,在福州大學(xué)城(東經(jīng)119.29°,北緯26.08°)對(duì)月球的觀測(cè)圖像;圖5給出北京時(shí)間2008年6月22日3:47:49,在福州大學(xué)城(東經(jīng)119.29°,北緯26.08°)對(duì)金星的觀測(cè)圖像。
6 結(jié) 語(yǔ)
經(jīng)測(cè)試,系統(tǒng)工作正常,性能表現(xiàn)良好,達(dá)到了原設(shè)計(jì)目標(biāo)。但是因?yàn)闄C(jī)械系統(tǒng)精度較差,選用的天文望遠(yuǎn)鏡受價(jià)格約束,使本系統(tǒng)的總體表現(xiàn)受到一定影響。本系統(tǒng)稍加改動(dòng),亦可用于遠(yuǎn)距離視頻監(jiān)控、人造衛(wèi)星接收、天線指向控制、太陽(yáng)能電池板指向控制等領(lǐng)域。