APP下载

基于光电传感器的钢琴训练评估系统开发

2021-10-18王祖文鲁序涛侯君学苏小浩

科技创新与应用 2021年29期
关键词:琴键单片机钢琴

孟 俊,王祖文,鲁序涛,侯君学,苏小浩,梁 全

(沈阳工业大学,辽宁 沈阳110870)

由于我国经济的快速发展,人们的需求不仅仅局限于物质方面,对精神文化层次的需求也在日益增加。自学钢琴时练习问题较为棘手,而我们开发的钢琴训练评估系统能够极大地提高钢琴自学者的学习速度及其学习兴趣。该系统装置能够提高琴键检测的稳定性,还能够对成本进行缩减,对钢琴教育事业的发展具有一定的意义。所以,我们开展了钢琴训练评估系统开发。

该项目结合当前人们的钢琴学习需求,进行嵌入式开发,能够对用户所按琴键位置做到实时反馈,通过LED屏幕显示所按琴键的位置,使钢琴学习者有更加直观、更加便捷的感知。使用光电传感器,能够更加快捷地对琴键信息进行反馈,能够更加高效地使钢琴学习使用者看见自己所按琴键位置,对钢琴初期学习者有一个良好的用户体验。

1 钢琴训练评估系统中含有的设备

1.1 光电传感器

对于整个钢琴训练评估系统来说,光电传感器用于采集琴键的主要信息,将其反馈的电压信号传输给单片机,让单片机在现有数据下,进行数据的处理以及运算,是整个钢琴训练评估系统数据来源。

1.2 stm32单片机

在整个钢琴训练评估系统正常运行的过程中,stm32单片机起到了至关重要的作用。stm32单片机主要用于光电传感器的数据收集,将收集到的数据进行整理和分析,然后通过串口上传到LED屏幕中去,给用户带来交互式的体验,确保各项功能正常使用,以及实现基本的运算处理功能。

1.3 LED屏幕

起到跟用户之间进行数据交互的作用,能够将单片机处理的数据进行实时显示。当用户想要进行功能的实现时,可以通过触摸的方式使用户的指令传递到单片机上,让用户和钢琴训练评估系统进行互动,从而增加用户的体验感。

2 系统的机械结构建模

2.1 系统机械结构模型的基本原则

钢琴训练评估系统装置设计最终以结构的形式呈现出来。钢琴训练评估系统安装在钢琴的上方,当用户进行钢琴练习时,钢琴训练评估系统装置需要稳定可靠的运行,才能够使用户在正常演奏钢琴时,还能够根据钢琴训练评估系统反馈的信息,进行钢琴演奏的相关训练。因此,在钢琴训练评估系统机械装置进行建模时,需要遵循以下原则:

(1)尽可能地减小检测装置的宽度,给用户最大的演奏空间,让用户能够在正常使用钢琴的同时,还能够配合钢琴训练评估系统进行钢琴相关的学习和训练。

(2)装置的整体需要跟钢琴琴键的尺寸相符合,使钢琴训练评估系统能够很好地适用于当前市场上绝大部分型号的钢琴。

(3)装置造型融入长方体的设计元素,整体结构美观,简单。在检测琴键时,装置对琴键的状态能够快速反应,保证其检测的准确性。

(4)整体装置要拆卸和安装方便,在日常维护中更加方便、快捷。

(5)系统中所有部件要设计合理,从而保证该系统有较高的可靠性。

(6)平衡该装置的加工成本和精确度。

2.2 结构建模

如图1、图2所示,钢琴训练评估系统的基本机械结构主要由1上板、2后板、3光电传感器、4大摆块、5小摆块、6弹簧片构成。图1给出了钢琴训练评估系统的基本机械结构示意图。上板主要用于电路板的存放和光电传感器线路的布置。使整个装置的电路布置能够更加简洁,防止用户误操作,从而导致线路的断裂、损坏等,带来一些不必要的风险。后板主要用于LED屏幕的安装和放置,进行孔位的布置,使用户能够更加直观地看到LED屏幕的实时信息,以及用户进行相关的模式设置操作等。光电传感器主要用于检测大摆块以及小摆块,当琴键按下,大摆块或小摆块下落,光电传感器感受到变化,反馈高低电平信息给单片机,单片机进行相关数据的处理。大摆块用于遮挡光电传感器,能够通过物理方式给光电传感器传递信息,将白色琴键的实时信息传递给单片机,大摆块在整个系统中起到关键的作用。小摆块用于黑色琴键的感知,因为黑色琴键区别于白色琴键,表面积较小,所以设计小摆块的体积要区别于大摆块,对于精度有一定的要求,反馈黑色琴键的信息。

图1 钢琴训练评估系统的基本机械结构示意图

图2给出了钢琴训练评估系统的基本机械结构侧面示意图。弹簧片用于给摆块增加外力,因为摆块的质量分布比较均匀,仅靠重力的作用不能够使其进行正常下落,反应也有所延迟,所以采用弹簧片的方法来给大小摆块增加外力,能够使摆块更加快速地对钢琴琴键进行反应。

图2 钢琴训练评估系统的基本机械结构侧面示意图

3 系统的电路和程序设计

3.1 系统的接口分析

系统的主要功能是检测琴键的状态,通过单片机进行信息的接收,然后将数据进行整合、处理,然后将用户所需要的信息传递到LED屏上,与用户进行交互。所以,进行琴键检测的主要传感器是安放在大小摆块上方的光电传感器。除此之外,还有电路设计的关键部分——稳压电路,能给整个芯片和LED屏提供稳定的电压,还能够通过转换,给芯片提供5V电源。稳定性差的电路会导致整个系统的故障性升高,甚至还会烧毁整个电路的大部分模块。为了保证调试的流畅和信息的传输,外围电路还包括了一些通信模块,比如JTAG、TTL和USART通信。最终所有的交互信息会传递到CPU主控芯片上进行处理,芯片的硬件电路方框图如图3所示。

