基于全球星實(shí)現(xiàn)無人機(jī)遠(yuǎn)程通信
掃描二維碼
隨時(shí)隨地手機(jī)看文章
無人飛行器(Unmanned Aerial Vehicle,UAV)可分為無人機(jī)、導(dǎo)彈和靶標(biāo)三大類。其中無人機(jī)已被廣泛應(yīng)用于諸如偵察、監(jiān)視、誘餌、電子戰(zhàn)、通信中繼、農(nóng)業(yè)勘測、氣象、交通、科學(xué)研究、民用導(dǎo)航、環(huán)境保護(hù)、自然災(zāi)害的監(jiān)視與救援等領(lǐng)域。與有人駕駛的飛機(jī)相比,無人機(jī)機(jī)動(dòng)性能好,過載能力強(qiáng),不存在飛行員傷亡;與偵察衛(wèi)星相比,無人機(jī)飛行高度低,活動(dòng)范圍可控,部署方便,造價(jià)低廉。目前,世界各國都在積極研制各種新型無人機(jī)。
新型無人機(jī)對(duì)通信設(shè)備性能有了更高的需求,在通信距離上已超出視距范圍,在通信帶寬上需要能夠傳輸圖像、視頻等綜合信息。這給無人機(jī)通信設(shè)備的研制提出了新的課題。根據(jù)研究表明,數(shù)字微波通信和衛(wèi)星通信可以滿足無人機(jī)與地面之間遠(yuǎn)程綜合信息傳輸?shù)男枨蟆?br />
l 全球星系統(tǒng)性能分析
全球星系統(tǒng)是由美國勞拉公司(Loral Corpara-tion)和高通公司(Qualcomm)倡導(dǎo)發(fā)起的衛(wèi)星移動(dòng)通信系統(tǒng)。全球星系統(tǒng)主要由三部分組成:空間段、地面段、用戶段。
空間段由48顆衛(wèi)星加8顆備份星組成。軌道高度
約為1 414 km,傳輸時(shí)延和處理時(shí)延小于300 ms,因此,用戶感覺不到時(shí)延。整個(gè)系統(tǒng)的覆蓋區(qū)為南北緯70°以內(nèi)的地區(qū)。各個(gè)服務(wù)區(qū)總是被2~4顆衛(wèi)星覆蓋,用戶可隨時(shí)接人該系統(tǒng)。話音傳輸速率有2.4/4.8/9.6 Kb/s三種,數(shù)據(jù)傳輸速率為7.2 Kb/s(持續(xù)流量)。衛(wèi)星采用碼分多址方式(CDMA),碼元帶寬為1.23 MHz。衛(wèi)星定位精度最高可達(dá)300 m。
地面段包括全球星控制中心和網(wǎng)絡(luò)關(guān)口站(簡稱:網(wǎng)關(guān))。每個(gè)網(wǎng)關(guān)可同時(shí)與3顆衛(wèi)星通信,把來自不同衛(wèi)星或同一衛(wèi)星的不同數(shù)據(jù)流信號(hào)組合在一起,以提供無縫隙的覆蓋。每一個(gè)用戶終端可通過一顆或幾顆衛(wèi)星和網(wǎng)關(guān)實(shí)現(xiàn)與全球任何地區(qū)的通信。在我國境內(nèi)設(shè)有一個(gè)網(wǎng)關(guān)。
用戶段指的是使用全球星系統(tǒng)業(yè)務(wù)的用戶終端設(shè)備。用戶終端設(shè)備包括手持式、車載式和固定式。用戶終端可提供話音、數(shù)據(jù)、短信息等業(yè)務(wù)。用戶終端在頭頂有一顆衛(wèi)星覆蓋時(shí)就可以使用,而一般在用戶的視線范圍內(nèi)都是有2~4顆衛(wèi)星。用戶終端可同時(shí)和3顆衛(wèi)星進(jìn)行通信,并且通過使用分離多徑接收器可以把這些信號(hào)合成一個(gè)單一的、沒有天電干擾的信號(hào)。用戶終端還可以按需要改變功率電平來補(bǔ)償遮擋和干擾的影響,平均功率輸出范圍在50~300 mW之間。衛(wèi)星不斷移進(jìn)、移出用戶終端的視線范圍,也不斷無縫隙地淡進(jìn)和淡出呼叫過程,這種軟切換減少了呼叫受干擾的風(fēng)險(xiǎn)。以上這些先進(jìn)的數(shù)字技術(shù)使全球星系統(tǒng)能夠在各種地形環(huán)境中提供業(yè)務(wù),使信號(hào)受到建筑、地形和其他自然景物遮擋的可能性更小。
針對(duì)無人機(jī)的特點(diǎn),利用全球星的獨(dú)特通信功能,可以設(shè)計(jì)一個(gè)基于全球星的無人機(jī)數(shù)字通信系統(tǒng),用以解決新型無人機(jī)遠(yuǎn)程綜合信息通信問題。
2 系統(tǒng)結(jié)構(gòu)設(shè)計(jì)
本系統(tǒng)由機(jī)載通信設(shè)備、地面通信設(shè)備、地面監(jiān)控設(shè)備、全球星衛(wèi)星、網(wǎng)關(guān)等組成,如圖1所示。
2.1 全球星系統(tǒng)
全球星衛(wèi)星和網(wǎng)關(guān)作為本系統(tǒng)的衛(wèi)星通信鏈路,負(fù)責(zé)轉(zhuǎn)發(fā)系統(tǒng)各種通信信息。
2.2 機(jī)載通信設(shè)備
機(jī)載通信設(shè)備安裝于無人機(jī)上。機(jī)載設(shè)備將需要傳輸?shù)臄?shù)字信息(語音、圖像、數(shù)據(jù)流、控制命令等)通過USB口或RS 422口傳送給機(jī)載通信設(shè)備,機(jī)載通信設(shè)備將信息打包發(fā)送至全球星衛(wèi)星,由全球星衛(wèi)星轉(zhuǎn)發(fā)到地面通信設(shè)備。
機(jī)載通信設(shè)備主要由ARM與GSPl620等部件組成,如圖2所示。
GSPl620為全球星數(shù)傳通信模塊,通過RS 232口與ARM連接,完成通信信息的發(fā)送與接收。
ARM為工業(yè)控制單片機(jī),通過RS 422口或USB口與機(jī)載設(shè)備連接。ARM中安裝有通信軟件,完成系統(tǒng)初始化、數(shù)據(jù)通信、故障診斷等功能。
機(jī)載數(shù)傳設(shè)備的工作流程如下:
ARM啟動(dòng)后,通過RS 232口發(fā)送AT命令對(duì)GSPl620進(jìn)行初始化和撥號(hào)連接,同時(shí)監(jiān)測RS 422口或USB口,實(shí)時(shí)獲取并存儲(chǔ)機(jī)載設(shè)備發(fā)送的通信數(shù)據(jù),如果GSP1620撥號(hào)連接成功,則將通信數(shù)據(jù)通過RS232口發(fā)送給GSP1620,由GSPl620通過全球星衛(wèi)星發(fā)送給地面通信設(shè)備。GSPl 620也負(fù)責(zé)接收地面通信設(shè)備發(fā)送的控制指令(例如:飛機(jī)爬升、俯沖、轉(zhuǎn)彎等命令),通過RS 232口傳送給ARM,ARM接收到控制指令后再通過RS 422口或USB口轉(zhuǎn)發(fā)給機(jī)載設(shè)備。
2.3 地面通信設(shè)備
地面通信設(shè)備與機(jī)載通信設(shè)備軟硬件通用,只是在使用前初始化時(shí)將設(shè)備定義為地面通信設(shè)備或機(jī)載通信設(shè)備。地面通信設(shè)備安裝在地面監(jiān)控站內(nèi),與地面監(jiān)控設(shè)備通過,RS 422口或USB口連接。地面通信設(shè)備將接收到的全球星衛(wèi)星傳輸?shù)臄?shù)字信息(語音、圖像、數(shù)據(jù)流、控制命令等)通過USB口或RS 422口傳送給地面監(jiān)控設(shè)備,同時(shí)也可將地面監(jiān)控設(shè)備的控制命令傳送給機(jī)載通信設(shè)備。
其結(jié)構(gòu)組成與機(jī)載通信設(shè)備相似,主要由ARM與GSPl620等部件組成。如圖3所示。
地面通信設(shè)備的工作流程如下:
ARM啟動(dòng)后,通過RS 232口發(fā)送AT命令對(duì)GSP1620進(jìn)行初始化和撥號(hào)連接,連接成功后在GSPl620上實(shí)時(shí)獲取機(jī)載通信設(shè)備發(fā)送的通信數(shù)據(jù),同時(shí)通過RS 422轉(zhuǎn)發(fā)給地面監(jiān)控設(shè)備。ARM也負(fù)責(zé)接收地面監(jiān)控設(shè)備發(fā)送的控制指令,通過RS 232口轉(zhuǎn)發(fā)給GSPl620,GSPl620接收到控制指令后發(fā)送給機(jī)載通信設(shè)備。
2.4 地面監(jiān)控設(shè)備
地面監(jiān)控設(shè)備為工業(yè)PC機(jī),運(yùn)行通信監(jiān)控軟件。地面監(jiān)控設(shè)備通過RS 422口或USB口與地面通信設(shè)備連接。完成數(shù)據(jù)通信、無人機(jī)態(tài)勢顯示、控制指令上傳、報(bào)警、數(shù)據(jù)管理等功能。
3 系統(tǒng)功能設(shè)計(jì)
根據(jù)目前無人機(jī)的使命任務(wù),本系統(tǒng)提供有如下功能:數(shù)傳通信功能、監(jiān)控功能、顯示功能、報(bào)警功能、數(shù)據(jù)管理功能等。按模塊設(shè)計(jì)的功能框圖和信息傳輸關(guān)系,如圖4所示。
3.1 數(shù)據(jù)通信
數(shù)據(jù)通信功能主要包括以下幾項(xiàng)內(nèi)容:數(shù)據(jù)加密、數(shù)據(jù)分包、數(shù)據(jù)分包傳輸、數(shù)據(jù)接收、數(shù)據(jù)合包、數(shù)據(jù)解密等。
3.2 監(jiān)控功能
監(jiān)控功能主要包括以下幾項(xiàng)內(nèi)容:對(duì)地面監(jiān)控設(shè)備初始化、系統(tǒng)重置、通信端口管理、生成控制指令、數(shù)據(jù)存庫等。
3.3 顯示功能
顯示功能主要包括以下幾項(xiàng)內(nèi)容:地圖背景顯示、鷹眼顯示、地圖基本操作(放大、縮小、漫游、量算等)、無人機(jī)飛行狀態(tài)(包括軌跡、高度變化、飛行參數(shù)等)顯示、全球星星歷狀態(tài)顯示等。
3.4 報(bào)警功能
報(bào)警功能主要包括以下幾項(xiàng)內(nèi)容:全球星鏈路斷開報(bào)警、無人機(jī)飛行狀態(tài)報(bào)警等。報(bào)警模式有聲音報(bào)警、高亮警示報(bào)警等。
3.5 數(shù)據(jù)管理功能
數(shù)據(jù)管理功能主要包括以下幾項(xiàng)內(nèi)容:數(shù)據(jù)備份、恢復(fù)、數(shù)據(jù)刪除、數(shù)據(jù)報(bào)表查詢、數(shù)據(jù)顯示、數(shù)據(jù)打印、數(shù)據(jù)導(dǎo)出(文本文件、EXCEL 文檔)等。
4 系統(tǒng)軟件設(shè)計(jì)
4.1 軟件流程
4.1.1 初始化階段
接受飛行任務(wù)后,地面監(jiān)控設(shè)備與地面通信設(shè)備開機(jī)、初始化,地面通信設(shè)備接收全球星星歷,發(fā)送到地面監(jiān)控設(shè)備,地面監(jiān)控設(shè)備根據(jù)星歷判斷衛(wèi)星信號(hào)好壞,給出無人機(jī)起飛建議。無人機(jī)起飛后,機(jī)載通信設(shè)備開機(jī)、初始化。
4.1.2 建立連接階段
機(jī)載數(shù)傳設(shè)備初始化后與地面數(shù)傳設(shè)備進(jìn)行撥號(hào)連接,雙方均可進(jìn)行主叫撥號(hào)連接。撥號(hào)成功,鏈路建立后,即可進(jìn)行通信信息傳輸。
4.1.3 通信、監(jiān)控顯示階段
機(jī)載通信設(shè)備將來自機(jī)載設(shè)備的通信信息經(jīng)全球星發(fā)送給地面通信設(shè)備,地面通信設(shè)備再將該信息轉(zhuǎn)發(fā)給地面監(jiān)控設(shè)備。地面監(jiān)控設(shè)備對(duì)信息進(jìn)行解碼、報(bào)警處理、存儲(chǔ)、軌跡顯示、狀態(tài)顯示等工作。
4.1.4 連接維護(hù)階段
為了保證通信鏈路的暢通,機(jī)載通信設(shè)備和地面通信設(shè)備自動(dòng)進(jìn)行衛(wèi)星通信鏈路的維護(hù),實(shí)時(shí)監(jiān)測鏈路狀態(tài),發(fā)現(xiàn)鏈路斷開,自動(dòng)重新?lián)芴?hào)連接。同時(shí)也負(fù)責(zé)將鏈路狀態(tài)、故障原因?qū)崟r(shí)發(fā)送給地面監(jiān)控設(shè)備。
4.1.5 數(shù)據(jù)維護(hù)階段
平時(shí)可利用數(shù)據(jù)維護(hù)軟件對(duì)數(shù)據(jù)庫進(jìn)行備份、刪除等管理,可對(duì)歷史數(shù)據(jù)查詢、調(diào)閱、生成報(bào)表、打印、導(dǎo)出等工作。
4.2 關(guān)鍵技術(shù)實(shí)現(xiàn)
4.2.1 多線程技術(shù)
本系統(tǒng)涉及撥號(hào)連接、網(wǎng)絡(luò)通信、串口通信、數(shù)據(jù)分包、狀態(tài)監(jiān)視等。眾多任務(wù)實(shí)時(shí)完成,如果管理不慎,將造成系統(tǒng)資源沖突,使系統(tǒng)穩(wěn)定性降低。因此,在開發(fā)時(shí)采用多線程技術(shù)管理任務(wù),共創(chuàng)建了四個(gè)服務(wù)線程:串口通信線程,負(fù)責(zé)管理有關(guān)串口通信的所有任務(wù);網(wǎng)關(guān)連接線程,負(fù)責(zé)撥號(hào)連接,監(jiān)視全球星星歷狀態(tài),系統(tǒng)斷開后自動(dòng)實(shí)時(shí)連接;網(wǎng)絡(luò)通信線程,負(fù)責(zé)有關(guān)網(wǎng)絡(luò)SOCKET通信的所有任務(wù);數(shù)據(jù)處理線程,負(fù)責(zé)實(shí)時(shí)生成傳輸?shù)臄?shù)據(jù)包,對(duì)數(shù)據(jù)進(jìn)行加密、壓縮、分包、合包等任務(wù)。依靠線程中斷、掛起、通信等線程服務(wù)手段來實(shí)現(xiàn)各個(gè)任務(wù)之間的信息交互,有效防止資源沖突互鎖。
4.2.2 撥號(hào)連接網(wǎng)關(guān)
在使用全球星提供的通信服務(wù)時(shí),必須使GSP-1620與網(wǎng)關(guān)保持連接,而且要實(shí)時(shí)監(jiān)測連接狀態(tài),在斷開時(shí),重新連接。連接方式采用的是撥號(hào)連接的方式。以WINDOWS平臺(tái)為例撥號(hào)連接的程序如下:
定義連接參數(shù)rdParams,并根據(jù)需要初始化該連接參數(shù)。
DWORD dwError=RasDial(NULL,NULL,&rdParams,0L,(RASDIALFUNC)RasDialFunc,&m_hRasConn);
調(diào)用API函數(shù)RasDial進(jìn)行撥號(hào)連接,入口參數(shù)主要有連接參數(shù)rdParams和回調(diào)函數(shù)RasDialFunc。
回調(diào)函數(shù)RasDialFunc定義如下:
回調(diào)函數(shù)的主要作用為根據(jù)連接狀態(tài)執(zhí)行相應(yīng)的任務(wù),比如連接成功時(shí)則調(diào)用API函數(shù)RasGetProjec-tionInfo獲取網(wǎng)關(guān)給本用戶分配的IP,獲得IP后才可以應(yīng)用TCP/IP或UDP協(xié)議進(jìn)行信息傳輸。
另一個(gè)比較重要的API函數(shù)是RasGetConnect-Status,利用該函數(shù)可實(shí)時(shí)獲取網(wǎng)關(guān)連接狀態(tài)。
4.2.3 網(wǎng)絡(luò)通信
撥號(hào)連接網(wǎng)關(guān)成功后,獲得分配IP,則進(jìn)行網(wǎng)絡(luò)通信,通信時(shí)即可采用TCP/IP協(xié)議也可采用UDP協(xié)議,開發(fā)時(shí)根據(jù)需要確定。以UDP協(xié)議為例,網(wǎng)絡(luò)通信程序如下:
如果創(chuàng)建成功,則綁定該SOCKET,綁定端口號(hào)為port。綁定后,則可創(chuàng)建網(wǎng)絡(luò)數(shù)據(jù)處理線程,實(shí)時(shí)接收和發(fā)送數(shù)據(jù)。接收和發(fā)送數(shù)據(jù)的程序分別為:
resulut和sent分別代表接收的字節(jié)數(shù)和發(fā)送的字節(jié)數(shù)。
4.2.4 串口通信
串口可以被當(dāng)作文件資源來管理,因此利用Cre-ateFile,OpenFile和WriteFile三個(gè)文件操作API函數(shù)即可實(shí)現(xiàn)打開串口、讀寫數(shù)據(jù)的功能。以Windows操作系統(tǒng)為例,程序如下:
該函數(shù)實(shí)現(xiàn)了打開串口號(hào)為port的串口,打開成功返回真,失敗返回假。
該函數(shù)實(shí)現(xiàn)了從打開的串口中讀取緩沖區(qū)中的數(shù)據(jù)。
該函數(shù)實(shí)現(xiàn)了將數(shù)據(jù)寫入打開的串口。
4.2.5 數(shù)據(jù)分包
由于網(wǎng)口和串口每次傳輸?shù)臄?shù)據(jù)量有限,為了滿足信息批量傳輸?shù)男枨?,必須將需要傳輸?shù)臄?shù)據(jù)(例如:一個(gè)2 MB的圖像文件)首先分解成一個(gè)個(gè)獨(dú)立的數(shù)據(jù)包,發(fā)送時(shí)每次發(fā)送一個(gè)數(shù)據(jù)包,等接收端接收到所有的數(shù)據(jù)包時(shí),將數(shù)據(jù)包進(jìn)行合包,解析出原始數(shù)據(jù)。在發(fā)送時(shí)可能出現(xiàn)個(gè)別數(shù)據(jù)包丟失的情況,在接收端根據(jù)數(shù)據(jù)包內(nèi)的標(biāo)識(shí)判斷丟失的數(shù)據(jù)包,然后向發(fā)送端請求重發(fā)丟失的數(shù)據(jù)包。數(shù)據(jù)包數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)如表1所示。數(shù)據(jù)包序號(hào)為每個(gè)數(shù)據(jù)包的惟一的標(biāo)識(shí)序號(hào);子包個(gè)數(shù)代表該數(shù)據(jù)包所屬的需要傳輸數(shù)據(jù)分包后形成的子包的個(gè)數(shù);子包序號(hào)代表該數(shù)據(jù)包所屬的需要傳輸數(shù)據(jù)分包后形成的子包群中的排序號(hào);信息頭代表傳輸?shù)男畔㈩愋途幋a。利用該數(shù)據(jù)結(jié)構(gòu)即可編制任意長度數(shù)據(jù)的傳輸程序,而且能夠保證數(shù)據(jù)傳輸?shù)乃俣群驼_性。
5 結(jié) 語
應(yīng)用全球星的通信功能為無人機(jī)設(shè)計(jì)了一套遠(yuǎn)程通信系統(tǒng),并解決了在開發(fā)中遇到的連接網(wǎng)關(guān)、網(wǎng)絡(luò)通信、數(shù)據(jù)分包等關(guān)鍵技術(shù)問題。該系統(tǒng)通信不受時(shí)間、距離、地域限制,通信能力強(qiáng),可傳輸語音、數(shù)據(jù)、圖像等信息。系統(tǒng)造價(jià)低及開發(fā)風(fēng)險(xiǎn)低,因此具有廣泛的應(yīng)用前景。