APP下载

一种基于STM32的智慧钢琴助手

2020-06-24刘志雄廖宇王博胡湘君王凌峰

物联网技术 2020年6期
关键词:数据传输

刘志雄 廖宇 王博 胡湘君 王凌峰

摘 要:针对钢琴初学者往往会因弹琴姿势不对而造成疼痛损伤,同时在冬天练琴会因琴键太冷而出现手指僵硬的问题,提出了一种基于STM32的智慧钢琴助手。该智慧钢琴助手具有坐姿自动识别、语音提示、音频录制、指纹信息识别、送暖等功能。通过摄像头捕捉弹奏者的坐姿图像,实时判断其坐姿是否正确,并通过语音提示。送暖模块能够在冬天送出暖风温暖琴键,在夏天送出自然风以防止手指出汗。同时可以通过系统的音频录制功能存储弹奏者的演奏,通过回听寻找问题。该助手还具有师-生-家互助模块,能有效实现学习过程中的信息互通,从而更好地提升学习效率和演奏效果,以吸引更多儿童参与学习,在学习中获得音乐的乐趣。

关键词:智慧钢琴助手;坐姿识别;送暖模块;STM32;数据传输;视频采集

中图分类号:TP39文献标识码:A文章编号:2095-1302(2020)06-00-02

0 引 言

随着物联网技术的广泛应用,传统的儿童练琴方式暴露出诸多问题:儿童弹琴的坐姿不正确,导致练琴效率低下,长此以往不仅会形成不良习惯,更影响身体健康;冬天练琴时冰冷的琴键容易造成手指僵硬;缺少与老师交流的平台,儿童在家练琴暴露的问题家长无法及时指正。针对上述问题,文中设计了一款多功能智慧钢琴助手。

1 系统总体设计

系统总体设计如图1所示。核心芯片采用STM32F407,外设包括指纹识别模块、无线传输模块、摄像头、语音播报模块、录放音模块和PTC发热体送风模块等。录音模块记录弹奏的曲目,指纹模块统计考勤,摄像头模块记录当前用户弹奏的坐姿,STM32F407单片机记录数据后,通过无线传输模块将数据传输至云端库中,待弹奏坐姿与正确坐姿对比后,将正误结果传输至APP端显示,还可通过语音播报模块播报当前情况,人员考勤记录用以进行弹奏时间的计算。系统还可判断弹奏者的练习曲目,并在APP查看相关数据[1-4]。

2 系统功能及组成

系统由音频系统、送风系统、信息采集系统、信息传输系统和信息处理及显示系统组成。

2.1 音频系统

音频系统由话筒与扬声器模块构成,当用户弹奏琴曲时,按下按钮,系统将自动通过话筒模块记录弹奏过程并储存。在弹奏结束后,可选择重复播放弹奏内容,以达到反思弹奏过程中存在的不足并及时改正的目的[5-6]。

2.2 送风系统

送风系统可在天气寒冷时送出热风温暖琴键,减少用户弹奏时由于手指僵硬带来的不适和损伤,强化练琴效果。系统由风机、PTC发热体组成,通过调节控制器的机械旋钮,可对送风温度及风速进行调整。

2.3 信息采集系统

信息采集系统由指纹模块及摄像头模块构成。指纹模块用于采集练琴者的考勤信息,并传输至STM32F407单片机处理后储存;摄像头模块负责采集坐姿图像及实时图像。

2.4 信息传输系统

信息传输系统由RT5350模块、ESP8266及GSM模块组成。GSM模块将经过云端数据库进行数据对比后的结果(练琴曲目)及人员考勤时间统计(通过指纹模块记录)通过发送短信的方式通知家长。传输系统主要传输三种数据:将摄像头采集的坐姿图像通过RT5350传输至云端服务器进行处理;将音频录制模块采集的弹奏曲目的音频文件通过ESP8266模块传输至云端服务器进行储存和识别;将考勤人员初次录入的指纹通过ESP8266模块传输至云端服务器数据库储存。

