回到首页 返回首页
回到顶部 回到顶部
返回上一页 返回上一页

行空板K10测评2:简易语音气象助手 简单

头像 DeadWalking 2024.08.24 108 0

      在生活中我们经常使用语音唤醒功能,直接用语音和电子设备进行交流,以提高效率。同样本次使用行空板k10自带的语音唤醒功能和语音合成功能,进一步体验人工智能在生活中的应用。

 

image.png

 

程序展示:

screenshots-新建项目-2024-8-24-12-32-21.mp-1724475492879.png

 

结合高温预警,对语音播报进行相应判断改进。

screenshots-新建项目-2024-8-24-12-32-21.mp-1724476202531.png

使用测试:

 

在唤醒时,需要说出“你好,小新”。

唤醒成功后,会有绿色指示灯亮起。

 

 

结合屏幕显示,将上一期的显示内容整合到本次内容中。

 

 

因为是离线语音识别,对于实验环境的要求不是很高,方便师生在实际环境中直接体验,还是很便捷!

 

 

代码
/*!
 * MindPlus
 * esp32s3bit
 *
 */
#include "asr.h"
#include "unihiker_k10.h"
#include "arduino_image_cache.h"
// 创建对象
UNIHIKER_K10 k10;
uint8_t      screen_dir=2;
ASR          asr;
AHT20        aht20;


// 主程序开始
void setup() {
	k10.begin();
	k10.initScreen(screen_dir);
	k10.creatCanvas();
	asr.asrInit(CONTINUOUS, CN_MODE, 6000);
	while(asr._asrState == 0){delay(100);}
	asr.setAsrSpeed(2);
	k10.canvas->canvasDrawBitmap(65,30,100,100,image_data1);
	k10.canvas->canvasText("语音气象助手", 35, 165, 0x0000FF, k10.canvas->eCNAndENFont24, 50, true);
	k10.canvas->updateCanvas();
	asr.addASRCommand(1+1, "wen du");
	asr.addASRCommand(2+1, "shi du");
}
void loop() {
	if (asr.isDetectCmdID(1+1)) {
		asr.speak((String(aht20.getData(AHT20::eAHT20TempC)) + String("摄氏度")));
		if ((aht20.getData(AHT20::eAHT20TempC)>30)) {
			asr.speak("请减少户外活动");
		}
	}
	if (asr.isDetectCmdID(2+1)) {
		asr.speak((String("百分之") + String(aht20.getData(AHT20::eAHT20HumiRH))));
	}
}

材料清单

评论

user-avatar