99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

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

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

3天內(nèi)不再提示

如何利用TinyML實(shí)現(xiàn)語(yǔ)音識(shí)別機(jī)器人車(chē)的設(shè)計(jì)

科技觀察員 ? 來(lái)源:文森特·科克 ? 作者:文森特·科克 ? 2022-04-11 16:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在本文中,我將在 Wio 終端上制作一個(gè)帶有內(nèi)置麥克風(fēng)的聲控機(jī)器人車(chē),以通過(guò) TinyML 識(shí)別行駛、停止和背景噪音。

使用由 Edge Impulse 提供支持的 Codecraft 訓(xùn)練了一個(gè)喚醒詞識(shí)別模型!

在這篇詳細(xì)的博客文章中,我將介紹以下內(nèi)容:

什么是 UART 串??行通信?

Wio終端和uKit之間的UART串行通信探索

1.0 使用 Codecraft 訓(xùn)練嵌入式機(jī)器學(xué)習(xí)模型

2.0 Arduino文本代碼修改

3.0 對(duì)機(jī)器人汽車(chē)進(jìn)行編程(uKit 探索 - 基于 Arduino Mega 2560)

4.0 預(yù)期結(jié)果

什么是 UART 串??行通信?

通俗地說(shuō),UART 允許嵌入式設(shè)備(例如 Arduino)通過(guò) TX(發(fā)送)和 RX(接收)線將數(shù)據(jù)發(fā)送到另一個(gè) Arduino,如下所示。

poYBAGJT69uAWZIPAAEbOZX4TOA343.png

舉一個(gè)具體的例子:

Arduino UNO 沒(méi)有內(nèi)置的 WiFi,因此不可能做 IOT 相關(guān)的項(xiàng)目。通過(guò)了解基本的 UART 串??行通信,我能夠利用ESP8266/ESP32作為 Arduino UNO 的協(xié)處理器,以便從連接到 Arduino UNO 的傳感器收集的數(shù)據(jù)將發(fā)送到 ESP8266/ESP32 發(fā)送轉(zhuǎn)移到云平臺(tái),例如 Web 服務(wù)器、Blynk 或 FAVORIOT。

Wio終端和uKit之間的UART串行通信探索

Wio 終端的 TX 和 RX 引腳在引腳 8和10上可用。

TXD - 引腳 8

RXD - 引腳 10

pYYBAGJT69iAV5pFAAMkV0o58ag124.png

而對(duì)于 uKit Explore,引腳 D0 和 D1 上也有可用的 TX/RX 引腳。您可以在此處查看完整的 uKit 探索引腳排列

RX0 - D0

TX0 - D1

poYBAGJT69OAdW2XAAT4-qQk-eA588.png

對(duì)于硬件連接,基本上,您只需要如下連接:

Wio 終端(引腳 8)到 uKit 探索(引腳 0) - TXD 到 RXD

Wio 終端(引腳 10)到 uKit 探索(引腳 1) - RXD 到 TXD

我將詳細(xì)解釋軟件編程如何在 3.0 Program the Robot Car(uKit Explore - Arduino Mega 2560 based)上完成。

第 1 步:使用 Codecraft 訓(xùn)練嵌入式機(jī)器學(xué)習(xí)模型

在第一部分中,我們的目標(biāo)是使用 Codecraft 平臺(tái)創(chuàng)建一個(gè)嵌入式機(jī)器學(xué)習(xí)模型(語(yǔ)音識(shí)別)。

使用 Codecraft 訓(xùn)練嵌入式機(jī)器學(xué)習(xí)模型涉及 4 個(gè)步驟。

1.創(chuàng)建“喚醒詞識(shí)別(內(nèi)置麥克風(fēng))”模型

2.數(shù)據(jù)采集(車(chē)載)

3.培訓(xùn)和部署

4.編程與模型使用

創(chuàng)建“喚醒詞識(shí)別(內(nèi)置麥克風(fēng))”模型轉(zhuǎn)到https://ide.tinkergen.com/。選擇“(對(duì)于 TinyML)Wio 終端”。

pYYBAGJT686APoH3AAJMS00wbFs693.png

