Ardupilot飛控的數(shù)傳使用教程
一.什么是數(shù)傳
無線數(shù)傳是一種低成本高效益的點(diǎn)對(duì)點(diǎn)雙向通信鏈路,為飛控和地面站之間提供實(shí)時(shí)的數(shù)據(jù)上下行傳輸功能,以實(shí)現(xiàn):
1. 飛控接收地面站發(fā)來的指令,上傳航點(diǎn)數(shù)據(jù)到飛控,飛行過程中調(diào)參;
2.??將飛控的姿態(tài)、位置、傳感器、電壓電流等各種數(shù)據(jù)回傳地面站;
?
二.?dāng)?shù)傳選型
目前微空科技推出了兩個(gè)系列的無線數(shù)傳模塊:LR24(2.4G)和LR900(900M),兩個(gè)系列產(chǎn)品均基于最新的LoRa擴(kuò)頻技術(shù)開發(fā),具有抗干擾遠(yuǎn)距離的特點(diǎn)。
兩個(gè)系列數(shù)傳的功能一致,區(qū)別在于通信頻段和最大通信速率不一樣,但均是能滿足飛控比如Ardupilot的使用需求。而由于同一頻段的無線設(shè)備在距離較近時(shí)可能會(huì)互相干擾影響,所以選擇哪種數(shù)傳大部分時(shí)候取決于遙控器的頻段。比如使用2.4G遙控器(或高頻頭)時(shí),應(yīng)該使用LR900,而使用900M遙控器(高頻頭)時(shí),應(yīng)配合LR24數(shù)傳使用。
為什么不使用常見的WiFi技術(shù)來實(shí)現(xiàn)數(shù)傳?主要還是應(yīng)用場(chǎng)景和產(chǎn)品需求不一樣,無人機(jī)的主要需求是低成本,窄帶遠(yuǎn)距離傳輸,即傳輸數(shù)據(jù)量很小,但通信距離要求很遠(yuǎn)。而微空數(shù)傳使用了最新的LoRa擴(kuò)頻技術(shù),實(shí)現(xiàn)了低速率,高接收靈敏度,超遠(yuǎn)距離的飛控?cái)?shù)據(jù)傳輸。比如500mW發(fā)射功率的LR24-E,搭配高增益定向天線,在空曠無遮擋低干擾區(qū)域可以做到20-30KM的通信距離,即使用全向天線,一般也能有10KM,這是WiFi類產(chǎn)品難以實(shí)現(xiàn)的。而同樣發(fā)射功率的LR900-F,因?yàn)槭褂幂^低頻段,穿透力強(qiáng),接收靈敏度更高,理想環(huán)境下在使用全向天線的時(shí)候也能實(shí)現(xiàn)20-30KM的通信距離,如果使用定向天線則會(huì)更遠(yuǎn)。
但值得注意的是,無線數(shù)傳的通信距離在大部分時(shí)候都不是一個(gè)固定值,畢竟現(xiàn)實(shí)中的電磁環(huán)境經(jīng)常過于復(fù)雜,比如在接近城區(qū)的地方往往有著各類同頻信號(hào)干擾,這些都會(huì)成為數(shù)傳通信距離不穩(wěn)定的重要因素。
下文將以LR900為例,介紹微空數(shù)傳在Ardupilot飛控上的連接和使用方法,讓之前沒有使用過數(shù)傳產(chǎn)品的客戶能盡快上手。
?
三.?dāng)?shù)傳連接說明

