?
1 概述?
隨著人們生活水平的提高,對產(chǎn)品的功能要求也越來越高,追求舒適的體驗(yàn)感,特別是對操控性的要求越來越高。目前風(fēng)扇產(chǎn)品的控制方式有以下幾類:
- 按鍵控制:傳統(tǒng)控制方式,每次要走到風(fēng)扇邊才行,操作麻煩;
- 遙控控制:采用紅外遙控或者藍(lán)牙遙控,方便遠(yuǎn)距離控制,但遙控器容易丟,放置也麻煩。且遙控器上按鍵較少,當(dāng)風(fēng)扇功能多的時(shí)候無法用單次按鍵控制全部的功能,組合按鍵不符合人們使用習(xí)慣;
- 手機(jī)APP控制:每次控制需要打開手機(jī)APP,需要聯(lián)網(wǎng),同時(shí)風(fēng)扇需配網(wǎng),操作繁瑣;
- 智能音箱控制:通過如天貓精靈等智能音箱直接控制,相對方便,但音箱需聯(lián)網(wǎng)狀態(tài)下才可使用,識(shí)別時(shí)有隱私安全問題,網(wǎng)絡(luò)延時(shí)大時(shí)控制的實(shí)時(shí)性不好。
?
為了解決以上痛點(diǎn),可以采用純離線語音識(shí)別進(jìn)行控制,在成本增加不大的情況下,為產(chǎn)品帶來更多的亮點(diǎn)和競爭力。啟英泰倫針對該產(chǎn)品領(lǐng)域,已開發(fā)了整套離線語音風(fēng)扇方案,下面對該方案進(jìn)行介紹。
2 方案優(yōu)勢?
啟英泰倫離線語音風(fēng)扇相對傳統(tǒng)風(fēng)扇方案,可讓用戶通過語音控制風(fēng)扇設(shè)備,替換傳統(tǒng)遙控器或按鈕控制的方式,該方案有以下優(yōu)勢:
- 可以直接使用語音控制風(fēng)扇,且無需聯(lián)網(wǎng),自然方便,識(shí)別率可達(dá)95%以上;
- 語音控制響應(yīng)快,一般在0.2~0.8s內(nèi)完成;
- 可遠(yuǎn)場識(shí)別,安靜情況下可達(dá)10米;
- 方案功耗低,工作功耗僅為0.2W左右;
- 可靠性好,芯片方案已通過雙85測試,滿足格力、美的等家電巨頭要求;
- 整套產(chǎn)品技術(shù)已成熟,具有完整的軟件、硬件、結(jié)構(gòu)設(shè)計(jì)方案,節(jié)省開發(fā)周期,降低開發(fā)難度;
- 配合我司語音AI平臺(tái)開發(fā),可靈活定制喚醒詞和命令詞,不需要再專門收集語料訓(xùn)練。
?
3 應(yīng)用描述?
風(fēng)扇產(chǎn)品按照使用電源類型可分為交流電風(fēng)扇、直流電風(fēng)扇和交直流電風(fēng)扇三類,其類型可以分為臺(tái)扇、吊扇、落地扇、無葉風(fēng)扇等。啟英泰倫離線語音風(fēng)扇方案適用于各類風(fēng)扇,其中尤其在落地扇上面的應(yīng)用較多。
語音風(fēng)扇產(chǎn)品的使用場景為普通家居環(huán)境,在安靜和中低噪音下可以達(dá)到良好的識(shí)別率。其中安靜環(huán)境的環(huán)境底噪在35dB ~ 45dB之間,屬于中低噪音環(huán)境;開啟風(fēng)扇后環(huán)境噪音可達(dá)45dB ~ 65dB之間。該噪音環(huán)境下可以直接選用我司單麥克風(fēng)語音模塊,如CI-B0XGS01S或CI-B0XGS01S-H模塊,以達(dá)到比較好的性價(jià)比。
特別注意,不同的風(fēng)扇運(yùn)行過程中,因?yàn)樯热~大小和葉片數(shù)量,風(fēng)量大小差異,運(yùn)行產(chǎn)生的風(fēng)噪大小也有不小的差異,為了達(dá)到最好的語音識(shí)別效果,在設(shè)計(jì)風(fēng)扇整機(jī)結(jié)構(gòu)時(shí),因注意控制噪音小于65dB。
4 產(chǎn)品設(shè)計(jì)流程?
一個(gè)基于我司芯片的標(biāo)準(zhǔn)語音產(chǎn)品設(shè)計(jì)流程如下圖所示:
?
該流程主要針對我司新用戶開發(fā)產(chǎn)品使用,包含了前期購買樣品Demo進(jìn)行驗(yàn)證,硬件選型,語音對話邏輯、軟硬件方案和結(jié)構(gòu)設(shè)計(jì),設(shè)計(jì)完成后的測試,以及生產(chǎn)測試準(zhǔn)備和后續(xù)批量采購等步驟。如果是已經(jīng)熟悉我司方案的老用戶,可以直接從中間步驟開始,不用再重復(fù)進(jìn)行Demo測試等工作。
下面針對新用戶的開發(fā),對上述流程中的各個(gè)步驟逐一描述。
4.1 DEMO測試?
針對新用戶,可以先從我司授權(quán)的經(jīng)銷商或直接從我司官網(wǎng) ?樣品購買處購買對應(yīng)的模塊或開發(fā)板套件,進(jìn)行識(shí)別效果測試,相關(guān)的軟硬件技術(shù)文檔可以從本文檔中心處獲取。用戶測試滿意后,可以進(jìn)行硬件選型。
4.2 選型指南?
用戶硬件選型可以直接參考 ?硬件選型,如果用戶想快速產(chǎn)品化,推薦直接使用我司已設(shè)計(jì)好的標(biāo)準(zhǔn)模塊;如果現(xiàn)有標(biāo)準(zhǔn)模塊無法滿足產(chǎn)品的結(jié)構(gòu)需求,也可以選用合適的芯片進(jìn)行硬件板的設(shè)計(jì)。
4.3 方案設(shè)計(jì)?
選擇好合適的芯片或模塊后,可根據(jù)產(chǎn)品的功能進(jìn)行下述設(shè)計(jì):
- 語音UI(喚醒詞和命令詞)設(shè)計(jì):設(shè)計(jì)方法可參考 ?語音UI設(shè)計(jì)參考;
- 硬件設(shè)計(jì):設(shè)計(jì)方法可參考 ?硬件設(shè)計(jì)參考;
- 結(jié)構(gòu)設(shè)計(jì):設(shè)計(jì)方法可參考 ?產(chǎn)品結(jié)構(gòu)設(shè)計(jì);
- 軟件開發(fā):設(shè)計(jì)方法可參考 ?軟件開發(fā)。
如用戶為首次進(jìn)行語音方案開發(fā),建議到 ?啟英泰倫語音AI平臺(tái)上獲取基于相關(guān)芯片的語音產(chǎn)品方案設(shè)計(jì)Checklist文檔,進(jìn)行逐一檢查以確保設(shè)計(jì)效果。如有技術(shù)支持需求請聯(lián)系我司技術(shù)支持人員。
4.4 測試驗(yàn)收?
產(chǎn)品方案設(shè)計(jì)完成形成樣品后,建議對該樣品進(jìn)行相關(guān)的識(shí)別測試,相關(guān)測試方法和標(biāo)準(zhǔn)可參考 ?識(shí)別效果測試。同時(shí),還建議根據(jù)產(chǎn)品質(zhì)量的要求進(jìn)行各類硬件測試,如雙85測試、靜電測試等。為了保證最終的識(shí)別效果,還建議進(jìn)行硬件底噪的測試及產(chǎn)品裝機(jī)后的整機(jī)功能測試。
4.5 生產(chǎn)測試?
樣機(jī)測試完成后,會(huì)轉(zhuǎn)入后續(xù)產(chǎn)線批量生產(chǎn)階段。我司為產(chǎn)品的批量生產(chǎn)做了完善的解決方案,用戶可以參考 ?生產(chǎn)測試獲取更多信息。用戶如需要生產(chǎn)測試的相關(guān)技術(shù)支持,請聯(lián)系我司技術(shù)人員。
4.6 下單采購?
用戶如果要采購我司產(chǎn)品樣品,請點(diǎn)擊 ?樣品購買,也可以點(diǎn)擊 ?樣品和批量采購獲取更多信息。
5 風(fēng)扇設(shè)計(jì)方案介紹?
5.1 主控方案?
5.1.1 方案特點(diǎn)?
我司的CI110X芯片內(nèi)置多個(gè)IO,可直接取代傳統(tǒng)電控風(fēng)扇中的單片機(jī)控制方案,實(shí)現(xiàn)單芯片完成語音控制和主控控制,整體成本較低,但需要做語音和主控的開發(fā),前期開發(fā)周期長。
為了方便用戶使用,我司已提前做了相應(yīng)的開發(fā),可以提供完整的語音風(fēng)扇主控方案。
5.1.2 方案框圖?
?
整個(gè)方案如上圖所示,CI110X芯片作為主控,可以通過麥克風(fēng)采集外部語音進(jìn)行識(shí)別,通過功放驅(qū)動(dòng)喇叭播音。如為省成本,還可以將功放和喇叭換為蜂鳴器。CI110X芯片還可以接受外部按鍵及紅外信號(hào),兼容傳統(tǒng)控制方式。
CI110X芯片可支持數(shù)碼管顯示,以及控制外部的驅(qū)動(dòng)電路,實(shí)現(xiàn)電機(jī)的控制,可以很好的用一個(gè)單芯片實(shí)現(xiàn)風(fēng)扇的全部控制功能。
5.1.3 硬件設(shè)計(jì)參考?
?風(fēng)扇電控板的一個(gè)硬件參考線路圖及IO使用情況見下圖,用戶可以使用CI110X芯片按照相同的IO使用方式設(shè)計(jì)硬件電路,可以方便的搭建整套風(fēng)扇方案。
?
5.1.4 主控方案SDK包說明?
我司為用戶基于上述硬件設(shè)計(jì),提供了完整的SDK包,用戶可以到 ?啟英泰倫語音AI平臺(tái)上獲取相關(guān)SDK開發(fā)包。
本SDK包有以下功能點(diǎn):
- 控制方式:支持藍(lán)牙、紅外、按鍵、語音;
- 風(fēng)扇模式:支持正常風(fēng)、自然風(fēng)、睡眠風(fēng)、智能風(fēng);
- 搖頭方式:支持左右搖頭、上下?lián)u頭、3D搖頭;
- 定時(shí)功能:支持定時(shí)關(guān)機(jī)功能,可按整數(shù)定時(shí)1 ~ 15小時(shí)。
本SDK包中使用到了硬件timer,使用方式如下:
- 硬件TIMER0:轉(zhuǎn)速電機(jī)控制(不歸零碼NRZ編碼,使用一個(gè)IO腳);
- 硬件TIMER1:紅外接收控制;
- 硬件TIMER2:藍(lán)牙接收控制(注意,藍(lán)牙接收的數(shù)據(jù)和紅外接收模塊基本相同);
- 硬件TIMER3:蜂鳴器控制和搖頭電機(jī)控制。
為了方便代碼的移植,每個(gè)外設(shè)驅(qū)動(dòng)和風(fēng)扇應(yīng)用代碼都是單獨(dú)的文件夾,目錄說明如下:
目錄地址 | 目錄說明 | 功能描述 |
---|---|---|
..\components\ir..\components\ir_remote_driver\ | 紅外驅(qū)動(dòng)目錄(有些藍(lán)牙也是單線通訊方式,與紅外的驅(qū)動(dòng)基本一致) | 紅外接收功能,接收后的數(shù)據(jù)會(huì)隊(duì)列通知到deal_userdef_msg,紅外的長度可以根據(jù)宏定義配置。 #宏定義 #define IR_MAX_DATA_COUNT 120最大紅外個(gè)數(shù) |
..\components\motor_driver\ | 電機(jī)驅(qū)動(dòng)目錄 | 當(dāng)前支持5104的不歸零碼協(xié)議,后續(xù)如有其它驅(qū)動(dòng),CI可以支持 |
..\components\ci_key\ | 使用了2個(gè)Touch IC芯片(如品騰PT8041),控制7個(gè)按鍵 | 觸摸不同的按鍵,對應(yīng)不同的adc數(shù)值,故使用兩個(gè)ADIO 做按鍵驅(qū)動(dòng),根據(jù)客戶的實(shí)際產(chǎn)品,請自行調(diào)整 |
..\components\digital_tube\ | 數(shù)碼管驅(qū)動(dòng)目錄 | IO 與LED 進(jìn)行復(fù)用。目前支持的是兩個(gè)數(shù)碼管+8個(gè)LED |
..\components\temperature_sensor\ | 溫度傳感器驅(qū)動(dòng)目錄 | 使用AD+熱敏電阻實(shí)現(xiàn),產(chǎn)品可以根據(jù)溫度進(jìn)行智能調(diào)節(jié)風(fēng)量 |
..\components\buzzer\ | 蜂鳴器驅(qū)動(dòng)目錄 | 采用定時(shí)器默認(rèn)4Khz進(jìn)行聲音提示,可以更改 #define BUZZER_HZ 進(jìn)行配置,單位HZ |
..\sample\internal\sample_1102\src\user_msg_deal.c | 風(fēng)扇應(yīng)用層代碼 | 根據(jù)紅外,按鍵,語音識(shí)別的消息進(jìn)行電機(jī)的應(yīng)用控制 |
針對SDK中一些重要的變量和函數(shù)進(jìn)行說明:
風(fēng)扇狀態(tài)變量:
typedef struct
{
unsigned short user_code : 4 ;//用戶碼固定位 b'1010*
unsigned short positive : 2 ;//正轉(zhuǎn)b'00 反轉(zhuǎn)b'11*
unsigned short sync_motor: 2 ;//同步電機(jī)1 停止b'00 同步電機(jī)停止b'10*
unsigned short speed_bit: 8 ;//電機(jī)工作范圍25~255 0表示電機(jī)停止*
unsigned char mode; //0:正常風(fēng) 1:自然風(fēng) 2:睡眠風(fēng) 3:智能風(fēng)*
short time; //0~15H*
unsigned char led; //1開,0關(guān)*
unsigned char head; //0關(guān)閉 1:左右 2:上下 3:3D*
unsigned char gear; //0關(guān)閉 1~24*
}motor_status_struct_data;
風(fēng)扇初始化函數(shù)
路徑: ..\sample\internal\sample_1102\src\user_msg_deal.c
/*\* @breif 風(fēng)扇初始化函數(shù)**/
void fan_init(void)
{
//風(fēng)扇狀態(tài)初始化
motor_status.user_code = 0xa;
motor_status.sync_motor = 0x0;
motor_status.speed_bit = 0x0;
motor_status.positive = 0x00;
motor_status.mode = 0;
motor_status.head = 0;
motor_status.led = 1;
motor_status.gear = 0;
motor_status.time = 0;
/*風(fēng)扇軟件初始化*/
extern void user_fan_soft_init(void);
user_fan_soft_init();
//電機(jī)初始化
agreement_5104_app_init();
//紅外初始化
extern void ir_test_recive(void);
ir_test_recive();
//藍(lán)牙初始化
extern void bt_test_recive(void);
bt_test_recive();
//按鍵初始化
extern void ci_key_init(void);
ci_key_init();
//數(shù)碼管初始化
extern int digital_tube_init(void);
digital_tube_init();
//蜂鳴器初始化
buzzer_init();
//同步電機(jī)2初始化
sync_motor2_hw_init();
//溫度傳感器初始化
temp_sensor_init();
}
風(fēng)扇應(yīng)用任務(wù)處理
語音入口和標(biāo)準(zhǔn)SDK一致無改動(dòng),藍(lán)牙、語音、按鍵、紅外通過隊(duì)列sys_msg_queue發(fā)送消息到UserTaskManageProcess任務(wù)。相關(guān)控制處理入口入下圖所示例:
uint32_t deal_userdef_msg(sys_msg_t *msg)
{
uint32_t ret = 1;
switch(msg->msg_type)
{
/* 按鍵消息 */
case SYS_MSG_TYPE_KEY:
{
sys_msg_key_data_t *key_rev_data;
key_rev_data = &msg->msg_data.key_data;
userapp_deal_key_msg(key_rev_data);
break;
}
/* 紅外消息 */
case SYS_MSG_TYPE_IR:
{
sys_msg_ir_data_t *ir_rev_data;
ir_rev_data = &msg->msg_data.ir_data;
userapp_deal_ir_msg(ir_rev_data);
break;
}
/* 藍(lán)牙消息*/
case SYS_MSG_TYPE_BT:
{
sys_msg_bt_data_t *bt_rev_data;
bt_rev_data = &msg->msg_data.bt_data;
userapp_deal_bt_msg(bt_rev_data);
break;
}
#if MSG_COM_USE_UART_EN
/* CI串口協(xié)議消息 */
case SYS_MSG_TYPE_COM:
{
sys_msg_com_data_t *com_rev_data;
com_rev_data = &msg->msg_data.com_data;
userapp_deal_com_msg(com_rev_data);
break;
}
#endif
/* CI IIC 協(xié)議消息 */
#if MSG_USE_I2C_EN
case SYS_MSG_TYPE_I2C:
{
sys_msg_i2c_data_t *i2c_rev_data;
i2c_rev_data = &msg->msg_data.i2c_data;
userapp_deal_i2c_msg(i2c_rev_data);
break;
}
#endif
default:
break;
}
return ret;
}
5.2 配合主控板的串口通訊方案?
5.2.1 方案特點(diǎn)?
如用戶不愿意替換原先使用的電控板,也可以用我司的芯片設(shè)計(jì)語音控制板,和原電控板通過串口進(jìn)行通訊,也可以實(shí)現(xiàn)語音風(fēng)扇的產(chǎn)品設(shè)計(jì)。該方式開發(fā)相對簡單,可以快速對接完成產(chǎn)品,但成本略高,適用于需快速出產(chǎn)品的的方案或者第一次接觸語音識(shí)別的方案。
該方案的設(shè)計(jì)框圖如下,語音模塊與電控模塊需要4根線的串口連接,語音模塊進(jìn)行語音識(shí)別及根據(jù)風(fēng)扇的狀態(tài)進(jìn)行信息播放,控制由電控模塊完成。
?
5.2.2 硬件設(shè)計(jì)參考?
用戶可以使用我司芯片設(shè)計(jì)需要要求的語音模塊,但為快速開發(fā),推薦直接使用我司的以下標(biāo)準(zhǔn)模塊:
- CI-B02GS03T:適合空間比較高,縱深長的結(jié)構(gòu),串口接口電平為3.3V;
- CI-B02GS01S:適合空間比較矮的結(jié)構(gòu),串口接口電平為3.3V;
- CI-B02GS01J:適合有空間放置固定語音模塊的結(jié)構(gòu),原來的風(fēng)扇硬件改動(dòng)較小,串口接口電平為5V。
?
用戶直接使用我司標(biāo)準(zhǔn)語音模塊時(shí),有以下注意事項(xiàng):
- 將語音模塊板的串口跟電控串口對接,注意電控的供電需要大于1A;
- 注意串口的電平要匹配,CI-B02GS01J支持5V電平,其他的模塊支持3.3V,如果電控板使用5V電平,CI-B02GS01J可以對接直接串口,其它模塊需要增加電平轉(zhuǎn)換電路,如下圖所示:
?
5.2.3 串口通訊方式?
語音模塊與電控模塊通過串口進(jìn)行信息交互,主要有兩種方式,一種為語音模塊主動(dòng)播放,同時(shí)將信息發(fā)電控模塊;另一種為語音模塊被動(dòng)播放,其分別描述如下:
語音模塊主動(dòng)播放模式
?
主動(dòng)播放方式主要執(zhí)行以下動(dòng)作:
- 識(shí)別到詞條,主動(dòng)播放反饋聲音;
- 將此條信息串口告知電控模塊;
- 電控模塊執(zhí)行動(dòng)作。
該方式的優(yōu)點(diǎn)在于控制方式簡單,由語音模塊單線輸出信息給電控模塊。但缺點(diǎn)在于無法根據(jù)風(fēng)扇的情況及按鍵情況進(jìn)行語音反饋。
語音模塊被動(dòng)播放模式
?
被動(dòng)播放方式主要執(zhí)行以下動(dòng)作:
- 語音模塊識(shí)別到詞條;
- 將詞條信息串口告知電控模塊;
- 電控模塊執(zhí)行相關(guān)動(dòng)作;
- 告知語音模塊需要播放的內(nèi)容;
- 語音模塊根據(jù)電控模塊反饋進(jìn)行播放。
該方式的優(yōu)點(diǎn)在于語音模塊根據(jù)電控模塊的狀態(tài)進(jìn)行播放對應(yīng)內(nèi)容,可以進(jìn)行最合適的反饋,體驗(yàn)感好;同時(shí)如果電控模塊通過按鍵或者遙控進(jìn)行控制,語音模塊也可以進(jìn)行狀態(tài)播放。缺點(diǎn)在于會(huì)多一次串口通信的過程。
5.2.4 SDK包說明和模塊串口通訊協(xié)議?
我司為用戶提供了串口通訊方案完整的SDK包,用戶可以到 ?啟英泰倫語音AI平臺(tái)上獲取相關(guān)SDK開發(fā)包。
模塊的串口通訊建議使用我司標(biāo)準(zhǔn)協(xié)議,具體格式請參考 ?串口協(xié)議。
以下是語音模塊發(fā)給電控模塊的一個(gè)命令詞及協(xié)議參考:
命令詞 | 幀頭 | 長度 | 類型 | 命令 | 序號(hào) | 語音ID | 保留 | 分?jǐn)?shù) | 累加和 | 幀尾 |
---|---|---|---|---|---|---|---|---|---|---|
小艾小艾 | A5 FC | 07 00 | A0 | 91 | XX | 00 00 00 00 | 00 00 | XX | XXXX | FB |
開風(fēng)扇 | A5 FC | 07 00 | A0 | 91 | XX | 42 19 74 02 | 00 00 | XX | XXXX | FB |
打開風(fēng)扇 | A5 FC | 07 00 | A0 | 91 | XX | 41 19 74 02 | 00 00 | XX | XXXX | FB |
關(guān)風(fēng)扇 | A5 FC | 07 00 | A0 | 91 | XX | 82 19 74 02 | 00 00 | XX | XXXX | FB |
關(guān)閉風(fēng)扇 | A5 FC | 07 00 | A0 | 91 | XX | 81 19 74 02 | 00 00 | XX | XXXX | FB |
開搖頭 | A5 FC | 07 00 | A0 | 91 | XX | 86 22 74 02 | 00 00 | XX | XXXX | FB |
打開搖頭 | A5 FC | 07 00 | A0 | 91 | XX | 85 22 74 02 | 00 00 | XX | XXXX | FB |
風(fēng)扇搖頭 | A5 FC | 07 00 | A0 | 91 | XX | 81 22 74 02 | 00 00 | XX | XXXX | FB |
關(guān)搖頭 | A5 FC | 07 00 | A0 | 91 | XX | C5 22 74 02 | 00 00 | XX | XXXX | FB |
關(guān)閉搖頭 | A5 FC | 07 00 | A0 | 91 | XX | C4 22 74 02 | 00 00 | XX | XXXX | FB |
停止搖頭 | A5 FC | 07 00 | A0 | 91 | XX | C1 22 74 02 | 00 00 | XX | XXXX | FB |
風(fēng)大點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | E1 38 BC 02 | 00 00 | XX | XXXX | FB |
風(fēng)大一點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 72 1A 98 01 | 00 00 | XX | XXXX | FB |
風(fēng)大一些 | A5 FC | 07 00 | A0 | 91 | XX | 73 1A 98 01 | 00 00 | XX | XXXX | FB |
風(fēng)再大點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 74 1A 98 01 | 00 00 | XX | XXXX | FB |
風(fēng)小一點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 75 1A 98 01 | 00 00 | XX | XXXX | FB |
風(fēng)小一些 | A5 FC | 07 00 | A0 | 91 | XX | 76 1A 98 01 | 00 00 | XX | XXXX | FB |
風(fēng)小點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 5F 39 BC 02 | 00 00 | XX | XXXX | FB |
風(fēng)再小點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 77 1A 98 01 | 00 00 | XX | XXXX | FB |
最大風(fēng) | A5 FC | 07 00 | A0 | 91 | XX | C7 39 BC 02 | 00 00 | XX | XXXX | FB |
最小風(fēng) | A5 FC | 07 00 | A0 | 91 | XX | 48 3A BC 02 | 00 00 | XX | XXXX | FB |
定時(shí)關(guān)機(jī) | A5 FC | 07 00 | A0 | 91 | XX | 01 0F 95 01 | 00 00 | XX | XXXX | FB |
關(guān)閉定時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 44 0E 95 01 | 00 00 | XX | XXXX | FB |
睡眠風(fēng) | A5 FC | 07 00 | A0 | 91 | XX | 82 27 74 02 | 00 00 | XX | XXXX | FB |
自然風(fēng) | A5 FC | 07 00 | A0 | 91 | XX | 03 28 74 02 | 00 00 | XX | XXXX | FB |
正常風(fēng) | A5 FC | 07 00 | A0 | 91 | XX | C1 CB 94 01 | 00 00 | XX | XXXX | FB |
聲音大點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 47 19 94 01 | 00 00 | XX | XXXX | FB |
聲音小點(diǎn) | A5 FC | 07 00 | A0 | 91 | XX | 87 19 94 01 | 00 00 | XX | XXXX | FB |
定時(shí)一小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 02 37 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)兩小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 82 37 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)二小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 83 37 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)三小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 01 38 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)四小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 81 38 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)五小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 01 39 95 01 | 00 00 | XX | XXXX | FB |
定時(shí)六小時(shí) | A5 FC | 07 00 | A0 | 91 | XX | 81 39 95 01 | 00 00 | XX | XXXX | FB |
開一檔 | A5 FC | 07 00 | A0 | 91 | XX | 41 3F 94 01 | 00 00 | XX | XXXX | FB |
開二檔 | A5 FC | 07 00 | A0 | 91 | XX | C1 3E 94 01 | 00 00 | XX | XXXX | FB |
開三檔 | A5 FC | 07 00 | A0 | 91 | XX | 01 3F 94 01 | 00 00 | XX | XXXX | FB |
開四檔 | A5 FC | 07 00 | A0 | 91 | XX | 41 3F 94 01 | 00 00 | XX | XXXX | FB |
開五檔 | A5 FC | 07 00 | A0 | 91 | XX | 81 3F 94 01 | 00 00 | XX | XXXX | FB |
開六檔 | A5 FC | 07 00 | A0 | 91 | XX | C1 3F 94 01 | 00 00 | XX | XXXX | FB |
開七檔 | A5 FC | 07 00 | A0 | 91 | XX | 01 40 94 01 | 00 00 | XX | XXXX | FB |
開八檔 | A5 FC | 07 00 | A0 | 91 | XX | 41 40 94 01 | 00 00 | XX | XXXX | FB |
開九檔 | A5 FC | 07 00 | A0 | 91 | XX | 81 40 94 01 | 00 00 | XX | XXXX FB | |
退出喚醒 | A5 FC | 02 00 | A3 | 9A | XX | 00 B2 | XXXX | FB |
以下是一個(gè)電控模塊發(fā)給語音模塊的通訊協(xié)議參考:
對應(yīng)播報(bào)音 | 幀頭 | 長度 | 類型 | 命令 | 序號(hào) | 控制 | 播放類型 | 播放序號(hào) | 保留 | 累加和 | 幀尾 |
---|---|---|---|---|---|---|---|---|---|---|---|
小艾小艾 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 01 00 00 00 | 0 | XXXX | FB |
開風(fēng)扇 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 02 00 00 00 | 0 | XXXX | FB |
打開風(fēng)扇 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 03 00 00 00 | 0 | XXXX | FB |
關(guān)風(fēng)扇 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 04 00 00 00 | 0 | XXXX | FB |
關(guān)閉風(fēng)扇 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 05 00 00 00 | 0 | XXXX | FB |
開搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 06 00 00 00 | 0 | XXXX | FB |
打開搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 07 00 00 00 | 0 | XXXX | FB |
風(fēng)扇搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 08 00 00 00 | 0 | XXXX | FB |
關(guān)搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 09 00 00 00 | 0 | XXXX | FB |
關(guān)閉搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0A 00 00 00 | 0 | XXXX | FB |
停止搖頭 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0B 00 00 00 | 0 | XXXX | FB |
風(fēng)大點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0C 00 00 00 | 0 | XXXX | FB |
風(fēng)大一點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0D 00 00 00 | 0 | XXXX | FB |
風(fēng)大一些 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0E 00 00 00 | 0 | XXXX | FB |
風(fēng)再大點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 0F 00 00 00 | 0 | XXXX | FB |
風(fēng)小一點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 10 00 00 00 | 0 | XXXX | FB |
風(fēng)小一些 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 11 00 00 00 | 0 | XXXX | FB |
風(fēng)小點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 12 00 00 00 | 0 | XXXX | FB |
風(fēng)再小點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 13 00 00 00 | 0 | XXXX | FB |
最大風(fēng) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 14 00 00 00 | 0 | XXXX | FB |
最小風(fēng) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 15 00 00 00 | 0 | XXXX | FB |
定時(shí)關(guān)機(jī) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 16 00 00 00 | 0 | XXXX | FB |
關(guān)閉定時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 17 00 00 00 | 0 | XXXX | FB |
睡眠風(fēng) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 18 00 00 00 | 0 | XXXX | FB |
自然風(fēng) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 19 00 00 00 | 0 | XXXX | FB |
正常風(fēng) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1A 00 00 00 | 0 | XXXX | FB |
聲音大點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1B 00 00 00 | 0 | XXXX | FB |
聲音小點(diǎn) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1C 00 00 00 | 0 | XXXX | FB |
定時(shí)一小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1D 00 00 00 | 0 | XXXX | FB |
定時(shí)兩小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1E 00 00 00 | 0 | XXXX | FB |
定時(shí)二小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 1F 00 00 00 | 0 | XXXX | FB |
定時(shí)三小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 20 00 00 00 | 0 | XXXX | FB |
定時(shí)四小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 21 00 00 00 | 0 | XXXX | FB |
定時(shí)五小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 22 00 00 00 | 0 | XXXX | FB |
定時(shí)六小時(shí) | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 23 00 00 00 | 0 | XXXX | FB |
開一檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 24 00 00 00 | 0 | XXXX | FB |
開二檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 25 00 00 00 | 0 | XXXX | FB |
開三檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 26 00 00 00 | 0 | XXXX | FB |
開四檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 27 00 00 00 | 0 | XXXX | FB |
開五檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 28 00 00 00 | 0 | XXXX | FB |
開六檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 29 00 00 00 | 0 | XXXX | FB |
開七檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 2A 00 00 00 | 0 | XXXX | FB |
開八檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 2B 00 00 00 | 0 | XXXX | FB |
開九檔 | A5 FC | 07 00 | A1 | 92 | XX | 80 | 92 | 2C 00 00 00 | 0 | XXXX | FB |
注意:
- ASR語言模型中文建議選擇SE146,其他語種請使用對應(yīng)語種的模型。風(fēng)扇產(chǎn)品自帶運(yùn)行噪音,如果風(fēng)扇本身噪音大于60db,建議打開降噪功能。
- 串口設(shè)置:
- 波特率:9600
- 停止位:1
- 數(shù)據(jù)位:8
- 奇偶校驗(yàn):無
- 代碼中通過判斷 “命令+語音ID”獲取是什么指令和功能。
- 發(fā)送的串口信息建議要檢查完整性,可以用以下的checksum參考代碼來實(shí)現(xiàn)。
#define VMUP_MSG_DATA_MAX_SIZE (20)//可根據(jù)實(shí)際數(shù)據(jù)大小調(diào)整
#pragma pack(1)
typedef struct
{
uint16_t header;
uint16_t data_length;
uint8_t msg_type;
uint8_t msg_cmd;
uint8_t msg_seq;
uint8_t msg_data[VMUP_MSG_DATA_MAX_SIZE];
/*uint16_t chksum; send add auto*/
/*uint8_t tail; send add auto*/
}sys_msg_com_data_t;
#pragma pack()
unsigned short Uart_Checksum(sys_msg_com_data_t * msg)
{
unsigned char i;
unsigned short t16_lenth;
unsigned short t16_check = 0;
uint8_t* rxbuf = uint8_t*&msg->msg_type
t16_lenth = msg->data_length + 3;//cmd_type,cmd,sequence 加上data數(shù)據(jù)的長度
if(t16_lenth > VMUP_MSG_DATA_MAX_SIZE + 3)//data length error
{
return 0xffff;
}
for(i=4;i
6 產(chǎn)品結(jié)構(gòu)相關(guān)注意事項(xiàng)?
6.1 麥克風(fēng)結(jié)構(gòu)設(shè)計(jì)?
風(fēng)扇產(chǎn)品在設(shè)計(jì)結(jié)構(gòu)時(shí),針對麥克風(fēng)應(yīng)當(dāng)注意以下事項(xiàng):
- 麥克風(fēng)布局盡量遠(yuǎn)離風(fēng)扇的風(fēng)面及電機(jī);
- 麥克風(fēng)放在風(fēng)扇的正面/頂部/底部/的位置避免遮擋,保證拾音最大范圍;
- 分貝儀測試最大風(fēng)速下,麥克風(fēng)處的穩(wěn)態(tài)噪聲需小于60dB;
- 麥克風(fēng)連線較長可選擇帶屏蔽的線;
- 麥克風(fēng)線扎捆遠(yuǎn)離電機(jī)或電控線。
下圖以落地風(fēng)扇為例,講述麥克風(fēng)結(jié)構(gòu)開孔及位置的建議方式,固定麥克風(fēng)的結(jié)構(gòu)件也需要考慮麥克風(fēng)線方便引出導(dǎo)線和避免干擾。
?
6.2 喇叭結(jié)構(gòu)設(shè)計(jì)?
風(fēng)扇產(chǎn)品在設(shè)計(jì)結(jié)構(gòu)時(shí),針對喇叭應(yīng)當(dāng)注意以下事項(xiàng):
- 考慮到音質(zhì),喇叭功率不能太小,建議選用1W以上喇叭,帶音腔的喇叭效果會(huì)更好一點(diǎn),同時(shí)注意硬件板上的功放驅(qū)動(dòng)能力要匹配喇叭型號(hào);
- 喇叭放置位置以美觀及結(jié)構(gòu)布局方便為主,但注意盡量避免和麥克風(fēng)放在同一位置;
- 不帶音腔喇叭可以在結(jié)構(gòu)上做一個(gè)音腔密封后能增大音量輸出。
下圖是一個(gè)喇叭規(guī)格及開孔的建議。
?
6.3 其它注意事項(xiàng)?
- 建議選擇-32dB±3dB,信噪比大于70dB以上,性價(jià)比高的全向模擬麥克風(fēng);
- 若風(fēng)扇旋轉(zhuǎn)震動(dòng)比較大,選擇較厚的麥克風(fēng)膠套減緩震動(dòng),可減小對識(shí)別效果的影響;
- 某些顯控板在底盤上的落地風(fēng)扇,或類似易接觸水或積累灰塵的風(fēng)扇,需要選擇防水防塵的麥克風(fēng);
- 特別注意禁止直接點(diǎn)熱溶膠用于固定麥克風(fēng)頭;
- 將麥克風(fēng)完全插入固定孔內(nèi)部,避免歪斜,拾音孔中心孔對準(zhǔn)麥克風(fēng)的中心;
- 風(fēng)扇內(nèi)部接線多容易扯松,插頭配插座帶卡扣會(huì)更牢固;
- 選擇符合環(huán)保RoHS要求的RTV硅膠,推薦常用的硅膠有703/704/737等,或其它有機(jī)材料、單組分室溫固化硅膠等;
- 多數(shù)硅橡膠灌膠厚度小于3mm以內(nèi)實(shí)溫完全固化時(shí)間為8 ~ 12小時(shí),灌膠厚度 > 3mm以上完全固化時(shí)間更長,可分層多次澆灌,確保完全固化穩(wěn)定密封;
- 生產(chǎn)工藝可把固定麥克風(fēng)工序提前,另外特別注意麥克風(fēng)接線在重力拉扯下,未完全固化前容易導(dǎo)致麥克風(fēng)扯歪,也需注意將麥克風(fēng)插線固定好。
?
7 相關(guān)參考資料列表?
編號(hào) | 參考資料描述 | 獲取方式 |
---|---|---|
1 | 標(biāo)準(zhǔn)離線SDK CI110X_SDK_ASR_Offline | 請到 ?啟英泰倫語音AI平臺(tái)上獲取 |
2 | 風(fēng)扇SDK Demo: 主控方案SDK 串口通訊方案SDK | 請到 ?啟英泰倫語音AI平臺(tái)上獲取 |
3 | 測試固件 | 到 ?啟英泰倫語音AI平臺(tái)上獲取 |
4 | 我司芯片和模塊的選型指南 | 請點(diǎn)擊 ?硬件選型指南查看 |
5 | 我司芯片硬件設(shè)計(jì)方法參考 | 請點(diǎn)擊 ?硬件設(shè)計(jì)參考查看 |
6 | 麥克風(fēng)和喇叭器件選型 | 請點(diǎn)擊 ?外圍器件兼容列表查看 |
7 | 產(chǎn)品結(jié)構(gòu)設(shè)計(jì) | 請點(diǎn)擊 ?產(chǎn)品結(jié)構(gòu)設(shè)計(jì)查看 |
8 | 軟件開發(fā)方法和標(biāo)準(zhǔn)SDK說明 | 請點(diǎn)擊 ?軟件開發(fā)查看各部分內(nèi)容 |
9 | 產(chǎn)品識(shí)別性能測試方法 | 請點(diǎn)擊 ?識(shí)別效果測試查看 |
10 | 生產(chǎn)測試的方法 | 請點(diǎn)擊 ?生產(chǎn)測試查看 |
用戶如遇到使用問題,請到啟英泰倫語音AI平臺(tái)上提交技術(shù)工單,或直接聯(lián)系我司技術(shù)人員獲取協(xié)助。
?
-
風(fēng)扇
+關(guān)注
關(guān)注
4文章
410瀏覽量
37404 -
AI芯片
+關(guān)注
關(guān)注
17文章
1860瀏覽量
34912
發(fā)布評論請先 登錄
相關(guān)推薦
評論