色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

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

【RT-Thread x Infineon創(chuàng)意創(chuàng)客大賽】基于Infineon和ChatGPT的人工智能語(yǔ)音小管家

RTThread物聯(lián)網(wǎng)操作系統(tǒng) ? 來(lái)源:未知 ? 2023-08-04 20:35 ? 次閱讀
原文:https://club.rt-thread.org/ask/article/80312d50bc48fd76.html
概要本文給大家介紹一個(gè)Infineon和ChatGPT的人工智能語(yǔ)音小管家項(xiàng)目,該項(xiàng)目是博主架構(gòu)師李肯參加由RT-Thread與英飛凌聯(lián)合舉辦的2023英飛凌創(chuàng)意創(chuàng)客大賽的參賽項(xiàng)目,旨在探索智能硬件+智能音箱+ChatGPT的超級(jí)組合在C端市場(chǎng)的潛在應(yīng)用,希望能給大家?guī)?lái)幫助和啟發(fā)。
1 前言

如今,智能化的設(shè)備慢慢走進(jìn)了千家萬(wàn)戶(hù),大大提升了人民生活的智能化,但是隨之而來(lái)的是各種智能設(shè)備無(wú)法互聯(lián)互通,形成了一片片信息孤島,這就迫切需要一個(gè)類(lèi)似于智能家居管家系統(tǒng)的中樞設(shè)備來(lái)接管這些零散的智能設(shè)備;而在各種成熟的應(yīng)用產(chǎn)品方案中,形態(tài)各異的智能音箱無(wú)疑是一個(gè)比較合適的選擇。

眾觀市場(chǎng)上的各種智能音響,小度音響憑借其優(yōu)異的市場(chǎng)表現(xiàn),占據(jù)了很大一塊市場(chǎng)份額,使得“小度小度,現(xiàn)在幾度”成為了家庭中很常見(jiàn)的交互問(wèn)候語(yǔ)。

有這么一個(gè)設(shè)想,我們將家庭環(huán)境中形態(tài)各異的智能設(shè)備,通過(guò)簡(jiǎn)單的協(xié)議改造,加上終端設(shè)備出色的主控能力,智能設(shè)備全部集合到小度音箱中去,而這個(gè)終端系統(tǒng)與小度音響直接打通,這樣跟小度直接對(duì)話(huà)就能操作這些智能設(shè)備,這是一個(gè)不錯(cuò)的點(diǎn)子。

同時(shí),當(dāng)下人工智能非常火爆,尤其以ChatGPT最為強(qiáng)大,倘若這樣的一套終端系統(tǒng)能夠接入最前沿的ChatgPT,那么可以想象的是,這個(gè)智能系統(tǒng)的可玩性將會(huì)大大提升,而本項(xiàng)目正是基于這樣的目的,著手去探討這樣方案的可行性。

2 項(xiàng)目簡(jiǎn)介
2.1 項(xiàng)目名稱(chēng)

基于Infineon和ChatGPT的人工智能語(yǔ)音小管家

2.2 設(shè)計(jì)思路


本項(xiàng)目主要使用Infineon的控制芯片作為端側(cè)的核心控制器,實(shí)現(xiàn)一個(gè)物聯(lián)網(wǎng)網(wǎng)關(guān),網(wǎng)關(guān)外圍接入多種傳感器器件和控制器件,通過(guò)Wi-Fi模組實(shí)現(xiàn)與云端的互通,并接入小度音箱控制系統(tǒng),實(shí)現(xiàn)使用音箱控制智能設(shè)備。

這個(gè)項(xiàng)目中,我將引入時(shí)下最流行的人工智能模型ChatGPT,這將極大地提升智能管家的時(shí)髦性和可玩性。本項(xiàng)目著重定義的應(yīng)用場(chǎng)景是在智慧家庭中,一個(gè)有趣的人工智能小管家,不僅能夠給家庭智能帶來(lái)便利,還將提升家居生活的智能化和幸福感。解放雙手,釋放人類(lèi),享受智能生活,一切都將變得可能。

2.3 主要解決的問(wèn)題


家庭中的智能設(shè)備越來(lái)越多,一個(gè)集中式的智能家庭中樞控制系統(tǒng)迫在眉睫,旨在解決所有智能設(shè)備的調(diào)度和控制問(wèn)題,為智能生活提供便利。同時(shí),將智能音箱系統(tǒng)接入最前沿的ChatGPT技術(shù),豐富設(shè)備的可玩性。

2.4 項(xiàng)目創(chuàng)新點(diǎn)
  • 主要是設(shè)備端各項(xiàng)傳感器器件和控制器件的集成,以及與小度音響的直連互通。

  • 在智能家居中,目前主流的所謂的“智能”,都是一個(gè)比較粗獷的智能,比如小度、小愛(ài)同學(xué)等;真正如果做到引入人工智能這種層次,還得看ChatGPT;如果能將ChatGPT接入智能家庭這個(gè)場(chǎng)景中,那么可玩的的東西,想象力就可大了。

2.5 本次參賽的初衷

采用本項(xiàng)目參賽,本身并不期望做出多么驚艷的產(chǎn)品,旨在探索智能硬件+智能音箱+ChatGPT的超級(jí)組合在C端市場(chǎng)的潛在應(yīng)用,希望能給大家?guī)?lái)幫助和啟發(fā)。

3 系統(tǒng)架構(gòu)介紹
3.1 方案預(yù)研

