Raspberry Pi 5情感機(jī)器人: “知人知面”的智能交互
Raspberry Pi 5相較于上一代搭載了更強(qiáng)的處理器和硬件性能,為情感機(jī)器人的開發(fā)提供了前所未有的可能性。其支持多任務(wù)處理和實(shí)時(shí)計(jì)算,為語音交互和情感判斷提供了堅(jiān)實(shí)的基礎(chǔ)。此外配合高性能的攝像頭模塊和傳感器,機(jī)器人能夠捕捉環(huán)境信息,真正做到 “知人知面” 。
本文引用地址:http://www.butianyuan.cn/article/202503/467563.htm本項(xiàng)目一款以Raspberry Pi 5為核心設(shè)計(jì)的情感機(jī)器人,具備語音識(shí)別、情緒分析、表情顯示和運(yùn)動(dòng)控制等功能。
一、項(xiàng)目背景和意義
1985年,人工智能的奠基人之一 Minsky 就明確指出 “問題不在于智能機(jī)器能否有情感,而在于沒有情感的機(jī)器能否實(shí)現(xiàn)智能” 。1995年情感計(jì)算的概念由 Picard 首次提出,她在《Affective Computing (情感計(jì)算)》書中指出 “情感計(jì)算就是針對(duì)人類的外在表現(xiàn),能夠進(jìn)行測(cè)量和分析并能對(duì)情感施加影響的計(jì)算” ,開辟了計(jì)算機(jī)科學(xué)的新領(lǐng)域,其思想是使計(jì)算機(jī)擁有情感,能夠像人一樣識(shí)別和表達(dá)情感,從而使人機(jī)交互更自然。
隨著人工智能技術(shù)的迅速發(fā)展,機(jī)器人正在從工業(yè)制造和服務(wù)業(yè)的傳統(tǒng)角色,逐步邁向更貼近人類生活的場(chǎng)景。人們期望機(jī)器人不僅能夠執(zhí)行任務(wù),更希望它們具備情感認(rèn)知和互動(dòng)能力,以滿足人類對(duì)智能伙伴的需求。然而,現(xiàn)有情感機(jī)器人的設(shè)計(jì)往往因成本高昂和復(fù)雜性高而限制了普及。Raspberry Pi 5作為一款性價(jià)比極高且性能強(qiáng)大的單板計(jì)算機(jī),為情感機(jī)器人的開發(fā)帶來了突破性的契機(jī)。它的強(qiáng)大處理能力、模塊化擴(kuò)展性和豐富的開發(fā)資源,使得情感機(jī)器人從理論走向?qū)嵺`成為可能。這款基于Raspberry Pi 5的情感機(jī)器人項(xiàng)目,將通過融合語音識(shí)別、情感分析、物體識(shí)別以及自主運(yùn)動(dòng)等功能,為人們帶來前所未有的智能交互體驗(yàn)。
二、項(xiàng)目材料和資源
項(xiàng)目材料清單
358-SC1111--- Raspberry Pi 5單板計(jì)算機(jī)
713-101020586--- Seeed Studio Grove - 振動(dòng)傳感器(SW-420)
713-107100001--- Seeed Studio ReSpeaker 2-Mics Pi HAT
713-104990604--- Seeed Studio Nextion Touch Display for Arduino Raspberry Pi
713-101020037--- Grove – 觸摸傳感器(TTP223)
485-1411--- Adafruit PCA9685 16-Channel Servo Driver
485-5815---Raspberry Pi 5 官方主動(dòng)散熱器
426-SER0043---DFRobot TowerPro SG90C 360 Degree Micro Servo
426-DRI0044---DFRobot DRI0044 2x1.2A DC Motor Driver
932-MIKROE-1388---Jumper Wires Wire Jumpers Female to Female
932-MIKROE-2023---Jumper Wires Wire Jumpers Male to Male
軟件開發(fā)工具
操作系統(tǒng)與環(huán)境:Raspberry Pi OS(64-bit)
編程語言:Python 3
集成開發(fā)環(huán)境(IDE)Visual Studio Code
三、項(xiàng)目技術(shù)概述
Raspberry Pi 5單板計(jì)算機(jī)(圖1)配備了運(yùn)行頻率為 2.4GHz 的 64 位四核Arm Cortex?-A76 CPU,帶加密擴(kuò)展、512KB每核L2緩存和2MB共享L3緩存,CPU 性能相對(duì)于 Raspberry Pi 4 提升了 2-3 倍。同時(shí)800MHz VideoCore VII GPU的引入,支持OpenGL ES 3.1、Vulkan 1.2,使Raspberry Pi 5支持4K@60fps視頻編碼和解碼,并優(yōu)化了圖形渲染性能,適合圖形密集型任務(wù)。Raspberry Pi 5支持PCIe 2.0,通過可選擴(kuò)展卡連接NVMe SSD,實(shí)現(xiàn)高效存儲(chǔ)。采用雙頻帶802.11 ac Wi-Fi 和藍(lán)牙? 5.0/藍(lán)牙低功耗 (BLE)連接。
圖1:Raspberry Pi 5單板計(jì)算機(jī)(來源:貿(mào)澤電子)
Grove - 振動(dòng)傳感器(SW-420)(圖2)是一種高靈敏度非定向振動(dòng)傳感器。模塊穩(wěn)定時(shí),電路接通,輸出高電平。當(dāng)發(fā)生移動(dòng)或振動(dòng)時(shí),電路會(huì)短暫斷開,輸出低電平。同時(shí),還可以根據(jù)自己的需要調(diào)節(jié)靈敏度。
圖2:Grove - 振動(dòng)傳感器(SW-420)(來源:貿(mào)澤電子)
ReSpeaker 2-Mics Pi HAT(圖3)設(shè)計(jì)基于Cirrus Logic WM8960,WM8960是一款低功耗立體聲編解碼器,具有設(shè)計(jì)用于數(shù)字音頻應(yīng)用的1W立體聲D類揚(yáng)聲器驅(qū)動(dòng)器。其他硬件包括電路板兩側(cè)的2個(gè)麥克風(fēng)(用于收集聲音)、3個(gè)APA102 RGB LED、1個(gè)用戶按鈕和2個(gè)用于擴(kuò)展的板載Grove接口。音頻輸出可通過3.5mm音頻插孔或JST 2. 0揚(yáng)聲器輸出傳輸。該板是一款帶有用于Raspberry Pi的雙麥克風(fēng)的擴(kuò)展板。該板設(shè)計(jì)用于AI和語音應(yīng)用,包括Amazon Alexa語音服務(wù)和Google Assistant,可幫助設(shè)計(jì)人員構(gòu)建功能更強(qiáng)大、更靈活的語音產(chǎn)品。
圖3:ReSpeaker 2-Mics Pi HAT(來源:貿(mào)澤電子)
Nextion Touch Display for Arduino Raspberry Pi(圖4)是一款分辨率為 400*240 的 TFT 顯示器。該顯示器的觸摸屏為電阻式觸摸屏。Nextion 只有一個(gè)串口(TTL),用于供電或與 Arduino 板或 Raspberry Pi 等外圍設(shè)備連接。Nextion 顯示器有一個(gè) MCU,頻率高達(dá) 48MHz。借助 16MB 閃存、3584 字節(jié) RAM 和 SD 卡插槽,該顯示器可為 HMI 編程提供豐富的存儲(chǔ)空間。
圖4:Nextion Touch Display for Arduino Raspberry Pi(來源:貿(mào)澤電子)
Grove –觸摸傳感器(TTP223)(圖5)基于 TTP223-B 觸摸檢測(cè)器集成電路。TTP223 是一種觸摸板檢測(cè)集成電路,提供一個(gè)觸摸鍵。該觸摸檢測(cè) IC 專為取代傳統(tǒng)的直接按鍵而設(shè)計(jì),具有不同的焊盤尺寸。低功耗和寬工作電壓是觸點(diǎn)的主要特點(diǎn),適用于直流或交流應(yīng)用。
圖5:Grove –觸摸傳感器(TTP223)(來源:貿(mào)澤電子)
Adafruit PCA9685 16-Channel Servo Driver(圖6)可通過 I2C 驅(qū)動(dòng)多達(dá) 16 個(gè)伺服電機(jī),只需 2 個(gè)引腳。板載 PWM 控制器可同時(shí)驅(qū)動(dòng)所有 16 個(gè)通道。
圖6:Adafruit PCA9685 16-Channel Servo Driver(來源:貿(mào)澤電子)
DRI0044 2x1.2A DC Motor Driver(圖7)是基于 TB6612FNG 電機(jī)驅(qū)動(dòng)器 IC 的微型雙向直流電機(jī)驅(qū)動(dòng)器。這款 DFRobot 電機(jī)驅(qū)動(dòng)器繼承了 L298N 的電機(jī)控制邏輯,只需四個(gè)引腳即可驅(qū)動(dòng)兩個(gè)電機(jī)。TB6612FNG 是一款用于雙直流電機(jī)的驅(qū)動(dòng)器 IC,其輸出晶體管采用低導(dǎo)通電阻的 LD MOS 結(jié)構(gòu)。該驅(qū)動(dòng)器 IC 具有 CW/CCW/ 短路制動(dòng)/停止功能模式、15V 最大電源電壓、內(nèi)置熱關(guān)斷電路和低電壓檢測(cè)電路。
圖7:DRI0044 2x1.2A DC Motor Driver(來源:貿(mào)澤電子)
四、項(xiàng)目設(shè)計(jì)與調(diào)試
硬件架構(gòu)設(shè)計(jì)
以Raspberry Pi 5為核心處理單元,集成多種傳感器與模塊,實(shí)現(xiàn)豐富的交互功能。按照不同的功能模塊,主要的硬件架構(gòu)設(shè)計(jì)包括:
1.核心處理單元:采用Raspberry Pi 5,具備強(qiáng)大的計(jì)算能力和豐富的接口,支持復(fù)雜的算法運(yùn)行和多任務(wù)處理。
2.傳感與交互模塊:
麥克風(fēng)陣列( ReSpeaker 2-Mics Pi HAT)實(shí)現(xiàn)語音信號(hào)采集,用于語音命令識(shí)別和情緒分析。Pin腳與Raspberry Pi 5兼容,可直接連接Raspberry Pi 5。
觸摸傳感器(TTP223)用于模擬人機(jī)交互的觸控功能。
振動(dòng)傳感器(SW-420)檢測(cè)環(huán)境中的振動(dòng)信號(hào),增加互動(dòng)的趣味性。
顯示模塊(Nextion Touch Display)實(shí)現(xiàn)機(jī)器人的動(dòng)態(tài)表情呈現(xiàn)和狀態(tài)反饋。
3.運(yùn)動(dòng)控制系統(tǒng):
直流電機(jī)驅(qū)動(dòng)模塊(TB6612FNG)實(shí)現(xiàn)機(jī)器人底盤的轉(zhuǎn)動(dòng)控制。
舵機(jī)驅(qū)動(dòng)模塊(PCA9685)實(shí)現(xiàn)機(jī)器人復(fù)雜表情呈現(xiàn)中手臂的控制。
軟件設(shè)計(jì)
軟件框架基于樹莓派的Raspberry Pi OS,結(jié)合Python開發(fā)語言實(shí)現(xiàn)多模塊協(xié)作:
下載并安裝最新版本的Raspberry Pi OS (64bit)。
顯示模塊:
從Nextion官方網(wǎng)站下載并安裝Nextion編輯器,并將不同階段的表情動(dòng)畫圖片導(dǎo)入Nextion編輯器。
Raspberry Pi通過UART向Nextion發(fā)送指令,控制圖片的顯示??刂拼a(圖8):
使用Nextion的Timer控件實(shí)現(xiàn)本地切換動(dòng)畫幀,Raspberry Pi僅需通過page命令切換到對(duì)應(yīng)動(dòng)畫頁面。
圖8:Nextion表情顯示代碼(來源:貿(mào)澤電子)
語音命令識(shí)別和情感分析:
安裝語音處理(pip3 install SpeechRecognition)和情感分析(pip3 install transformers torch)庫(kù)。
通過如下代碼(圖9)錄制音頻并轉(zhuǎn)為文本。
圖9:音頻錄制轉(zhuǎn)文本代碼(來源:貿(mào)澤電子)
使用Hugging Face的transformers庫(kù)加載預(yù)訓(xùn)練的情感分析模型(圖10)。
圖10:情感分析代碼(來源:貿(mào)澤電子)
將情感分析結(jié)果發(fā)送到Nextion屏幕顯示表情。
通過pyttsx3庫(kù),實(shí)現(xiàn)情感結(jié)果的語音反饋(圖11)。
圖11:語音反饋代碼(來源:貿(mào)澤電子)
觸摸交互:
使用GPIOZero檢測(cè)觸摸,Grove觸摸傳感器在觸摸時(shí)會(huì)將信號(hào)輸出為高電平(1),未觸摸時(shí)為低電平(0),控制代碼(圖12)。
圖12:觸摸檢測(cè)代碼(來源:貿(mào)澤電子)
在情感機(jī)器人中,可以通過觸摸觸發(fā)情感狀態(tài)切換,顯示特定表情或語音反饋(圖13)。
圖13:觸摸實(shí)現(xiàn)情感狀態(tài)的切換代碼(來源:貿(mào)澤電子)
運(yùn)動(dòng)控制(直流電機(jī)):通過以下步驟實(shí)現(xiàn)情感機(jī)器人身體的轉(zhuǎn)動(dòng),并將其與其他功能模塊相結(jié)合,增強(qiáng)交互性和趣味性。
通過控制DIR1和DIR2,實(shí)現(xiàn)機(jī)器人右轉(zhuǎn)圈(正轉(zhuǎn))、左轉(zhuǎn)圈(反轉(zhuǎn))、停止。
正轉(zhuǎn)控制邏輯:DIR1高電平,DIR2低電平。
反轉(zhuǎn)控制邏輯:DIR1低電平,DIR2高電平。
停止控制邏輯:DIR1和DIR2同時(shí)低電平。
在左右轉(zhuǎn)圈時(shí),通過串口控制Nextion屏幕顯示表情(圖14)。
圖14:轉(zhuǎn)圈時(shí)顯示表情的代碼(來源:貿(mào)澤電子)
使用觸摸或者振動(dòng)傳感器時(shí)控制轉(zhuǎn)圈動(dòng)作(圖15)。
圖15:觸摸或振動(dòng)與機(jī)器人轉(zhuǎn)圈相結(jié)合的代碼(來源:貿(mào)澤電子)
運(yùn)動(dòng)控制(舵機(jī)):實(shí)現(xiàn)情感機(jī)器人的手臂控制,通過設(shè)置不同的手臂動(dòng)作來模擬各種情感表現(xiàn)。
初始化PCA9685,安裝Adafruit提供的Python庫(kù)(pip3 install adafruit-pca9685)。
設(shè)置舵機(jī)角度(圖16)。
圖16:舵機(jī)角度控制代碼(來源:貿(mào)澤電子)
根據(jù)機(jī)器人的情感狀態(tài)來觸發(fā)不同的手臂動(dòng)作(圖17)。
圖17:情感機(jī)器人手臂動(dòng)作控制代碼(來源:貿(mào)澤電子)
外殼設(shè)計(jì)
使用Autodesk Fusion 360來設(shè)計(jì)情感機(jī)器人(圖18),為了簡(jiǎn)化3D打印的過程,將機(jī)器人的主體部分分成幾個(gè)部分,選擇PLA作為3D打印的材料,并使用螺釘進(jìn)行組裝。
圖18:3D打印設(shè)計(jì)圖(來源:貿(mào)澤電子)
成果展示
五、項(xiàng)目總結(jié)
本項(xiàng)目基于 Raspberry Pi 5,設(shè)計(jì)并實(shí)現(xiàn)了一款具備語音識(shí)別、情感分析及多模態(tài)人機(jī)交互功能的情感機(jī)器人。通過軟硬件的協(xié)同工作,機(jī)器人能夠識(shí)別用戶的情緒并做出相應(yīng)的表情和動(dòng)作反饋,極大提升了互動(dòng)體驗(yàn)。
在硬件方面,Raspberry Pi 5 強(qiáng)大的處理性能為實(shí)時(shí)語音情感分析提供了支持,輔以 Seeed Studio ReSpeaker 2-Mics Pi HAT 實(shí)現(xiàn)語音輸入、Nextion NX4832T035 顯示屏動(dòng)態(tài)顯示表情、以及 DFRobot DRI0044 電機(jī)驅(qū)動(dòng)器控制底盤運(yùn)動(dòng)。此外,Adafruit PCA9685 PWM 驅(qū)動(dòng)模塊負(fù)責(zé)手臂動(dòng)作的精準(zhǔn)控制,TTP223 觸摸傳感器和 SW-420 振動(dòng)傳感器增強(qiáng)了機(jī)器人對(duì)環(huán)境的感知能力。
在軟件開發(fā)方面,項(xiàng)目采用 Python 編寫核心邏輯,結(jié)合 gpiozero 控制硬件接口,集成了 Google Speech-to-Text 的情感分析 API,精準(zhǔn)解讀用戶語音情感。通過編程實(shí)現(xiàn)了表情顯示、手臂動(dòng)作和機(jī)器人移動(dòng)的聯(lián)動(dòng)反應(yīng),例如用戶表達(dá)開心時(shí),機(jī)器人會(huì)揮動(dòng)手臂并顯示微笑表情。
本項(xiàng)目展示了 Raspberry Pi 5 的強(qiáng)大擴(kuò)展性和靈活性,成功打造了一個(gè)富有情感交互功能的機(jī)器人平臺(tái),為家庭娛樂、教育和助老助殘領(lǐng)域提供了潛在應(yīng)用價(jià)值。未來可通過增強(qiáng) AI 算法和語音模型,進(jìn)一步提升機(jī)器人的情感理解能力。
評(píng)論