電子發(fā)燒友App

硬聲App

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示
創(chuàng)作
電子發(fā)燒友網(wǎng)>電子資料下載>電子資料>使用移動(dòng)設(shè)備的語(yǔ)音控制避障機(jī)器人車

使用移動(dòng)設(shè)備的語(yǔ)音控制避障機(jī)器人車

2022-11-21 | zip | 1.00 MB | 次下載 | 2積分

資料介紹

描述

1. 項(xiàng)目理念

我之前使用 Node.js 制作了一個(gè)網(wǎng)頁(yè)控制的流動(dòng)站,你可以在這里查看。所以這次做了一些升級(jí),我決定做一個(gè)“聲控避障漫游車”。

2. 項(xiàng)目目標(biāo)

通過(guò)從移動(dòng)網(wǎng)頁(yè)向流動(dòng)站發(fā)出語(yǔ)音命令來(lái)遠(yuǎn)程控制流動(dòng)站,并在它遇到任何障礙物時(shí)自動(dòng)檢測(cè)并停止。

3. 先決條件

您需要具備 Node、socket 編程和 L298 電機(jī)驅(qū)動(dòng)器工作的一些基本知識(shí)。

4. 要求

  • 跳線
  • 2 節(jié)電池 – 每節(jié) 9 伏
  • 2 個(gè)齒輪馬達(dá)(6-9 伏)
  • 2 個(gè)兼容的車輪
  • 機(jī)殼
  • 為我們的服務(wù)器安裝了 Node.js 的計(jì)算機(jī)。

5. 建造漫游者

要建造這個(gè)流動(dòng)站,您需要購(gòu)買一個(gè)“2 輪底盤套件”,該套件可在網(wǎng)上輕松獲得,并隨附所有組裝單元。

我們的 Arduino Uno 和 L298 電機(jī)驅(qū)動(dòng)器嵌入在我們的機(jī)箱頂部,兩者均由兩個(gè) ??9 伏電池分別供電。

反過(guò)來(lái),Arduino Uno 將為 HC-05 藍(lán)牙模塊供電,該模塊將與我們的服務(wù)器通信。反過(guò)來(lái),L298 電機(jī)驅(qū)動(dòng)器將通過(guò)其 5V 輸出引腳為 HC-SR04 超聲波傳感器供電。

6.電路圖

poYBAGN2-DuAbasuAACwIIxcmek634.png
?

如上電路圖所示,L298 電機(jī)驅(qū)動(dòng)器由 9V 電池供電,兩個(gè)電機(jī)控制輸出連接到電機(jī) A 和電機(jī) B,由于電機(jī)沒(méi)有極性,您可以連接任何端子,但請(qǐng)確保兩臺(tái)電機(jī)同向旋轉(zhuǎn)。

L298 還將通過(guò)其 5V 輸出引腳為我們的 HC-SR04 超聲波模塊供電,如上圖所示。不要移除 5V 穩(wěn)壓器跳線。

注意:如果給 L298 供電超過(guò) 12 伏,板載 5V 穩(wěn)壓器會(huì)損壞。

Arduino Uno 也由 9V 電池供電,其正極端子連接到 Arduino 的 Vin 引腳,負(fù)極端子連接到公共地。Arduino 反過(guò)來(lái)會(huì)為藍(lán)牙模塊供電,因此將 HC-05 的 Vcc 引腳連接到 Arduino 的 5V 和 GND 到地。

對(duì)于 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ù)傳輸

poYBAGN2-D6AWS8WAAFJezzj69I114.png
?

如上圖所示,是數(shù)據(jù)傳輸示意圖。

  • 用戶將打開節(jié)點(diǎn)服務(wù)器提供的網(wǎng)頁(yè)。移動(dòng)和節(jié)點(diǎn)服務(wù)器都應(yīng)該連接到同一個(gè)互聯(lián)網(wǎng)網(wǎng)絡(luò)。URL 將是帶有端口號(hào)的 IP 地址,例如“192.XXX.XXX.129:8080”。
  • 用戶向網(wǎng)頁(yè)發(fā)出語(yǔ)音命令,網(wǎng)頁(yè)識(shí)別后將使用套接字連接將所需的數(shù)據(jù)發(fā)送到節(jié)點(diǎn)服務(wù)器。
  • 節(jié)點(diǎn)服務(wù)器會(huì)將數(shù)據(jù)傳遞給 HC-05 藍(lán)牙模塊,因?yàn)閮烧叨际桥鋵?duì)的。
  • HC-05 將使用串行通信將數(shù)據(jù)傳輸?shù)?Arduino UNO。
  • Arduino UNO 將依次控制 L298 模塊

8.設(shè)置服務(wù)器

對(duì)于我們的服務(wù)器,我們需要安裝 Node.js。安裝任何穩(wěn)定版本的node,我的是11.15版本。我們需要安裝以下軟件包-

注意 – 安裝“node-gyp”可能會(huì)很棘手,因?yàn)樗恢С帜承?a href='http://wenjunhu.com/article/bbs/' target='_blank' class='arckwlink_none'>最新版本的 Node,因此最好安裝 11.15 版本的 Node。

現(xiàn)在,我們需要監(jiān)聽來(lái)自網(wǎng)頁(yè)的事件,并且要托管該網(wǎng)頁(yè),我們需要一個(gè)服務(wù)器。所以,使用像“ express.js”這樣的包創(chuàng)建一個(gè)服務(wù)器,這將使我們的工作更容易。