在過(guò)往的項(xiàng)目經(jīng)歷中,我已實(shí)現(xiàn)過(guò) 基于小度音箱的智能家庭中樞控制系統(tǒng),參見(jiàn)這里; 這個(gè)方案已經(jīng)證實(shí)了,小度音箱作為控制中樞的可行性,現(xiàn)在只不過(guò)把控制中樞的邏輯移植過(guò)來(lái)。

剩下的就是小度音箱與ChatGPT的銜接問(wèn)題,從查到的資料可知,在DuerOS開(kāi)放平臺(tái) (baidu.com) 的開(kāi)放資料可知,小度音箱支持自定義 技能, 而通過(guò)這個(gè)技能,我們可以實(shí)現(xiàn)捕捉到從小度音箱獲取的用戶(hù)語(yǔ)音輸入信息,這個(gè)時(shí)候需要利用到 DuerOS SDK 的API能力, 將語(yǔ)音的輸入轉(zhuǎn)換成文本信息,進(jìn)而轉(zhuǎn)發(fā)到了用戶(hù)自定義的處理服務(wù)器,再由這個(gè)服務(wù)器將文本信息通過(guò)ChatGPT的Open API能力,得到反饋的信息(經(jīng)ChatGPT處理得到的信息),再通過(guò)DuerOS SDK的API,通過(guò)小度音箱將信息輸出,形成一個(gè)操作閉環(huán)。

同時(shí),這個(gè)自定義的服務(wù)器還可以將與ChatGPT交互的信息,以MQTT Publish的形式推送到智能終端,達(dá)到保存信息記錄的目的。

在預(yù)研的過(guò)程中,有參考一篇博文,給我一定的指導(dǎo)意義,詳見(jiàn)這里。

經(jīng)過(guò)以上分析,得到了方案的可行性,下面開(kāi)始著手設(shè)計(jì)系統(tǒng)架構(gòu)圖。

3.2 系統(tǒng)核心架構(gòu)圖
經(jīng)過(guò)調(diào)研設(shè)計(jì),得到整個(gè)系統(tǒng)的核心架構(gòu)圖如下所示:

a280c410-32c2-11ee-9e74-dac502259ad0.png

從上面這個(gè)核心架構(gòu)圖中,我們可以看到整個(gè)IoT系統(tǒng)組成,包括智能設(shè)備終端側(cè)、巴法云物聯(lián)網(wǎng)平臺(tái)、小度云平臺(tái)、小度音箱、OpenAI-ChatGPT后臺(tái),自定義后臺(tái)服務(wù)(負(fù)責(zé)對(duì)接小度云平臺(tái))等等。下面就整個(gè)系統(tǒng)的幾大重要組件,我會(huì)一一進(jìn)行簡(jiǎn)要講解。

3.3 終端側(cè)

終端側(cè)主要承載的是對(duì)巴法云平臺(tái)的對(duì)接,接收巴法云平臺(tái)下發(fā)的控制指令和ChatGPT交互數(shù)據(jù),同時(shí)做一些邊緣側(cè)的應(yīng)用邏輯處理,還需要具備對(duì)外網(wǎng)絡(luò)的通訊能力,保持與巴法云平臺(tái)的MQTT長(zhǎng)鏈接。

這里巴法云平臺(tái)推送的數(shù)據(jù)主要有兩類(lèi):

  • 對(duì)外圍的智能設(shè)備的操作之類(lèi),比如關(guān)燈/開(kāi)燈;

  • 還有一類(lèi)就是小度音箱與ChatGPT的交互記錄數(shù)據(jù)。

終端側(cè)包括的核心組件有:英飛凌的PSoC 62 with CAPSENSE evaluation kit,搭載的是國(guó)產(chǎn)實(shí)時(shí)操作系統(tǒng) RT-Thread,同時(shí)外設(shè)板載有 ESP8266 Wi-Fi通訊模組、繼電器(GPIO模擬)、存儲(chǔ)的SD卡等等。

終端側(cè)不僅包含設(shè)備硬件,還需要對(duì)應(yīng)的固件軟件,兩者相輔相成,共同完成終端側(cè)的功能邏輯。

a2d333da-32c2-11ee-9e74-dac502259ad0.png

3.4 后端側(cè)

后端側(cè)包括兩部分:

巴法云平臺(tái)

這個(gè)后端側(cè),其實(shí)沒(méi)有真正的開(kāi)發(fā)工作,僅僅是登錄巴法云平臺(tái)后臺(tái),配置MQTT板塊,然后生成【智能燈】?jī)蓚€(gè)設(shè)備,以便于終端側(cè)和小度音響識(shí)別。

同時(shí),巴法云的MQTT后臺(tái),還需要配置一個(gè)專(zhuān)門(mén)用于傳輸ChatGPT交互數(shù)據(jù)的topic通道,以便于終端與自定義服務(wù)器進(jìn)行數(shù)據(jù)傳輸。

a30915c2-32c2-11ee-9e74-dac502259ad0.png

自定義服務(wù)器

這個(gè)后端側(cè)是有一定的開(kāi)發(fā)工作量,包括以下幾個(gè)核心內(nèi)容:

  • 移植DuerOS SDK,調(diào)用其API,通過(guò)小度技能的Callback能力,將從小度音箱輸入的語(yǔ)音轉(zhuǎn)文本信息取得;

  • 基于OpenAI 的API KEY 能力,編寫(xiě)邏輯程序,將文本信息發(fā)往ChatGPT服務(wù),并獲得ChatGPT的響應(yīng)數(shù)據(jù);

  • 再通過(guò)DuerOS SDK 的API,把ChatGPT的響應(yīng)數(shù)據(jù)轉(zhuǎn)為語(yǔ)音,再通過(guò)小度音箱播放出來(lái)。

