文章目錄
????????前言
1.1 所需硬件
1.2 連接到自動駕駛儀
1.3 設(shè)置
1.4 ADSB輸出配置
1.5 啟用載人飛行器避障功能
1.6 飛行器數(shù)據(jù)庫
1.7 開發(fā)者信息包括模擬
前言
本文介紹了如何安裝和配置 ADS-B 模塊,以便你的飛機(jī)能夠知道附近的其他飛機(jī)和空中交通管制,并/或向其傳送信息。這也使地面上的飛行員能夠知道附近的有人駕駛飛機(jī),并可選擇讓飛行器自動避開它們。
ADS-B(又稱自動依賴監(jiān)視廣播)(Automatic Dependent Surveillance Broadcast)是一種空中交通監(jiān)視技術(shù),使飛機(jī)能夠被空中交通管制員和其他飛行員準(zhǔn)確跟蹤,而不需要傳統(tǒng)雷達(dá)。
!Warning
避讓功能是仍在開發(fā)中的新功能,應(yīng)謹(jǐn)慎使用。如果啟用了 ADSB 避讓功能,強(qiáng)烈建議設(shè)置RCx_OPTION = 38 (ADSB Avoidance En)功能,以便在空中時輕松禁用,如果有此需要。
1.1 所需硬件
這些傳感器可以直接從?uAvionix?或?Sagetech?購買,也可以從以下經(jīng)銷商處購買:
- EXDTEK:VS26-21T
- USA:Unmanned Systems Source
- R Cubed Engineering
- U.K:Unmanned Tech
- Germany:UAV Store
1.2 連接到自動駕駛儀
ADSB 接收機(jī)應(yīng)連接到自動駕駛儀的串行端口。接收器的安裝應(yīng)使天線呈垂直方向。
上圖采用的是億思德科技有限公司研發(fā)的超小體積低功耗 ADS-B 接收模塊 VS26-21T。
VS26-21T 模塊的性能特點,具體如下:
- MavLink2 協(xié)議輸出;
- 超低功耗:約 0.3W,55mA@5V,不發(fā)熱;
- 超小尺寸:27*19*5.6mm;
- 超低重量:3g;
- 使用 IPEX 天線,空域監(jiān)視距離可達(dá) 100km+。
1.3 設(shè)置
設(shè)置?ADSB_TYPE?參數(shù),以配合接收機(jī)的串行通信協(xié)議。
接收器所連接的串口應(yīng)配置成也與 ADSB 接收器的協(xié)議相匹配:
ADSB Protocol |
ADSB_TYPE |
SERIALx_PROTOCOL |
SERIALx_BAUD |
MAVLINK |
1 |
MAVLink2 (2) |
57600 |
Sagetech |
2 |
ADSB (35) |
|
UCP |
3 |
115200 |
|
Sagetech MX |
4 |
例如,如果你將 uAvionix Ping2020i 插入自動駕駛儀上指定為 SERIAL4 的 UART,你會設(shè)置:
- SERIAL4_PROTOCOL為 2(指 MAVLink2);
- SERIAL4_BAUD 57(指 57600)。
- !Note
ADSB 接收機(jī)的規(guī)格可能只說明 MAVLink 為協(xié)議。在這種情況下,首先嘗試 MAVLink2,如果不成功,就用 MAVLink 作為串口協(xié)議。
在做出這些改變后,你需要重新啟動你的板子。
為了使 ADSB 數(shù)據(jù)流向 GCS,你要檢查你的 StreamRate 參數(shù)。在某些情況下,它已經(jīng)被設(shè)置好了,但最好還是檢查一下。這些速率在每個遙測中都是可以調(diào)整的,比如在連接高帶寬和低帶寬的情況下。調(diào)整速率的參數(shù)將取決于你的 GCS 連接到哪一個。在大多數(shù)情況下,它是 telem1。
- SR1_ADSB 5(指 5Hz)。
一旦投入使用,大約 50 公里范圍內(nèi)的飛機(jī)應(yīng)出現(xiàn)在地面站地圖上。
為了測試系統(tǒng),你可以與?flightradar24.com?上顯示的航班進(jìn)行比較。
1.4 ADSB輸出配置
!Warning
確保你有正確的權(quán)限,使用能夠發(fā)射的 ADSB 硬件。你將會在空中交通管制員的機(jī)場雷達(dá)上顯示出來!
以下參數(shù)用于配置 ADS-B 輸出:
- ADSB_ICAO_ID:ICAO_ID 該飛機(jī)的唯一飛行器識別號碼。這是一個限制在 24 位的整數(shù)。如果設(shè)置為 0,那么將隨機(jī)生成一個。如果設(shè)置為 -1,則不發(fā)送靜態(tài)信息,假設(shè)收發(fā)器是預(yù)編程的;
- ADSB_EMIT_TYPE:ADSB 對發(fā)射轉(zhuǎn)發(fā)器信號的飛行器類型的分類。默認(rèn)值為 14(UAV);
- ADSB_LEN_WIDTH:飛機(jī)的長度和寬度尺寸選項,長度和寬度單位為米。在大多數(shù)情況下,使用 1 的值表示最小的尺寸;
- ADSB_OFFSET_LAT:GPS 天線的橫向偏移。這描述了飛機(jī)上 GPS 天線中心的物理位置偏移;
- ADSB_OFFSET_LON:GPS 天線的縱向偏移。這通常被設(shè)置為 1,由傳感器應(yīng)用;
- ADSB_RF_SELECT:收發(fā)器射頻選擇 Rx 啟用和/或 Tx 啟用。這只影響可以 Tx 和/或 Rx 的設(shè)備。只有 Rx 的設(shè)備會覆蓋這一點,使其總是只有 Rx;
- ADSB_SQUAWK:向 ATC 廣播的 Squawk/Transponder(模式 3/A)代碼,通常由你的 ATC 為某一特定航班分配。在美國/加拿大,默認(rèn)的 Squawk 代碼是針對 VFR 的,是 1200。歐洲和澳大利亞的大部分地區(qū)使用 7000。如果設(shè)置了一個無效的八進(jìn)制數(shù)字,那么它將被重置為 1200;
- ADSB_OPTIONS:允許啟用某些設(shè)備的特定功能,并允許在某些飛行器失控保護(hù)"鳴叫"緊急代碼。
在許多情況下,默認(rèn)值是可以的,除了?ADSB_RF_SELECT?需要打開發(fā)射機(jī)外,你不需要改變?nèi)魏芜@些。ADSB_RF_SELECT?發(fā)射位在啟動時被清空,以確保你只在有意啟用時進(jìn)行發(fā)射。
在 uavionix.xml 中為 ADSB 提供了額外的 MAVLink 信息,允許 GCS 設(shè)置所有這些選項。即 msg UAVIONIX_ADSB_OUT_CFG 和 UAVIONIX_ADSB_OUT_DYNAMIC,其中 _cfg 是唯一可以指定自定義呼號的地方。
!Note
Mission Planner 的轉(zhuǎn)發(fā)器標(biāo)簽不會向 Sagetech 的 XP 系列轉(zhuǎn)發(fā)器發(fā)送正確的信息。為了改變工作模式,可以使用 Sagetech 的工程 GUI 將轉(zhuǎn)發(fā)器設(shè)置為 ALT 模式,以確保傳輸與飛行控制器的工作。
1.5 啟用載人飛行器避障功能
ArduPilot 包括一個飛行模式,AVOID_ADSB,它試圖根據(jù) ADS-B 傳感器的輸出來避免有人駕駛的飛行器。當(dāng)有必要根據(jù)下面的參數(shù)進(jìn)行避讓時,自動進(jìn)入該模式。當(dāng)威脅過去后也會自動退出。
要啟用該功能,請與地面站連接并設(shè)置以下參數(shù):
- AVD_ENABLE:設(shè)置為"1"以啟用基于 ADS-B 的避讓(設(shè)置后可能需要刷新參數(shù));
- AVD_F_DIST_XY:以米為單位的水平距離,應(yīng)被認(rèn)為是近失誤;
- AVD_F_DIST_Z:在飛行器上方或下方的垂直距離,以米為單位,應(yīng)被視為近似事故;
- AVD_F_TIME:在預(yù)計發(fā)生近距離碰撞前多少秒(基于飛行器的當(dāng)前位置和速度),飛行器應(yīng)開始?AVD_F_ACTION;
- AVD_F_ACTION:控制飛行器應(yīng)如何應(yīng)對預(yù)計的近距離碰撞(即 2:爬升或下降,3:水平移動,4:垂直 3D 移動,5:RTL 或 6:懸停);
- AVD_F_RCVRY:設(shè)置飛行器在清除了近失區(qū)后的行為方式(即 1 = 恢復(fù)以前的飛行模式)。
注意:有同等的"警告"參數(shù)(即 AVD_W_DIST_XY),可用于調(diào)整何時在地面站出現(xiàn)對飛行員的警告。
在 ArduPilot 固件 4.0 及以后的版本中,可以通過 RC 通道的開關(guān)來啟用或禁用進(jìn)入該模式,通過設(shè)置 RCx_OPTION = 38 (ADSB Avoidance En)。如果 RC 的 PWM > 1800us,那么如果有威脅出現(xiàn),就會啟用進(jìn)入該模式。
1.6 飛行器數(shù)據(jù)庫
當(dāng)啟用時,ADS-B 庫最多可以存儲 50 個由 ADS-B 接收器探測到的飛行器信息,但可以通過?ADSB_LIST_MAX?參數(shù)進(jìn)一步限制。由于其他功能的一些實驗性工作,如 EKF2,可用的 RAM 可能會受到限制。值得注意的是,當(dāng) ADSB 被禁用時(ADSB_TYPE = 0),那么內(nèi)存就會被釋放,有效地釋放出大約 1KB 的 RAM。當(dāng)啟用時,檢測到的飛行器列表每秒鐘檢查一次,以發(fā)現(xiàn)潛在的沖突。
1.7 開發(fā)者信息包括模擬
數(shù)據(jù)是通過 ADSB_VEHICLE 消息(ADSB_VEHICLE message)傳輸?shù)?。?dāng) ArduPilot 收到時,它將使用?SRx_ADSB?值進(jìn)行流式傳輸,其中x是遙測端口號,該值是每秒要流式傳輸多少飛行器。如果使用 telem1,流率參數(shù)將是?SR1_ADSB。列表將不會重復(fù)超過 1 秒的速度。這種靈活性對于節(jié)省數(shù)據(jù)鏈路的帶寬很有用,但也允許高速鏈路的最大更新率,如機(jī)載配套計算機(jī)。
ArduPilot 的 SITL 包括對支持 ADS-B 的飛機(jī)進(jìn)行模擬。要啟用這個功能,你必須有 pymavlink v1.1.70?或更高版本。如果你有一個舊版本,請使用:
sudo pip install --upgrade pymavlink MAVProxy
使用?SIM_ADSB_COUNT?參數(shù)設(shè)置要模擬的飛機(jī)數(shù)量??梢酝ㄟ^設(shè)置參數(shù)'SIM_ADSB_TX'來啟用 Ping2020 模擬支持。ADS-B 的其他模擬選項也存在,都以?SIM_ADSB_?開頭。
使用 USB-Serial 轉(zhuǎn)換器將硬件 ADS-B 接收器插入你的計算機(jī),或使用 PingUSB,將允許你在模擬中疊加真實的 ADS-B 交通。你可以通過這種方式調(diào)用 SITL 來實現(xiàn)這種效果:
sim_vehicle.py -v ArduCopter -A "--uartC uart:$SERIAL_DEVICE:57600"
其中?SERIAL_DEVICE?在 Linux 系統(tǒng)上可能是/dev/serial/by-id/usb-FTDI_FT232R_USB_UART_A4008ZND-if00-port0(用命令?ls /dev/serial/by-id/*?或?ls /dev/ttyS*?查找有效的串行設(shè)備列表,用于 Cygwin 的 COM 端口)。一旦 SITL 啟動,可能需要設(shè)置?SERIAL3_?參數(shù):
:ref:`SERIAL3_PROTOCOL<SERIAL3_PROTOCOL>` 1文章來源:http://www.zghlxwxcb.cn/news/detail-500705.html
:ref:`SERIAL3_BAUD<SERIAL3_BAUD>` 57600文章來源地址http://www.zghlxwxcb.cn/news/detail-500705.html
到了這里,關(guān)于(1)ADS-B接收機(jī)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!