【STM32+k210项目】基于AI技术智能语音台灯的设计(完整工程资料源码)

简介: 【STM32+k210项目】基于AI技术智能语音台灯的设计(完整工程资料源码)

一、项目背景:

       目前市面上的台灯对于智能化无法满足人体检测、自动调节台灯亮度与不良坐姿提醒的功能;现在的声控台灯虽然可以节省电能,但是不适于长期使用学习,目前关于智能台灯的研究中,同时具有人体检测、自动调节台灯亮度与不良坐姿提醒功能的不多。对于人性化这一方面,更多的体现可能是在台灯的外观设计上,但单单从外观的设计上来凸显产品的人性化还是比较单一的,不能一味的将此做法作为人性化台灯的首要选择。

       由这一系列问题,本项目提出了一款基于物联网的智能台灯设计与开发,目标是实现根据环境光照条件自动调节光照强度,防止因灯光太亮或太暗所导致的视力下降,感应周围是否有人并实现无人自动关灯,达到节约能源,保护台灯寿命的作用,通过超声波感应使用者眼睛距离书桌的远近来进行坐姿调整,防止因坐姿导致的驼背现象。加入语音模块有效的实现人机交互功能,不在使用传统的手动开关,而是使用语音调节光照强度和灯光位置,使得更加方便对台灯进行控制,不仅如此,我们还在语音模块的基础上增加了一块1.3寸的TFT迷你小屏幕,对每次语音操作都会有相对应的Q版微表情,更加具有软件交互的体验感,其上也会显示时间、日期、房间温度、湿度等众多信息供使用者参考,更加体现了产品人性化的一面。

二、项目的主要内容

       我们设计的这款台灯以专门感应人体红外信号的红外传感器、温湿度模块、超声波、光敏传感器为基础,利用单片机进行处理,从而控制台灯。当房间光线较昏暗,且周围有人时,台灯就会检测出来进而自动发光,避免了人们在夜里寻找开关的不便;当一定范围内无人时,台灯就会自动熄灭,避免使用后忘记关闭灯光,以实现节约能源的功能。同时具有自动调节台灯亮度与不良坐姿提醒功能。当环境光照强度的改变时,台灯会自动进行调节光照强度,更好地保护人眼;当人们坐姿不端正眼睛离书桌太近时本台灯会通过低声鸣叫提醒使用者纠正坐姿。

       我们选择加入了语音模块,其不仅仅可以通过语音进行台灯光照强度和方向的调整,令使用者不必手动操作,更加方便;还可以播放歌曲、听力、诗歌等音频缓解学习疲倦。并且能做到与使用者进行更好的人机互动,在使用者烦恼之际起到调节心情的作用,此外其语音模块还兼有播报环境情况、定时提醒、天气预报等等功能,为使用者提供丰富的服务。而在台灯中央区域加入的屏幕,当用户使用语音功能时也会对应地显示Q版微表情,有效的体现了人机交互的效果,其上也会显示时间、日期、房间温度、湿度等众多信息供使用者参考,更加体现了我们产品人性化的一面。

       我们设计的台灯增加了K210摄像头运用YOLO算法进行大量模型训练,对使用者的状态进行检测,如果眨眼次数太频繁,眼睑沉重、睁眼困难等疲倦现象,台灯会进行语音提示进行休息,也会播放一些愉悦的音乐进行缓解使用者的心情。

图2.1 工作流程

图2.2  模块联系

三、实施目标

       本项目智能语音台灯的功能实现主要采用了STM32单片机作为台灯的核心控制板,esp8266WIFI模块进行远程通信连接,光敏传感器根据环境光照情况进行台灯的开关控制,人体感应传感器检测周围是否有人来实现台灯的开关控制,光照传感器模块对使用环境光照情况进行采集,温度传感器模块对周围环境情况进行采集,超声波传感器检测坐姿是否标准,蜂鸣器模块鸣响提示使用者,舵机模块调节灯光位置,K210摄像头进行脸部图像识别检测使用者的状态,语音识别进行台灯基础功能的控制,OLED和TFT显示屏对于台灯使用情况的采集,制作APP和小程序客户端通过阿里云服务器与用户进行远程通信。

3.1 基本的实施目标:

