項目標(biāo)題:基于瑞薩官方EK-RA6M3開發(fā)板的減震座艙,汽車儀表盤設(shè)計與百度云語音識別系統(tǒng)
本系統(tǒng)由兩個主控板組成,其中一個是從得捷網(wǎng)站購買的EK-RA6M3評估板,LQFP176封裝主控,板上帶有KSZ8091PHY接口擴(kuò)展的網(wǎng)口用于以太網(wǎng)通信,并外接一塊AD7606模塊用于振動信號采集;另外一個主控是ARM Linux系統(tǒng)板,用于從以太網(wǎng)接口接收EK-RA6M3評估板采集振動信號的時域信號并做FFT處理,連接HDMI液晶顯示屏用于圖像顯示,并連接攝像頭麥克風(fēng)進(jìn)行語音采集,通過互聯(lián)網(wǎng)接入百度語音云進(jìn)行智能語音識別,本來還想做CAN通信的,但是考慮到RA6M3 MCU做AD采集和以太網(wǎng)通信已經(jīng)沒有多余的CPU運(yùn)算資源去做,并且在ARM Linux系統(tǒng)板一端也沒調(diào)通TJA1050的驅(qū)動,只好作罷。
作品實物圖(只放出EK-RA6M3及周邊外設(shè)部分):
硬件框圖:
EK-RA6M3開發(fā)板流程如下,需要注意的是,EK-RA6M3開發(fā)板的官方例程中,使用以太網(wǎng)功能默認(rèn)是要在FREERTOS調(diào)度下進(jìn)行的,所以需要使用RASC初始化FREERTOS內(nèi)核和堆棧,也就是工程并非裸機(jī)工程而是FREERTOS工程。
ARM Linux系統(tǒng)板流程更為復(fù)雜一些,需要對EK-RA6M3開發(fā)板通過以太網(wǎng)UDP發(fā)過來的AD采集數(shù)據(jù)進(jìn)行處理,生成時域、頻域、波峰匯總信息,并顯示在液晶屏LVGL界面,其中波峰匯總信息部分所蘊(yùn)含的信息量需要信號處理專業(yè)的人士進(jìn)行分析。由于LVGL使用的Linux C庫,而百度語音云API使用的Linux C++庫,LVGL改成C++適配的地方太多,因此直接使用兩個獨立進(jìn)程進(jìn)行,并通過Unix Socket方式進(jìn)行進(jìn)程間通信。
演示視頻:
https://www.bilibili.com/video/BV1GA4m1j7BX/?pop_share=1&vd_source=06455e7f94c397f493f40aba56679e79