图3 系统硬件电路方框图

3.2 系统PCB的设计与绘制

市面上电路板有单面板和双面板,器件装配形式有插件式和贴片式。双面板可以使器件在电路板两侧都放置电路原件,贴片式器件的大小都小于插件式。由于琴键检测系统要求电路板尽可能的小,为节省空间,选择双面板贴片形式。由于封装电路的外壳内表面积为336mm×578mm,表面积比较小,设计的电路板大小为334mm×576mm。

使用AMS1117线性稳压芯片,减少电源纹波,提高电源质量。为了减少电源环路电阻,加粗电源线宽度。如果接地线太细,接地电位将随电流的变化和信号频率的变化而变化,使噪声加大,严重时将引起自激。加粗接地线。同时,为了提高抗噪声能力,把数字电路系统的接地构成闭环路。为了减少模拟电路对数字电路的影响,提高系统的稳定性,在控制芯片的每一个电源引脚都配置一个去耦电容,且靠近引脚摆放,充分发挥其作用。布线设计完成后,检查布线设计符合设计者所制定的规则。该系统设计的电路板如图4。

图4 系统硬件电路板图

3.3 系统的程序设计

本系统主要采用光电传感器来采集信息,光电传感器感知琴键按下,光电传感器将高电平或低电平信号,通过电路系统反馈给单片机的普通IO口,单片机进行数据处理。单片机通过编程,将采集的数据进行汇总和处理。单片机将数据进行处理之后,将数据传输给LED屏幕,通过LED屏幕进行信息的反馈。当用户通过LED屏幕进行操作时,LED通过USART通信的方式,将操作信息反馈给单片机,单片机进行相关的程序处理。该系统采用的是STM32C8T6芯片,主要通过C语言进行开发,采用keil软件进行编程。汇编语言虽然效率高,但是其可读性较差,ST官方为了给开发者提供良好的环境,提供了非常丰富的库函数,大大缩短了程序的开发周期并提高了编程效率。此系统的程序运行框图如图5所示。

图5 系统程序运行框图

根据系统程序运行框图,顶层封装设计如下:

3.4 系统优势

本钢琴训练评估系统能够实现钢琴按键的实时反馈,通过单片机编程记录所弹下的音符并将数据显示到LED屏幕上,还能在存储卡中进行琴谱的存储,给使用者带来了极大的便利。

3.4.1 数据记录功能

通过LED屏幕对于钢琴琴键的信息进行有效、及时的反馈和采集。使用者能够通过LED屏幕进行触摸操作,进行相关功能的设置及使用。用户想要进行钢琴琴键的数据记录时,点击数据采集按键即可。单片机会根据LED屏幕通过串口通信传递的记录信息,进行数据的记录及处理,等待用户停止数据记录的指令。

用户完成点击停止数据记录的指令后,所采集的数据以十进制的形式显示在屏幕上,用户可以较为直观地对照演奏的琴谱和采集的按键信息,进行钢琴的学习和练习。

相较于市场上的其他钢琴琴键检测装置,本系统不仅仅通过LED的形式进行琴键信息的反馈,还能够利用单片机平台进行数据的采集及处理,给钢琴学习者带来很大的便利。

3.4.2 存储琴谱功能

通过存储卡,能够将自己需要演奏的琴谱上传到系统中,用户可以根据自己的需要,进行琴谱的提取,也能够跟自己演奏的数据进行对照,从而更加完善地进行钢琴演奏的学习。

用户也可以在网络上进行琴谱的下载,将自己需要练习的琴谱下载到存储卡中,利用LED屏幕进行琴谱的切换和调取,不仅方便了用户的使用,还能够减少纸张的使用,为环保事业做出一定的贡献。

4 串口通信

处理器与外部设备进行通信有两种方式——并行通信和串行通信。串口通信采用串行通信方式,其传输原理为数据按位顺序传输,其优点是占用引脚资源少,由于该系统需要利用的IO口较多,故采用串行通信的方式比较合适。

串行通信按照数据传送的方向,又分为单工、半双工、全双工,全双工允许数据同时在两个方向上传输,因此,全双工通信是两个工通信方式的结合,它要求发送设备和接收设备都有独立的接收和发送能力。

串行通信采取全双工的通信方式,不仅可以提升通信的效率,还能够最大限度地提升用户与设备的交互性。

在目前国内的市场中,很多嵌入式的小型设备,都采用单片机的编程方式,而其中的串口通信,得到了良好的应用和拓展。本系统采用的是根据ARM系列Cortex-M3架构的串口通信协议,其优点是稳定性高、传输数据速度快,针对本系统非常适用。利用串口通信协议,能够很好地将单片机采集的数据实时更新到LED屏幕上,使用户得到更加便捷、更加直观的体验。

5 结束语

本文基于光电传感器的钢琴训练评估系统进行了研究,从机械结构设计、电路布局、程序控制方面进行了合理的论述。大大提高了琴键检测的及时性和有效性,增加的LED屏幕能够实时地跟用户进行交互,提高了人机交互的体验感和便利程度。其中的琴键数据记录和琴谱的存储,能够给用户带来更好的体验。该系统对于钢琴教学的发展也有一定的意义。

猜你喜欢

琴键单片机钢琴
基于单片机的SPWM控制逆变器的设计与实现
给你的信
基于单片机的层次渐变暖灯的研究
基于单片机的多功能智能插排
基于单片机的便捷式LCF测量仪
纸钢琴
钢琴
光影协奏曲
钢琴指套
半夜敲门