王斌 高建軍 張猛
(北京空間飛行器總體設(shè)計(jì)部,北京 100094)
傳統(tǒng)的星載計(jì)算機(jī)軟件系統(tǒng)通常嚴(yán)格根據(jù)任務(wù)的需要進(jìn)行設(shè)計(jì),當(dāng)任務(wù)的軟件需求或者硬件拓?fù)浣Y(jié)構(gòu)、通信接口發(fā)生變化時(shí),軟件系統(tǒng)需要進(jìn)行大量的修改。軟件設(shè)計(jì)中重復(fù)開(kāi)發(fā)的現(xiàn)象造成開(kāi)發(fā)周期長(zhǎng)、測(cè)試周期長(zhǎng)、人力和財(cái)力耗費(fèi)嚴(yán)重。研究新型的星載軟件體系結(jié)構(gòu),建立統(tǒng)一的、通用化的星載軟件系統(tǒng)接口,對(duì)于實(shí)現(xiàn)星載計(jì)算機(jī)系統(tǒng)“低成本、快交付、高質(zhì)量、多用途”的發(fā)展要求具有重要意義[1]。
空間數(shù)據(jù)系統(tǒng)咨詢(xún)委員會(huì)(CCSDS)的指令與數(shù)據(jù)獲取業(yè)務(wù)(CDAS)對(duì)星載軟件的通用化設(shè)計(jì)具有良好的指導(dǎo)作用。指令與數(shù)據(jù)獲取業(yè)務(wù)是CCSDS航天器在軌接口業(yè)務(wù)(SOIS)[2]的重要組成部分。CDAS業(yè)務(wù)為星載軟件的指令發(fā)送與數(shù)據(jù)獲取提供了通用的服務(wù),從而使得上層應(yīng)用進(jìn)行指令發(fā)送和數(shù)據(jù)獲取操作時(shí)與底層的拓?fù)浣Y(jié)構(gòu)和通信接口隔離。CDAS業(yè)務(wù)由3 個(gè)子業(yè)務(wù)組成:設(shè)備訪問(wèn)業(yè)務(wù)[3]、設(shè)備數(shù)據(jù)池業(yè)務(wù)[4]和設(shè)備虛擬化業(yè)務(wù)[5]。除CCSDS外,歐洲航天局也提出了基于服務(wù)請(qǐng)求和服務(wù)報(bào)告的接口標(biāo)準(zhǔn)化包應(yīng)用標(biāo)準(zhǔn)(Packet Utilisation Standard,PUS)[6],以實(shí)現(xiàn)航天器生產(chǎn)、測(cè)試和在軌飛行過(guò)程中的監(jiān)視和控制。美國(guó)空軍研究實(shí)驗(yàn)室(AFRL)開(kāi)發(fā)了基于中間件軟件系統(tǒng)的衛(wèi)星數(shù)據(jù)模型(SDM)系統(tǒng)[7],該系統(tǒng)提供自我配置和自我發(fā)現(xiàn)能力,有助于在衛(wèi)星網(wǎng)絡(luò)中快速綜合硬件和軟件構(gòu)件。
空間機(jī)械臂是深入開(kāi)展航天活動(dòng)必不可少的工具,是機(jī)、電、熱、控一體化的高集成度的空間機(jī)電系統(tǒng)。它在空間站系統(tǒng)中承擔(dān)著艙段捕獲與轉(zhuǎn)移、空間設(shè)備安裝與維修、輔助航天員作業(yè)等功能[8]。中央控制器是空間機(jī)械臂控制的核心,它控制機(jī)械臂依據(jù)自主路徑規(guī)劃、避障算法或者地面注入的運(yùn)動(dòng)規(guī)劃,實(shí)現(xiàn)指定運(yùn)動(dòng)[9]。在空間機(jī)械臂研發(fā)的初期,設(shè)計(jì)良好的軟件構(gòu)架,能夠有效減少硬件拓?fù)浣Y(jié)構(gòu)改變對(duì)軟件造成的影響,提高軟件的可移植性和健壯性,從而,對(duì)提高軟件質(zhì)量、縮短研制周期產(chǎn)生重要的影響。
本文首先對(duì)某空間機(jī)械臂的總線(xiàn)拓?fù)浣Y(jié)構(gòu)以及指令與數(shù)據(jù)特性進(jìn)行分析,然后,研究CDAS模型的構(gòu)架以及各組成部分,結(jié)合設(shè)備虛擬化業(yè)務(wù)采用面向?qū)ο蟮姆椒ㄟM(jìn)行設(shè)備抽象,對(duì)設(shè)備數(shù)據(jù)池業(yè)務(wù)設(shè)計(jì)時(shí)的遙測(cè)數(shù)據(jù)更新、上層業(yè)務(wù)數(shù)據(jù)獲取、數(shù)據(jù)有效性等重要問(wèn)題進(jìn)行論述。最后,建立了基于CDAS模型的機(jī)械臂數(shù)據(jù)管理軟件構(gòu)架。
某空間機(jī)械臂采用多總線(xiàn)分布式拓?fù)浣Y(jié)構(gòu),如圖1所示。機(jī)械臂的內(nèi)部總線(xiàn)通信采用CAN 總線(xiàn)和RS422總線(xiàn),通過(guò)內(nèi)部總線(xiàn)對(duì)空間機(jī)械臂的關(guān)節(jié)運(yùn)動(dòng)控制器、末端運(yùn)動(dòng)控制器、關(guān)節(jié)熱控控制器、末端熱控控制器、相機(jī)控制器、相機(jī)熱控控制器、供配電控制器等設(shè)備進(jìn)行控制??臻g機(jī)械臂通過(guò)1553B總線(xiàn)和RS422總線(xiàn)分別向空間站數(shù)管分系統(tǒng)和空間站在軌操作分系統(tǒng)發(fā)送遙測(cè)數(shù)據(jù)及接收遙控注入指令。
圖1 某空間機(jī)械臂總線(xiàn)的拓?fù)浣Y(jié)構(gòu)Fig.1 Bus topology of a space manipulator
基于上述拓?fù)浣Y(jié)構(gòu)和空間機(jī)械臂自身業(yè)務(wù)特點(diǎn),某空間機(jī)械臂中央控制器數(shù)據(jù)管理軟件具有如下特性。
(1)通信總線(xiàn)類(lèi)型多,接口數(shù)量多。通信總線(xiàn)包括1553B總線(xiàn)、CAN 總線(xiàn)和RS422 總線(xiàn)。通信接口數(shù)量多,其中,僅CAN 總線(xiàn)設(shè)備的數(shù)量就達(dá)60余個(gè)(含主份及備份設(shè)備)。
(2)遙測(cè)數(shù)據(jù)采集周期呈多樣性。與路徑規(guī)劃相關(guān)的相機(jī)控制器遙測(cè)的更新周期為100ms;中央控制器自身遙測(cè)狀態(tài),關(guān)節(jié)控制器運(yùn)動(dòng)狀態(tài)(關(guān)節(jié)角度、關(guān)節(jié)速度、關(guān)節(jié)電機(jī)電流)等信息的更新周期為500ms;熱控總線(xiàn)遙測(cè)和其他運(yùn)控總線(xiàn)遙測(cè)的更新周期為2000ms。
(3)多種上層應(yīng)用均需要使用從總線(xiàn)獲取的數(shù)據(jù)。遙測(cè)相關(guān)業(yè)務(wù)需要周期性的獲取遙測(cè)數(shù)據(jù)并傳輸至空間站;路徑規(guī)劃相關(guān)業(yè)務(wù)需要在規(guī)劃開(kāi)始時(shí)獲取初始關(guān)節(jié)角,在與相機(jī)相關(guān)的路徑規(guī)劃模式中,還需實(shí)時(shí)地由相機(jī)控制器獲取目標(biāo)位姿參數(shù);而健康管理相關(guān)業(yè)務(wù)需要獲取空間機(jī)械臂的運(yùn)行狀態(tài)遙測(cè),如電機(jī)電流、各種傳感器狀態(tài)等信息。
(4)多種上層應(yīng)用均需要向總線(xiàn)發(fā)送控制指令。遙測(cè)相關(guān)業(yè)務(wù)需要周期性的發(fā)送遙測(cè)數(shù)據(jù)采集指令;在執(zhí)行路徑規(guī)劃時(shí),路徑規(guī)劃相關(guān)業(yè)務(wù)需要實(shí)時(shí)地向總線(xiàn)發(fā)送關(guān)節(jié)運(yùn)動(dòng)控制指令;遙控注入業(yè)務(wù)在接收到總線(xiàn)轉(zhuǎn)發(fā)數(shù)據(jù)時(shí),需要向總線(xiàn)進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā);健康管理相關(guān)業(yè)務(wù)在監(jiān)測(cè)到空間機(jī)械臂狀態(tài)異常時(shí),需要實(shí)時(shí)向各個(gè)關(guān)節(jié)發(fā)送緊急停止指令等。
基于上述特點(diǎn),空間機(jī)械臂數(shù)據(jù)管理軟件設(shè)計(jì)時(shí)采用的思路如下:
(1)采用面向?qū)ο蟮乃枷雽⒌讓釉O(shè)備進(jìn)行抽象。將底層設(shè)備抽象為一個(gè)個(gè)的對(duì)象(即虛擬設(shè)備),對(duì)設(shè)備的控制指令抽象為對(duì)設(shè)備的操作方法。
(2)隔離上層應(yīng)用。將上層的指令發(fā)送和數(shù)據(jù)獲取接口與底層通信接口隔離,并將所有的周期性數(shù)據(jù)獲取操作由專(zhuān)用業(yè)務(wù)完成。
(3)設(shè)計(jì)統(tǒng)一的底層驅(qū)動(dòng)接口。通過(guò)統(tǒng)一的設(shè)備讀、寫(xiě)方法對(duì)總線(xiàn)的訪問(wèn)提供硬件無(wú)關(guān)的接口機(jī)制,以適應(yīng)多種類(lèi)型總線(xiàn)以及后續(xù)硬件配置的變化。
CCSDS指令與數(shù)據(jù)獲取業(yè)務(wù)(CDAS)提供了高效的訪問(wèn)星載設(shè)備的方法。CDAS由3個(gè)子業(yè)務(wù)組成:設(shè)備虛擬化業(yè)務(wù)(DVS)、設(shè)備數(shù)據(jù)池業(yè)務(wù)(DDPS)和設(shè)備訪問(wèn)業(yè)務(wù)(DAS),CDAS 模型的構(gòu)架如圖2所示。
圖2 指令與數(shù)據(jù)獲取業(yè)務(wù)模型構(gòu)架Fig.2 Frame of command and data acquisition services
1)設(shè)備虛擬化業(yè)務(wù)
設(shè)備虛擬化業(yè)務(wù)用于提供標(biāo)準(zhǔn)的設(shè)備驅(qū)動(dòng)。同時(shí),設(shè)備虛擬化業(yè)務(wù)向其用戶(hù)提供了設(shè)備邏輯標(biāo)識(shí),用戶(hù)通過(guò)設(shè)備邏輯標(biāo)識(shí)來(lái)訪問(wèn)物理設(shè)備,該業(yè)務(wù)負(fù)責(zé)維護(hù)邏輯設(shè)備與物理設(shè)備的對(duì)應(yīng)關(guān)系,提供標(biāo)準(zhǔn)化的設(shè)備訪問(wèn)接口,業(yè)務(wù)用戶(hù)無(wú)需關(guān)心物理設(shè)備的訪問(wèn)細(xì)節(jié)。
2)設(shè)備數(shù)據(jù)池業(yè)務(wù)
設(shè)備數(shù)據(jù)池業(yè)務(wù)負(fù)責(zé)維護(hù)所有設(shè)備的狀態(tài)數(shù)據(jù)信息。多種上層應(yīng)用均需要使用底層業(yè)務(wù)獲取的數(shù)據(jù)。由每個(gè)應(yīng)用自行獲取數(shù)據(jù),會(huì)造成數(shù)據(jù)的重復(fù)獲取,也會(huì)影響總線(xiàn)通信的實(shí)時(shí)性。使用設(shè)備數(shù)據(jù)池業(yè)務(wù)對(duì)外部設(shè)備的狀態(tài)數(shù)據(jù)進(jìn)行統(tǒng)一維護(hù)和更新,能夠很好地解決此問(wèn)題。該業(yè)務(wù)能夠根據(jù)“遙測(cè)采集配置表”,周期性地從外部設(shè)備獲取數(shù)據(jù),并將其存放在數(shù)據(jù)緩存中。各個(gè)上層應(yīng)用欲獲取數(shù)據(jù)時(shí),不需要了解外部設(shè)備的物理位置、通信接口,就能夠從數(shù)據(jù)池中獲取數(shù)據(jù)。此業(yè)務(wù)同樣能夠降低硬件拓?fù)浣Y(jié)構(gòu)變化產(chǎn)生的影響。
3)設(shè)備訪問(wèn)業(yè)務(wù)
設(shè)備訪問(wèn)業(yè)務(wù)提供了一個(gè)用于軟件和硬件之間操作的標(biāo)準(zhǔn)接口。該業(yè)務(wù)的基本思想是軟件可以在不關(guān)心具體設(shè)備位置,以及不了解設(shè)備的電氣接口等詳細(xì)信息的情況下對(duì)設(shè)備進(jìn)行訪問(wèn)。接口標(biāo)準(zhǔn)化可以簡(jiǎn)化星載軟件開(kāi)發(fā),適應(yīng)星載硬件設(shè)計(jì)變化,增加軟件的潛在重用能力。
設(shè)備訪問(wèn)業(yè)務(wù)相當(dāng)于硬件設(shè)備驅(qū)動(dòng),提供基本的讀、寫(xiě)功能,實(shí)現(xiàn)硬件隔離。
在空間機(jī)械臂數(shù)據(jù)管理軟件的設(shè)備虛擬化業(yè)務(wù)層設(shè)計(jì)中,提出了通用設(shè)備的數(shù)據(jù)結(jié)構(gòu),來(lái)維護(hù)邏輯設(shè)備與物理設(shè)備的對(duì)應(yīng)關(guān)系,如表1 所示。在表1中,由設(shè)備類(lèi)型、設(shè)備子類(lèi)型和設(shè)備編號(hào)構(gòu)成了一個(gè)設(shè)備的唯一標(biāo)識(shí),即CDAS 模型中的設(shè)備邏輯標(biāo)識(shí)。通用設(shè)備預(yù)留了設(shè)備基本操作接口,如主備切換、設(shè)備復(fù)位。在系統(tǒng)初始化時(shí),對(duì)這些接口進(jìn)行設(shè)置,使得上層應(yīng)用能夠在無(wú)需了解外部設(shè)備信息的情況下,通過(guò)設(shè)備邏輯標(biāo)識(shí)來(lái)訪問(wèn)物理設(shè)備。
表1 通用設(shè)備數(shù)據(jù)結(jié)構(gòu)Table 1 Data structure of general device
其他虛擬設(shè)備為通用設(shè)備數(shù)據(jù)結(jié)構(gòu)所派生,除具有通用設(shè)備所有屬性外,還具有專(zhuān)用功能。下面以運(yùn)動(dòng)控制器為例,介紹專(zhuān)用虛擬設(shè)備數(shù)據(jù)結(jié)構(gòu)的設(shè)計(jì)。運(yùn)動(dòng)控制器數(shù)據(jù)結(jié)構(gòu)如表2所示。
表2 運(yùn)動(dòng)控制器數(shù)據(jù)結(jié)構(gòu)Table 2 Data structure of motion controller
設(shè)備虛擬化業(yè)務(wù)層的一項(xiàng)主要功能,是將實(shí)際物理設(shè)備的訪問(wèn)操作進(jìn)行抽象。運(yùn)動(dòng)控制器數(shù)據(jù)結(jié)構(gòu)具有通用設(shè)備的所有屬性和操作。同時(shí),運(yùn)動(dòng)控制器數(shù)據(jù)結(jié)構(gòu)還具有自身的操作方法,包括獲取關(guān)節(jié)控制器狀態(tài)、獲取關(guān)節(jié)角度、獲取關(guān)節(jié)角速度,這些操作方法通過(guò)函數(shù)指針的方式實(shí)現(xiàn)。
在空間機(jī)械臂數(shù)據(jù)管理軟件中,虛擬設(shè)備通過(guò)設(shè)備數(shù)據(jù)池獲取遙測(cè)數(shù)據(jù),實(shí)現(xiàn)了上層應(yīng)用與設(shè)備數(shù)據(jù)訪問(wèn)的隔離。當(dāng)軟件需求或者硬件配置發(fā)生變化時(shí),設(shè)備數(shù)據(jù)池中存儲(chǔ)數(shù)據(jù)的起始位置和數(shù)據(jù)長(zhǎng)度等信息會(huì)發(fā)生變化。此時(shí),僅需要重寫(xiě)虛擬設(shè)備的相關(guān)操作方法就能夠適應(yīng)這些變化,而不需修改所有相關(guān)的上層應(yīng)用,從而有效提高軟件的可移植性和可靠性。
在空間機(jī)械臂數(shù)據(jù)管理軟件中,對(duì)設(shè)備數(shù)據(jù)池業(yè)務(wù)的設(shè)計(jì)主要涉及3個(gè)方面的內(nèi)容:
1)通過(guò)遙測(cè)采集配置表周期性更新設(shè)備數(shù)據(jù)池的數(shù)據(jù)
設(shè)備數(shù)據(jù)池業(yè)務(wù)根據(jù)遙測(cè)采集配置表周期性的向指定的設(shè)備發(fā)送遙測(cè)數(shù)據(jù)采集指令。遙測(cè)采集配置表由若干表項(xiàng)構(gòu)成,如表3所示。
表3 遙測(cè)采集配置表的表項(xiàng)Table 3 Configuration table of telemetry acquisition
遙測(cè)采集配置表的表項(xiàng)與一條遙測(cè)采集指令相對(duì)應(yīng)。表項(xiàng)的內(nèi)容包括:遙測(cè)采集指令、遙測(cè)采集周期、采集設(shè)備數(shù)量、虛擬設(shè)備結(jié)構(gòu)、遙測(cè)回傳數(shù)據(jù)的存放位置和長(zhǎng)度。
遙測(cè)采集周期亦即遙測(cè)數(shù)據(jù)的更新周期,不同設(shè)備的遙測(cè)采集指令對(duì)應(yīng)數(shù)據(jù)池的更新周期相互獨(dú)立。如:相機(jī)控制器的遙測(cè)數(shù)據(jù)采集指令CA 的更新周期為100 ms,CB 更新周期為500 ms,CC、CD更新周期為2000ms。
設(shè)備數(shù)量是指接收該條遙測(cè)采集指令的設(shè)備數(shù)目。設(shè)備數(shù)據(jù)池業(yè)務(wù)根據(jù)遙測(cè)采集配置表向所有具有該種遙測(cè)數(shù)據(jù)的設(shè)備發(fā)送采集指令,并將收到的回傳數(shù)據(jù)放置于不同設(shè)備數(shù)據(jù)池的相應(yīng)位置。
虛擬設(shè)備指針的主要用途是:①確定設(shè)備類(lèi)型、子類(lèi)型,以確定發(fā)送該條遙測(cè)采集指令使用的方式;②確定設(shè)備邏輯標(biāo)識(shí),以通過(guò)設(shè)備訪問(wèn)業(yè)務(wù)獲取遙測(cè)采集指令發(fā)送的目的地址;③根據(jù)虛擬設(shè)備指針?biāo)饕龜?shù)據(jù)池。
2)上層業(yè)務(wù)獲取設(shè)備數(shù)據(jù)池中存儲(chǔ)的數(shù)據(jù)
在空間機(jī)械臂數(shù)據(jù)管理軟件以及其他類(lèi)似的星載軟件中,上層業(yè)務(wù)中的遙測(cè)參數(shù)匯集與下傳業(yè)務(wù)涉及大量周期性的數(shù)據(jù)拷貝操作。如果采用由設(shè)備虛擬化業(yè)務(wù)中函數(shù)接口的方式獲取數(shù)據(jù),將導(dǎo)致函數(shù)接口數(shù)量大量增加,同時(shí)也增加數(shù)據(jù)處理的時(shí)間。由遙測(cè)參數(shù)匯集與下傳業(yè)務(wù)直接從數(shù)據(jù)池中獲取數(shù)據(jù)能夠提高軟件效率。但是,本文建議為了提高軟件的可移植性,除了遙測(cè)參數(shù)匯集與下傳業(yè)務(wù)(該業(yè)務(wù)直接針對(duì)設(shè)備數(shù)據(jù)池來(lái)設(shè)計(jì)),其他上層業(yè)務(wù)不直接對(duì)設(shè)備數(shù)據(jù)池進(jìn)行訪問(wèn)。
遙測(cè)參數(shù)匯集與下傳業(yè)務(wù),將同種類(lèi)型設(shè)備中相同采樣周期的數(shù)據(jù)組織成一個(gè)數(shù)據(jù)包下傳,如圖3所示。
圖3 空間機(jī)械臂數(shù)據(jù)管理軟件的設(shè)備數(shù)據(jù)池Fig.3 Device data pool in the data management software of the space manipulator
3)設(shè)備數(shù)據(jù)池中數(shù)據(jù)的有效性問(wèn)題
設(shè)備數(shù)據(jù)池業(yè)務(wù)將上層業(yè)務(wù)與底層設(shè)備訪問(wèn)隔離,在提高軟件效率、增強(qiáng)可移植性的同時(shí),也帶來(lái)了設(shè)備數(shù)據(jù)池中數(shù)據(jù)的有效性問(wèn)題。在空間機(jī)械臂數(shù)據(jù)管理軟件中采用“數(shù)據(jù)有效性標(biāo)志數(shù)組”管理所有設(shè)備數(shù)據(jù)池中數(shù)據(jù)的有效性。
具體方法是:“數(shù)據(jù)有效性標(biāo)志數(shù)組”中的每一個(gè)數(shù)據(jù)與一個(gè)設(shè)備的某條遙測(cè)采集指令的回傳數(shù)據(jù)塊相對(duì)應(yīng)。當(dāng)遙測(cè)采集指令回傳數(shù)據(jù)錯(cuò)誤或者發(fā)生超時(shí),設(shè)備數(shù)據(jù)池業(yè)務(wù)將該標(biāo)志置為無(wú)效。上層應(yīng)用或者設(shè)備虛擬化業(yè)務(wù)在使用設(shè)備數(shù)據(jù)池中的數(shù)據(jù)時(shí),需要先判斷數(shù)據(jù)有效性標(biāo)志。
空間機(jī)械臂數(shù)據(jù)管理軟件指的是系統(tǒng)中央控制器的軟件,它是由三層組成(如圖4所示)。頂層為應(yīng)用程序,主要包括遙測(cè)參數(shù)匯集與下傳業(yè)務(wù)、遙控注入接收與處理業(yè)務(wù)、路徑規(guī)劃算法管理業(yè)務(wù)和健康管理業(yè)務(wù);中間層為指令與數(shù)據(jù)獲取業(yè)務(wù);底層為硬件通信接口相關(guān)業(yè)務(wù)。
設(shè)備訪問(wèn)業(yè)務(wù)為其他CDAS 提供了硬件通信訪問(wèn)接口,統(tǒng)一地接收、發(fā)送總線(xiàn)數(shù)據(jù)(數(shù)據(jù)流①),設(shè)備數(shù)據(jù)池業(yè)務(wù)和設(shè)備虛擬化業(yè)務(wù)分別通過(guò)設(shè)備訪問(wèn)業(yè)務(wù)發(fā)送遙測(cè)采集指令和控制指令(數(shù)據(jù)流②、③),設(shè)備數(shù)據(jù)池業(yè)務(wù)通過(guò)設(shè)備訪問(wèn)業(yè)務(wù)獲取遙測(cè)數(shù)據(jù)(數(shù)據(jù)流②),設(shè)備虛擬化業(yè)務(wù)僅從設(shè)備數(shù)據(jù)池業(yè)務(wù)處獲取遙測(cè)數(shù)據(jù)(數(shù)據(jù)流⑤)。
在應(yīng)用程序中,遙測(cè)參數(shù)匯集與下傳業(yè)務(wù)與設(shè)備數(shù)據(jù)池業(yè)務(wù)和設(shè)備虛擬化業(yè)務(wù)進(jìn)行交互,通過(guò)設(shè)備數(shù)據(jù)池業(yè)務(wù)獲取速變遙測(cè)和緩變遙測(cè)數(shù)據(jù)(數(shù)據(jù)流④),進(jìn)行組織后通過(guò)設(shè)備虛擬化業(yè)務(wù)下傳(數(shù)據(jù)流⑥)。
遙控注入接收與處理業(yè)務(wù)只與設(shè)備虛擬化業(yè)務(wù)進(jìn)行交互,通過(guò)設(shè)備虛擬化業(yè)務(wù)獲取來(lái)自空間站的遙控注入數(shù)據(jù),并向機(jī)械臂內(nèi)部總線(xiàn)轉(zhuǎn)發(fā)指令數(shù)據(jù)(數(shù)據(jù)流⑦)。
路徑規(guī)劃算法管理業(yè)務(wù)通過(guò)設(shè)備虛擬化業(yè)務(wù)在路徑規(guī)劃開(kāi)始時(shí),從運(yùn)動(dòng)控制器數(shù)據(jù)結(jié)構(gòu)中獲取各個(gè)關(guān)節(jié)的初始關(guān)節(jié)角度以計(jì)算空間機(jī)械臂初始位姿,在與相機(jī)相關(guān)的路徑規(guī)劃模式中,實(shí)時(shí)地由相機(jī)控制器數(shù)據(jù)結(jié)構(gòu)處獲取目標(biāo)位姿參數(shù),并通過(guò)設(shè)備虛擬化業(yè)務(wù)實(shí)時(shí)發(fā)送關(guān)節(jié)控制器控制指令(數(shù)據(jù)流⑧)。健康管理業(yè)務(wù)通過(guò)設(shè)備虛擬化業(yè)務(wù)實(shí)時(shí)檢測(cè)整個(gè)空間機(jī)械臂的工作狀態(tài),并在確認(rèn)發(fā)生故障時(shí),通過(guò)該業(yè)務(wù)發(fā)送空間機(jī)械臂緊急停止指令(數(shù)據(jù)流⑨)。
圖4 空間機(jī)械臂數(shù)據(jù)管理軟件數(shù)據(jù)流圖Fig.4 Data flow graph in the data management software of the space manipulator
本文對(duì)CCSDS-CDAS模型的構(gòu)架以及各組成部分進(jìn)行了研究,結(jié)合設(shè)備虛擬化業(yè)務(wù)采用面向?qū)ο蟮姆椒▽?duì)某空間機(jī)械臂各設(shè)備進(jìn)行設(shè)備抽象,對(duì)CDAS模型中的基于設(shè)備數(shù)據(jù)池業(yè)務(wù)的遙測(cè)數(shù)據(jù)更新、上層業(yè)務(wù)數(shù)據(jù)獲取、數(shù)據(jù)有效性等重要問(wèn)題進(jìn)行了闡述,并提出了基于CDAS模型的機(jī)械臂數(shù)據(jù)管理軟件構(gòu)架。目前,該軟件構(gòu)架已成功應(yīng)用于某空間機(jī)械臂的研發(fā)過(guò)程,為空間機(jī)械臂的數(shù)據(jù)管理提供了良好的構(gòu)架支持,從而有效提高了軟件產(chǎn)品的質(zhì)量和可靠性。現(xiàn)階段,應(yīng)重點(diǎn)加強(qiáng)對(duì)以指令與數(shù)據(jù)獲取業(yè)務(wù)為代表的CCSDS航天器在軌接口業(yè)務(wù)的研究和應(yīng)用,以提高我國(guó)星載軟件的通用化設(shè)計(jì)水平。
(References)
[1]張?jiān)眩臻g機(jī)動(dòng)平臺(tái)自主管理系統(tǒng)體系結(jié)構(gòu)研究—SDM 系統(tǒng)的分析與標(biāo)準(zhǔn)服務(wù)的實(shí)現(xiàn)[D].長(zhǎng)沙:國(guó)防科技大學(xué),2007
Zhang Yuanzhao.Research on space maneuver vehicle autonomous management architecture-SDM analysis and realization of standard services[D].Changsha:National University of Defense Technology,2007(in Chinese)
[2]CCSDS.Spacecraft onboard interfaces services,CCSDS 850.0-G-1[S].Washington:CCSDS,2007
[3]CCSDS.Spacecraft onboard interfaces services-device access service,CCSDS 871.0-R-2.1[S].Washington:CCSDS,2010
[4]CCSDS.Spacecraft onboard interfaces services-device data pooling service,CCSDS 871.1-R-2.1[S].Washington:CCSDS,2010
[5]CCSDS.Spacecraft onboard interfaces services-device virtualisation service,CCSDS 871.2-R-0.1[S].Washington:CCSDS,2009
[6]European Cooperation for Space Standardization.Space engineering:Ground systems and operations-telemetry and telecommand packet utilization,ECSS-E-70-41A[S].Netherlands:European Cooperation for Space Standardization,2003
[7]Space Software Laboratory.The satellite data model[EB/OL].[2007-07-16].http://sdl.usu.edu/index.htm
[8]張曉東.空間柔性機(jī)械臂控制策略研究[D].北京:北京郵電大學(xué),2008
Zhang Xiaodong.Research on control strategy of flexible space manipulator[D].Beijing:Beijing University of Posts and Telecommunications,2008(in Chinese)
[9]于登云,孫京,馬興瑞.空間機(jī)械臂技術(shù)及發(fā)展建議[J].航天器工程,2007,16(4):1-8
Yu Dengyun,Sun Jing,Ma Xingrui.Suggestion on development of Chinese space manipulator technology[J].Spacecraft Engineering,2007,16(4):1-8(in Chinese)