【Paper】2022_基于无人驾驶地面车辆的多Agent系统仿真平台的设计及编队控制协议的研究
分享自己的一篇文章,發布在人工生命與機器人ICAROB2022,歡迎各位引用。
A Design of Multi-Agent System Simulation Platform Based on Unmanned Ground Vehicles and A Research on Formation Control Protocol
文章目錄
- 摘要
- 1. Introduction
- 2. Multi-agent system simulation platform
- 2.1. UGV architecture
- 2.2. Communication network
- 2.3. UWB Positioning system
- 3. Formation algorithm
- 3.1. Consensus protocol
- 3.2. Formation protocol
- 4. Simulations
- 4.1. Experiment 1
- 4.2. Experiment 2
- 5. Conclusions
摘要
受自然界中螞蟻和魚類的啟發,多代理系統(MAS)在現代社會的生產和制造中發揮著巨大作用。本文以無人駕駛地面車輛(UGVs)為對象,設計了一個多車輛測試平臺,該平臺由UGVs、超寬帶(UWB)和藍牙Mesh組成。同時,UGV可以通過改變主控制器實現不同的控制目標。設計了UGVs的編隊控制協議并分析了其穩定性。該協議的有效性通過數值模擬得到了驗證。最后,將設計的控制協議應用于開發的硬件測試平臺,以驗證實驗平臺的有效性。
1. Introduction
多代理系統(MAS)技術在工業和制造業中發揮著巨大的作用。多代理系統的技術主要是受自然界中的螞蟻、魚類、鳥類等的啟發,來研究集群個體的應用。從理論上講,代理可以是任何東西,如UGV、UAV、傳感器、機械臂等。
目前,多Agent系統的理論研究已逐漸成熟,如多Agent系統的共識控制1、交會控制2、編隊控制3等。但在應用層面,仍有很多地方需要改進。
本文設計了一個多Agent系統的物理仿真平臺,以驗證其在實際場景中的應用。該平臺采用分層結構設計,主要包括通信層、代理層和定位層。通信層主要是建立代理之間的通信通道,使任何一個代理都可以與其他代理進行通信。代理人之間建立通信通道,使任何代理人都能與所有其他代理人進行通信。代理層包含了組成系統的所有個體。定位層在每個代理的定位中起作用。
一個UGV被設計成平臺的代理,它可以取代主控制器來匹配不同的編程語言,具有很大的靈活性。然后,解釋了藍牙網狀通信技術的原理和UWB定位的原理。
分析了多代理系統的動態共識和靜態共識,并在靜態共識的基礎上設計了系統的靜態編隊控制協議。最后,進行了數值模擬,以驗證所設計的靜態編隊控制協議的正確性。之后,將靜態編隊控制協議應用于物理仿真平臺,以驗證物理仿真平臺的有效性。
2. Multi-agent system simulation platform
多代理系統仿真平臺由三部分組成:1)代理。代理可以是任何東西,如UGV、UAV、傳感器、操縱器等。本文以UGV為例。2)通信網絡。代理在工作時需要知道其他代理的狀態信息。藍牙網的目的是建立代理之間的通信渠道。3)UWB定位系統。所有代理的位置狀態都來自這個系統。
2.1. UGV architecture
本文以UGV為研究對象,如圖2所示。UGV的主控制器可以使用Arduino、STM32和Raspberry Pi。為了實現精確定位,電機脈沖必須處于精確可控的狀態,因此編碼器返回的脈沖值與PID算法相結合形成閉環控制的PWM輸出。為了更方便地調整PID參數,LCD彩色屏幕用來顯示編碼器的返回值和ADC采集的電池電壓。實時采集電壓的主要目的是將電機的調節控制在一個固定的電壓范圍內,避免電流差的影響。
2.2. Communication network
該通信網絡采用藍牙網狀技術,芯片型號為E104-BT12NSP。該模塊支持Sig Mesh和2.4Ghz藍牙頻段。在組網中,每個節點可以作為代理節點或公共節點,每個節點之間的通信距離可以達到50米。如果一個節點被用作中繼,接收到的信號可以被修復和放大,網絡的定位可以更大。
2.3. UWB Positioning system
UWB定位技術可應用于室內靜態或移動物體和人的定位、跟蹤和導航,并能提供非常準確的定位信息。
UWB定位技術采用TOF(飛行時間差)測距。TOF測距方法是一種雙向的測距技術。它主要利用兩個收發器之間信號的飛行時間來測量節點之間的距離。模塊將從一開始就產生一個獨立的時間戳。模塊A的發射器在其時間戳的A1處發射一個請求的脈沖信號,模塊B在時間B2處發射一個響應的信號,模塊A在其時間戳的A2處收到這個信號。兩個模塊之間的脈沖信號的飛行時間可以被計算出來,以確定飛行距離。因為在視線環境下,基于TOF的測距方法與距離有線性關系,所以測量結果會更準確。
3. Formation algorithm
在這一部分,我們首先闡述了UGV的動態模型,然后介紹了普通二階系統的共識協議,最后構建了基于共識協議的編隊控制協議。
由于上面提到的UGV是一個兩輪差動車,我們假設UGV在移動時首先調整方向,然后開始移動。這樣一來,我們可以使用普通的二階系統模型作為代理的動力學模型。該系統動力學模型表示為
p˙i=viv˙i=ui(1)\begin{aligned} \dot{p}_i = v_i \\ \dot{v}_i = u_i \\ \end{aligned} \tag{1}p˙?i?=vi?v˙i?=ui??(1)
其中 pi=[pxpy]T,vi=[vxvy]Tp_i = \left[\begin{matrix} p^x & p^y \end{matrix}\right]^\text{T}, v_i = \left[\begin{matrix} v^x & v^y \end{matrix}\right]^\text{T}pi?=[px?py?]T,vi?=[vx?vy?]T 分別表示UGV得位置和速度。ui=[uxuy]Tu_i = \left[\begin{matrix} u^x & u^y \end{matrix}\right]^\text{T}ui?=[ux?uy?]T 是控制輸入。
3.1. Consensus protocol
二階系統的動態共識協議和靜態共識協議分別為式(2)和式(3)。
ui=α∑j∈Ni(pj?pi)+β∑j∈Ni(vj?vi)(2)u_i = \alpha \sum_{j\in N_i} (p_j - p_i) + \beta \sum_{j \in N_i} (v_j - v_i) \tag{2}ui?=αj∈Ni?∑?(pj??pi?)+βj∈Ni?∑?(vj??vi?)(2)
ui=α∑j∈Ni(pj?pi)?βvi(3)u_i = \alpha \sum_{j\in N_i} (p_j - p_i) - \beta v_i \tag{3}ui?=αj∈Ni?∑?(pj??pi?)?βvi?(3)
其中 α,β\alpha, \betaα,β 是正向增益,NiN_iNi? 表示節點 iii 的鄰居。
動態共識協議與靜態共識協議的區別在于系統的最終狀態是否是靜態的,即動態共識的最終速度狀態等于但不一定為0,位置處于不斷變化的狀態,但靜態共識的最終速度狀態等于0,位置保持靜止。
3.2. Formation protocol
基于系統的靜態共識協議(3),本文設計了以下靜態編隊控制協議(4)。
ui=α∑j∈Ni((pj?hj)?(pi?hi))?βvi(4)u_i = \alpha \sum_{j\in N_i} ((p_j-h_j) - (p_i-h_i)) - \beta v_i \tag{4}ui?=αj∈Ni?∑?((pj??hj?)?(pi??hi?))?βvi?(4)
其中 hi=[hxhy]Th_i = \left[\begin{matrix} h^x & h^y \end{matrix}\right]^\text{T}hi?=[hx?hy?]T 是智能體 iii 的編隊信息。
該協議 (4)可以保證系統在有限的時間內完成編隊并保持靜止狀態。公式(2)也可以改為動態形成協議,但它成為另一種時變形成問題,我們在此暫不討論。
4. Simulations
在這一部分,我們分別進行了數值仿真實驗和仿真平臺實驗。仿真實驗設定為系統有三個代理,其通信關系如圖5所示。仿真的最終目標是完成三角形陣列。
4.1. Experiment 1
設置三個UGV的初始狀態如下
p1(0)=[2015]T,v1(0)=[11]Tp_1(0) = \left[\begin{matrix} 20 & 15 \end{matrix}\right]^\text{T}, v_1(0) = \left[\begin{matrix} 1 & 1 \end{matrix}\right]^\text{T}p1?(0)=[20?15?]T,v1?(0)=[1?1?]T
p2(0)=[2010]T,v2(0)=[1?2]Tp_2(0) = \left[\begin{matrix} 20 & 10 \end{matrix}\right]^\text{T}, v_2(0) = \left[\begin{matrix} 1 & -2 \end{matrix}\right]^\text{T}p2?(0)=[20?10?]T,v2?(0)=[1??2?]T
p3(0)=[2020]T,v3(0)=[?21]Tp_3(0) = \left[\begin{matrix} 20 & 20 \end{matrix}\right]^\text{T}, v_3(0) = \left[\begin{matrix} -2 & 1 \end{matrix}\right]^\text{T}p3?(0)=[20?20?]T,v3?(0)=[?2?1?]T
正向增益為 α=0.3,β=1.5\alpha = 0.3, \beta = 1.5α=0.3,β=1.5。編隊控制協議為公式(4),圖6和圖7分別展示了在 X 軸和 Y 軸的仿真結果。
4.2. Experiment 2
在通過數值模擬驗證了編隊協議的正確性后,編隊控制協議(4)被應用于設計的物理模擬平臺。
實驗平臺如圖8所示,四個UWB作為錨點分布在實驗場地的四個角落,以提供輔助位置信息。還有三個UWB模塊安裝在UGV上以提供位置坐標。UGV上的藍牙模塊協助通信,使代理人能夠獲得諸如位置、速度和其他代理人的控制輸入等信息。
仿真平臺的運行效果如圖9所示,顯示了三個UGVs在不同時間段的不同位置。實驗開始時,三輛UGV排成一線(t=0s),然后由于控制協議的影響,開始逐漸遠離(t=15s)。由于速度的影響,距離會很大(t=30s),然后回到預定的隊形位置(t=45s),完成三角隊形。
5. Conclusions
本文設計了一個多Agent系統仿真平臺,并詳細介紹了組成仿真平臺的三個層次,包括代理層、通信層和定位層。設計了一種UGV,并將UGV作為一個代理來驗證仿真平臺的有效性。分析了共識控制協議,并在共識協議的基礎上設計了編隊控制協議,并應用于仿真平臺。
下一步,我們將設計不同類型的代理,并將其整合到我們的仿真平臺中,以擴大平臺的使用范圍。
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀
總結
以上是生活随笔為你收集整理的【Paper】2022_基于无人驾驶地面车辆的多Agent系统仿真平台的设计及编队控制协议的研究的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Paper】2022_多无人机系统的分
- 下一篇: 什么是图像梯度