點(diǎn)擊左中嵌入式機(jī)器學(xué)習(xí)框上的“模型創(chuàng)建”。然后選擇“Wake-Up Words Recognition(內(nèi)置麥克風(fēng))”,如下圖。根據(jù)需求輸入模型名稱。

poYBAGJT68uAD88QAAGJyZLE7P0872.png

點(diǎn)擊確定,窗口會(huì)自動(dòng)切換到“數(shù)據(jù)采集”界面。

第 2 步:數(shù)據(jù)采集(車(chē)載)

pYYBAGJT68aABXJZAAIKM-3odkY814.png

系統(tǒng)會(huì)自動(dòng)為您創(chuàng)建 3 個(gè)默認(rèn)標(biāo)簽(hi wio、background 和其他詞)。

除非您想為標(biāo)簽使用不同的名稱,否則您可以不加任何更改地使用它。就我而言,我更改了兩個(gè)默認(rèn)標(biāo)簽,如下所示:

hi wio 刪掉

其他詞改成停止

重要提示:現(xiàn)在,您必須記住更改默認(rèn)數(shù)據(jù)采集程序上的標(biāo)簽以反映正確的修改標(biāo)簽

pYYBAGJT68OAVjCUAAN_c4gBVAk283.png

連接 Wio 終端和上傳數(shù)據(jù)采集程序。

注意:您需要下載“ Codecraft Assistant ”才能在Codecraft在線IDE上連接和上傳代碼。

數(shù)據(jù)采集??:在右上角的超鏈接中,您將找到數(shù)據(jù)采集的分步介紹。按照說(shuō)明根據(jù)修改后的標(biāo)簽收集數(shù)據(jù)。

第 3 步:培訓(xùn)和部署

點(diǎn)擊“Training & Deployment”,您將看到如下圖所示的模型訓(xùn)練界面。

pYYBAGJT67-AP5X2AAHb6SOFrEg301.png

選擇神經(jīng)網(wǎng)絡(luò)和參數(shù)。選擇合適的神經(jīng)網(wǎng)絡(luò)大小:小、中、大

設(shè)置參數(shù):

訓(xùn)練周期數(shù)(正整數(shù)),

學(xué)習(xí)率(從 0 到 1 的數(shù)字)

最小置信度(從 0 到 1 的數(shù)字)

接口提供了50個(gè)訓(xùn)練周期的默認(rèn)參數(shù)值,但是準(zhǔn)確度不是很好。因此,我將訓(xùn)練周期更改為 100。

poYBAGJT67mAbmzWAAGnp60IgFU108.png

點(diǎn)擊“開(kāi)始訓(xùn)練”。單擊“開(kāi)始訓(xùn)練”時(shí),窗口將顯示“正在加載。”!等待訓(xùn)練完成!

觀察模型性能以選擇理想模型。在“模型訓(xùn)練報(bào)告”窗口中,您可以觀察訓(xùn)練結(jié)果,包括模型的準(zhǔn)確率、損失和性能。

pYYBAGJT67WAd6SiAAECHERQyPs833.png

在“模型訓(xùn)練報(bào)告”窗口中,點(diǎn)擊“模型部署”。部署完成后,單擊“確定”進(jìn)入“編程”窗口,這是我們將模型部署到 Wio 終端之前的最后一步。

poYBAGJT67GAMn3lAAD4aDxFAgU966.png

第 4 步:編程和模型使用

好的,現(xiàn)在我們完成了使用 UART通信協(xié)議將人工智能(在本例中為機(jī)器學(xué)習(xí))與機(jī)器人(機(jī)器人汽車(chē))集成的模型和有趣的部分。

這是從塊編程接口創(chuàng)建的示例程序:

pYYBAGJT66yARubtAARFSEssNkE936.png

我們使用 if-else 條件語(yǔ)句來(lái)評(píng)估標(biāo)簽的置信度。

如果“go”的置信度大于0.8(80%),我會(huì)在串口終端打印“1”。

如果“停止”的置信度大于 0.8(80%),我會(huì)在串口終端上打印“2”。

否則,如果“背景”的置信度大于0.8(80%),我會(huì)在串口終端上打印“0”。

好的,所以現(xiàn)在,只需記住 3 個(gè)不同的條件:

