<strike id="d8ab4"></strike>
  • <rp id="d8ab4"></rp>
    <span id="d8ab4"></span>
      <em id="d8ab4"><samp id="d8ab4"></samp></em>
    1. <s id="d8ab4"><samp id="d8ab4"><listing id="d8ab4"></listing></samp></s>
      <span id="d8ab4"><pre id="d8ab4"></pre></span>

        • IIANews微官網
          掃描二維碼 進入微官網
          IIANews微信
          掃描二維碼 關注微信
          移動客戶端
        • English
        2021 IAS展
        控制軟件

        如何在 3D 環境中仿真自動駕駛汽車

          2021年05月08日  

        文章來源:MATLAB微信公眾號

          今天要給大家分享的是如何在 3D 環境中仿真自動駕駛汽車。原文是一篇在德國大學生方程式大賽網站上的博客文章。在本文中,我們將演示一種在封閉環路中自動駕駛汽車的方法。我們的任務是在未知的環境中駕駛汽車,避免與錐桶碰撞,確保完成必要的圈數。

        場景創建

          第一步是創建一個由車輛,賽道和錐桶組成的3D仿真環境。Vehicle Dynamics Blockset工具箱帶有預建的 3D 場景,以仿真和可視化Simulink中建模的車輛。這些 3D 場景是使用 Epic Games 的虛幻引擎可視化的。

          由于當前問題需要自定義場景,因此我們使用了虛幻編輯器和用于虛幻4引擎工程的 Vehicle Dynamics Blockset 支持包來構建場景。

          要了解如何自定義場景(圖2),請按照文檔中說明的步驟進行操作。當然,您也可以使用 RoadRunner 設計 3D 場景以進行自動駕駛的仿真。

        圖1. 虛幻編輯器中的自定義場景

        圖2. 創建自定義場景的步驟

        第一圈:環境建圖

        圖3.用于環境建圖的 Simulink 模型

          下一個任務是環境建圖。如上一節所述,無人駕駛車輛處于未知環境中,該環境由放置在賽道兩側的錐桶組成。為了檢測錐桶并為第一圈生成參考路徑,我們建立了Simulink模型,如圖3所示。圖4顯示了該模型在第一圈中執行的步驟:

        圖4. 環境建圖的框圖表達

          · 激光雷達安裝:激光雷達的目的是測量車輛到錐桶的距離。在3D仿真環境中,Simulation 3D Lidar模塊提供了激光雷達傳感器。使用Epic Games的虛幻引擎渲染環境, 該模塊返回具有指定視場和角分辨率的點云。

          · 錐桶檢測(圖6):錐桶檢測算法的目標是對屬于一個錐桶的所有點進行聚類,并確定錐桶的位置。這是通過計算點云中相鄰點之間的距離來完成的。屬于同一個錐桶的點彼此靠近,而錐桶彼此相距相對較遠。聚類后,錐桶的中點是錐桶中所有點的位置的平均值。

        圖5.激光雷達處理和控制

        圖6. 顯示在點云中檢測到的錐桶

          · 駕駛控制:駕駛控制器算法基于理解錐桶在激光雷達點云中的位置。該算法有兩個目標:

          確定車輛前方的兩個最重要的錐桶
          避免撞到任何錐桶

          這是通過找到兩個最接近的錐桶并計算兩個錐桶的中點來完成的。該算法生成加速,轉向指令通往該中點。該算法還將車輛的最大速度限制為一個預設值。

          · 車輛動力學(圖7):車輛動力學模型由車身,簡化的動力總成,傳動系統,縱向車輪和轉向運動學組成。該模型的目的是根據轉向,加速和減速命令來計算車輛的位置和方向。Simulation 3D Vehicle with Ground Following和Simulation 3D Scene Configuration)用于在虛幻引擎中設置 3D 仿真環境。

        圖7.車輛模型

          · 輸出:運行仿真后,激光雷達成功檢測到錐桶。此外,車輛繪制環境圖并生成參考軌跡。車輛以最大 8m/s 的速度緩慢行駛。

        第二圈:跟隨參考軌跡

          在第二圈中,車輛跟隨從第一圈仿真中獲得的參考路徑。圖8 顯示了 Simulink 模型。與上一個模型相比,在此模型中,我們刪除了激光雷達模塊,并增加了縱向和橫向控制器。

        圖8. 用于跟隨參考軌跡的 Simulink 模型

          現在,這是一個經典的閉環控制系統問題,控制器的任務是輸出所需的轉向命令,加速命令和減速命令,以更高的速度跟隨參考路徑。

        圖9. 第二圈的閉環控制框圖

          · 橫向控制器:Pure pursuit 控制器用于車輛的橫向控制。為了在 Simulink 中實現控制器,我們使用了 Pure Pursuit 模塊來瞄準目標方向。此外,使用車輪轉角公式將目標方向轉換為所需的轉向角。要了解有關使用 Pure pursuit 控制器的車輛路徑跟隨的更多信息。

        圖10. Pure pursuit 控制器

          · 縱向駕駛員模塊用于調節車輛的速度。具體來說,它是一個 PI 控制器,可為參考速度生成執行信號。

        圖11. 縱向駕駛員

          請注意,目前,我們通過使用查表來定義不同區域的速度,從而簡化了速度曲線的創建過程。但是,更推薦使用 Velocity Profiler來自動化速度曲線生成過程。

          · 結果:圖12 顯示了仿真軌跡和參考軌跡的比較。從結果可以明顯看出,橫向控制器成功跟隨了參考路徑。除了橫向控制外,縱向駕駛員還可以調節所需的速度。

        圖12. 第二圈獲得的車輛軌跡

          這篇文章展示了 MathWorks 工具如何在存在障礙物的情況下用于在封閉賽道上自主駕駛車輛。您可以擴展此方法,并利用文檔中提供的示例來設計和仿真自動駕駛汽車:

          隨著汽車行業的進步和發展,各種學生競賽中也開始引入了無人駕駛類別,中國大學生方程式無人車(FSAC)競賽就是其中之一。該類比賽的目的是讓同學們利用不同學科知識設計和制造可以自動行駛的汽車。使用 MATLAB 和 Simulink,您可以設計自動駕駛系統功能,包括傳感,路徑規劃,傳感器融合和控制系統。

        標簽:MathWorks MATLAB我要反饋
        最新視頻
        節卡 MiniCobo協作機器人全球發布   
        tesa? 58335貼合云母片后膠帶離型紙移除測試   
        世強
        福祿克
        輕松上手,直擊振動故障根源
        西門子:年中狂歡
        福祿克大展鉗途
        西克
        福祿克:最大程度降低工業以太網/生產線停工時間
        專題報道
        企業通訊
        2021世界人工智能大會專題報道
        2021世界人工智能大會專題報道

        今年大會已舉辦到第四屆,將圍繞“AI賦能城市數字化轉型”方向,探討人工智能技術創新與產業落地的前沿進展,廣泛傳遞城市數字

        智·能融合 邁向“碳中和”——2021WAIC智能趨勢論壇直播
        智·能融合 邁向“碳中和”——2021WAIC智能趨勢論壇直播

        從技術革新的視角,電氣化、數字化、智能化并舉是達成雙碳目標的關鍵所在。2021智能趨勢論壇以“智·能融合,邁向碳中和”為

        在線會議

        社區

        <strike id="d8ab4"></strike>
      1. <rp id="d8ab4"></rp>
        <span id="d8ab4"></span>
          <em id="d8ab4"><samp id="d8ab4"></samp></em>
        1. <s id="d8ab4"><samp id="d8ab4"><listing id="d8ab4"></listing></samp></s>
          <span id="d8ab4"><pre id="d8ab4"></pre></span>