LR900數(shù)傳默認(rèn)為雙工模式,需要成對(duì)使用,每一邊都可以發(fā)送并接收數(shù)據(jù),不區(qū)分天空和地面端,且每個(gè)模塊都帶有GH1.25-4P的串口接口和TYPE-C USB接口,因此只要一邊接入飛控,另外一邊連接電腦或者手機(jī),就可以使用地面站軟件和飛控進(jìn)行通信了。
模塊板載一個(gè)綠色LED,功能為表示鏈接狀態(tài),兩兩配對(duì)成功并正常通信時(shí)LED燈長(zhǎng)亮,無連接時(shí)則會(huì)閃爍。數(shù)傳模塊出廠時(shí)參數(shù)一致,上電會(huì)自動(dòng)配對(duì)連接。另外如果需要同時(shí)使用多對(duì)數(shù)傳,使用微空助手軟件將每一對(duì)數(shù)傳的模塊地址配置成不同值即可。
飛控端連接數(shù)傳
Ardupilot飛控通常會(huì)預(yù)留出多路串口出來,但一般默認(rèn)使用SERIAL1作為數(shù)傳串口,比如至今用戶數(shù)量較多的經(jīng)典飛控硬件Pixhawk1(國(guó)內(nèi)對(duì)應(yīng)版本為Pixhawk2.4.8),其TELEM1接口默認(rèn)用于連接數(shù)傳。
下圖舉例說明如何在Pixhawk上連接LR900數(shù)傳,值得注意的兩個(gè)點(diǎn)是:飛控和數(shù)傳的Tx和Rx需要交叉連接;CTS和RTS引腳不需要接。

其它飛控硬件也是同樣原理,比如各類常見的支持Ardupilot固件的F4飛控。最主要一點(diǎn)就是,如果連接到飛控的串口上,需要搞清楚其硬件串口和Ardupilot串口的對(duì)應(yīng)關(guān)系,以便后面能在飛控中配置對(duì)應(yīng)的串口參數(shù)。比如Pixhawk的TELEM1接口對(duì)應(yīng)Ardupilot固件的SERIAL1, F4V3飛控的UART1對(duì)應(yīng)SERIAL1(如下圖所示)。一般飛控硬件廠商會(huì)提供此類資料。

電腦端連接數(shù)傳
LR900數(shù)傳自帶TYPE-C USB口,并板載USB轉(zhuǎn)TTL芯片,因此只要使用普通TYPE-C數(shù)據(jù)線將數(shù)傳連接至電腦即可。
連接完成后,可以打開windows的設(shè)備管理器,以確認(rèn)數(shù)傳模塊的USB驅(qū)動(dòng)是否已經(jīng)正常加載。如果出現(xiàn)端口號(hào),說明驅(qū)動(dòng)正常,模塊已經(jīng)被電腦識(shí)別。注意的是LR900-F會(huì)被識(shí)別為CP210x,而LR900-A為CH340。

如果電腦沒有安裝對(duì)應(yīng)USB芯片的驅(qū)動(dòng),無法被windows識(shí)別,在設(shè)備管理器中會(huì)出現(xiàn)帶黃色感嘆號(hào)的未識(shí)別設(shè)備,說明需要安裝對(duì)應(yīng)驅(qū)動(dòng)。
通常CH340的驅(qū)動(dòng)安裝包為exe文件,直接打開安裝即可。而CP210x的驅(qū)動(dòng)沒有可執(zhí)行文件,需要用戶手動(dòng)安裝:在設(shè)備管理器中找到帶感嘆號(hào)的CP210x設(shè)備,右鍵選擇“更新驅(qū)動(dòng)程序”,選擇“瀏覽我的電腦以查找驅(qū)動(dòng)程序”,然后選擇CP210x驅(qū)動(dòng)文件所在的文件夾,點(diǎn)擊下一步就會(huì)開始自動(dòng)安裝。
手機(jī)端連接數(shù)傳
目前安卓手機(jī)可以用過usb-otg線連接數(shù)傳并使用,而蘋果手機(jī)暫不支持。
連接手機(jī)需要使用OTG線,如果手機(jī)接入數(shù)傳后模塊LED燈不亮,說明無供電,需要更換帶OTG功能的數(shù)據(jù)線。
數(shù)傳連接手機(jī)并能正常上電后,無需安裝驅(qū)動(dòng),具體地面站軟件的使用方法下文會(huì)詳述。
四.?dāng)?shù)傳連接配置
飛控端配置
1.?連接數(shù)傳至飛控的TELEM1接口后,需要在Ardupilot中將對(duì)應(yīng)串口(SERIAL1)配置為mavlink功能,并設(shè)置波特率為57600(LR900數(shù)傳的默認(rèn)波特率),通常這個(gè)是Ardupilot默認(rèn)設(shè)置。
注意這一步需要使用usb線連接飛控至電腦,使用MissionPlanner軟件配置。

