基于XScale處理器的天線控制系統(tǒng)的設計
天線控制系統(tǒng)功能復雜、任務繁多,且各個任務之間需要進行信息交流,彼此聯(lián)系,互為因果。利用多任務機制對各個功能進行管理調(diào)度,保證了系統(tǒng)的實時性和可靠性。
對本系統(tǒng)而言,任務劃分實際上就是對天線控制系統(tǒng)的工作流程做一個分解,使其每一動作都對應在一個任務中實現(xiàn),由動作的執(zhí)行順序確定多任務中每一任務的優(yōu)先級。系統(tǒng)進入開機狀態(tài)后,通過選擇輸入衛(wèi)星參數(shù)(衛(wèi)星參數(shù)信息固化在程序中),系統(tǒng)開始初始化。通過串口提取GPS提供的有用信息,通過姿態(tài)解算計算出天線的初始對星角度,并在基準確定的基礎上進行角度修正,通過嵌入式控制系統(tǒng)驅(qū)動完成初始對星。在對星狀態(tài)完成之后,開始進行電平搜索,得到準確的天線指向并鎖定該位置,之后系統(tǒng)進入自動跟蹤狀態(tài),同時陀螺進入閉環(huán)工作狀態(tài)。
2.3 Windows CE移植
引導加載程序(Boot Loader)是在操作系統(tǒng)內(nèi)核運行之前運行的一段小程序。雖然在Boot Loader中并不嚴格規(guī)定如何獲得操作系統(tǒng)映像,但絕大多數(shù)Boot Loader都會從開發(fā)機下載映像到目標機,然后把映像放到內(nèi)存里執(zhí)行。在所有下載映像的Boot Loader中,通過以太網(wǎng)進行下載的Boot Loader占絕大多數(shù),稱為Etherent Boot Loader,簡稱EBoot。在本系統(tǒng)中,EBoot主要有以下功能:
1、初始化目標硬件設備,包括初始化內(nèi)存、中斷控制器、時鐘和MMU等;
2、控制啟動過程,提供簡單的菜單與用戶交互,讓用戶選擇啟動過程;
3、下載并執(zhí)行操作系統(tǒng)映像。
總體而言,EBoot的唯一目標就是加載并執(zhí)行操作系統(tǒng)映像。因此,Boot Loader必須在OS被下載前就先安裝在目標機上,并與Platform Builder交互。
在ARM/ XScale系統(tǒng)中,我們使用JTAG將Boot Loader程序燒寫到Flash存儲器中,待系統(tǒng)加電或重置時自動執(zhí)行。
2.4 軟件開發(fā)與調(diào)試
基于Windows CE設備的開發(fā)過程是由不斷修改、增加配置特征、構(gòu)建、下載、調(diào)試等組成的一個遞歸開發(fā)過程。每當在Platform Builder中添加或修改一個特征時,都必須重新構(gòu)建操作系統(tǒng)映像,并將它下載到目標設備硬件上進行執(zhí)行和調(diào)試。一旦完成操作系統(tǒng)配置,我們就可以利用Platform Builder提供的導出SDK工具,為應用程序開發(fā)者導出一個定制的SDK,應用程序?qū)С龅?SDK安裝到eMbedded Visual C++ 4.0后,就可以為特定的硬件平臺開發(fā)應用程序,并在特定硬件上進行調(diào)試和測試了。
在天線控制系統(tǒng)工作原理的基礎上,采用多線程、分時共享技術(shù),根據(jù)任務規(guī)劃流程建立多任務和用戶應用程序,具體劃分如下模塊:用戶界面線程、信號采集線程、數(shù)據(jù)處理線程、初始對準線程、動態(tài)跟蹤線程、狀態(tài)判斷線程、衛(wèi)星搜索線程、穩(wěn)定控制線程。相關(guān)算法集合在各個任務之中。
軟件移植主要包括Windows CE操作系統(tǒng)內(nèi)核代碼定制、裁剪,實現(xiàn)其核心代碼在XScale處理器上的移植,針對系統(tǒng)實際需求對Windows CE進行操作系統(tǒng)本身的功能擴展,并移植到硬件平臺,實現(xiàn)天線的每一步具體動作。主要實現(xiàn)“陀螺閉環(huán)穩(wěn)定+程序跟蹤+步進跟蹤”控制跟蹤方案的算法實現(xiàn)與優(yōu)化,并把用C++語言實現(xiàn)的控制程序移植到XScale處理器上,最后基于Windows CE建立完整實用的RTOS對天線控制系統(tǒng)進行控制。
3 結(jié)束語
基于Intel XScale PXA255處理器作為硬件設計、移植Windows CE操作系統(tǒng)并在天線控制系統(tǒng)整體方案的基礎上,開發(fā)了天線控制系統(tǒng)的多任務軟件系統(tǒng)。整個系統(tǒng)的模塊化設計,為日后的擴展、移植和維護工作提供了方便。同時表明,應用嵌入式實時操作系統(tǒng)Windows CE開發(fā)天線控制系統(tǒng)軟件能夠有效地降低軟件設計的復雜度,顯著提高軟件的可靠性和運行效率。該設計方案在實際中有很好的應用前景。
評論