值得注意的是,這部分涉及的后端知識(shí)比較多,對(duì)多個(gè)SDK的研究還需要投入更多的時(shí)間和精力。

3.5 移動(dòng)端

這里說(shuō)的移動(dòng)端,特指小度APP;其實(shí)這里面也沒(méi)有開(kāi)發(fā)工作,當(dāng)你的小度APP賬號(hào)登錄之后,它有一個(gè)操作步驟可以加入基于巴法云平臺(tái)的【智能設(shè)備】,按照說(shuō)明添加成功后,就可以在小度APP上看到巴法云平臺(tái)對(duì)應(yīng)的設(shè)備列表了。

詳細(xì)的綁定操作步驟,見(jiàn) 此文的第二部分。

a323c4c6-32c2-11ee-9e74-dac502259ad0.png

4 系統(tǒng)設(shè)計(jì)說(shuō)明
4.1 硬件部分
  • MCU主控:英飛凌的PSoC 62

Infineon Technologies 的 PSoC 62S2 評(píng)估套件 (CY8CEVAL-062S2) 使客戶(hù)能夠使用 PSoC 62 MCU 評(píng)估和開(kāi)發(fā)應(yīng)用。該套件采用 PSoC 62 MCU (CY8C624ABZI-S2D44):150 MHz Arm Cortex-M4 和 100 MHz Arm Cortex-M0+內(nèi)核、2 MB 閃存、1 MB SRAM、硬件加密加速器、豐富的模擬和數(shù)字外設(shè)、音頻通信接口,以及采用 CAPSENSE 技術(shù)的行業(yè)領(lǐng)先電容式感應(yīng)。PSoC 62S2 評(píng)估套件提供了許多開(kāi)箱即用的用例,用于開(kāi)發(fā)即將推出的連接邊緣節(jié)點(diǎn)。

它的具體接口資源展示如下:

a351f62a-32c2-11ee-9e74-dac502259ad0.png

在我的項(xiàng)目中,我主要使用它的以下幾個(gè)外設(shè)資源:

1)UART6:RT-Thread的終端調(diào)試串口;

2)UART5:用于連接串口WI-Fi模塊ESP8266,實(shí)現(xiàn)網(wǎng)絡(luò)通訊能力;

3)GPIO:P0.0 用作系統(tǒng)工作狀態(tài)顯示燈,P0.1 用于控制智能燈開(kāi)關(guān)(模擬);

4)SDIO:外掛SD卡,用于存儲(chǔ)ChatGPT的交互信息。

以下是我的實(shí)物連接示意圖:

a380dc56-32c2-11ee-9e74-dac502259ad0.png

  • Wi-Fi模組:ESP8266

本次參賽,我采用了我慣用的Wi-Fi通訊模組ESP8266,非常的便捷,借助RT-Thread的軟件包,基本無(wú)需編寫(xiě)任何代碼,就可以實(shí)現(xiàn)網(wǎng)絡(luò)能力;當(dāng)然串口通訊還是需要配置一下,只不過(guò)不用寫(xiě)代碼而已。

我這里使用的搭建ESP8266 Wi-Fi芯片的模組ESP-12F,它是由安信可科技開(kāi)發(fā)的,該模塊核心處理器 ESP8266 在較小尺寸封裝中集成了 業(yè)界領(lǐng)先的 Tensilica L106 超低功耗 32 位微型 MCU,帶有 16 位精簡(jiǎn)模式,主頻支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA,板載天線

a3c0320c-32c2-11ee-9e74-dac502259ad0.png

  • GPIO控制:

目前這一塊的接入,采用的是GPIO做模擬,并沒(méi)有實(shí)際接入繼電器,但已經(jīng)完全可以實(shí)現(xiàn)其操作原理。

其中,P0.0 用作系統(tǒng)工作狀態(tài)顯示燈(每一秒閃爍一次),P0.1 用于控制智能燈開(kāi)關(guān)(模擬)。

如上上圖所示。

4.2 軟件部分

整個(gè)軟件部分的開(kāi)發(fā)主要分為兩大部分:終端軟件和后端服務(wù)器軟件。

終端固件開(kāi)發(fā)

主要包括四大部分:英飛凌的PSoC 62的原廠BSP、RT-Thread實(shí)時(shí)操作系統(tǒng)、ESP8266相關(guān)的配置代碼使能、個(gè)性化的應(yīng)用邏輯代碼。

其中英飛凌的PSoC 62的原廠BSP基本不動(dòng),原廠和相關(guān)開(kāi)發(fā)者已經(jīng)適配好了;通用的RT-Thread操作系統(tǒng)的代碼也不在此處的修改中,直接復(fù)用已有的代碼,這里使用的版本是 5.0.0版本 。

ESP8266相關(guān)的AT、網(wǎng)絡(luò)組件代碼也是現(xiàn)成的,使能配置之后就可以直接用了,還是非常的方便。

除了AT相關(guān)的軟件包代碼外,我還使用了 paho-mqtt 這個(gè)軟件包,這個(gè)軟件包主要封裝了MQTT協(xié)議的實(shí)現(xiàn)技術(shù)細(xì)節(jié),開(kāi)放了一些靈活好用的API給到應(yīng)用層,以便于提供MQTT的通訊能力。

還有一個(gè)cJSON的軟件包,這里也使用到了,它用于做一些上下行數(shù)據(jù)包的解析和封裝,主要原因是需要解析一些與云平臺(tái)對(duì)接的數(shù)據(jù)協(xié)議,這就要求終端必須具備解析JSON數(shù)據(jù)的能力。

