茫宇宙自古是最令人類產生無限遐思的地方,宇宙的龐大至今仍然讓一般人難以想象。作為我們全部能量、給予我們全部生命基礎的太陽,相對于我們感性的理解能力而言已經是龐大無比,可是它同我們如今已經觀測到的宇宙相比又不過是滄海一粟。自古,腳下一望無際的大地,是人們感覺平坦、厚重、堅實又可靠的地方。宇宙科學就是一步一步地超越人們的這種踏實感的歷史,每一個新發現都伴隨著人們的驚奇和難以置信之感,幾乎每一次難題的解決,都會從相關證據中牽引出更富挑戰性的新難題。為獲得這些知識,人類經歷了幾個世紀的努力,每一個成就的取得都是繼續進步的階梯,每一個難題的發現又都是對智力的挑戰……宇宙科學的發展歷程既充滿著理性和邏輯的魅力,又為人類留下了無盡的想象空間。更多的人渴望探知宇宙的奧秘,然而星歷表厚重而不直觀,簡易星圖由于天體運動的因素必須在指定時間進行觀測;望遠鏡手工調整非常繁瑣;拍攝不便。
為了解決上述問題而開發本系統。它的主要特點如下:通過計算,在屏幕上顯示出當時當地星圖,觀測者無需攜帶天文資料,在屏幕上將觀測內容實時顯示出來,使觀測者無須忍受長時間單眼觀測的視覺疲勞,同時提高了觀測效果;可對觀測圖像進行實時處理;可非常方便地拍攝、保存觀測結果;可對結果進行一些圖像處理,增強可辨性,系統自動記錄觀測日志,方便整理觀測資料。
1 嵌入式開發平臺介紹
本系統采用深圳億道電子開發的一套基于IntelXScale PXA270處理器的Liod嵌入式開發平臺。Liod開發平臺得名手億道電子的理念“Leading is our du-ty”,是一套功能強大的嵌入式開發平臺,主頻高達520 MHz,支持Intel Wireless MMX及Step Speed技術,超低功耗,超高性價比。核心板(XSBase270-Core)+底板設計(XSBase270-DVK-Ⅱ),擴展更靈活,應用更豐富。同時具有完善的功能接口,具有完善的Win CE/Linux雙操作系統支持。本系統主要用到LCD、觸摸屏、全功能串口等。
2 系統硬件設計
移動天文觀測系統以Liod板為主控板,在此基礎上擴展了相關電路,制成一塊附屬板,整體硬件框圖如圖1所示。
在本系統中,XScale與附屬板通過串口相互通信,附屬板與GPS模塊、指南針模塊的通信也使用串口,因此需要對附屬板上的單片機串口進行復用,以實現所需功能。
使用CD4053模擬開關來實現串口復用功能,通過單片機的控制引腳切換不同的串口信號。
GPS采用了Ho1ux GR-85接收模塊,具有快速追蹤定位12顆衛星的能力,數據更新速率為1 Hz。GPS模塊用來得到當地經緯度及準確時間的信息。
數字指南針采用了周立功ZNJV2模塊,磁場測量范圍為50 A/m,機首方向顯示分辨率為2°,機首方向精度為3°,補償后精度可達到0.5°,數字指南針模塊用于安放望遠鏡時準確指向。
溫度傳感器采用DALLAS的DS18B20芯片,其分辨率為0.062 5℃,精度為0.5℃。溫度傳感器測量大氣溫度,用于計算大氣折射率。
動力機構采用廉價云臺機構,其內部為勻速交流同步電機,通過控制電機轉動時間長短控制其所轉角度。
3 天體視位置計算算法
地球上的觀測者至天體的空間距離。不同類型的天體距離遠近相差十分懸殊,測量的方法也各不相同。 ①太陽系內的天體是最近的一類天體,可用三角測量法測定月球和行星的周日地平視差;并根據天體力學理論進而求得太陽視差。也可用向月球或大行星發射無線電脈沖或向月球發射激光,然后接收從它們表面反射的回波,記錄電波往返時刻而直接推算天體距離。 ②對于太陽系外的較近天體,三角視差法只對離太陽 100 秒差距范圍以內的恒星適用。更遠的恒星三角視差太小,無法測定,要用其他方法間接測定其距離。但是這些方法顯然不能滿足應用的需要。這里實現的方法是將天體的運動簡化為數學模型,通過對數學模型中相對固定的參數進行運算,最終得出天體的位置,通過實驗比對驗證了這種方法的準確性和高效性。
星表就是通常所說的恒星坐標表,它由天體的視位置經過一系列的換算而得到星表歷元平位置,在星表中載有恒星的赤道平坐標,坐標的周年變化和恒星的白行等。
FK5是由德國海德堡天文所編制的近年來人們普遍使用的一種絕對星表。目前,這種由星表求解天體視位置的方法已被廣泛用于求解天文三角形中。
從FK5星表出發,經過與編制星表相反的步驟來求天體的視位置,通過對影響恒星視位置的各種因素,如大氣折射、視差、光行差、歲差、章動、自行等誤差的分析,給出計算恒星視位置的數學模型,其基本流程圖如圖3所示。
按照以上算法編寫出相關函數庫,主程序將相關變量如輸入觀測地點經緯度、欲觀測星體等數據即可計算出星體視位置。FK5星表以文件形式存放。
4 視頻數據采集及顯示
圖像數據的顯示可以通過直接寫屏來實現。Linux工作在保護模式下,用戶態進程是無法直接使用顯卡:BIOS里提供的中斷調用來實現直接寫屏,故Linux抽象出FrameBuffer。這個設備來供用戶態進程實現直接寫屏。 FrameBtlffer主要是根據VESA標準實現的,所以只能實現最簡單的功能。
直接寫屏的過程:
(1)打開一個FrameBuffer設備;
(2)通過調用mmap()把顯卡的物理內存空間映射到用戶空間;
(3)直接寫內存。
由于直接寫屏是直接對顯存進行修改,同QT對程序界面的刷新并不協調,因此有時會出現顯示上的瑕疵,為此使用另一種方法顯示圖像數據,即利用QT庫中的QImage類來實現。
以上論述了如何進行采集及顯示,但在實際的系統中存在多個任務,各個模塊之間需要相互配合,如果簡單地采用上述方法,由于視頻采集的速度較慢,將會造成阻塞,影響系統性能,因此使用線程技術。
在視頻設備初始化后開啟一個采集線程,此線程不斷采集新的視頻數據,采集完一幀數據會改寫狀態變量;顯示部分采用定時顯示,每隔一段時間判斷狀態變量是否為“已采集完畢”狀態,如果是則進行顯示。由于需要耗時等待的采集過程在線程中運行,通過Linux系統的自動調度,系統運行十分流暢。
5 觀測的結果
觀測結果包括:拍攝到的圖像、拍攝時所在地的經緯度、拍攝時間、大氣溫度及拍攝的星體名稱等。存儲時以文件的形式按時間存儲,形成觀測日志。
對天體視位置計算算法及望遠鏡實際指向進行了測試。天體視位置算法的測試是選擇有代表性的四個天體(太陽、大鳥六、月球、金星),通過與專業天文軟件 STARCALC的計算結果進行比對,衡量計算誤差的大小。望遠鏡實際指向的測試采用現場測量的方法。使用的主要測試工具為計算機、量角器等,測試數據如表1所示。
從比較結果可以看出,由本系統的天體視位置計算算法得出的方位角平均誤差為0.261°,高度角平均誤差為0.155°,小于系統使用望遠鏡(物鏡焦距360 mm,目鏡焦距20 mm)視角6.35°,滿足系統觀測要求。
圖4給出北京時間2008年6月27日20:22:49,在福州大學城(東經119.29°,北緯26.08°)對月球的觀測圖像;圖5給出北京時間2008年6月22日3:47:49,在福州大學城(東經119.29°,北緯26.08°)對金星的觀測圖像。
6 結 語
針對目前天文觀測系統的局限和不足,在基于Intel PXA270和Linux環境下設計了一套新的移動天文觀測系統。采用一種特殊的求天體視位置的算法,實現了天體的高精度定位。用戶可通過簡單的點擊操作使天文望遠鏡自動轉向欲觀測的星球,應用數字化視頻采集技術將觀測的對象顯示在屏幕上,并對圖像進行實時處理,增強了觀測效果。最后給出了實測數據,通過數據可以判斷該系統與其他系統相比具有精度高,誤差小,觀測效果好等優點。
-
處理器
+關注
關注
68文章
19165瀏覽量
229130 -
嵌入式
+關注
關注
5068文章
19019瀏覽量
303296 -
觸摸屏
+關注
關注
42文章
2290瀏覽量
115998
發布評論請先 登錄
相關推薦
評論