2. 為了能正常加載飛控參數(shù),使用數(shù)傳時(shí)需關(guān)閉mavftp功能。
在Ardupilot最新版本固件中(V4.5.0或者更高),此問題已經(jīng)得到優(yōu)化,即使不關(guān)閉mavftp也能正常通過數(shù)傳加載飛控參數(shù)。不過這里還是要給出關(guān)閉mavftp功能的方法。

在參數(shù)表中找到BRD_OPTIONS參數(shù),點(diǎn)擊參數(shù)值,在彈出的窗口中勾選“Disable MAVftp”,然后再寫入?yún)?shù)到飛控即可,重啟后生效。
?
?電腦端配置
飛控端正確配置并連接數(shù)傳模塊后,電腦端也同時(shí)連接LR900數(shù)傳模塊,根據(jù)上文所述,在設(shè)備管理器中查看數(shù)傳所對(duì)應(yīng)的端口號(hào)。然后打開MP地面站軟件,在右上角中選擇端口號(hào),波特率57600,并點(diǎn)擊連接即可。

如果一切正常,點(diǎn)擊連接后地面站將會(huì)與飛控建立起數(shù)據(jù)鏈接,并開始讀取飛控參數(shù),如下圖所示:

獲取參數(shù)大概會(huì)花費(fèi)25秒左右。
手機(jī)端配置
手機(jī)上能使用的地面站軟件數(shù)量不多,如QGC安卓版,MissionPlanner安卓版,這里以QGC為例說明。
(需注意LR900系列數(shù)傳中只有LR900-F支持安卓QGC)
手機(jī)上安裝了QGC后,通過OTG線連接數(shù)傳,若數(shù)傳模塊正常上電,此時(shí)手機(jī)應(yīng)能識(shí)別出外部設(shè)備接入,會(huì)彈出選擇應(yīng)用程序的提示,此時(shí)點(diǎn)擊QGC并打開。

打開QGC后,無需任何操作,軟件將會(huì)自動(dòng)連接通過數(shù)傳連接飛控并開始讀取飛控參數(shù)。

讀取完參數(shù)后,可以開始正常使用APP。
五.Ardupilot飛控的數(shù)據(jù)下行速率配置說明
正常連接飛控后,在MP地面站軟件的右上角打開“鏈接統(tǒng)計(jì)“,可以看到一些數(shù)據(jù)傳輸?shù)慕y(tǒng)計(jì)數(shù)據(jù),其中下載欄中的”字節(jié)/s”便是飛控的實(shí)時(shí)下行速率,單位為“字節(jié)/每秒”,比如下圖中的1.73K表示飛控每秒發(fā)送1.73K字節(jié)的數(shù)據(jù)到地面站。

通常單傳感器的飛控硬件(如F4V3這類),固件默認(rèn)的下行速率在每秒1.3-1.5K字節(jié)左右,如果飛控的傳感器增多,比如雙IMU或者3 IMU,那么默認(rèn)的下行速率會(huì)變高,但只要該速率不超出數(shù)傳的速率上限,都是沒問題的。
另外這個(gè)下行速率可以在MP中調(diào)節(jié)。
在MP地面站軟件的“配置/調(diào)試”-“Planner”頁(yè)面中,有一行遙測(cè)速率參數(shù),調(diào)節(jié)這幾個(gè)參數(shù)便會(huì)影響Ardupilot的實(shí)際下行速率,可以增大或者減小。
使用LR900數(shù)傳時(shí),需要飛控的實(shí)際下行速率不超過2K字節(jié)每秒。