3.1.1 灯光控制

       设计嵌入式系统,使用STM32单片机作为主控制器,通过语音进行语音命令进行台灯的开关控制,通过光敏传感器和人体感应传感器进行算法优化实现在昏暗情况下人来开灯,人走关灯,在光照良好情况下人不管在不在台灯周围都不会开启灯光,通过PWM波来控制台灯的亮度和颜色。通过LED控制模块,实现台灯亮度和色温的细化调控。

3.1.2 语音交互控制

       通过集成语音识别模块,对用户的语音指令进行解析和执行,如调整亮度、色温,开灯和关灯等,并且每次命令都会对应一些可爱生动的Q版微表情与使用者进行互动。语音交互模块可以实现自然语言理解,即使指令复杂也可以理解并执行。具备语音反馈,台灯具备合成语音回应用户的能力,可以告知用户命令已被成功执行、询问更多的详情,或者提供某些错误命令的反馈并且引导使用者往正确命令的方向进行命令控制。

图2.3  语音交互时台灯TFT屏幕显示的部分Q版表情

3.1.3 坐姿调整

       通过HC-SR04超声波模块,使智能台灯增加了纠正坐姿的功能。当人们坐姿正确时,身体与台灯的距离,头距离桌面的距离,头距离台灯的距离,这三者之间可以近似的组成一个直角三角形,方便了坐姿纠正的计算,实现良好坐姿的检测,如果超过正确坐姿的距离范围,蜂鸣器会进行鸣响提示,并且语音也会进行错误坐姿的提示,告诉使用者该如何正确纠正当前坐姿,实现正确坐姿的调节预防因不良坐姿导致的驼背与近视等一系列问题。

图2.4 正确坐姿与错误坐姿区别

3.1.4 环境感知

       光照传感器与显色指数相结合,对周围环境的光照进行自动调整,除了手动调整亮度和色温,台灯还可以根据环境自动调节。当室内光照偏暗,台灯会自动调高亮度;反之亮度会降低,色温也会根据白天和夜晚做合适的调整,环境温湿度根据温湿度模块进行采集,对于环境温度或者适度超过所设定的范围会进行蜂鸣器鸣响提示。

3.1.5 使用者状态监测

       通过K210摄像头运用YOLO算法进行人脸检测模型训练,对于眨眼次数太频繁,眼睑沉重、睁眼困难等疲倦的情况进行大量训练,使得能够实现对使用者工作状态的检测,如果台灯检测出学习或者工作中出现疲惫的情况,台灯会进行语音提示进行休息,并且播放一些绿色视频和愉悦感的音乐,对使用者进行心情调节。

图2.5 正常状态与疲劳状态的区别

3.1.6 数据采集与远程通信

       利用WiFi模块实现设备联网,可以通过APP实现远程通信,调节台灯的亮度、色温,开关等功能,通过小程序对台灯的数据进行采集,并接受台灯的信息反馈,除了基本操作,还可以设置定时开关,台灯工作状态的查询,操作历史的查询等。

3.2 技术要点

图3.1 实物设计图

3.2.1 STM32单片机控制

       STM32系列单片机由ST公司生产的专为要求高性能、低成本、低功耗的嵌入式应用设计的ARMCortex-M3内核。本系统采用的STM32属于互联型产品,具有以下标准功能:72MHZ主频,56k字节Flash,64字节SRAM,2个看门狗,多个16位定时器,80%的引脚可以作为通用/O口,以及USART、SPI等通信外设,其外设完全满足本系统的功能要求。因此,本系统采用STM32F103作为总控制器。主要从各个模块中获取信息,对获取的信息进行编码,根据需要将编码的信息通过网络发送给服务器,再通过服务器将数据分发给APP能够控制整个系统功能的正常运行。

图3.2 STM32E103C8T6最小系统板

3.2.2 语音模块

       语音交互模块控制台灯的各种基础功能,通过内置麦克风收集用户的语音指令,并通过先进的语音识别技术进行处理并执行指令。模块亦包含语音合成及反馈系统,可以同时以自然语言与用户进行交互,提供指令执行的反馈。

图3.3 语音控制各个传感器

3.2.3 超声波模块

       超声波发射器向某一方向发射超声波,在发射时刻的同时开始计时,超声波在空气中传播,途中碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。根据时间差和超声波的速度可以估算出发射位置到障碍物位置的距离,超声波模块来进行测距,一个超声波控制头部与桌面的距离,一个超声波控制身体与桌面的距离,确保学习者处于一个标准的学习坐姿,防止长时间不良坐姿导致驼背,近视等不良现象。

