資料介紹
描述
1. 項目理念
我之前使用 Node.js 制作了一個網(wǎng)頁控制的流動站,你可以在這里查看。所以這次做了一些升級,我決定做一個“聲控避障漫游車”。
2. 項目目標
通過從移動網(wǎng)頁向流動站發(fā)出語音命令來遠程控制流動站,并在它遇到任何障礙物時自動檢測并停止。
3. 先決條件
您需要具備 Node、socket 編程和 L298 電機驅(qū)動器工作的一些基本知識。
4. 要求
- 1 Arduino Uno
- HC-05 藍牙模塊
- HC-SR04 超聲波傳感器
- 跳線
- 2 節(jié)電池 – 每節(jié) 9 伏
- 2 個齒輪馬達(6-9 伏)
- 2 個兼容的車輪
- 機殼
- 為我們的服務(wù)器安裝了 Node.js 的計算機。
5. 建造漫游者
要建造這個流動站,您需要購買一個“2 輪底盤套件”,該套件可在網(wǎng)上輕松獲得,并隨附所有組裝單元。
我們的 Arduino Uno 和 L298 電機驅(qū)動器嵌入在我們的機箱頂部,兩者均由兩個 ??9 伏電池分別供電。
反過來,Arduino Uno 將為 HC-05 藍牙模塊供電,該模塊將與我們的服務(wù)器通信。反過來,L298 電機驅(qū)動器將通過其 5V 輸出引腳為 HC-SR04 超聲波傳感器供電。
6.電路圖
如上電路圖所示,L298 電機驅(qū)動器由 9V 電池供電,兩個電機控制輸出連接到電機 A 和電機 B,由于電機沒有極性,您可以連接任何端子,但請確保兩臺電機同向旋轉(zhuǎn)。
L298 還將通過其 5V 輸出引腳為我們的 HC-SR04 超聲波模塊供電,如上圖所示。不要移除 5V 穩(wěn)壓器跳線。
注意:如果給 L298 供電超過 12 伏,板載 5V 穩(wěn)壓器會損壞。
Arduino Uno 也由 9V 電池供電,其正極端子連接到 Arduino 的 Vin 引腳,負極端子連接到公共地。Arduino 反過來會為藍牙模塊供電,因此將 HC-05 的 Vcc 引腳連接到 Arduino 的 5V 和 GND 到地。
對于 HC-05 和 Arduino 之間的串行通信,將 HC-05 的 TXD 引腳連接到 Arduino 的 RX 引腳,將 HC-05 的 RXD 引腳連接到 Arduino 的 TX 引腳。
現(xiàn)在要控制 L298 模塊,您可以將 EN1 和 EN2 引腳連接到 Arduino 的任何 PWM 引腳。然后將L298的輸入引腳-1、2、3、4與Arduino的任意數(shù)字引腳連接。
7.數(shù)據(jù)傳輸
如上圖所示,是數(shù)據(jù)傳輸示意圖。
- 用戶將打開節(jié)點服務(wù)器提供的網(wǎng)頁。移動和節(jié)點服務(wù)器都應該連接到同一個互聯(lián)網(wǎng)網(wǎng)絡(luò)。URL 將是帶有端口號的 IP 地址,例如“192.XXX.XXX.129:8080”。
- 用戶向網(wǎng)頁發(fā)出語音命令,網(wǎng)頁識別后將使用套接字連接將所需的數(shù)據(jù)發(fā)送到節(jié)點服務(wù)器。
- 節(jié)點服務(wù)器會將數(shù)據(jù)傳遞給 HC-05 藍牙模塊,因為兩者都是配對的。
- HC-05 將使用串行通信將數(shù)據(jù)傳輸?shù)?Arduino UNO。
- Arduino UNO 將依次控制 L298 模塊
8.設(shè)置服務(wù)器
對于我們的服務(wù)器,我們需要安裝 Node.js。安裝任何穩(wěn)定版本的node,我的是11.15版本。我們需要安裝以下軟件包-
注意 – 安裝“node-gyp”可能會很棘手,因為它不支持某些最新版本的 Node,因此最好安裝 11.15 版本的 Node。
現(xiàn)在,我們需要監(jiān)聽來自網(wǎng)頁的事件,并且要托管該網(wǎng)頁,我們需要一個服務(wù)器。所以,使用像“ express.js”這樣的包創(chuàng)建一個服務(wù)器,這將使我們的工作更容易。
服務(wù)器設(shè)置完成后,我們需要設(shè)計一個網(wǎng)頁,我們將從中發(fā)出語音命令。這里我使用了“ ejs”包來渲染網(wǎng)頁。但是發(fā)出語音命令是不夠的,我們還需要識別語音以控制我們的漫游車。因此,對于語音識別,我們將使用Web Speech API, 它將為我們所說的任何內(nèi)容提供文本作為輸出。
這是我的網(wǎng)頁——
注意 - 語音識別不適用于非安全網(wǎng)頁,因此不適用于包含您的 IP 地址的 URL。要使其正常工作,您需要在 Chrome 瀏覽器中將您的 URL 設(shè)置為安全,
現(xiàn)在,一旦我們說了什么并且它是一個符合條件的命令,我們將使用“ socket.io”包向節(jié)點服務(wù)器發(fā)送一個包含所需數(shù)據(jù)的套接字消息。
Node服務(wù)器收到來自網(wǎng)頁的消息后會將數(shù)據(jù)傳遞給HC-05藍牙模塊,為此,我們將使用“ node-bluetooth”包。
9. 避障邏輯
HC-SR04 超聲波傳感器可以檢測到前方的障礙物。所以我們需要使用距離-速度-時間方程來計算障礙物與流動站之間的距離,找到附上的代碼實現(xiàn),或者參考這個博客了解更多信息。
獲得距離后,我們將設(shè)置一個限制,越過這將停止流動站。例如,在這個項目中,我設(shè)置了 17 厘米的限制,這意味著一旦障礙物與漫游車之間的距離低于 17 厘米,漫游車就會自動停止。
10. Arduino 代碼
由于藍牙將使用串行通信與 Arduino-Uno 通信,我們將發(fā)送一些“字符串”作為命令,并帶有一個額外的字母,告訴我們終止并捕獲該字符串。
例如-:向前移動,藍牙會發(fā)送“forwardT”,而在Arduino端,只要遇到字母“T”,就知道串口通信完成,抓到的字符串是“forward”。
通過傳入的字符串命令,我們將配置 L298 驅(qū)動程序向前、向后、向左、向右、改變速度等。
找到附加的 Arduino 代碼。
11- 最終結(jié)果
?
- 藍牙控制的避障機器人
- 基于Arduino UNO的避障機器人 1次下載
- 如何制作避障機器人
- Arduino機器人避障
- 基于降級模糊避障控制算法的爬壁機器人 16次下載
- 基于區(qū)塊鏈的偵查機器人實時避障設(shè)計方案 10次下載
- 設(shè)計雙目視覺移動機器人的路徑規(guī)劃和避障系統(tǒng)的研究說明 3次下載
- 如何進行簡易避障機器人的設(shè)計 27次下載
- 如何使用16位單片機進行智能循線和避障機器人設(shè)計資料說明 5次下載
- 單片機控制的機器人避障系統(tǒng) 2次下載
- 吸塵機器人系統(tǒng)設(shè)計與避障算法研究 4次下載
- 基于模糊控制的移動機器人避障研究_楊小菊 0次下載
- 自主機器人避障方法研究 0次下載
- 移動機器人避障路徑規(guī)劃方法研究 0次下載
- 移動機器人的超聲模糊避障算法
- 基于TMS320F2812芯片實現(xiàn)移動機器人的導航和控制系統(tǒng)的應用方案 2705次閱讀
- 微雪電子 Micro:bit輪式智能機器人簡介 2337次閱讀
- 微雪電子智能車Arduino AlphaBot2簡介 2085次閱讀
- 微雪電子智能車學習板配件包Arduino開發(fā)板簡介 1391次閱讀
- 微雪電子輪式智能機器人簡介 1225次閱讀
- dfrobotminiQ 4WD教育機器人介紹 2108次閱讀
- 移動機器人控制系統(tǒng)的發(fā)展方向? 1411次閱讀
- 移動機器人控制系統(tǒng)設(shè)計與仿真 3433次閱讀
- 機器人視覺避障的常用傳感器介紹和原理說明 1.3w次閱讀
- 機器人底盤的主要三大技術(shù) 8064次閱讀
- 如何區(qū)分機器人、協(xié)作機器人和移動機器人? 6828次閱讀
- 如何解決機器人“避障”的問題 4442次閱讀
- 關(guān)于被動同心轉(zhuǎn)向式多履帶全向移動機器人的設(shè)計 8935次閱讀
- 移動機器人的那些避障方法你知多少? 6593次閱讀
- 在實現(xiàn)自主導航之前 移動機器人都有哪些避障方法? 2204次閱讀
下載排行
本周
- 1無鉛焊接的可靠性
- 1.03 MB | 5次下載 | 1 積分
- 2GBT1094.11-2022電力變壓器第11部分:干式變壓器
- 14.12 MB | 3次下載 | 免費
- 3PT500齒輪傳動動力學綜合測試實驗臺
- 0.16 MB | 3次下載 | 免費
- 4爬電距離和電氣間隙計算
- 0.75 MB | 2次下載 | 1 積分
- 5SX1308應用電路圖與SX1308升壓電路圖
- 0.18 MB | 1次下載 | 免費
- 6ADC參數(shù)單位換算
- 761.94KB | 1次下載 | 免費
- 7串口工具UartAssist5.0.exe
- 0.60 MB | 1次下載 | 免費
- 8UCC38C42 25瓦自諧振復位正激變換器
- 320.6KB | 1次下載 | 免費
本月
- 1ACDC變換器的原理圖免費下載
- 0.26 MB | 65次下載 | 免費
- 2無刷電機控制方案設(shè)計合作
- 1.05 MB | 22次下載 | 免費
- 3美的超薄電磁爐TM-S1-09B主板原理圖
- 0.08 MB | 20次下載 | 免費
- 4純電動汽?的主要部件及?作原理
- 5.76 MB | 11次下載 | 5 積分
- 5GP328和GP88S對講機的維修實列資料合集免費下載
- 0.03 MB | 10次下載 | 10 積分
- 6舒爾SLX4無線話筒接收機原理圖:二次變頻超外差部分
- 0.27 MB | 8次下載 | 免費
- 7IP5385_DEMO開發(fā)資料
- 1.96 MB | 7次下載 | 2 積分
- 8i.MX Linux開發(fā)實戰(zhàn)指南—基于野火i.MX系列開發(fā)板
- 17.86 MB | 6次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935115次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191363次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81580次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73805次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評論
查看更多