【摘要】随着当今社会快节奏生活的发展,当代大学生越来忽视时间管理的重要性,在原本计划只看几个视频只玩几个游戏的碎片化娱乐中耗费了大量的时光,对于自己原本的学习生活产生了巨大的影响。为更加有效的反映时间的流逝,特设计该电子沙漏电路利用控制灯珠的亮灭来模拟沙漏中沙子的掉落。在非整点时电子沙漏电路会模拟30秒正常的沙漏掉落,以提醒人们时间的可贵,要珍惜碎片化的时间,在整点时刻进行短暂的时间回溯,下部沙粒重回上部沙漏后再次掉落,同时播放歌曲并且灯珠颜色变化,此过程同为30秒,以此提醒人们时间一去不回,人们应当注重时间管理好好利用时间。
关 键 词 沙漏模拟; 音乐播发; 碎片化时间
Abstract With the development of fast-paced life in today's society, contemporary college students increasingly ignore the importance of time management. They spend a lot of time in the fragmented entertainment that originally planned to watch only a few videos and play only a few games, which has a huge impact on their original study and life. To more effectively reflect the passage of time, the electronic hourglass circuit is specially designed to simulate the fall of sand in the hourglass by controlling the light beads. The electronic hourglass circuit simulates 30 seconds of normal hourglass dropping at non-hourglass time to remind people of the value of time. To cherish fragmented time, make a short time backtrack at the whole time, lower sand grains fall back to the upper hourglass again, and play a song and change the color of the lamp beads. This process is the same as 30 seconds, to remind people that time never goes back, people should pay attention to time management and make good use of time.
Key words Hourglass simulation; Music Broadcast; Fragmentation time;
随着如今移动互联网、大数据、云计算等科学技术的日渐完善,外界的诱惑力变得越来越大,我国当代大学生们往往会沉迷于某事之中而忽略时间管理的安排[1]。在荒芜了大量时间后的碎片化学习中也是收获甚微,更对自己的个人生活产生了不可忽视的影响[2]。故根据古代沙漏中沙粒崩塌的模型[3]设计本多功能音乐沙漏进行模拟。在非整点时电子沙漏电路会模拟30秒正常的沙漏掉落,以提醒人们时间的可贵,要珍惜碎片化的时间,在整点时刻进行短暂的时间回溯,下部沙粒重回上部沙漏后再次掉落,同时播放歌曲并且灯珠颜色变化,此过程同为30秒,以此提醒人们时间一去不回,人们应当注重时间管理好好利用时间。
1 方案设计
1.1 总体方案设计
本多功能音乐沙漏采用nodemcu作为主控单片机,并通过ws2812形象的表示沙粒[4],模拟沙漏的运动过程。如图1流程图所示,在nodemcu通电之后,其可进行wifi联网实时获取当前时间,在非整点时可进行正常的沙漏掉落,在整点时会进行一个特殊的沙漏特效,同时手机blinker可与单片机进行连接,进行外部中断。
(图1.总体设计流程图)
1.2 总体电路设计
基于单片机最小系统在nodemcu开发板上的一体化[5],本多功能音乐沙漏的电路设计偏重于灯光模拟电路以及音乐播发电路两部分,其供电接口为nodemcu开发板数据接口一体,使整个系统简化扁平化。如图2所示,总体设计电路图。
(图2.总体设计电路图)
灯光模拟电路由30个ws2812小灯串联,通过统一正负极进行供电,再辅以数据线连接D5引脚,对ws2812进行编号命名,控制其开关以及颜色变化等。无源蜂鸣器电路和开发板之间有三条电路连接,正负极进行蜂鸣器供电,数据线连接D7号引脚,控制音乐的播发。
2 联网功能的实现
2.1 设计思路
本多功能音乐时钟作为物联网智能家具的衍生品,系统硬件部分使用arduino软件进行代码编写和修改[6]。手机端部分使用blinker点灯科技作为控制面板。通过MQTT进行手机端-设备端-电脑端三者之间的通信,并在手机端blinker的搭建可视化移动物联网平台[7],使用者通过图3的手机界面里的按键操作即可完成对多功能音乐沙漏的中断控制。
(图3.手机blinker操作平台)
2.2 联网获时的实现
当nodemcu通电后,开发板根据写入的wifi名称和wifi密码进行反复连接,如果wifi名称、密码错误或者wifi信号较弱导致连接网络不成功,则无源蜂鸣器会进行报警。如果单片机成功连接上网络,nodemcu会以一秒为间隔实时获取当前的时间并将当前时间的时、分、秒分别记录在变量hours,minu和sece之中。
每次获得数据的同时进行一次分析,首先分析当前的minu和sece是否为0,如果minu和sece均为0,则执行整点特殊功能,如果至少有一个为0则判断现在是否有程序执行,当有程序执行则继续执行此程序,无程序执行则执行非整点常规功能。
2.3 联网中断的实现
不进行中断控制时,多功能音乐沙漏运行实时功能,但在实时读取时间的时分秒的数据同时,也在获取物联网里的手机平台消息。当在手机物联网平台上进行功能按钮操作时,手机会上传该按钮对应的按钮信息,这时的按钮信息被开发板联网获取后会与代码里也有的信息进行比对,中断现有的功能程序,执行获取信息所对应功能。
3 灯光模拟的设计与实现
3.1 设计思路
将30个ws2812小灯珠分为对称的上下两组,呈现为沙漏形状,采用流水灯思路[8],用一根数据线将其串联,再串联其正负极电源线,进行供电。
如图4所示,以沙漏上半部分的ws2812为例,对于其ws2812的编号按照电路顺序从0开始编码,30个ws2812灯珠的编号为0到29,此时便可以在代码里通过对数字编号的控制达到对对应灯珠的控制。
(图4.上部沙漏灯珠编号图)
每个ws2812小灯珠的内部均含有红、绿、蓝3个单色LED, 基于通过控制灯珠的编号来对应具体的灯珠,再通过代码的编写,控制具体的灯珠里小LED的亮灭,再通过0~255的数值赋值,控制其亮度大小(其中0为最暗,255为最亮)[9]依照图5的RGB三原色表,便可以得到不同颜色。
(图5.RGB三原色表)
根据三原色的色彩比例[10],分析出沙漏中沙子应有的黄色以及时间回溯和警醒时需要的红色灯光的三原色亮度比例,以其中占比最高的颜色亮度设置为255,其他的两种颜色依照比例计算其亮度,最终记录三原色亮度代码,通过代码在不同的时间片刻给与不同编号的灯珠以不同的颜色,根据时间的转变即起到动态的效果。
3.2 灯光模拟电路
如图6的灯光模拟电路图,依照编号顺序将ws2812灯珠依次串联,数据线连接12号引脚,通过数据的传递来控制灯的颜色以及亮灭[11]。
(图6.灯光模拟电路图)
3.3 非整点常规灯光模拟效果
以灯珠呈现黄光表示沙漏的该处充满沙粒,以灯珠不发光表示沙漏的此处无沙粒,在该程序刚运行之时位于上方倒三角的 15 个灯珠全部呈现黄光,下面的15个灯珠处以熄灭状态,以模拟沙子充满容器上方的沙漏初始状态。
随着时间的变化,模拟沙漏上部的沙粒依照重力变化一粒一粒减少,下部的沙漏随之从下到上逐渐堆积。此时的沙漏模拟效果即为上部灯珠一个个熄灭,下部灯珠一个个呈现黄光[12],直到最后上方的灯珠全部熄灭,下方的灯珠全发黄光,持续此状态三秒,后重复此过程。
3.4 整点特殊灯光模拟效果
在该功能中沙漏中的沙粒会呈现出不同的颜色状态,灯珠发光表示沙漏的该处充满沙粒,灯珠不发光则表示沙漏的此处无沙粒。初始状态的的多功能音乐沙漏上部15个灯珠不发光,下部15个灯珠呈现黄光,表示该沙漏为装满普通黄沙且已经流完的普通沙漏。
之后进行一个短暂的时间重置,下部的沙粒会以反重力的形式倒流到沙漏上部。当上部再次再次充满沙粒的时候,上部灯珠由正常的黄光变为白光,并在再次飞速掉至沙漏下部的过程中变换为其他多彩颜色,而在最终落入沙漏下部时呈现出刺眼的红色,整个过程的时间与正常的循环时间恰好相同,以表示时光一去不复返,无人可以控制时间的流逝,况且我们的人生本该是绚丽多彩,不能走到最后只剩满目沧桑,我们应该抓紧现有时光。
4 歌曲播放功能的设计与实现
4.1 设计思路
当用PWM方波驱动无源蜂鸣器时,无源蜂鸣器可视为一个小型扬声器[13],基于nodemcu内部时钟分频[14],根据不同频率的方波信号即可播放出不同频率的音调。根据音调的高低与时间变化即可实现无源蜂鸣器的歌曲播放功能。
4.2 实现过程
以南京邮电大学的校歌《信达天下》进行参考,找到其简谱图,如图7:
(图7.参考的乐谱图)
依照八度的音程按波长比例平均分成十二等份,每一等份称为一个半音(小二度)的原理[15],将音符NTC0定义为-1,NTC1定义为262,NTC2定义为294,NTC3定义为330,NTC4定义为350,NTC5定义为393,NTC6定义为441,NTC7定义为495,NTCL5为196,NTCL6为221,NTCL7为248,NTCH1为525,NTCH2为589,按照乐谱写入对应的音符数组。
已知一拍的时长大约为400—500ms[16],将一拍的时长以400ms近似,则当以四分音符为节拍时,四分音符的时长就为400ms,八分音符的时长就为200ms,十六分音符的时长就为100ms,以此基础将乐谱里的节拍记录在数组里。
程序运转时单片机将音符与节拍逐一对应,驱动无源蜂鸣器演奏对应音符持续指定节拍时间,然后再执行下一音符与节拍,从而实现动态的歌曲播放。
5 结 束 语
通过常规灯光模拟、特殊灯光模拟、音乐播发三大核心的功能的实现,从而可以在联网中断控制和非中断实时循环等情况里进行多种有机集合。基于多功能音乐沙漏的设计与实现,可以实时观察到时间的流逝,感受到时间的无情,从而在音乐的鼓舞之下抓紧碎片化的时间,积极投身于学习生活之中去。
参 考 文 献
- 陈必忠,孙晓军.中国内地大学生时间管理倾向的时代变迁:1999~2020[J].心理科学进展,2022,30(09):1968-1988.
- 周婧怡,何济玲.大学生碎片化学习注意力失焦环境下元认知能力水平现状调查[J].中国教育技术装备,2021(08):19-22+27.
- 李霖渊,胡林,许锋,张忠政,曲东升,张兴刚,孔维姝.沙漏计时原理二维数值模拟[J].大学物理,2008(09):47-50.DOI:10.16854/j.cnki.1000-0712.2008.09.010.
- 李耀明,周洪艳,郜慧波,苑刚,徐磊.基于Arduino多功能手杖LED灯设计与实现[J].南方农机,2018,49(09):8+28.
- 孙福玉.电子沙漏的设计与实现[J].实验室科学,2018,21(03):1-2+6.
- 叶险峰,李锡华,施红军.基于Arduino平台的电子电路设计实验教学实践[J].实验科学与技术,2020,18(02):68-72.
- 胡文睿,谈潘攀.基于物联网的智慧浴室系统的设计[J].电脑知识与技术,2021,17(26):127-130.DOI:10.14004/j.ckt.2021.2619.
- 孙浩文.基于Arduino的花式流水灯的设计与实现[J].电子技术与软件工程,2019(24):71-72.
- 辛亚辉,陈景乾.Arduino色光三原色实验探究——以人教版八年级物理教材为例[J].发明与创新(初中生),2021(10):38-39.
- 钱惠国.红绿蓝三色LED调色特性的实验研究[J].实验科学与技术,2015,13(01):27-30.
- 史添添.基于WiFi-AP模式的流水灯控制系统的设计与实现[J].信息与电脑(理论版),2021,33(02):101-103.
- 聂秀珍.论电子沙漏的原理与电路设计[J].信息通信,2017(11):68-70.
- 魏永辉.嵌入式STM32下无源蜂鸣器发声[J].科技展望,2016,26(24):163.
- 苏神保,刘丹.基于NodeMCU的物联网教学平台设计与实现[J].江西通信科技,2021(04):22-24.DOI:10.16714/j.cnki.36-1115/tn.2021.04.004.
- 陈可圆.巴赫《十二平均律BWV861》的演奏诠释[J].北方音乐,2020(13):37-38.
- 郭林.中国古代音乐“拍”的研究——80年代以来中国古代音乐“拍”研究[J].人民音乐,2010(04):69-73.