資料介紹
描述
介紹
我們的目標(biāo)是創(chuàng)建一個自主的室內(nèi)機器人,它使用不同的控制策略來處理它的運動。在這個項目中,我們提出了一種解決方案,它對傳感器進行建模并實施模型預(yù)測控制 (MPC)。
關(guān)于 MPC 控制的一些話: 模型預(yù)測控制 (MPC) 是一種眾所周知的用于解決在線優(yōu)化問題的控制策略,廣泛用于自動駕駛汽車應(yīng)用。MPC 的計算成本高且資源消耗大,尤其是當(dāng)涉及到嵌入式計算平臺的有限資源時,例如片上系統(tǒng) (SoC) 和現(xiàn)場可編程門陣列 (FPGA) 平臺。最近,機器學(xué)習(xí)(ML)在減少執(zhí)行時間和資源消耗方面已成為經(jīng)典控制系統(tǒng)的有效替代方案。模型預(yù)測控制 (MPC) 是最常用的控制策略之一,因為它能夠解決在線優(yōu)化問題并處理軟約束和硬約束。但是,對于復(fù)雜的高非線性系統(tǒng),MPC的實現(xiàn)是一個很大的挑戰(zhàn);
深度神經(jīng)網(wǎng)絡(luò)被認(rèn)為是一種自我優(yōu)化的方法,因為它能夠根據(jù)提供的信息優(yōu)化其行為,這使得 DNN 適用于復(fù)雜的動態(tài)系統(tǒng)。使用 Matlab Simulink 和 MPC 工具,我們發(fā)現(xiàn)這會讓人頭疼,因為我們使用的是小型 FPGA。出于這個原因,在米什科爾茨大學(xué),我們創(chuàng)建了一個 DNN 工具,它從給定的輸入數(shù)據(jù)創(chuàng)建一個基于給定數(shù)據(jù)中的 System Generator 庫元素的可參數(shù)化 DNN 網(wǎng)絡(luò)。
一個傳統(tǒng)的 MPC 控制器如圖 1 所示。MPC 控制器的預(yù)測策略是在預(yù)測范圍內(nèi)執(zhí)行的,它代表了控制器期待未來的下一個 P 時間步長。MPC 控制器模擬幾個未來場景,優(yōu)化器根據(jù)成本函數(shù)選擇最佳場景,成本函數(shù)代表參考目標(biāo)和預(yù)測輸出之間的誤差。最優(yōu)方案對應(yīng)于最小成本函數(shù)。

該控制器計算量大,因為它解決了每個時間步的在線優(yōu)化問題,這需要高計算能力和大內(nèi)存。計算負(fù)載和高資源消耗使 MPC 在有限資源上的實現(xiàn)成為一個巨大的挑戰(zhàn)。
設(shè)計MPC模型的第一步是確定車輛內(nèi)部模型的輸入輸出信號,第二步是設(shè)置參數(shù)和確定約束條件。操縱變量(轉(zhuǎn)向角 δ)和擾動(vx ρ)被確定為輸入信號,而橫向速度 vy、橫向偏差 d、偏航角 θ 和偏航率 ω 被確定為輸出信號(見圖 2)。

模型方程如下:

約束條件如下確定:轉(zhuǎn)向角在 [-1.04, 1.04] rad 范圍內(nèi),偏航角速率在 [-0.26, 0.26] rad 范圍內(nèi)。在設(shè)計過程中保持這些參數(shù),直到獲得滿意的行為。MPC 和工廠模型的總體設(shè)計如圖 4 所示。