所以這里重點(diǎn)講一下,應(yīng)用邏輯的代碼:主要包括GPIO的控制等,而這些控制信號(hào)的輸入,都是來(lái)源于巴法云平臺(tái)的下發(fā),而巴法云平臺(tái)的聯(lián)動(dòng)下發(fā)則來(lái)源于用戶(hù)對(duì)小度音響的語(yǔ)音控制輸入。

另一方面,當(dāng)終端收到來(lái)自ChatGPT交互日志的請(qǐng)求數(shù)據(jù)時(shí),也會(huì)將該數(shù)據(jù)寫(xiě)入SD卡作為存儲(chǔ)。

以下是終端軟件應(yīng)用邏輯部分的層次圖:

a3fdcaf4-32c2-11ee-9e74-dac502259ad0.png

其中:

Wi-Fi線程:由于在RT-Thread中AT組件是開(kāi)啟后,默認(rèn)就跑起來(lái)了,而在應(yīng)用層暫時(shí)沒(méi)有一個(gè)比較好的方式感知網(wǎng)絡(luò)能力的建立,所以這里新建了一個(gè)線程,用于實(shí)時(shí)檢查網(wǎng)絡(luò)通訊能力;當(dāng)網(wǎng)絡(luò)通訊能力已建立時(shí),通過(guò)信號(hào)量的方式,通知其他模塊。

Smart Home (+ ChatGPT) MQTT線程:主要負(fù)責(zé)跟巴法云物聯(lián)網(wǎng)平臺(tái)進(jìn)行對(duì)接,采用的MQTT通訊協(xié)議,它的運(yùn)行,依賴(lài)于基礎(chǔ)網(wǎng)絡(luò)能力的建立;當(dāng)它與巴法云物聯(lián)網(wǎng)平臺(tái)建立聯(lián)系時(shí),它就可以接收平臺(tái)的控制指令下發(fā),比如開(kāi)關(guān)空調(diào)或開(kāi)關(guān)照明燈等;

系統(tǒng)運(yùn)行展示線程:此線程并沒(méi)有參與過(guò)多的應(yīng)用邏輯,僅僅是每一秒鐘閃爍一下運(yùn)行指示燈,表示系統(tǒng)正在運(yùn)行中;

智能燈(模擬)控制模塊:一個(gè)LED模擬繼電器控制智能燈的邏輯,當(dāng)收到下發(fā)的打開(kāi)或關(guān)閉指令時(shí),執(zhí)行對(duì)燈的操控;

SD卡存儲(chǔ)顯示:此線程主要用于存儲(chǔ)小度音箱與ChatGPT的交互信息。

以上各個(gè)線程各司其職,相輔相成,共同完成智能家庭中樞控制系統(tǒng)的邏輯功能。

下面展示的是工程項(xiàng)目中的代碼結(jié)構(gòu),里面的代碼結(jié)構(gòu)一本與上面的代碼邏輯示意圖保持一致。

a411c9aa-32c2-11ee-9e74-dac502259ad0.png

后端代碼開(kāi)發(fā):

由于時(shí)間關(guān)系比較緊張,還未完全學(xué)透DuerOS SDK與小度音箱的銜接,以下是部分參考代碼,還需要進(jìn)一步學(xué)習(xí):


		1javascriptCopycode  2constsdk=require('baidu-sdk');  3constOpenAI=require('openai');  4constopenai=newOpenAI('');  5sdk.onVoice((data)=>{  6consttext=data.result.recognize[0].payload.result.word[0];  7openai.generate(text).then((response)=>{  8sdk.sendText(response.data[0].text);  9}); 10});關(guān)于應(yīng)用OpenAI 的API KEY 構(gòu)建ChatGPT能力,倒不是一個(gè)難事,使用python腳本即可實(shí)現(xiàn),范例代碼如下:

		1importopenai  2#my_gpt_key="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"  3#my_gpt_key="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"  4#my_gpt_key="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"  5#my_gpt_key="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"  6#my_gpt_key="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"  7my_gpt_key="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"  8importtime  9defask_gpt(text:str): 10#openai.api_type="azure" 11#openai.api_key="..." 12#openai.api_base="https://example-endpoint.openai.azure.com" 13#openai.api_version="2022-12-01" 14openai.api_key=my_gpt_key#"PUTYOURAPIKEYHERE" 15#獲取當(dāng)前時(shí)間 16t1=int(time.time()) 17#listengines 18#engines=openai.Engine.list() 19#printthefirstengine'sid 20#print(engines.data[0].id) 21res=openai.Completion.create( 22engine="text-davinci-003",prompt=text,temperature=0.6,max_tokens=2048 23) 24t2=int(time.time()) 25print(t2-t1) 26returnres.choices[0].text 27defmain(): 28whileTrue: 29query=input("Askaquestion:") 30res=ask_gpt(query) 31print(f"{res} ") 32main()4.3 創(chuàng)新性的開(kāi)發(fā)環(huán)境

由于我早期基于RT-Thread做開(kāi)發(fā),也是非常依賴(lài)于RT-Thread Studio開(kāi)發(fā)環(huán)境,雖然提供了一些便利,但是礙于它的配置實(shí)在是太慢了,并且非常吃?xún)?nèi)存和吃存儲(chǔ)空間,于是被我啟用了。

也正是由于這些吃癟,我自己經(jīng)過(guò)設(shè)計(jì),延續(xù)了scons+env的構(gòu)建環(huán)境,打造了一套屬于自己的開(kāi)發(fā)環(huán)境,我取名叫 xiotman。關(guān)于它的介紹,詳見(jiàn)我的開(kāi)源項(xiàng)目:xiotman: 一套致力于解決物聯(lián)網(wǎng)終端應(yīng)用多樣化挑戰(zhàn)的軟件架構(gòu)解決方案。(gitee.com)a451b380-32c2-11ee-9e74-dac502259ad0.png借助這個(gè)項(xiàng)目,我很方便就把我本次參賽的項(xiàng)目移植移植進(jìn)來(lái)了:

a4790c1e-32c2-11ee-9e74-dac502259ad0.png

基于scons+env的構(gòu)建編譯,也是非常的絲滑,多線程編程,想想就開(kāi)心:

a49e9556-32c2-11ee-9e74-dac502259ad0.png

在燒錄固件這塊,我沒(méi)有使用RT-Studio的下載工具,而是使用了原廠提供的 Cypress Programmer 4.2,燒錄工具用起來(lái)還是很爽的,尤其是自帶燒錄器這個(gè)實(shí)用功能,必須點(diǎn)個(gè)贊。

a4ce1aba-32c2-11ee-9e74-dac502259ad0.png

5 項(xiàng)目實(shí)施過(guò)程

1)熟悉英飛凌的PSoC 62的基本開(kāi)發(fā)資料

這一步主要是熟悉開(kāi)發(fā)板的基本資源,對(duì)外設(shè)等信息有一定的概念,以便于方便后續(xù)的開(kāi)發(fā)調(diào)試;同時(shí),還需要把相關(guān)的一些官方軟件給安裝好,熟練使用配置工具和下載工具。參加大賽主辦方舉行的一些線上直播活動(dòng),了解必要的開(kāi)發(fā)基礎(chǔ)。磨刀不誤砍柴工,只要熟練上手了,才能開(kāi)發(fā)出優(yōu)秀的應(yīng)用程序。

2)移植RT-Thread操作系統(tǒng)

本次參賽,其實(shí)并不要求去移植RT-Thread,其實(shí)也要多感謝RT-Thread官方和社區(qū)的小伙伴,其實(shí)他們都已經(jīng)做好了基本的移植了,只需要對(duì)照著自己的開(kāi)發(fā)板資源跳調(diào)整一下即可。

有了上面的踩坑經(jīng)驗(yàn),直接上手RT-Thread的DEMO教程,很快就可以把操作系統(tǒng)跑起來(lái)了,一切都回歸到熟悉的地方,研發(fā)進(jìn)度再次提速。

下面就是基于RT-Thread操作系統(tǒng)進(jìn)行編程了。

3)配置RT-Thread的軟件包

目前由于xiotman的在線更新軟件包的功能還沒(méi)完全打通,所以我是通過(guò)在原生rt-thread/bsp目錄,使用env配置工具先把軟件包下載下來(lái),然后手動(dòng)拷貝到xiotman的components/packages/對(duì)應(yīng)的目錄。

這個(gè)項(xiàng)目中,我使用了paho-matt軟件包、AT-device軟件包、CJSON軟件包;的確讓我的項(xiàng)目開(kāi)發(fā)提速了不少。

a52d5c0a-32c2-11ee-9e74-dac502259ad0.png

4)配置巴法云物聯(lián)網(wǎng)平臺(tái)

我是參考這個(gè) esp8266接入小度語(yǔ)音,小度音箱控制 來(lái)創(chuàng)建自己的自定義產(chǎn)品的,并實(shí)現(xiàn)與小度音箱的綁定的。

基本上以上4步完成后,終端就可以很順利地連上巴法云物聯(lián)網(wǎng)平臺(tái)了,而這期間基本就是零代碼,全部都?xì)w功于RT-Thread靈活的代碼配置工具,非常地贊。

a5548690-32c2-11ee-9e74-dac502259ad0.png

5)調(diào)試外設(shè)驅(qū)動(dòng)

這里主要是調(diào)試各種驅(qū)動(dòng)接口,包括紅外發(fā)射器的UART接口、照明燈開(kāi)關(guān)的GPIO控制。

在調(diào)試過(guò)程中,一般一個(gè)個(gè)模塊來(lái),避免模塊直接的干擾,這樣可以有效地加快開(kāi)發(fā)速度。

等到各個(gè)功能模塊完成后,統(tǒng)一串起來(lái)跑一跑,確保沒(méi)有問(wèn)題。

6)全功能自測(cè)

到了這一步,基本功能開(kāi)發(fā)就已經(jīng)完成了,需要將終端設(shè)備的功能與云端能力聯(lián)系起來(lái)調(diào)試,比如對(duì)小度音箱進(jìn)行控制語(yǔ)音輸入,看一下巴法云平臺(tái)能否推送對(duì)應(yīng)的控制消息下來(lái),同時(shí)看下終端能否對(duì)控制消息進(jìn)行合理的處理,比如控制空調(diào)開(kāi)關(guān)或者控制照明開(kāi)關(guān)等。

但是由于對(duì)接ChatGPT的后端服務(wù)器程序還未完工,所以涉及ChatGPT部分的邏輯,還需要再等一等,是一個(gè)遺憾。

7)準(zhǔn)備結(jié)項(xiàng)資料

項(xiàng)目收尾的最后,需要準(zhǔn)備各種結(jié)項(xiàng)資料,包括項(xiàng)目穩(wěn)定、演示視頻、各種實(shí)物圖片等等。

6 項(xiàng)目效果顯示


6.1 功能描述