服務(wù)器設(shè)置完成后,我們需要設(shè)計(jì)一個(gè)網(wǎng)頁(yè),我們將從中發(fā)出語(yǔ)音命令。這里我使用了“ ejs”包來(lái)渲染網(wǎng)頁(yè)。但是發(fā)出語(yǔ)音命令是不夠的,我們還需要識(shí)別語(yǔ)音以控制我們的漫游車。因此,對(duì)于語(yǔ)音識(shí)別,我們將使用Web Speech API 它將為我們所說(shuō)的任何內(nèi)容提供文本作為輸出。

這是我的網(wǎng)頁(yè)——

pYYBAGN2-ESARbJjAADeIzCxh40962.jpg
?

注意 - 語(yǔ)音識(shí)別不適用于非安全網(wǎng)頁(yè),因此不適用于包含您的 IP 地址的 URL。要使其正常工作,您需要在 Chrome 瀏覽器中將您的 URL 設(shè)置為安全,

現(xiàn)在,一旦我們說(shuō)了什么并且它是一個(gè)符合條件的命令,我們將使用“ socket.io”包向節(jié)點(diǎn)服務(wù)器發(fā)送一個(gè)包含所需數(shù)據(jù)的套接字消息

Node服務(wù)器收到來(lái)自網(wǎng)頁(yè)的消息后會(huì)將數(shù)據(jù)傳遞給HC-05藍(lán)牙模塊,為此,我們將使用“ node-bluetooth”包。

9. 避障邏輯

pYYBAGN2-EiAdHsPAAXxy4_c_TA105.jpg
?

HC-SR04 超聲波傳感器可以檢測(cè)到前方的障礙物。所以我們需要使用距離-速度-時(shí)間方程來(lái)計(jì)算障礙物與流動(dòng)站之間的距離,找到附上的代碼實(shí)現(xiàn),或者參考這個(gè)博客了解更多信息。

獲得距離后,我們將設(shè)置一個(gè)限制,越過(guò)這將停止流動(dòng)站。例如,在這個(gè)項(xiàng)目中,我設(shè)置了 17 厘米的限制,這意味著一旦障礙物與漫游車之間的距離低于 17 厘米,漫游車就會(huì)自動(dòng)停止。

10. Arduino 代碼

由于藍(lán)牙將使用串行通信與 Arduino-Uno 通信,我們將發(fā)送一些“字符串”作為命令,并帶有一個(gè)額外的字母,告訴我們終止并捕獲該字符串。

例如-:向前移動(dòng),藍(lán)牙會(huì)發(fā)送“forwardT”,而在Arduino端,只要遇到字母“T”,就知道串口通信完成,抓到的字符串是“forward”。

通過(guò)傳入的字符串命令,我們將配置 L298 驅(qū)動(dòng)程序向前、向后、向左、向右、改變速度等。

找到附加的 Arduino 代碼。

11- 最終結(jié)果

?

?


下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評(píng)論

查看更多

下載排行

本周

  1. 1山景DSP芯片AP8248A2數(shù)據(jù)手冊(cè)
  2. 1.06 MB  |  532次下載  |  免費(fèi)
  3. 2RK3399完整板原理圖(支持平板,盒子VR)
  4. 3.28 MB  |  339次下載  |  免費(fèi)
  5. 3TC358743XBG評(píng)估板參考手冊(cè)
  6. 1.36 MB  |  330次下載  |  免費(fèi)
  7. 4DFM軟件使用教程
  8. 0.84 MB  |  295次下載  |  免費(fèi)
  9. 5元宇宙深度解析—未來(lái)的未來(lái)-風(fēng)口還是泡沫
  10. 6.40 MB  |  227次下載  |  免費(fèi)
  11. 6迪文DGUS開發(fā)指南
  12. 31.67 MB  |  194次下載  |  免費(fèi)
  13. 7元宇宙底層硬件系列報(bào)告
  14. 13.42 MB  |  182次下載  |  免費(fèi)
  15. 8FP5207XR-G1中文應(yīng)用手冊(cè)
  16. 1.09 MB  |  178次下載  |  免費(fèi)

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費(fèi)
  3. 2555集成電路應(yīng)用800例(新編版)
  4. 0.00 MB  |  33566次下載  |  免費(fèi)
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費(fèi)
  7. 4開關(guān)電源設(shè)計(jì)實(shí)例指南
  8. 未知  |  21549次下載  |  免費(fèi)
  9. 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費(fèi)
  11. 6數(shù)字電路基礎(chǔ)pdf(下載)
  12. 未知  |  13750次下載  |  免費(fèi)
  13. 7電子制作實(shí)例集錦 下載
  14. 未知  |  8113次下載  |  免費(fèi)
  15. 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
  16. 0.00 MB  |  6656次下載  |  免費(fèi)

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費(fèi)
  3. 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
  4. 78.1 MB  |  537798次下載  |  免費(fèi)
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420027次下載  |  免費(fèi)
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費(fèi)
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費(fèi)
  11. 6電路仿真軟件multisim 10.0免費(fèi)下載
  12. 340992  |  191187次下載  |  免費(fèi)
  13. 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
  14. 158M  |  183279次下載  |  免費(fèi)
  15. 8proe5.0野火版下載(中文版免費(fèi)下載)
  16. 未知  |  138040次下載  |  免費(fèi)