深度神經(jīng)網(wǎng)絡(luò) IP 程序的自動生成
設(shè)計步驟如下:
- 首先制作了傳統(tǒng)的MPC控制器;驗證和測試 MPC 設(shè)計;深度神經(jīng)網(wǎng)絡(luò)模型設(shè)計,生成數(shù)據(jù)集;訓(xùn)練 DNN 模型;驗證和測試 DNN 模型;(這些步驟對于每個新的 DNN 都是特定的,因此這里不介紹這些步驟);
- 下一步是運行IP工具生成器(見附件中的工具);
- 運行仿真和硬件在環(huán)仿真(見模型和隨附的初始化文件);
- FPGA 在硬件中的部署和測試。
- 為 KRIA SOM KV260 創(chuàng)建自適應(yīng)硬件平臺(參見教程https://github.com/Xilinx/Vitis-Tutorials/tree/2021.2/Vitis_??Platform_Creation/Design_Tutorials/01-Edge-KV260)
- 將 AXI IP DNN 導(dǎo)入 Vivado 或 Vitis(在編輯和提交項目時,我們沒有收到 Xilinx 的反饋如何在 Vitis 中導(dǎo)入翻譯后的項目)
對于深度神經(jīng)網(wǎng)絡(luò) IP 的自動生成,創(chuàng)建的 DNN 工具(見附件 DNN 工具 IP 生成器)。
首先使用 DNN 工具創(chuàng)建 DNN。一般而言,將使用該工具的人應(yīng)提供以下參數(shù):
該工具的輸入如下:
- 每層的神經(jīng)元數(shù)量
- 精度(浮點或 FIX16 或 FIX8)
- 權(quán)重
- 偏見
輸出是在 Matlab Simulink 中生成的 DNN IP。
備注:該工具正在工作,但應(yīng)考慮針對不同的 AMD Xilinx 平臺進行一些優(yōu)化和修飾。這是 PL(可編程邏輯)包含的神經(jīng)元和 DSP 元素數(shù)量的函數(shù)。該工具已針對 KC705 板和 Kria KV260 SOM 成功測試。
首先加載DNN_Generator.m文件并根據(jù)需要進行編輯:
%Edit model_parameters_here...神經(jīng)元計數(shù) = [6 20 10 10 1]; % 7 層中每一層的神經(jīng)元數(shù)量%starting model... init;
然后運行。該模型已創(chuàng)建并可用于自己的目的。
仿真/硬件在環(huán)仿真 (HIL)
在 Simulink 環(huán)境下進行了仿真,取得了不錯的效果。不幸的是,對于 Kria KV260 模塊,系統(tǒng)生成器不允許我們進行硬件在環(huán)仿真。我們使用 KC705 板為生成的 DNN 制作了 HIL。使用 KV260 仿真和使用 KC705 的 HIL 獲得的結(jié)果相似。
如下圖(圖 5)所示創(chuàng)建的 Vivado 項目已成功翻譯并導(dǎo)出到 Vitis。在 Vitis 軟件中,我們甚至無法運行“hello world”項目。Vitis 報告“平臺無法識別。

在圖中(圖 5)可以觀察到,我們創(chuàng)建了兩個 IP-s,一個與 AXI 兼容,一個沒有 AXI 接口。我們的經(jīng)驗是,沒有 AXI 接口的設(shè)備在 KC705 平臺上工作得更正確。
只是為了在下圖中顯示一個示例,我們展示了 KC705 模塊的結(jié)果,因為我們無法在 KV260 上進行 HIL 和測試。



結(jié)果
創(chuàng)建的 DNN_tool 可用于實現(xiàn)任何 DNN 網(wǎng)絡(luò),并且可以在 Simulink 中進行測試。模擬、HIL 和實施可以在 FGPA 中完成。
創(chuàng)建的工具可供任何人免費使用。
不幸的是,我們無法在 Kria 板上測試模型預(yù)測控制,但可能在不久的將來我們會在 AMD-Xilinx 工作人員的幫助下解決這個問題。
我們面臨的主要問題是如何在不使用 RTL 內(nèi)核向?qū)У那闆r下將 DNN MPC 模型集成到 Vitis。
評論
(對于具有高級知識的人)構(gòu)建一個項目需要多長時間?
答案是:1 小時來訓(xùn)練和準(zhǔn)備 DNN。5 分鐘安裝 DNN 工具并生成 IP。10-20 分鐘通過導(dǎo)入 IP 并進行所有必要的設(shè)置來創(chuàng)建 Vivado 項目。5-30 分鐘(取決于 DNN 的大小和優(yōu)化策略)創(chuàng)建比特流。10 分鐘遷移到 Vitis 并運行項目。30 - 60 分鐘編寫 C 程序并測試結(jié)果。
我們花了多長時間構(gòu)建 DNN 工具并在不同平臺上測試該工具?
答案是:5個月每天工作3-5小時左右。
- 通用RFID生成器 1次下載
- 迷你自主機器人開源分享
- 自主機器人開源項目
- MIF文件生成器下載 18次下載
- AN-113:精密坡道生成器
- 基于生成器的圖像分類對抗樣本生成模型 2次下載
- Xilinx LogiCORE IP塊內(nèi)存生成器的產(chǎn)品指南 22次下載
- 自主機器人足球系統(tǒng)的通信機制 0次下載
- 自主機器人避障方法研究 0次下載
- 代碼生成器的應(yīng)用 0次下載
- 智能機器人的適應(yīng)自主Agents的建模 10次下載
- LED段碼生成器 98次下載
- 漢語句子聯(lián)想生成器
- UOC III系列器件 DMP生成器 (DMP Create
- pim卡資料生成器
- 如何使用PLC控制機器人 1882次閱讀
- TSMaster報文發(fā)送的信號生成器操作說明 1063次閱讀
- 個性化地定制自己的uvm代碼生成器模板和腳本 2142次閱讀
- 代碼生成器配置和軟件UART的實現(xiàn) 1596次閱讀
- 如何使用DonkeyCar平臺構(gòu)建一個自主機器人 2296次閱讀
- 利用雷達(dá)目標(biāo)生成器測試整個雷達(dá)系統(tǒng)的方法介紹 2691次閱讀
- 機器人控制系統(tǒng)分類_機器人控制系統(tǒng)有哪些 2.6w次閱讀
- 機器人控制器有哪些類型_機器人控制器發(fā)展 1.2w次閱讀
- 移動機器人控制系統(tǒng)設(shè)計與仿真 3640次閱讀
- 仙知機器人自主研發(fā)用于移動機器人應(yīng)用專業(yè)級客戶端軟件Roboshop 6250次閱讀
- 帶你一起學(xué)習(xí)徹底搞懂Python生成器 2775次閱讀
- 盤點機器人傳感器的類型及其作用 7951次閱讀
- 如何提高生成器G樣本質(zhì)量的新方法 6147次閱讀
- 關(guān)于機器人傳感器的種類介紹 1.3w次閱讀
- 機器人自主充電座PCB圖和自主充電原理圖 9294次閱讀
下載排行
本周
- 1山景DSP芯片AP8248A2數(shù)據(jù)手冊
- 1.06 MB | 532次下載 | 免費
- 2RK3399完整板原理圖(支持平板,盒子VR)
- 3.28 MB | 339次下載 | 免費
- 3TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 4DFM軟件使用教程
- 0.84 MB | 295次下載 | 免費
- 5元宇宙深度解析—未來的未來-風(fēng)口還是泡沫
- 6.40 MB | 227次下載 | 免費
- 6迪文DGUS開發(fā)指南
- 31.67 MB | 194次下載 | 免費
- 7元宇宙底層硬件系列報告
- 13.42 MB | 182次下載 | 免費
- 8FP5207XR-G1中文應(yīng)用手冊
- 1.09 MB | 178次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33566次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關(guān)電源設(shè)計實例指南
- 未知 | 21549次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅(qū)動電路設(shè)計》 溫德爾著
- 0.00 MB | 6656次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537798次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420027次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191187次下載 | 免費
- 7十天學(xué)會AVR單片機與C語言視頻教程 下載
- 158M | 183279次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論