“go” 》 0.8,命令為 ‘1’

“停止”》 0.8,命令為“2”

“背景”。命令是‘0’

2.0 Wio終端Arduino文本代碼修改

好的,所以請(qǐng)注意以下兩個(gè)重要發(fā)現(xiàn),因?yàn)檫@將是我們項(xiàng)目的關(guān)鍵部分!

您可以從 Wio Temrinal 的 40 針接頭訪問(wèn)的串行線是 Serial1,而不是通常的 Serial,后者基本上通過(guò)串行終端顯示輸出。

我們?cè)谝_ 8 和 10 上提供了 TX/RX 引腳,可用于連接到另一塊電路板(本例中為 uKit 探索)。

poYBAGJT66eAX5OGAALu6YmLFP0814.png

如果我們查看相應(yīng)塊代碼的文本編碼,您會(huì)注意到 Serial.print 沒(méi)有使用 Serial1 行。因此,這導(dǎo)致我們進(jìn)入第二步,即繼續(xù)在 Arduino IDE 上進(jìn)行編碼以進(jìn)行定制。

pYYBAGJT66OAIVZjAAKRgtKjJD8158.png

切換到文本代碼區(qū)域并復(fù)制文本代碼

在文本代碼區(qū)域,按 CTRL + A 復(fù)制所有代碼以選擇所有代碼。

打開(kāi) Arduino IDE,創(chuàng)建一個(gè)新文件,按 CTRL+V 將代碼粘貼到空草圖中。繼續(xù)以所需名稱保存草圖。

pYYBAGJT65-AV6YcAAIqCfsB5DA108.png

復(fù)制 Edge Impulse TinyML Arduino 庫(kù)

導(dǎo)航到 C:\Users\《User_Name》\AppData\Local\Programs\cc-assistant\resources\compilers\Arduino\contents\libraries

找到與 Arduino 文本代碼頂部的 Edge Impulse 頭文件具有相同編號(hào)的文件夾名稱(在我的情況下為 47606)。

pYYBAGJT65uACPkeAAKiAiEwAEw622.png

復(fù)制整個(gè) ei-project_47606 文件夾并將其粘貼到 C:\Users\《User_Name》\Documents\Arduino\libraries\

pYYBAGJT65iAVUZtAAEp4xoL6oE763.png

修改 Serial.println 函數(shù)

改為將 Serial.println 函數(shù)修改為 Serial1.println。

pYYBAGJT65KAGoOrAAQX1oxW3SI969.png

上傳代碼

確保您已安裝 Wio 端子板支持包。如果沒(méi)有,請(qǐng)參閱Seeed Wiki 上的“ Wio 終端入門(mén)”指南。

在將代碼上傳到 Wio 終端之前,請(qǐng)確保選擇了正確的板和 COM 端口。

poYBAGJT642AW6vdAAOGcv1D1fc299.png

第 4 步:對(duì)機(jī)器人汽車(chē)進(jìn)行編程(uKit 探索 - 基于 Arduino Mega 2560)

我們將對(duì)基于 uKit Explore 的 Robot Car 進(jìn)行編程。

uKit 簡(jiǎn)介探索

讓我讓您了解一下這個(gè) uKit Explore 的內(nèi)容。

uKit Explore 是 UBTECH Robotics 制造的機(jī)器人套件,它基于 Arduino 生態(tài)系統(tǒng)(芯片組為 Arduino 2560)。

“uKit Explore 有一個(gè)主控箱,配備 Arduino 開(kāi)源平臺(tái),提供來(lái)自全球用戶貢獻(xiàn)的大量電子和編程學(xué)習(xí)資源?!?/p>

pYYBAGJT64iAesu5AAT4RJNtUW8505.png

編程 uKit Explore 以讀取 UART 數(shù)據(jù)

現(xiàn)在,我們需要對(duì) Robo Car 進(jìn)行編程,使其在收到來(lái)自 Wio Terminal 的命令“1”、“2”和“0”時(shí)根據(jù)不同的條件采取行動(dòng)。

這里的關(guān)鍵概念是,如果它包含任何數(shù)據(jù),我們將需要讓 uKit Explore繼續(xù)偵聽(tīng)串行線。如果它確實(shí)包含串行數(shù)據(jù),則串行讀取數(shù)據(jù)并將其分配給一個(gè)變量。最后一步是我們將比較變量并執(zhí)行不同的操作。

