(江蘇科技大學(xué)電子信息學(xué)院 鎮(zhèn)江 212003)
立方星雖然體積小,但是集成度高,其星載計(jì)算機(jī)系統(tǒng)同樣具備傳統(tǒng)衛(wèi)星的所有功能,該系統(tǒng)作為立方星的核心部件,主要完成在軌數(shù)據(jù)處理、衛(wèi)星測(cè)控以及星上控制等[1]。星載計(jì)算機(jī)以嵌入式處理器為基礎(chǔ),以軟件為主體,是一類以分布式、多進(jìn)程、可擴(kuò)展為特點(diǎn),并擁有自主導(dǎo)航、自我修復(fù)和集中管控等功能的綜合電子系統(tǒng)。相比于傳統(tǒng)大衛(wèi)星中各大子系統(tǒng)之間的分立架構(gòu),立方星的星載計(jì)算機(jī)體現(xiàn)了“集中管控”的思想,即計(jì)算機(jī)板提供計(jì)算控制單元、星上存儲(chǔ)單元、對(duì)外接口單元和必要外部電路,各個(gè)子系統(tǒng)通過(guò)星上總線或直連的方式接入星載計(jì)算機(jī)[2]。這種做法弱化了星上各子系統(tǒng)之間的界限,各子系統(tǒng)的采集、處理、監(jiān)視、控制等操作統(tǒng)一交由星載計(jì)算機(jī)進(jìn)行調(diào)度處理,子系統(tǒng)提供星務(wù)軟件控制所需的各種應(yīng)用程序接口函數(shù),它們的資源絕大多數(shù)甚至全部由星載計(jì)算機(jī)進(jìn)行分配,實(shí)現(xiàn)了整星資源、狀態(tài)、遙測(cè)和控制的統(tǒng)一管理和調(diào)度[3]。本文以STM32微控制器作為星載計(jì)算機(jī)進(jìn)行3U立方星的星務(wù)和姿態(tài)控制設(shè)計(jì)。第一部分分析并實(shí)現(xiàn)星務(wù)及姿態(tài)控制所需硬件模塊,主要有中心計(jì)算機(jī)模塊、磁強(qiáng)計(jì)模塊、磁力矩器模塊、動(dòng)量輪模塊、GPS模塊、天線模塊、測(cè)控收發(fā)機(jī)模塊,電源及配電模塊。第二部分完成3U立方星星務(wù)和姿態(tài)控制軟件設(shè)計(jì),基于STM32F4微控制器進(jìn)行軟件設(shè)計(jì),主要包括星務(wù)和姿控兩大部分,姿控部分采用封裝函數(shù)方式與星務(wù)部分共同構(gòu)成星務(wù)軟件,完成各個(gè)衛(wèi)星的各項(xiàng)任務(wù)和姿態(tài)穩(wěn)定控制。
總體方案的目的是對(duì)各分系統(tǒng)需完成的功能及實(shí)現(xiàn)方式進(jìn)行總體規(guī)劃,完成總體方案設(shè)計(jì)后,再以此為根據(jù)對(duì)各功能模塊進(jìn)行詳細(xì)設(shè)計(jì)。本文中3U立方星星務(wù)及姿態(tài)控制系統(tǒng)硬件部分采用模塊化解決方案,總體方案如圖1所示。
圖1 總體方案圖
主要組成部分功能:
1)星載計(jì)算機(jī)模塊:基于STM32F4微控制器,主要進(jìn)行衛(wèi)星任務(wù)處理及衛(wèi)星姿態(tài)控制。
2)GPS接收機(jī)模塊:GPS接收機(jī),提供星上時(shí)間,位置及速度,作為姿控輸入量。
3)三軸磁強(qiáng)計(jì)模塊:敏感在軌的地磁強(qiáng)度,根據(jù)磁場(chǎng)信息計(jì)算出衛(wèi)星姿態(tài)。
4)三軸磁力矩器模塊:作為姿控執(zhí)行器件進(jìn)行姿態(tài)調(diào)整。
5)偏執(zhí)動(dòng)量輪模塊:通過(guò)在俯仰軸負(fù)方向加裝偏置動(dòng)量輪,利用其陀螺定軸性穩(wěn)姿。
6)太陽(yáng)敏感器及陀螺模塊:分別提供對(duì)日角度和角速度,作為輔助定姿器件。
7)測(cè)控收發(fā)機(jī)模塊:為星地測(cè)控服務(wù)。
8)天線模塊:與測(cè)控收發(fā)機(jī)共同構(gòu)成測(cè)控模塊,為星務(wù)計(jì)算機(jī)和地面站提供測(cè)控支持。
9)電源及配電模塊:為各個(gè)模塊提供電能支持。
對(duì)于星務(wù)管理軟件的設(shè)計(jì),可以將整個(gè)星務(wù)任務(wù)分解為一些小的任務(wù),選擇基于FreeRTOS嵌入式實(shí)時(shí)操作系統(tǒng),作為一個(gè)輕量級(jí)的操作系統(tǒng),功能包括:任務(wù)管理、時(shí)間管理、信號(hào)量、消息隊(duì)列、內(nèi)存管理、記錄功能、軟件定時(shí)器等,內(nèi)核支持優(yōu)先級(jí)調(diào)度算法[4]。
立方星星務(wù)計(jì)算機(jī)不僅要滿足衛(wèi)星體積小、質(zhì)量輕的特點(diǎn),還需要滿足在低功耗的情況下提供高性能的處理能力、長(zhǎng)壽命與高可靠性的指標(biāo),保證衛(wèi)星能夠順利的完成空間任務(wù)[5]。星載計(jì)算機(jī)選擇STM32F4作為微控制器,STM32F4是由ST(意法半導(dǎo)體)開發(fā)的一種32位高性能微控制器,具有低功耗,超多外設(shè),實(shí)時(shí)性能優(yōu)異等優(yōu)點(diǎn)。星務(wù)及姿控的實(shí)現(xiàn)依靠星載計(jì)算機(jī)與一系列外圍模塊組成,因此應(yīng)首先設(shè)計(jì)此星載計(jì)算機(jī)模塊。
星載計(jì)算機(jī)模塊通過(guò)UART,IIC和SPI接口實(shí)現(xiàn)對(duì)其他模塊的通信和控制,同時(shí),板載的STM32的IO口部分用于直接進(jìn)行ADC采集,采集星上各部分電壓電流溫度等信息,另一部分用于控制各個(gè)模塊的供電繼電器開合。STM32F4采用外部8M晶振作為主時(shí)鐘晶振,內(nèi)部倍頻到60MHz。部分引腳原理圖如圖2所示。
圖2 STM32F4原理圖
部分ADC采集電路如圖3所示。星載計(jì)算機(jī)與其他模塊通過(guò)PC104接口相連,部分接口如圖4所示。
圖3 ADC采集電路
圖4 模塊間接口
鑒于立方星尺寸小,空間有限的特點(diǎn),因此在硬件設(shè)計(jì)時(shí)采用模塊化思維,主要的模塊包括星載計(jì)算機(jī)模塊、GPS模塊、三軸磁強(qiáng)計(jì)模塊、太敏及陀螺模塊、偏執(zhí)動(dòng)量輪模塊、三軸磁力矩器模塊、天線模塊、測(cè)控收發(fā)機(jī)模塊和電源配電模塊[6]。姿態(tài)執(zhí)行部件基于磁力矩器+俯仰偏置動(dòng)量輪的控制方式;姿態(tài)測(cè)量部件采用磁強(qiáng)計(jì)+模擬太陽(yáng)敏感器+陀螺方案;星上自主軌道確定采用星載GPS接收機(jī)數(shù)據(jù)推算兩行根數(shù);同時(shí),星上軌道數(shù)據(jù)可依靠地面站的周期注入[7]。由于篇幅有限,文章不再對(duì)姿控相關(guān)模塊硬件設(shè)計(jì)做詳細(xì)敘述。
本文提出了星載計(jì)算機(jī)的軟件系統(tǒng)設(shè)計(jì)方案,介紹了軟件的運(yùn)行模式和任務(wù)調(diào)度過(guò)程。星務(wù)軟件既包含衛(wèi)星各項(xiàng)任務(wù)的處理,同時(shí)也包含姿態(tài)控制的實(shí)現(xiàn)[8]。整個(gè)流程的簡(jiǎn)易流程如圖5所示。
衛(wèi)星執(zhí)行各個(gè)不同的任務(wù)需要星務(wù)計(jì)算機(jī)的調(diào)度,星務(wù)計(jì)算機(jī)軟件基于FreeRTOS操作系統(tǒng),利用該系統(tǒng)的多任務(wù)調(diào)度處理能力進(jìn)行星務(wù)任務(wù)管理,星務(wù)計(jì)算機(jī)軟件的調(diào)度周期定為2ms,通過(guò)每滴答定時(shí)器的時(shí)鐘片中斷調(diào)度,對(duì)于同等實(shí)時(shí)性要求的任務(wù),按照任務(wù)的重要性依次進(jìn)行調(diào)度,并按任務(wù)優(yōu)先級(jí)執(zhí)行任務(wù)[9]。
各個(gè)硬件模塊均由星載計(jì)算機(jī)的STM32微控制器進(jìn)行控制,由于模塊較多,下面只進(jìn)行個(gè)別主要模塊的驅(qū)動(dòng)層面軟件實(shí)現(xiàn)介紹。
1)GPS模塊與星載計(jì)算機(jī)模塊采用UART串口通信。GPS數(shù)據(jù)內(nèi)容解析部分代碼如下所示。
圖5 星務(wù)系統(tǒng)流程圖
2)三軸磁強(qiáng)計(jì)模塊與星務(wù)計(jì)算機(jī)采用SPI通信,磁強(qiáng)計(jì)故障檢測(cè)及切換部分代碼如下。
3)三軸磁力矩器模塊驅(qū)動(dòng)實(shí)現(xiàn)
4)偏執(zhí)動(dòng)量輪與星務(wù)計(jì)算機(jī)采用UART通信,轉(zhuǎn)速設(shè)置部分代碼如下。
星箭分離后,星載計(jì)算機(jī)完成加電,然后控制完成各項(xiàng)任務(wù)。
1)星務(wù)常態(tài)運(yùn)行流程如表1所示。
表1 星務(wù)運(yùn)行流程
其中的部分任務(wù)調(diào)度代碼如下。
2)遙控遙測(cè)任務(wù)
遙控任務(wù)是星載計(jì)算機(jī)處理地面站指令,根據(jù)指令進(jìn)行控制,部分實(shí)現(xiàn)代碼如下。
遙測(cè)任務(wù)主要包含衛(wèi)星狀態(tài)、運(yùn)行參數(shù)、軌道數(shù)據(jù)及各個(gè)傳感器等信息,部分實(shí)現(xiàn)代碼如下。
姿控的實(shí)現(xiàn)是通過(guò)星務(wù)計(jì)算機(jī)采集各個(gè)姿控采集模塊的數(shù)據(jù),根據(jù)采集數(shù)據(jù)進(jìn)行姿態(tài)計(jì)算,最后輸出控制量,轉(zhuǎn)化為PWM后控制磁力矩器調(diào)節(jié)衛(wèi)星姿態(tài)[10]。
姿態(tài)確定與控制各個(gè)階段控制模式如下。
1)角速率阻尼
星箭分離后,默認(rèn)進(jìn)入該模式,結(jié)合磁強(qiáng)計(jì)信息,采用三軸磁力矩器實(shí)現(xiàn)角速率阻尼,動(dòng)量輪維持中心角動(dòng)量矩(1000rpm)狀態(tài)。阻尼過(guò)程中接受地面站測(cè)控,并進(jìn)行軌道參數(shù)上注和校時(shí)工作,并擇機(jī)啟動(dòng)俯仰濾波器。此時(shí)磁強(qiáng)計(jì)、磁力矩器、動(dòng)量輪加電狀態(tài)維持不變,陀螺根據(jù)地面指令進(jìn)行遙控開關(guān)機(jī)。
2)姿態(tài)捕獲
衛(wèi)星角速率阻尼結(jié)束后,利用磁力距器、動(dòng)量輪和磁強(qiáng)計(jì),實(shí)現(xiàn)地球捕獲,初步建立對(duì)地指向。此時(shí)磁強(qiáng)計(jì)、磁力矩器、動(dòng)量輪加電狀態(tài)維持不變。動(dòng)量輪保持處于中心轉(zhuǎn)速狀態(tài),俯仰濾波器估計(jì)俯仰角與俯仰角速度,當(dāng)俯仰濾波器指示角度進(jìn)入俯仰主動(dòng)控制律門限后,磁力距器進(jìn)行俯仰方向的主動(dòng)控制,機(jī)動(dòng)到對(duì)地狀態(tài)后保持姿態(tài),此時(shí)完成了地球捕獲[11]。
3)三軸穩(wěn)定控制
姿態(tài)捕獲階段結(jié)束后進(jìn)入。利用動(dòng)量輪的角動(dòng)量矩實(shí)現(xiàn)衛(wèi)星的慣性定向,磁力矩器作為主動(dòng)控制部件,實(shí)現(xiàn)衛(wèi)星的章進(jìn)動(dòng)控制和俯仰姿態(tài)控制。此時(shí)磁強(qiáng)計(jì)、磁力矩器、動(dòng)量輪加電狀態(tài)維持不變,GPS接收機(jī)保持常開狀態(tài)。
4)強(qiáng)制進(jìn)入阻尼模式
當(dāng)動(dòng)量輪發(fā)生故障后,可關(guān)閉動(dòng)量輪并且讓衛(wèi)星進(jìn)入永久阻尼模式,接收到地面指令后,此時(shí)控制軟件利用保存的軌道六根數(shù)計(jì)算軌道參數(shù)。
部分姿控采集任務(wù)如下。
部分姿控計(jì)算如下。
對(duì)姿控部分進(jìn)行仿真,得到滾動(dòng)角,俯仰角,偏航角及三個(gè)角速率的仿真數(shù)據(jù)。
滾動(dòng)角速率和偏航角速率仿真如圖6所示。
圖6 滾動(dòng)角速率和偏航角速率仿真圖
因立方星電源容量有限,為減少電源損耗,設(shè)計(jì)動(dòng)量輪在星箭分離后起旋[12],動(dòng)量輪起旋加速會(huì)導(dǎo)致俯仰方向產(chǎn)生較大角速率,因此俯仰角速率調(diào)節(jié)較慢,仿真如圖7所示。
滾動(dòng)角,俯仰角,偏航角的仿真如圖8所示。
圖7 俯仰角速率仿真圖
圖8 姿態(tài)角仿真圖
仿真結(jié)果顯示,姿控能夠完成衛(wèi)星姿態(tài)的調(diào)整,另外姿控的PD參數(shù)也可以由地面站上注,實(shí)現(xiàn)在軌姿控參數(shù)的調(diào)整。
本文基于STM32微控制器對(duì)3U立方星進(jìn)行星務(wù)和姿控設(shè)計(jì),為立方星的星務(wù)及姿態(tài)控制提供了一種新的實(shí)現(xiàn)方式。文章先是對(duì)星務(wù)及姿控相關(guān)硬件模塊進(jìn)行了闡述,然后對(duì)星務(wù)軟件進(jìn)行設(shè)計(jì)描述,最后對(duì)姿態(tài)控制部分進(jìn)行仿真。經(jīng)過(guò)測(cè)試,星務(wù)軟件能夠長(zhǎng)期穩(wěn)定運(yùn)行,各任務(wù)之間調(diào)度安全可靠;姿態(tài)控制部分的仿真也表明姿態(tài)控制也能滿足任務(wù)需求。