图3.4 超声波传感器

3.2.4 光照传感器模块

       光照传感器的作用是测量周围光线的强度和变化,将其转换为电信号输出,以反映周围的光照情况。它可以在各种应用场景中实现自动控制、照明调节、环境监测,根据环境强度控制开关灯等功能。

3.5 光照传感器

3.2.5 温湿度传感器模块

       将环境温湿度进行数据采集,采集到的信息可以传送到APP,小程序,OLED显示屏,语音模块等各个传感器中,辅助其他模块进行协调工作,当温湿度大于一定范围会进行蜂鸣器鸣响提示使用者当前环境不适合继续学习工作,并进行开风扇等工作进行降温降湿。

图3.6 温湿度传感器

3.2.6 OLED与TFT彩屏

       显示屏对各种传感器采集到的信息进行显示,增强使用者的体验感,其中OLED中对光照传感器,温湿度传感器,超声波传感器进行了数据显示,TFT显示屏将单片机通过WiFi模块采集到的和风天气客户端的数据进行显示。

图3.7 OLED与TFT显示屏采集到的数据显示

3.2.7 K210摄像头

       K210是一个低成本,功能强大的机器视觉模块,我们在学习Yolo算法后通过PERCLOS理论作为编程判断的核心框架,通过python编程语言编写AI深度学习算法实现对人脸的识别,识别使用者的工作状态,检测是否疲劳,首先检测人脸,并利用ERT算法定位人脸特征点;然后根据人脸眼睛区域的特征点坐标信息计算眼睛纵横比EAR来描述眼睛张开程度,根据合适的EAR阈值可判断睁眼或闭眼状态;最后基于EAR实测值和EAR阈值对监控视频计算闭眼时间比例 (PERCLOS)值度量使用者主观疲劳程度,将其与设定的疲劳度阈值进行比较即可判定是否疲劳。

(1)AI深度学习算法

       对K210写入大量的人脸疲劳数据存入到神经网络系统当中,让K210通过神经网络系统里的数据进行自我学习与训练,使它对我们对人疲惫时候的特征与正常工作状态的RGB阈值分离进行数据分析。

(2)图像采集

       为验证所研究的识别算法的普遍适用性,尽量使监控到的疲劳图像与正常特征基本一致,在满足环境的条件情况下进行原始图像的数据采集。

(3)图像增强

       对抓取到的疲劳状态原始图像进行增强处理,提高图像清晰度,使疲劳状态图像的轮廓特征更突出,以便于满足图像识别的要求。

图3.8 人脸阈值的抓取与识别

3.2.8 PCB板的设计

       设计PCB可以实现电路中各个元器件间的电气连接,代替复杂的布线,减少了传统方式下的接线工作量,简化了电子产品的装配、焊接、调试工作,缩小了整机体积,降低了产品成本,提高了电子设备的质量和可靠性。

图3.9 PCB原理图

3.2.9 3D打印设计外壳

       3D打印技术可以根据特定需求和要求制作个性化的外壳设计。无论是形状、尺寸还是功能,都可以根据实际需求进行定制,3D打印技术可以根据特定需求和要求制作个性化的外壳设计。无论是形状、尺寸还是功能,都可以根据实际需求进行定制,3D打印技术可以实现复杂结构的外壳设计。传统制造方法可能无法制作出复杂的几何形状,而3D打印技术可以通过一层层的叠加制造出具有复杂结构的外壳,从而扩展了设计和制造的可能性。

四、项目特点与创新点

4.1 项目特色

        1.基于STM32单片机,通过AD软件将STM32单片机与DHT11温湿度模块、HC-SR04超声波、光敏传感器、1.3寸TFT屏幕、LD332语音模块、ESP-01S无线模块等模块集成在PCB板上,实现了基于AI技术的智能语音台灯控制板的封装,避免了因模块过多与杜邦线频繁使用而导致的杂乱与数据出错。

       2.为了经常使用台灯人群的健康,本设计通过更好的保护人眼健康以降低学生等人群的近视率。由于不健康坐姿久久坐在台灯前必定出现腰酸背疼等现象,长久以来必会引发不必要的疾病,本台灯的监测坐姿功能使人们更加健康、合理使用台灯,更加放心地在台灯前学习。

       3.本设计可以通过智能AI语音小助手小电来实现人们与台灯更好的交互、交流,因此本台灯可以无障碍的适应不同人群,不需要额外的学习即可快速使用并掌握本台灯,每次与语音小助手进行交流都会有一些可爱的Q版小表情与之反馈给使用者,更加增强了电子产品人性化的一面。

       4.增加了K210摄像头经过各种算法与模型的相互结合,实现监测使用者的学习工作状态,如果监测到有疲倦不良状态下学习工作的,智能语音小助手会进行语音提示使用者劳逸结合适当休息放松一下,并且会在屏幕上播放一些轻松愉悦的视频,也会播放一些音频进行缓解使用者疲倦的心情,提供学习工作者的效率。