2.5 信息处理及显示系统

信息处理及显示系统分为信息处理和显示两部分。

2.5.1 信息处理部分

坐姿识别:首先利用大量儿童弹奏钢琴的图片作为数据集,创建对应的训练集和测试集,利用model-master训练得到Pb监测模型,然后载入Tensorflow-master文档发送给AndroidStudio软件,最后运行AndroidStudio软件生成一个可执行弹奏姿态检测任务的APP。通过该APP完成钢琴弹奏视频流的采集和实时分析工作,将弹奏情况划分为相应的等级,及时将分析结果发送给家长或老师,以方便他们对孩子在家或在学习场所的情况随时掌控和指导。实时图像处理:通过特定的压缩算法,将实时弹奏过程储存并传输。指纹数据处理:将通过ESP8266模块上传的指纹数据储存后建立数据库,将其保存建档。

2.5.2 显示部分

在APP端显示坐姿识别结果,根据正误与否显示相应提示;在APP端显示处理压缩后的实时弹奏过程图像;在APP端显示考勤人员相关信息,如姓名、练琴时长等。

3 图像数据采集及图像数据传输实现

基于Linux系统图像数据的采集及传输主要由RT5350实现,姿势动作图像的采集是系统成功的关键,需将USB摄像头采集的数据转化为媒体流数据并保存,需要使用Linux驱动中的UVC协议。Linux内核版本高于2.6则使用Video4Linux2 (V4L2),配合适当的硬件,如视频采集卡、USB摄像头等实现对视频图像的采集、压缩等功能。V4L2为视频数据采集的应用程序提供了接口函数,如open(),read(),write()等,这些接口函数能够实现对设备的管理。管理内容包括对设备信息的查询、图像属性的设置、视频的捕捉等,方便图像数据的采集、开发。图2所示为V4L2视频采集的基本流程。

由于采集的原始数据是YUV格式,视频信号数据量大,为节省网络带宽及存储资源,须对采集的视频数据压缩编码。首先对采集的视频数据进行压缩处理,之后服务器端在采集结束后监听客户端的访问请求。若收到来自客户端的访问请求,则服务器端将视频数据返回至客户端。系统基于TCP传輸协议设计,图3所示为Socket通信传输流程。

4 系统软件设计

系统软件部分主要包括基于Android系统的钢琴弹奏图像采集处理系统及网页、APP客户端的信息发布。系统软件设计流程如图4所示,软件功能框图如图5所示。

5 结 语

智慧钢琴助手不仅有效解决了教-学-练的及时性问题,更提升了儿童学习的乐趣。通过打通师-生-家环节,方便学生无论何时、何地都能在科学的指导下练习。

参考文献

[1]金平.基于嵌入式Linux的智能视频监控系统的设计与实现[D].长沙:中南大学,2013.

[2]龚文冲.基于WiFi的嵌入式视频监控系统设计[D].武汉:华中科技大学,2011.

[3]陆小辰.基于DM365的智能视频监控系统研究[D].南京:南京理工大学,2013.

[4]史震海.安吉县城市公众视频监控系统的设计和实现[D].成都:电子科技大学,2011.

[5]王保卫,申波.Android应用开发与系统改造实战[M].北京:人民邮电出版社,2012:302-321.

[6]李旭东.基于Android移动终端摄像的图像处理与应用[D].成都:电子科技大学,2011.

[7]杨璐,沈悦,蒋蕾.一种TCP协议穿透SymmetricNAT方案[J].计算机工程与应用,2007,43(6):122-125.

[8]赵锦霞.对钢琴教学创新模式的构件与思考[J].音乐时空,2013(11):114.

[9]范丹玲.依托教学助手打造学生智慧课堂[J].下一代,2019(5):1.

[10]李彬,江龙.基于Android的校园学习助手软件的设计[J].智能计算机与应用,2016,6(4):38-41.

猜你喜欢

数据传输
基于Ad Hoc的微震监测数据传输系统设计