本期項(xiàng)目中,已實(shí)現(xiàn)以下功能:

  • 在巴法云后臺(tái)配置智能設(shè)備:智能空調(diào)和智能燈,在小度APP是可以看到設(shè)備情況;

  • 基于英飛凌的PSoC 62的終端,實(shí)現(xiàn)智能家庭中樞控制系統(tǒng)的功能;

  • 跟小度音響語(yǔ)音對(duì)話(huà),比如【打開(kāi)燈】或【關(guān)閉燈】,即可實(shí)現(xiàn)控制指令下發(fā),終端通過(guò)GPIO控制LED(模擬真實(shí)場(chǎng)景的智能燈)

  • 打通本地空調(diào)狀態(tài)和智能燈狀態(tài)與巴法云、小度平臺(tái)的聯(lián)系,實(shí)現(xiàn)實(shí)時(shí)控制聯(lián)動(dòng)。

還未實(shí)現(xiàn)的功能:

  • 打通小度音箱與自定義后端服務(wù)器,完成語(yǔ)音輸入的提取和轉(zhuǎn)發(fā)

  • 對(duì)接OpenAI,基于API KEY 實(shí)現(xiàn)ChatGPT的功能。

6.2 圖片展示
以下是項(xiàng)目的部分圖片展示:
  • 項(xiàng)目應(yīng)用啟動(dòng)/調(diào)試log

a5734012-32c2-11ee-9e74-dac502259ad0.png

a59dfaf0-32c2-11ee-9e74-dac502259ad0.png

  • 小度APP使用界面

a5bfbea6-32c2-11ee-9e74-dac502259ad0.png

  • 通過(guò)巴法云添加的智能設(shè)備在小度APP的展示

a5d0e9ec-32c2-11ee-9e74-dac502259ad0.png

6.3 視頻展示

B站視頻(演示小度音箱的智能控制):【英飛凌創(chuàng)意創(chuàng)客大賽】基于Infineon和ChatGPT的人工智能語(yǔ)音小管家】www.bilibili.com/video/BV1Pz4y1E7fp

因時(shí)間關(guān)系,基于ChatGPT的智能邏輯還沒(méi)完全實(shí)現(xiàn),演示視頻待下次補(bǔ)充。。。

6.4 代碼開(kāi)源

本參賽項(xiàng)目的源代碼已全面開(kāi)源在 這里

其中應(yīng)用部分的代碼在:https://gitee.com/recan-li/xiotman/tree/master/apps/app_baidu_chatgpt

有關(guān)項(xiàng)目源代碼的事情,也可與我討論。

7 項(xiàng)目復(fù)盤(pán)

項(xiàng)目還有一部分功能未實(shí)現(xiàn),小小總結(jié)一下這次項(xiàng)目:

  • DDL無(wú)效論:時(shí)間不夠用,下次別留這么少的時(shí)間了;
  • 百度開(kāi)發(fā)者賬號(hào)是需要認(rèn)證的,需要幾天的時(shí)間審核,容易耽誤事兒;
  • 英飛凌的PSoC 62 很好用,搭配的開(kāi)發(fā)工具、下載工具非常棒,能夠讓人快速上手;
  • xiotman第一次用于參加業(yè)余比賽,感覺(jué)使用起來(lái)還是比較清爽的,后面慢慢會(huì)都轉(zhuǎn)到它來(lái)開(kāi)發(fā)更多的項(xiàng)目。

8 致謝

感謝本次大賽的主辦方RT-Thread和英飛凌,為廣大開(kāi)發(fā)者提供福利的同時(shí),也帶來(lái)了業(yè)內(nèi)前沿的開(kāi)發(fā)技術(shù),是我們學(xué)習(xí)和提高的一個(gè)好平臺(tái),期待下次繼續(xù)參與這樣的比賽。

至于,比賽結(jié)果怎么樣,倒是其次,參與過(guò),學(xué)習(xí)過(guò),提高過(guò),差不多就可以了。

9 項(xiàng)目的TODOLIST

DuerOS SDK的深度研究,爭(zhēng)取玩透小度音箱及百度的AI相關(guān)應(yīng)用;

基于ChatGPT的API KEY 熟練部署ChatGPT的應(yīng)用,打通智能音箱與ChatGPT的溝通渠道;演示視頻,待補(bǔ)充。 10 參考鏈接

RT-Thread x Infineon創(chuàng)意創(chuàng)客大賽

https://club.rt-thread.org/ask/article/d4aa78c6fb75dda7.html

DuerOS開(kāi)放平臺(tái) (baidu.com)https://dueros.baidu.com/open把 chatGPT 接入小度 - 掘金 (juejin.cn)https://juejin.cn/post/7203685609654550588xiotman: 一套致力于解決物聯(lián)網(wǎng)終端應(yīng)用多樣化挑戰(zhàn)的軟件架構(gòu)解決方案。(gitee.com)https://gitee.com/recan-li/xiotmanesp8266接入小度語(yǔ)音,小度音箱控制,附開(kāi)源app控制https://blog.csdn.net/bemfa/article/details/120034113?spm=1001.2014.3001.5501巴法云接入文檔https://cloud.bemfa.com/docs/#/巴法云開(kāi)發(fā)者論壇https://bbs.bemfa.com/

11 更多分享

本次項(xiàng)目介紹后,我還繼續(xù)探索RT-Thread在各種嵌入式平臺(tái)開(kāi)發(fā)的可能性,并以此來(lái)要求自己輸出各種關(guān)于RT-Thread、嵌入式、物聯(lián)網(wǎng)等等熱門(mén)技術(shù)話(huà)題的原創(chuàng)內(nèi)容,歡迎大家持續(xù)關(guān)注我。

我是 架構(gòu)師李肯 (全網(wǎng)同名),2022年電子發(fā)燒友論壇優(yōu)秀開(kāi)發(fā)者、2022年RT-Thread技術(shù)社區(qū)優(yōu)秀布道者、CSDN博客專(zhuān)家,歡迎大家來(lái)交流。

