• 正文
  • 相關推薦
申請入駐 產業(yè)圖譜

卷積神經網絡控制巡線智能車

2020/07/08
159
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

簡介

Michal Nand[1] 在網站 HACKADAY.IO 上通過博文 Motoku Uprising ?Deep Neural Network 介紹了他利用卷積神經網絡來幫助控制巡線智能車更加平穩(wěn)快速運行的技術方案。特別是對神經網絡的結構、訓練、部署等方面進行了詳細的介紹。

智能車的任務相對比較簡單,就是在平面賽道上,沿著彩色導引線(大部分是黑色)從出發(fā)點運行到終點并折返到出發(fā)點。其中賽道上一段有一塊磚頭作為障礙物。

▲ 利用神經網絡控制的巡線智能車

在作者的方案中,智能車運行大部分控制算法都采用了常規(guī)的 PID、邏輯判斷都算法。他使用了 CNN 根據車模運行過程中,通過傳感器搜集到的二維路面數據來對賽道的種類進行分類判斷,并通過調整車模速度來適應不同賽道的情況,達到又快又穩(wěn)的目的。

□ 機械結構

1. 硬件構成

這款智能車的硬件配置包括有:

嵌入式控制器:STM32F303,Cortex M4F 72MHz

電機驅動器:使用了 TI DRV8834 低電壓雙相步進電機驅動器

電機型號:Pololu HP 電機,減速齒輪箱 1:30,帶有磁編碼器

輪胎:Poloku 28mm 的輪胎,高黏著力

慣性導航器件:LSM6DS0

巡線傳感器:八個綠光(540nm)光電傳感器,三個紅外障礙日干起

電源:180mAh, LiPol 2S

編程結構:使用 USB 通過 Bootloader 完成程序下載。

▲ 智能車的硬件構成

2. 組成器件

□ 控制算法

1. 控制調試界面

“磨刀不誤砍柴工”。作者還是利用 OPENGL 開發(fā)了用于調試的應用軟件??梢酝ㄟ^界面:

顯示八個巡線光電傳感器的原始數值

顯示電機的狀態(tài):速度、編碼器值

顯示慣性傳感器的狀態(tài);

顯示神經網絡分類處理過程

顯示通過串口獲得的 原始數據

▲ 編程調試界面

2. 智能車控制軟件要點

智能車軟件的主要的功能和指標為:

通過二次插值算法,通過八個光電傳感器獲得更加精確的賽道到引線位置

主程序控制頻率為:200Hz

方向調節(jié)器:采用 PD 進行方向控制

電機速度控制:采用雙串級 PID 控制完成電機速度控制

對賽道到引線預測:在直線賽道加速前行;在曲線拐彎時剎車慢行;通過深度神經網絡進行賽道識別和控制

控制軟件使用 C++編程

神經網絡訓練:采用 GPU 加速網絡訓練

▲ 智能車的軟件控制框架

3. 神經網絡用于引導線的預測

利用深度卷積神經網絡完成對導引線的預測和分類:

根據導引線的種類控制運行速度:直線時快速通過,曲線時減速慢行

使用 DenseNet:稠密連接卷積神經網絡完成對賽道引導線類型的分類

輸入數據為 8×8 傳感器數據矩陣??偣灿邪藗€配列成直線的光電傳感器,使用運行前后相鄰八條數據組成 8×8 的數據矩陣

輸出物種曲線類型:兩種右拐,兩種左拐,一種直線

▲ 神經網絡結構圖

訓練樣本采用人工生成的仿真數據訓練神經網絡:

訓練樣本的個數:25000

測試樣本的個數:5000

數據增強:Luma 噪聲, White 噪聲

▲ 輸入訓練數據樣本

下圖給出了 DenseNet 的網絡結構。由于是部署在單片機 STM303 中允許,作者在網絡的魯棒性以及運行速度方面進行了權衡。網絡運行頻率為 200Hz,所以網絡執(zhí)行時間必須小于 5 毫秒。為了達到這個目的,作者選擇了 DenseNet 來提高計算效率,它比純卷積神經網絡使用更少的卷積核。

▲ 神經網絡的結構

最終網絡的識別準確率達到了 95% 的精度。

4. 網絡最終結構

CNN 神經網絡的結果參數如下:
?

▲ 神經網絡的各層結構參數

5. 將網絡部署到單片機中

為了能夠在 32 位單片機中執(zhí)行神經網絡,對網絡進行了如下的改動:

將所有的浮點數修改成 int8_t

將尺度權重轉換到 8bit 范圍

使用雙緩存技巧節(jié)省內容,公用兩個內存緩存來計算所有層的數據

▲ 雙內存緩存的模式

※ 結論

通過本文作者介紹的車??刂浦械?CNN 網絡的應用,了解了對于嵌入式單片機中使用神經網絡的一般方法。

本文中的神經網絡應用還屬于輔助控制方面。也許通過部署更加強大算力的單片機,使用更加復雜的算法可以完成智能車自主學習的目標。這方面也為今年全國大學生智能汽車競賽中的 AI 電磁組給出了一定的參考意義。

參考資料

[1]Michal Nand: https://hackaday.io/michalkenshin

相關推薦

登錄即可解鎖
  • 海量技術文章
  • 設計資源下載
  • 產業(yè)鏈客戶資源
  • 寫文章/發(fā)需求
立即登錄

公眾號TsinghuaJoking主筆。清華大學自動化系教師,研究興趣范圍包括自動控制、智能信息處理、嵌入式電子系統(tǒng)等。全國大學生智能汽車競賽秘書處主任,技術組組長,網稱“卓大大”。