劉亞非
(中國鐵路設計集團有限公司,天津 300308)
低空無人機航空攝影測量技術因其高時效、高分辨率、低成本及可重復性等優勢,在諸多領域得到廣泛應用[1]。首先通過無人機飛行平臺所搭載的高分辨率CCD相機、激光掃描儀等機載遙感設備獲取的信息,再利用計算機圖像處理軟件根據實際的使用環境和特定的精度要求,制作符合要求的圖像。無人機測繪搭載的設備有可見光相機、激光雷達(LIDAR)、合成孔徑雷達等,后端數據處理程序有Smart 3D、PIX4D等。無人機攝影成圖的基本流程見圖1。

圖1 無人機攝影成圖基本流程
無人機測繪作業時,受外界環境條件影響較大,且對“飛手”操控水平要求較高。一旦發生“炸機”情況,就需要送廠返修,來回耽誤時間很長,這對于工期要求很緊的現場測繪作業項目來說很難接受。為了解決該問題,基于開源固件Ardupilot,采用市場很方便就能購得的相關零部件,自制4軸多旋翼無人機。自制無人機除了能夠大幅度降低成本外,如果飛機在作業現場發生損壞,飛手很容易地能夠修復飛機,從而不耽誤現場的測繪作業進度;另外,還能夠根據搭載設備的重量、種類、續航時間要求,配置不同的飛行平臺,以適應不同領域的測繪需求,滿足現場生產需要。大疆最新的兩款機型和作者自制機對比見圖2,其中,開源4軸、荷載10 kN無人機可用于CCD相機作業;開源8軸、荷載60 kN無人機可滿足激光雷達(LIDAR)作業需求(見圖2)。

圖2 開源機與成品機外觀比較
測繪用無人機一般由兩部分構成,一部分是飛行系統(飛行平臺),另一部分是荷載系統(機載設備系統)。飛行平臺有多旋翼、直升機、固定翼、垂直起降固定翼等,具體選用哪種飛行平臺,主要由作業要求和荷載重量決定;機載設備有數字相機、激光雷達等,具體選用哪種設備,主要由數據需求決定[2]。
飛行平臺一般分為兩大部分,一部分是硬件部分,一部分是軟件部分。硬件部分采用市場上常用零部件,包括:F450機架、無刷電機(980 kV)、Pixhawk飛控、M8N的GPS、樂迪遙控器及配套接收機、好盈20A電調、螺旋槳、數傳電臺、圖傳等;軟件部分主要是飛控固件,采用基于開源APM生成的多旋翼Copter固件。
APM項目至誕生到現在,大約有十多年的歷史,其固件版本也由當時的V2.0版本發展到現在的V4.1版本,APM固件開源且免費,運行性能穩定,功能強大,其中的Copter系列固件為自制多旋翼無人機的首選。
飛行平臺為典型的F450多旋翼無人機套裝配件(見圖3),整個套件價格不超過¥2000元。自制無人機原則:首先確定無人機的用途,進而確定無人機的荷載,荷載確定后要考慮無人機的標準,并注意各項指標均衡。另外,最重要的一點就是安全性,其次才是操控性、性價比、續航時間、負載能力等。

圖3 F450多旋翼無人機套材
在無人機組裝的時候要重點注意幾個問題:①焊接問題,電烙鐵建議選取150W的電烙鐵,焊錫的連接處要使用熱縮管絕緣,不要使用絕緣膠布。②在進行螺絲連接的時候,一定要打螺絲膠(無人機工作時整體處于震動狀態,容易出現螺絲松動的現象,打螺絲膠能夠有效地避免螺絲松動)[3];③無人機組裝是個細致耐心的工作,要仔細熟悉無人機各部件的性能指標,如接收機PWM信號與SBUS信號的區別,SERIAL接口與IIC接口的區別,GPS接收機5針和6針的區別等。
無人機固件編譯是自制無人機的核心工作。Windows環境下無人機固件編譯環境需要的工具主要有以下幾種[4]。
(1)Cygwin64-set.exe
該工具為一個運行于Windows系統上輕量化的Linux虛擬機,可以在Windows環境下運行Linux命令。在Cygwin64中有很多軟件包,包括Python、Pip、Pymavlink等庫文件[5]。
MavproxySetup.exe:該工具主要功能為建立無人機模擬飛行仿真環境的;配置腳本:通過Github下載APM官網提供的自動腳本文件,以便建立APM的編譯環境。
(2)Gcc編譯器
由于飛控固件運行在單片機上(STM32系列),需要用到Gcc編譯器,下載地址為:Https://firmware.ardupilot.org./Tools/STM32-tools/gcc-arm-none-eabi-6-2017-update-win32-sha2.exe,編譯器安裝完畢后,應添加路徑到環境變量。
(3)Git系統
Git是一種分布式版本控制系統,應用此系統,可以使若干個不同的遠端代碼倉庫進行交互,安裝完畢后,需要輸入命令 “git config-global core.autocrlf false”進行配置[6]。
下載開源APM的飛控固件前,需要先注冊一個Github賬號,同時還需要下載安裝Github Desktop,以實現遠端代碼復制,然后進行編輯、編譯、Debug等工作。編輯軟件選取種類較多,建議采用Vscode,具體步驟如下。
①登錄GitHub,進入注冊頁面(見圖4)。

圖4 GitHub登錄注冊界面
②點擊SignUp按提示要求注冊,注冊成功后界面見圖5。

