用樹莓派+nodejs開發物聯網實時圖傳機器人
前言
專案的靈感來自皮克斯動畫《機器人總動員》的主角瓦力(wall。e)。一個在末日的廢墟中倖存並日復一日清潔著地球的可愛機器人。
這是一個十分有趣的物聯網專案!它執行在基於arm架構的raspiberry(樹莓派)開發板上。藉助效能出色的node和多平臺相容的硬體框架johnny-five,我們建立了這個專案。
此專案包括了服務端到前端程式,開發語言選用javascript,功能上包括了影片監控,溫度資料採集,遠端遙控,距離測量,gps定位等功能。
歡迎對物聯網感興趣的開發人員Issues
技術棧
johnny-five
vue
express
chart。js
mongoDB
目標功能
[x] 支援影片實時監控 (完成)
[x] 支援攝像頭轉動(完成)
[x] 支援手動控制電機執行(完成)
[x] 支援溫度採集(完成)
[ ] 支援gps定位
[ ] 支援距離探測
[ ] 支援循跡功能
[ ] 支援自由巡航
環境配置和依賴
樹莓派開發板(Raspberry Pi 3 Model B)
ubuntu mate16。0。4作業系統
node && npm
MJPG-streamer
執行專案
專案下載
git clone https://github。com/zexiplus/WALL。E。git
cd WALL。E
npm install
開發模式執行web介面程式
npm run dev
// then open the browser at http://localhost:1234
生產環境執行web介面程式
npm run build
npm run local
//then open the browser at http://localhost:2999
執行服務端程式
npm run board
材料準備
| 模組 | 價格 | 數量 |
| ———————— | ——-: | :——: |
| 樹莓派開發板 | ¥200 | 1 |
| 履帶底盤 | ¥350 | 1 |
| AD轉換器 | ¥15 | 1 |
| 紅外感測器 | ¥3 | 6 |
| SG90舵機 | ¥15 | 1 |
| 樹莓派攝像頭 | ¥80 | 1 |
| 電池 | ¥30 | 1 |
| gps模組 | ¥50 | 1 |
| MPU6050整合感測器模組 | ¥20 | 1 |
接線說明
接線參考圖如下
目前接入電路的模組有電機驅動模組,mpu6050整合模組,servo伺服電機模組,攝像頭模組。
電機驅動模組接收io引腳發出的高低電平,輸出12v的電壓從而驅動電機。
servo伺服電機模組用來轉動攝像頭,攝像頭固定於伺服電機支撐的轉軸上。
mpu6050模組可以感知周邊溫度,測量加速度等。
由於gps模組的通訊通道與wifi衝突,暫時無法引入,gps定位會在之後的版本中完成。
本專案樹莓派io引腳採用wiringPi編碼,如圖
接線描述:
伺服電機的訊號線接樹莓派開發板 1引腳(wiringPi編碼,下同)
mpu6050感測器SCL接樹莓派開發板 3引腳,SDA接 2引腳
電機驅動模組四個輸入端分別接樹莓派 21,22,23,24 引腳
專案展示
web控制頁面
專案維護人
float
協議
GPL