4.2 创新点

       本产品设计旨在各类市面上的智能台灯进行设计更新,增加一些方便人们学习中或工作中使用的功能,操作简单,使用方便。

       1.本项目设计使用了HC-SR04超声波模块,使智能台灯增加了纠正坐姿的功能。当人们坐姿正确时,身体与台灯的距离,头距离桌面的距离,头距离台灯的距离,这三者之间可以近似的组成一个直角三角形,方便了坐姿纠正的计算。另外考虑到我们可能拥有不同年龄段的适用人群,以及人们放置台灯位置的不同,组成相对直角三角形的程度可能不同,通过调查确定一定的误差范围,以此提高坐姿纠正功能的准确度。HC-SR04超声波模块借助于超声脉冲回波渡越时间实现测距,且此模块价格合适方便使用。

       2.本项目主要使用了LD332新型语音模块,该模块集成了语音识别处理器和一些外部电路,包括 AD、 DA 转换器、麦克风接口、声音输出接口,可以便捷实现语音识别/声控/人机对话功能。外界触发后,可以播放提示音或者其他方式来提示用户在接下来的几秒钟内说出要识别的内容,引导用户在合适的时间内只说出要识别的内容,从而保证比较高的识别率,保障了人们流畅的和本台灯进行交互,更好地为使用者提供服务。

       3.本项目设计增加了摄像头进行Al算法大模型的训练,实现对疲劳学习工作这一系列低效率的工作状态进行监测,当出现低效率学习工作状态时语音小助手会提示休息与放松,待有一个良好的状态继续进行学习与工作,将传统的家用台灯与时代前沿科技结合起来,构成与以往功能单一或功能不全面不同体验效果,减少人们在使用台灯学习时多种额外的烦恼,增加学习期间的沉浸度、自由度。

五、前期调研准备

1.在项目启动前,项目组收集并整理与项目相关的信息和资料,包括项目的背景、目标、范围、时间表等。这些信息可以帮助项目组全面了解项目的要求和期望,以便制定相应的计划和策略。

2.项目组明确了项目的目标和可交付成果,确保项目团队对项目的最终目标有清晰的理解。这有助于为项目设定明确的指标和评估标准,以便在项目执行过程中进行跟踪和评估。

3.项目组对智能台灯所涉及市场、行业和竞争情况也进行了调研,识别和分析项目的利益相关方,了解了相关的趋势、挑战和机会。这有助于项目团队更好地了解项目的定位和市场需求,以便在项目实施中做出更明智的决策。

4.项目组对项目资源包括人力、物力、财力进行了评估,确定了每位成员的角色和职责,并调整了资源分配以确保项目顺利进行。

5.在前期调研的基础上,制定详细的项目计划,包括时间表、里程碑、任务分工等。确保项目团队对项目的全貌有清晰的认识,并能够按计划进行工作。

6.根据功能设定,我们对嵌入式程序、3d打印、软件设计等必需技术也进行了深入学习,目前已熟练掌握应用,为项目团队提供必要的信息和资源,使其在项目执行过程中能够更加高效和有针对性地进行工作,确保项目能成功实施。

六、项目成果:

6.1 实物展示:

6.2 论文收录

6.3 专利受理

资源下载链接 :灯心智启-基于AI技术智能语音台灯的设计与实现.zip_PythonAl上色资源-CSDN文库

资源详情:


相关实践学习
一键创建和部署高分电影推荐语音技能
本场景使用天猫精灵技能应用平台提供的技能模板,在2-5分钟内,创建一个好玩的高分电影推荐技能,使用模板后无须代码开发,系统自动配置意图、实体等,新手0基础也可体验创建技能的乐趣。
达摩院智能语音交互 - 声纹识别技术
声纹识别是基于每个发音人的发音器官构造不同,识别当前发音人的身份。按照任务具体分为两种: 声纹辨认:从说话人集合中判别出测试语音所属的说话人,为多选一的问题 声纹确认:判断测试语音是否由目标说话人所说,是二选一的问题(是或者不是) 按照应用具体分为两种: 文本相关:要求使用者重复指定的话语,通常包含与训练信息相同的文本(精度较高,适合当前应用模式) 文本无关:对使用者发音内容和语言没有要求,受信道环境影响比较大,精度不高 本课程主要介绍声纹识别的原型技术、系统架构及应用案例等。 讲师介绍: 郑斯奇,达摩院算法专家,毕业于美国哈佛大学,研究方向包括声纹识别、性别、年龄、语种识别等。致力于推动端侧声纹与个性化技术的研究和大规模应用。
目录
相关文章
|
16天前
|
机器学习/深度学习 人工智能 自然语言处理
从提示工程到代理工程:构建高效AI代理的策略框架概述
该文探讨了AI代理的发展,特别是ChatGPT等模型如何展示了AI系统的潜力。文章提出从提示工程转向代理工程,定义了代理能力需求,并提出一个框架来设计和实施AI代理。代理工程涉及明确代理的任务、所需行动、能力及熟练度,通过现有技术满足这些需求。文章强调了广泛和特定知识的熟练度、精确信息获取以及代理的结构设计和协调。随着技术进步,该框架为AI代理的未来发展提供了基础。
42 0
|
1月前
|
传感器
基于STM32与FreeRTOS的四轴机械臂项目-3
基于STM32与FreeRTOS的四轴机械臂项目
基于STM32与FreeRTOS的四轴机械臂项目-3
|
15天前
|
存储 算法 测试技术
【STM32项目】基于Stm32c8t6-镭射激光打印机的设计(完整工程资料源码)(二)
【STM32项目】基于Stm32c8t6-镭射激光打印机的设计(完整工程资料源码)(二)
20 0
|
15天前
|
存储 搜索推荐 安全
【STM32项目】基于Stm32c8t6-镭射激光打印机的设计(完整工程资料源码)(一)
【STM32项目】基于Stm32c8t6-镭射激光打印机的设计(完整工程资料源码)(一)
19 0
|
26天前
|
人工智能 自然语言处理 安全
AI创作之旅:探索提示工程的奇妙世界
AI创作之旅:探索提示工程的奇妙世界
|
11天前
使用STM32F103标准库实现定时器控制LED点亮和关闭
通过这篇博客,我们学习了如何使用STM32F103标准库,通过定时器来控制LED的点亮和关闭。我们配置了定时器中断,并在中断处理函数中实现了LED状态的切换。这是一个基础且实用的例子,适合初学者了解STM32定时器和中断的使用。 希望这篇博客对你有所帮助。如果有任何问题或建议,欢迎在评论区留言。
41 2
|
1月前
|
传感器
|
11天前
|
IDE 开发工具
使用STM32F103标准库实现自定义键盘
通过本文,我们学习了如何使用STM32F103标准库实现一个简单的自定义键盘。我们首先初始化了GPIO引脚,然后实现了一个扫描函数来检测按键状态。这个项目不仅能够帮助我们理解STM32的GPIO配置和按键扫描原理,还可以作为进一步学习中断处理和低功耗设计的基础。希望本文对你有所帮助,祝你在嵌入式开发的道路上不断进步!
33 4
|
11天前
|
存储 数据采集 数据安全/隐私保护
使用STM32F103读取TF卡并模拟U盘:使用标准库实现
通过以上步骤,你可以实现用STM32F103将TF卡内容变成U盘进行读取。这种功能在数据采集、便携式存储设备等应用中非常有用。如果你有更多的需求,可以进一步扩展此项目,例如添加文件管理功能、加密存储等。希望这篇博客能帮到你,如果有任何问题,欢迎在评论区留言讨论!
15 1
|
11天前
|
传感器
【经典案例】STM32F407使用HAL库配置I2C详解
STM32F407是一个强大的微控制器,广泛应用于嵌入式系统中。在许多应用中,我们需要使用I2C总线来与传感器、EEPROM、显示屏等外设进行通信。本文将详细介绍如何使用STM32 HAL库来配置和使用I2C接口。
24 2

热门文章

最新文章