對(duì)于我們的案例,當(dāng) uKit 探索

收到命令“1”(go),RoboCar 將向前移動(dòng);

收到命令‘2’(停止),它將停止;

收到命令‘0’(背景),它也會(huì)停止。

pYYBAGJT64WAIl5MAAPZSPuKLnw816.png

上傳代碼

最后,我們將代碼上傳到板上。與往常一樣,請(qǐng)確保在上傳之前選擇了正確的板和 COM 端口。

最后,Robo Car 可以通過(guò)語(yǔ)音“go,go,go”激活,并通過(guò)“stopppps.。。。”或“background”停止。達(dá)到我們想要的目標(biāo)!

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5147

    文章

    19613

    瀏覽量

    316457
  • 語(yǔ)音識(shí)別
    +關(guān)注

    關(guān)注

    39

    文章

    1779

    瀏覽量

    114098
  • uart
    +關(guān)注

    關(guān)注

    22

    文章

    1275

    瀏覽量

    103673
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    明遠(yuǎn)智睿SSD2351開(kāi)發(fā)板:語(yǔ)音機(jī)器人領(lǐng)域的變革力量

    連續(xù)的長(zhǎng)句語(yǔ)音識(shí)別,還是復(fù)雜口音的處理,都能快速響應(yīng),保證語(yǔ)音機(jī)器人與用戶之間流暢的對(duì)話體驗(yàn)。 其豐富的接口為語(yǔ)音
    發(fā)表于 05-28 11:36

    SPCE061A語(yǔ)音識(shí)別機(jī)器人應(yīng)用方案

    為了提高廣大單片機(jī)愛(ài)好者學(xué)習(xí)單片機(jī)的興趣,凌陽(yáng)科技大學(xué)計(jì)劃教育推廣中心推出了應(yīng)用SPCE061A作為主控制器,外加電機(jī)驅(qū)動(dòng)電路制作的語(yǔ)音識(shí)別機(jī)器人。該機(jī)器人采用特定人
    發(fā)表于 03-08 17:09

    智能避障語(yǔ)音遙控機(jī)器人

    我們?cè)O(shè)計(jì)的這款智能機(jī)器人,通過(guò)語(yǔ)音識(shí)別功能對(duì)智能機(jī)器人進(jìn)行遙控,遙控的語(yǔ)音指令有前進(jìn)、后退、左拐、右拐等運(yùn)動(dòng)控制指令,另外還加入一個(gè)音頻播放
    發(fā)表于 10-26 22:50

    會(huì)物體識(shí)別語(yǔ)音識(shí)別的nao機(jī)器人

    ` nao機(jī)器人識(shí)別大量物體和自動(dòng)語(yǔ)音識(shí)別,并可通過(guò)Choregraphe軟件保存物體信息和語(yǔ)音。此后,當(dāng)它再次看到已保存的物體時(shí)或需要與
    發(fā)表于 02-13 14:09

    【Aworks申請(qǐng)】家庭服務(wù)機(jī)器人

    申請(qǐng)理由:以開(kāi)發(fā)板為處理器,利用深度傳感器Kinect,實(shí)現(xiàn)家庭服務(wù)機(jī)器人的 物體識(shí)別技術(shù)、人體識(shí)別技術(shù)、動(dòng)態(tài)不確定環(huán)境下的自定位、地圖創(chuàng)建
    發(fā)表于 07-19 23:33

    智能語(yǔ)音機(jī)器人

    與人工智能系統(tǒng)算法設(shè)計(jì);與國(guó)內(nèi)外同類研究的比較:1.該機(jī)器人能與人進(jìn)行簡(jiǎn)單的語(yǔ)言交流,能夠識(shí)別部分方言;2.能夠多平臺(tái)控制:語(yǔ)音控制,手機(jī)控制,電腦控制; 3.搭載多種傳感器,隨時(shí)知道當(dāng)?shù)販囟?、濕?/div>
    發(fā)表于 12-02 19:08

    51版游高鐵機(jī)器人

    游高鐵機(jī)器人是中國(guó)教育機(jī)器人大賽的標(biāo)準(zhǔn)競(jìng)賽平臺(tái),主要面向大學(xué)和高職用戶。機(jī)器人利用前后端的安裝的QTI傳感器進(jìn)行雙向循線,到達(dá)比賽規(guī)則要求的各景點(diǎn),通過(guò)RFID讀卡器
    發(fā)表于 03-29 09:46

    企鵝機(jī)器人是怎么樣的?

    ,可以實(shí)現(xiàn)企鵝機(jī)器人對(duì)前方障礙物的識(shí)別,從而實(shí)現(xiàn)企鵝機(jī)器人的智能避障和互動(dòng)表演。重要技術(shù)點(diǎn):行走結(jié)構(gòu)、行走步態(tài)、
    發(fā)表于 03-29 17:29

    請(qǐng)問(wèn)電銷機(jī)器人智能語(yǔ)音識(shí)別的原理是什么?

    一個(gè)人們最為關(guān)心的問(wèn)題大概就是,電銷機(jī)器人如何做到語(yǔ)音識(shí)別,通俗來(lái)講,就是電銷機(jī)器人如何“聽(tīng)懂”人們說(shuō)話?其實(shí)語(yǔ)音
    發(fā)表于 06-12 14:03

    AI語(yǔ)音智能機(jī)器人開(kāi)發(fā)實(shí)戰(zhàn)

    ) "AI語(yǔ)音識(shí)別機(jī)器人"前后臺(tái)通信協(xié)議實(shí)現(xiàn)(4) "AI語(yǔ)音識(shí)別
    發(fā)表于 01-04 11:48

    機(jī)器人如何識(shí)別

    現(xiàn)在想做機(jī)器人圖像識(shí)別方面的研究,有問(wèn)題請(qǐng)教大家,比如說(shuō):現(xiàn)在有十種瓶子,機(jī)器人識(shí)別我指定的瓶子,并把它從A位置移動(dòng)到B位置,關(guān)鍵是如何識(shí)別
    發(fā)表于 11-04 09:02

    【 平頭哥CB5654語(yǔ)音開(kāi)發(fā)板試用連載】智能語(yǔ)音識(shí)別機(jī)器人

    項(xiàng)目名稱:智能語(yǔ)音識(shí)別機(jī)器人試用計(jì)劃:使用開(kāi)發(fā)板完成智能機(jī)器人設(shè)計(jì),預(yù)期達(dá)到的目標(biāo)可以語(yǔ)音控制機(jī)器人
    發(fā)表于 03-13 16:19

    使用旅游機(jī)器人需要注意哪些問(wèn)題?

    、講解互動(dòng)功能  新型的旅游機(jī)器人,可以在公共場(chǎng)與游客互動(dòng)交流,與人進(jìn)行實(shí)時(shí)語(yǔ)音對(duì)話,通過(guò)語(yǔ)音識(shí)別、屏交互等方式,為人提供智能化、人性化的
    發(fā)表于 06-12 17:04

    【HarmonyOS HiSpark AI Camera】基于圖像的手語(yǔ)識(shí)別機(jī)器人系統(tǒng)

    項(xiàng)目名稱:基于圖像的手語(yǔ)識(shí)別機(jī)器人系統(tǒng)試用計(jì)劃:申請(qǐng)理由本人是物聯(lián)網(wǎng)專業(yè)在校大學(xué)生,疫情期間曾設(shè)計(jì)過(guò)基于勘智K210的口罩人臉離線識(shí)別打卡門(mén)禁系統(tǒng),熟悉使用tensorflow lite iot部署
    發(fā)表于 09-25 10:11

    【HarmonyOS HiSpark AI Camera】廳堂機(jī)器人

    項(xiàng)目名稱:廳堂機(jī)器人試用計(jì)劃:申請(qǐng)理由:機(jī)器人項(xiàng)目集成攝像頭實(shí)現(xiàn)人臉識(shí)別跟隨,熟悉鴻蒙系統(tǒng)。項(xiàng)目名稱:廳堂機(jī)器人項(xiàng)目計(jì)劃:一個(gè)月內(nèi)
    發(fā)表于 11-19 20:49