摘要
最先進(jìn)的四旋翼模擬器都有一個(gè)剛性和高度專業(yè)化的結(jié)構(gòu):它們要么是快速的,要么是物理上很精確的,要么很逼真的;但這次我們介紹一種新的四旋翼模擬器:Flightmare。Fligtmare是一個(gè)模塊化和具有靈活性四旋翼模擬器,主要由兩個(gè)獨(dú)立的組件組成(統(tǒng)一編輯器建立的逼真的渲染引擎、四旋翼動(dòng)力學(xué)模擬)。它的兩個(gè)組件是完全解耦的,并且彼此可以獨(dú)立運(yùn)行。因此這種四旋翼模擬器在筆記本上渲染能夠高達(dá)230Hz的速度,而物理模擬高達(dá)200,000Hz。此外,F(xiàn)ligtmare還有其他幾個(gè)理想的特性:1、大型多模態(tài)傳感器套件,包括提取場景3D點(diǎn)云的接口;2、強(qiáng)化學(xué)習(xí)API,可以并行模擬數(shù)百個(gè)四轉(zhuǎn)子;3、與虛擬現(xiàn)實(shí)耳機(jī)集成,與模擬環(huán)境交互。我們通過在兩種不同的機(jī)器人任務(wù)中(深度強(qiáng)化學(xué)習(xí)的四旋翼控制、復(fù)雜的三維環(huán)境中的無碰撞路徑規(guī)劃)驗(yàn)證了Flightmare的靈活性。
一、介紹
模擬器是機(jī)器人研究人員的寶貴工具,它們能夠以一種安全和廉價(jià)的方式開發(fā)和測試算法。理想的模擬器是:1、快速,在有限的時(shí)間內(nèi)收集大量數(shù)據(jù)并計(jì)算;2、物理精確,高保真表示真實(shí)世界的動(dòng)態(tài);3、逼真,最大限度地減少模擬和真實(shí)傳感器的觀測之間的差異。
本質(zhì)上來說,這幾項(xiàng)要求通常是相互沖突的。例如,模擬越現(xiàn)實(shí),它就運(yùn)行越慢。因此,在一個(gè)單片模擬器中要想同時(shí)實(shí)現(xiàn)以上要求是非常具有挑戰(zhàn)性的。
二、相關(guān)工作
先回顧一下現(xiàn)有的已被機(jī)器人技術(shù)和機(jī)器學(xué)習(xí)研究人員廣泛使用的開源模擬器:RotorS和Hector:RotorS和Hector都是建立在Gazebo上的流行的微型飛行器(MAV)模擬器,這是一種通用的機(jī)器人模擬平臺,通常與流行的機(jī)器人操作系統(tǒng)(ROS)一起使用。Hector是一個(gè)開源模塊的集合,主要用于救援機(jī)器人的自動(dòng)映射和導(dǎo)航,RotorS提供了幾種多旋翼直升機(jī)模型。AirSim和Carla:AirSim和carla都是開源的逼真模擬器。Carla主要用于自動(dòng)駕駛研究,只提供地面車輛的動(dòng)力學(xué)。相反,AirSim提供了一個(gè)接口來為四旋翼配置多種模型,并支持循環(huán)硬件(HITL)以及循環(huán)軟件(飛行控制器SITL)。除了上述的模擬器,還有更多現(xiàn)有的模擬器已被其他研究社區(qū)廣泛采用。例如,MuJoCo已經(jīng)被強(qiáng)化學(xué)習(xí)社區(qū)廣泛用于基準(zhǔn)測試比較;RaiSim(用C++編寫的機(jī)器人技術(shù)和人工智能研究的物理引擎)用于支持大規(guī)模的并行動(dòng)力學(xué)模擬,然而,這兩個(gè)模擬器都不支持復(fù)雜的3D環(huán)境和逼真的圖像渲染。此外還有Sim4CV,它是一個(gè)照片逼真的模擬器,但是也僅為計(jì)算機(jī)視覺應(yīng)用程序。
三維環(huán)境:
Fligtmare的渲染引擎是由Unity構(gòu)建的,這是一個(gè)流行的跨平臺游戲引擎,也是一個(gè)人工智能的通用平臺。
傳感器:
渲染引擎提供了傳感器套件的靈活配置。目前,F(xiàn)ligtmare可以模擬具有地面真實(shí)深度和語義分割、測距儀、以及代理和它們的周圍環(huán)境之間的碰撞檢測的RBG攝像機(jī)。特別是Fligtmare允許用戶改變相機(jī)的本質(zhì),如視場、焦距和鏡頭失真。此外,它還可以模擬相機(jī)上的物理效果,包括運(yùn)動(dòng)模糊、鏡頭污垢。
腳本:
Unity通過c#提供了一個(gè)豐富而靈活的腳本系統(tǒng),使用戶能夠定義復(fù)雜的模擬任務(wù),比如創(chuàng)建圖形效果和控制對象的物理行為。
動(dòng)態(tài)建模:
Fligtmare為三個(gè)四旋翼動(dòng)力學(xué)提供了一個(gè)靈活的接口:一個(gè)基于Gazebo的四旋翼動(dòng)力學(xué),真實(shí)的動(dòng)力學(xué),和一個(gè)經(jīng)典的四旋翼動(dòng)力學(xué)的并行實(shí)現(xiàn)。四旋翼被建模為一個(gè)由四個(gè)電機(jī)驅(qū)動(dòng)的剛體。我們使用四旋翼動(dòng)力學(xué),已用于設(shè)計(jì)控制算法的真實(shí)四旋翼實(shí)驗(yàn):
其中PWB是位置,VWB是四旋翼在W中的線速度,D = diag(dx, dy, dz)是一個(gè)常數(shù)對角線矩陣,它定義了轉(zhuǎn)子-阻力系數(shù),這是一個(gè)在四旋翼的速度上的線性效應(yīng)。使用一個(gè)單位四元數(shù)qWB來表示四旋翼的方向和使用ωWB表示身體框架B中的身體速率,g = [0, 0, ?gz]T,gz = 9.81 m s?2是重力矢量,和Λ(ωB)是一個(gè)斜對稱矩陣。此外,c = [0, 0, c] 是質(zhì)量歸一化的推力向量。單轉(zhuǎn)子推力的轉(zhuǎn)換[f1, f2, f3, f4]到質(zhì)量歸一化推力c和身體力矩表示為 η。
其中m是四旋翼的質(zhì)量,l是臂長。我們將單個(gè)轉(zhuǎn)子推力的動(dòng)力學(xué)建模為一階系統(tǒng)f˙ = (fdes ? f)/α,其中α為時(shí)滯常數(shù)。實(shí)現(xiàn)了歐拉和四階龍格-庫塔方法來積分動(dòng)力學(xué)方程。
模擬速度:
使用一臺12核英特爾(R)核心(TM)i7-8850HCPU高達(dá)2.60GHz的筆記本電腦的模擬速度,評價(jià)結(jié)果如下圖所示。
點(diǎn)云計(jì)算和路徑規(guī)劃:
現(xiàn)有的模擬器并不能提供一個(gè)有效的API來訪問環(huán)境的3D信息,然而,大量的算法都需要這些信息。為了促進(jìn)這個(gè)方向的研究,F(xiàn)lightmare提供了一個(gè)接口,將整個(gè)環(huán)境(或其區(qū)域)的3D信息導(dǎo)出為具有任何所需分辨率的點(diǎn)云(可通過UI進(jìn)行配置)。
左圖:點(diǎn)云提取的用戶界面;中間:對森林環(huán)境中提取的點(diǎn)云的可視化,由OMPL找到的所有無碰撞路徑(綠線),并求解了A和B之間的最短路徑(紅線);右圖:森林環(huán)境中最短路徑的鳥瞰圖。
結(jié)論與討論:
這種新的四旋翼模擬器Fligtmare,它在飛行過程中,物理建模和視覺傳感器渲染由兩個(gè)獨(dú)立的塊進(jìn)行管理。物理模擬可以適應(yīng)跟蹤機(jī)器人動(dòng)力學(xué)的任何精度,渲染可以配置以適應(yīng)用戶的不同需求,范圍從非??斓唵蔚陌姹镜礁普娴呐渲?。此外,F(xiàn)ligtmare相對以前的工作,擁有幾個(gè)有利的特性:一個(gè)適合大多數(shù)的機(jī)器人和機(jī)器學(xué)習(xí)應(yīng)用程序的大型傳感器套件,一個(gè)可以有效地并行模擬多個(gè)四旋翼并通過強(qiáng)化學(xué)習(xí)訓(xùn)練控制器的API,以及通過虛擬現(xiàn)實(shí)耳機(jī)與模擬器交互的可能性。
2025-09-16 09:27
2025-09-12 11:30
2025-09-11 10:41
2025-09-09 10:52
2025-09-04 21:58
2025-08-28 11:13
2025-08-27 14:14
2025-08-26 13:50
2025-08-23 20:37
2025-08-22 10:33