圖5 GitHub注冊成功界面
③在搜索框輸入“Ardupilot”,界面見圖6。

圖6 APM文件夾界面
④右鍵選擇“open with Github Desktop”,根據網速不同,ardupilot全部分支會自動下載到本地電腦的D盤,下載成功后,然后生成一個名為ardupilot的文件夾。
⑤下載到D盤的ardupilot文件處于主分支狀態(master分支),此時,不可以用主分支文件編譯飛控固件,必須切換到穩定版本才能進行編譯。然后進入Git終端,打開Git Bash,依此輸入命令(見圖7,圖8)[7-8]。

圖7 APM系列固件版本

圖8 更新CRDC-2021A240505子模塊
切換完分支后,應對APM文件進行編譯,以生成能在單片機上運行的文件(后綴為.apj),編譯飛控文件的編譯器為 Gcc,飛控硬件選擇FMUV3框架(目前開源飛控硬件對應的框架有FMUV3框架和FMUV5框架,V3框架對應STM32的427系列單片機,V5框架對應STM32的7系列單片機),運行終端Cygwin64 Terminal,依此輸入以下命令。
①cd d://進入APM文件所在盤符d盤。
②cd ardupilot//進入ardupilot文件。
③./waf list_boards//查看所有支持版本,以確認文件包含飛控類型。
④./waf configure-board fmuv3//選擇飛控板為FMUV3類型。
⑤./waf copter//編譯文件為多旋翼固件。
編譯成功后,本地電腦的Dardupilotuildfmuv3inardupilot.apj文件即為飛控寫入文件(見圖9)。

圖9 飛控固件編譯
安裝地面站軟件MissionPlanner,飛控連接到電腦,依此選擇初始設置安裝固件加載自定義固件,選擇Dardupilotuildfmuv3inarducopter.apj.文件,按提示完成固件燒寫(見圖10)。

圖10 飛控固件位置
固件寫入飛控,無人機各部件連接完畢后,方可進行校準工作。主要有加速度校準、磁羅盤校準、遙控器校準、電流計校準、電調油門校準[9-12]。
進入MissionPlanner頁面,依此選擇“始設置→必要硬件→加速度計校準”,進入加速度計校準,然后分別按提示進行“平放、飛控向左、飛控向右、飛控向下、飛控向上”等操作,俗稱無人機業界的“加速度舞蹈”,校準成功后,提示Successful,即為校準成功,然后重啟(見圖11)。

圖11 加速度校準界面
無人機羅盤有內置羅盤和外置羅盤之分,內置羅盤是飛控內的羅盤,外置羅盤是外接GPS的羅盤,為防止各種外界因素對磁羅盤的干擾(震動、溫度等因素),應盡量選用GPS外置羅盤。進入MissionPlanner頁面,依此選擇初始設置→必要硬件→指南針選項,進入磁羅盤校準,根據校準進度條提示進行旋轉,完成磁羅盤校準,校準成功后,頁面會有校準誤差提示(見圖12)。

圖12 羅盤校準界面
進入MissionPlanner頁面,依此選擇初始設置→必要硬件→遙控器校準選項,進入遙控器校準,然后分別對roll(橫滾)、pitch(俯仰)、yaw(旋轉)、throttle(油門)各搖桿及遙控器進行旋轉,按提示完成遙控器校準(見圖13)。

圖13 遙控器校準界面
步驟為:遙控開機油門打滿→飛機上電→飛機斷電重新上電→開啟飛控switch開關→遙控油門撥最低→飛機斷電→重新上電→完成校準。
開源無人機既可以使用開源地面站進行操控,也可以單獨使用遙控器進行操控[13-16]。將飛控與MP地面站進行連接,點擊“飛行計劃”圖標,進入“飛行計劃”窗口頁面,通過該窗口的“UTM” “地圖”等按鈕設置時間和地圖模式,從而實現對時間、空間基準的設置。在該窗口右鍵單擊鼠標,彈出功能窗口,根據窗口提示內容插入航點,編輯航線。選擇自動航點工具,依據測繪任務需求在彈出窗口,可以實現相機類型選擇、飛行高度、航線角度、航向重疊率、起始點位置、相機參數等功能的設置。
根據《民用無人駕駛航空器實名制登記管理規定》,最大起飛質量≥250g的民用無人機必須在“中國民用航空局民用無人機實名登記系統”上申請賬戶,并將系統給定的登記標記粘貼在無人機上,由于無人機測繪作業的敏感性,在飛行作業中,應嚴格遵守《中華人民共和國測繪成果管理規定》《中華人民共和國測繪法》《中華人民共和國保守國家秘密法》等相關法律法規。
經多次實測飛行,采用本方法制造的4軸無人機在荷載10 kN、1塊5 200 mA動力鋰電池情況下,留空時間為20 min;如果并聯1塊備用電池,10 kN荷載下留空時間能達到30 min。可滿足鐵路測繪行業基本使用要求。
實踐證明,基于APM的開源自制無人機能滿足在鐵路測繪現場的使用,同時也能節約一定的生產成本。另外,無人機測繪在鐵路測繪行業的推廣使用應結合本行業的特點,如鐵路既有線測量若采用無人機技術,會對鐵路運營線路的安全產生一定的威脅,未來鐵路測繪無人機發展應結合智能硬件的使用,走出一條適合本行業發展的道路。