———————End——————


點(diǎn)擊閱讀原文進(jìn)入官網(wǎng)


原文標(biāo)題:【RT-Thread x Infineon創(chuàng)意創(chuàng)客大賽】基于Infineon和ChatGPT的人工智能語(yǔ)音小管家

文章出處:【微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。


聲明:本文內(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)投訴
  • RT-Thread
    +關(guān)注

    關(guān)注

    31

    文章

    1305

    瀏覽量

    40315

原文標(biāo)題:【RT-Thread x Infineon創(chuàng)意創(chuàng)客大賽】基于Infineon和ChatGPT的人工智能語(yǔ)音小管家

文章出處:【微信號(hào):RTThread,微信公眾號(hào):RTThread物聯(lián)網(wǎng)操作系統(tǒng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    RT-Thread上CAN實(shí)踐

    開(kāi)箱測(cè)試RT-Thread官方已完成了對(duì)英飛凌XMC7200EVK的移植,通過(guò)shell可以看到做好了uart3的console。本文將介紹如何進(jìn)行RT-ThreadCan移植。接下來(lái)我們要完成CAN_FD的驅(qū)動(dòng)移植,并正常啟動(dòng)RT-T
    的頭像 發(fā)表于 11-13 01:03 ?1334次閱讀
    <b class='flag-5'>RT-Thread</b>上CAN實(shí)踐

    2024 RT-Thread全球巡回 線下培訓(xùn)火熱來(lái)襲!

    親愛(ài)的RT-Thread社區(qū)成員們:我們非常高興地宣布,2024年RT-Thread全球開(kāi)發(fā)者線下培訓(xùn)即將拉開(kāi)帷幕!24年全球巡回培訓(xùn)將覆蓋超10座城市及國(guó)家,為開(kāi)發(fā)者提供一個(gè)深入學(xué)習(xí)RT-Thread嵌入式開(kāi)發(fā)的絕佳機(jī)會(huì)。
    的頭像 發(fā)表于 08-07 08:35 ?1431次閱讀
    2024 <b class='flag-5'>RT-Thread</b>全球巡回 線下培訓(xùn)火熱來(lái)襲!

    【好書(shū)推薦】RT-Thread設(shè)備驅(qū)動(dòng)開(kāi)發(fā)指南

    近年來(lái)國(guó)內(nèi)芯片產(chǎn)業(yè)和物聯(lián)網(wǎng)產(chǎn)業(yè)的快速崛起,行業(yè)發(fā)展迫切需要更多人才,尤其需要掌握嵌入式操作系統(tǒng)等底層技術(shù)的人才。隨著RT-Thread被更廣泛地應(yīng)用于行業(yè)中,開(kāi)發(fā)者對(duì)嵌入式驅(qū)動(dòng)開(kāi)發(fā)的需求越來(lái)越
    的頭像 發(fā)表于 08-01 08:35 ?697次閱讀
    【好書(shū)推薦】<b class='flag-5'>RT-Thread</b>設(shè)備驅(qū)動(dòng)開(kāi)發(fā)指南

    RT-Thread全球嵌入式電子設(shè)計(jì)大賽—報(bào)名即將截止!

    RT-Thread嵌入式電子設(shè)計(jì)大賽旨在匯聚全球嵌入式系統(tǒng)開(kāi)發(fā)者和學(xué)生,通過(guò)實(shí)際項(xiàng)目展示他們?cè)谖锫?lián)網(wǎng)、智能設(shè)備等領(lǐng)域的創(chuàng)新和技術(shù)實(shí)力。本次大賽提供了瑞薩(Renesas)、英飛凌(
    的頭像 發(fā)表于 07-16 08:35 ?1138次閱讀
    <b class='flag-5'>RT-Thread</b>全球嵌入式電子設(shè)計(jì)<b class='flag-5'>大賽</b>—報(bào)名即將截止!

    唯一國(guó)產(chǎn)品牌“先楫半導(dǎo)體”加入RT-Thread全球嵌入式電子設(shè)計(jì)大賽

    大賽背景RT-Thread嵌入式電子設(shè)計(jì)大賽旨在匯聚全球嵌入式系統(tǒng)開(kāi)發(fā)者和學(xué)生,通過(guò)實(shí)際項(xiàng)目展示他們?cè)谖锫?lián)網(wǎng)、智能設(shè)備等領(lǐng)域的創(chuàng)新和技術(shù)實(shí)力。本次
    的頭像 發(fā)表于 07-10 08:17 ?450次閱讀
    唯一國(guó)產(chǎn)品牌“先楫半導(dǎo)體”加入<b class='flag-5'>RT-Thread</b>全球嵌入式電子設(shè)計(jì)<b class='flag-5'>大賽</b>

    RT-Thread 新里程碑達(dá)成——GitHub Star 破萬(wàn)!

    RT-Thread實(shí)時(shí)操作系統(tǒng)開(kāi)源項(xiàng)目在GitHub上的star數(shù)量突破一萬(wàn)!截止發(fā)文,RT-Thread作為實(shí)時(shí)操作系統(tǒng)在業(yè)界Star數(shù)量排名第一!倉(cāng)庫(kù)地址:https://github.com
    的頭像 發(fā)表于 07-04 08:35 ?510次閱讀
    <b class='flag-5'>RT-Thread</b> 新里程碑達(dá)成——GitHub Star 破萬(wàn)!

    RT-Thread 3個(gè)命題入選中國(guó)國(guó)際大學(xué)生創(chuàng)新大賽(2024)產(chǎn)業(yè)命題賽道

    大學(xué)生創(chuàng)新大賽(2024)產(chǎn)業(yè)命題賽道入選命題名單RT-Thread命題詳情命題名稱(chēng):基于RT-Thread混合部署的智能機(jī)器人命題組別:產(chǎn)教協(xié)同創(chuàng)新組命題類(lèi)型:新工
    的頭像 發(fā)表于 07-03 08:35 ?439次閱讀
    <b class='flag-5'>RT-Thread</b> 3個(gè)命題入選中國(guó)國(guó)際大學(xué)生創(chuàng)新<b class='flag-5'>大賽</b>(2024)產(chǎn)業(yè)命題賽道

    RT-Thread全球嵌入式電子設(shè)計(jì)大賽

    Infineon)、恩智浦(NXP)、意法半導(dǎo)體(ST)硬件平臺(tái)參賽者將有機(jī)會(huì)展示他們的創(chuàng)意和技術(shù)成果。RT-Thread一直致力于推動(dòng)開(kāi)源社區(qū)的發(fā)展,本次大賽不僅為開(kāi)發(fā)者
    的頭像 發(fā)表于 06-20 08:35 ?911次閱讀
    <b class='flag-5'>RT-Thread</b>全球嵌入式電子設(shè)計(jì)<b class='flag-5'>大賽</b>

    6月6日杭州站RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    6月6日下午我們將在杭州舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 05-28 08:35 ?470次閱讀
    6月6日杭州站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    2024 RT-Thread 全球技術(shù)大會(huì)演講議程發(fā)布!

    創(chuàng)造價(jià)值!2023RT-Thread全球技術(shù)大會(huì)匯集了人工智能、RISC-V、嵌入式、物聯(lián)網(wǎng)、安全、應(yīng)用、開(kāi)發(fā)環(huán)境和工具等多領(lǐng)域的行業(yè)專(zhuān)家和RT-Thread社區(qū)工
    的頭像 發(fā)表于 05-16 08:34 ?596次閱讀
    2024 <b class='flag-5'>RT-Thread</b> 全球技術(shù)大會(huì)演講議程發(fā)布!

    RT-Thread混合部署Workshop北京站來(lái)啦!

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 04-19 08:34 ?465次閱讀
    <b class='flag-5'>RT-Thread</b>混合部署Workshop北京站來(lái)啦!

    4月25日北京站RT-Thread線下workshop,探索RT-Thread混合部署新模式

    4月25日,下午我們將在北京舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 04-16 08:35 ?448次閱讀
    4月25日北京站<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深嵌入式軟件工程師農(nóng)曉明老師為您講
    的頭像 發(fā)表于 03-27 11:36 ?866次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    4月10日深圳場(chǎng)RT-Thread線下workshop,探索RT-Thread混合部署新模式!

    4月10日我們將在深圳福田舉辦RT-Thread混合部署線下workshop,在瑞芯微RK3568平臺(tái)上實(shí)現(xiàn)同時(shí)運(yùn)行RT-Thread和linux,本次workshop邀請(qǐng)到RT-Thread資深
    的頭像 發(fā)表于 03-27 08:34 ?559次閱讀
    4月10日深圳場(chǎng)<b class='flag-5'>RT-Thread</b>線下workshop,探索<b class='flag-5'>RT-Thread</b>混合部署新模式!

    恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計(jì)劃!

    前不久,恩智浦半導(dǎo)體正式加入RT-Thread全球合作伙伴計(jì)劃,成為RT-Thread高級(jí)會(huì)員合作伙伴。同時(shí),RT-Thread現(xiàn)已成為恩智浦注冊(cè)合作伙伴(RT-Thread| 簡(jiǎn)介合
    的頭像 發(fā)表于 03-14 10:40 ?661次閱讀
    恩智浦半導(dǎo)體正式加入<b class='flag-5'>RT-Thread</b>全球合作伙伴計(jì)劃!
    主站蜘蛛池模板: 久久精品国产亚洲AV天美18 | 羲义嫁密着中出交尾gvg794 | 青草国产在线视频免费 | 韩日美无码精品无码 | 91综合精品网站久久 | 欧美黑白配性xxxxx | 国产精品一区二区AV交换 | 快播dvd吧 | 国产人妻精品无码AV在线五十路 | chinese东北老年tv视频 | 一本二卡三卡四卡乱码麻豆 | 阿离被扒开双腿疯狂输出 | 亚洲精品永久免费 | 国产精品第3页 | 麻豆狠色伊人亚洲综合网站 | 校花在公车上被内射好舒服 | 国产色情短视频在线网站 | 国产成人精品免费视频大全可播放的 | 亚洲 欧美 日韩 国产 视频 | 日韩专区亚洲国产精品 | 高中生高潮抽搐喷出白浆视频 | www精品一区二区三区四区 | 日韩成人黄色 | 99无人区码一码二码三 | 久久精品一本到东京热 | 日本伦理片 中文字幕 | 116美女写真成人午夜视频 | 越南女 黑人 痛苦 大叫 | 好吊妞国产欧美日韩视频 | 亚洲 制服 欧美 中文字幕 | 日日摸夜添夜夜夜添高潮 | 国产色精品久久人妻99蜜桃麻豆 | 国产精品爽黄69天堂A片 | 亚洲黄色成人 | 99热久久久无码国产精品性麻豆 | 国产午夜精品一区理论片飘花 | 精品国产三级a | 中文字幕日本一区 | 成人综合在线视频免费观看完整版 | 天天色天天干天天 | CHINESE熟女老女人HD视频 |