嵌入式實訓之 智慧小車超聲波壁障
1.開發環境
kei5 + webstorm
2.開發語言
C + nodejs
3.基本功能
1.電機驅動
控制小車,前進、後退、停止、左轉、右轉等等。
2.超聲波測距
測量出小車與障礙物之間的距離,進而讓小車自動避開障礙物繼續前進。
3.語音播報(JQ8400)
播報指定的語音,達到人機互動與娛樂。
4.WIFI模組
實時顯示小車的當前的執行狀態。
4.整體架構
通過超聲波車距和電機驅動判斷小車當前所處的狀態(前進,後退,左轉彎,右轉彎等。通過WIFI透傳講小車狀態資料送到WEB介面(客戶端等)進行實時檢視
5.專案使用的模組和技術
1. STM32F4 C語言程式設計
2. 電機驅動
3. 語音模組(行進提示)
4. wifi模組透傳功能(資料傳輸)
5. 序列化技術(資料格式 len1.state1,len2.state2,...lenN.stateN)
6. nodejs 開發web客戶端
len1,len2...lenN.stateN 表示 障礙物距離.小車當前的狀態
6.工程原始碼結構
```
|--CORE
|--PWLIB
|--HARDWARE 模組封裝
|--HCSR04 超聲波模組
|--HMI 液晶屏模組
|--JQ8400 語音模組
|--KEY 按鍵模組
|--LED LED模組
|--MOTOR 電機模組
|--PATH 小車壁障演算法
|--WIFI wifi模組
|--TIMER 定時器模組
|--web WEB介面
```
7.壁障演算法 原理
1.向右轉判斷
2.向左轉判斷
1.記錄小車進入安全區臨界點與障礙物的距離L1
2.小車試探性向左轉一定的角度記錄距離L2
3.兩次的位移差記錄為L3
4.由於轉換角度很小,並且在很短的時間內完成因此
可以忽略小車變化的位移.
5.若L1>L2則表示小車左轉試探出錯,因右轉
6.若L1<L2則表示小車左轉試探正確
7.電路圖分析
1. STM32晶片,通過上面的100個引腳來控制各個模組,是總控制室。
2.電機驅動模組
電機驅動,是來控制小車的輪子。
3.超聲波模組
超聲波,是用來測車與障礙物的距離,到達指定的距離之後,讓小車進行轉彎,已達到避障的效果
4.語音模組
控制小車,播放指定的音訊