14359| 19
|
炫彩电子钢琴的设计与制作 |
【视频演示】 在我国,近年来家庭钢琴的普及率在不断上升,学钢琴的孩子不断增多。“乐器之王”钢琴以行云流水般的音符阐释着完美的音效和浪漫情怀,为人们带来纯净的享受。我也用不同的开源硬件制作过多个钢琴:用Arduino制作的隔空钢琴、用micro:bit制作的触摸钢琴、用酷乐宅制作的水果钢琴。这三种钢琴音质最好的是用酷乐宅制作的水果钢琴,但它必须与电脑搭配使用,很不方便,而另两架虽然能脱离电脑使用,但它们的音质又不好,所以一直以来对所制作的钢琴都不是很满意。 上一阶段了解到CocoTouch编程板,它内置MIDI控制器,集成了120多种乐器,加上编好程序后可以脱离电脑运行,直接插上音箱就行了,非常适合制作乐器。于是又萌发了再制作一台电子钢琴的想法,马上去入手了一块,开始动手制作炫彩电子钢琴。 【设计方案】 为了使电子钢琴更接近真实的钢琴,更加吸引人,并降低弹奏难度,我主要从以下方面进行设计与制作: 1、外观将使用椴木板来制作,这样可以使其美观与牢固兼备。 2、键盘上贴上铜箔胶带,把它与主控板上12个触控点相连,这样即可以使按键金光闪闪,又能使它与手指的接触面增大,避免快速弹奏时的接触不良问题。还有导线与主控板接触点相连我采用铜螺丝加上铜垫片来保证良好的接触。 3、为了使钢琴更加吸引人,我加入了灯带,钢琴的每个按键对应四个LED灯,当按下按键时,对应的LED灯就以随机的颜色点亮,而为了使灯光更加柔和,在灯带的上面加了白色亚克力板,通过亚克力板的阻隔,灯光变柔和了。 4、为了降低强奏的难度,我在钢琴的键盘盖上设计了可以随时替换的音调指示条,因为这个主控板只有12个触控点,一般情况下只能设12个音调,无法满足所有的曲谱,所以针对不同的谱子,我们可以写入不同的程序,再安装上不同的音调指示条,方便大家弹奏。 【硬件清单】 CocoTouch 可编程控制板 WS2812 RGB LED灯带 接线端子 耳机延长线 铜螺丝、螺帽及垫片 铜箔导电胶带 连接导线 铆钉 激光切割件 【制作过程】 1、结构图设计并切割 我们先利用软件在电脑中设计出钢琴的结构件,材料用椴木板和白色的亚克力板,并用激光切割机进行切割。图纸上黑色的线表示要切透,红色的表示不切透只划线,蓝色框内材料是白色的亚克力板。 2、钢琴键盘制作 用2厘米宽的铜箔胶带贴在键盘上,这里要注意胶带的长度,使按键正反两面都能贴上。再把中间12个按键用导线引出,这里我用铜螺丝、铜螺帽及铜垫片来固定导线与铜箔胶带的接触,这样能保证其接触的良好性。 3、灯光指示部分的安装 因为每个按键对应4个LED灯,所以就把灯带剪成4个一组贴在对应的地方并用导线连接起来,导线焊接的时候要注意VCC和GND相对应起来,其中的DO接DI,再安装上隔板用热熔胶固定,接着把白色亚克力面板安装上并用热熔胶固定。如下图: 4、安装钢琴的一侧面板及中间部分。 我们把钢琴的中间各部分(除底板外)先与其中一块侧面板进行连接固定。如下图所示: 5、安装钢琴键盘盖及另一侧面板。 6、安装音调指示条。 我们可以根据不同的曲子选择相对应的音调指示条,把它安装在键盘盖上,它们之间用铆钉进行连接,这样方便音调指示条的更换。 7、安装耳机延长线。 把耳机延长线安装在相对应的侧面板上,并用热熔胶进行固定。 8、安装主控板。 把主控板安装在板上,并在板子上安装上六组12个接线端子,再把主控板上的0—11号12个触控点通过导线接到接线端子上,导线与主控板触控点相连采用铜螺丝、螺帽及垫片进行固定,以保证接触的良好性。采用接线端子的目的是为了方便可随时更改主控板触控点与键盘的连接,避免要更改必须拧螺丝的麻烦。最后再它安装到底板上。 9、线路连接。 把钢琴的12个按键的导线接到相对应的接线端子上,这里可以从最低音开始依次与主控板上的0—12触控点相连,再灯带的VCC、GND接线插在主控板上的VCC、GND针脚上,把灯带上的控制信号输入端这根线插在主控板的D2针脚上(这里主控板事先这几个针脚并没有焊上,所以我们事先要先焊上这几根针脚),再把耳机连接线一头插在主控板的音频输出口上。 10、安装底板。 最后我们把底板安装上,这样一架钢琴就组装完成了。 【程序编写】 程序是利用Arduino IDE编写的,详细程序如下: 【反思改进】 1、由于CocoTouch编程主控板只带有12个触控点,所以这架钢琴不含半音的键,如果编写上半音那能弹奏的音域太窄了,后期改进时可以考虑把主控板上的D0 —D12数字口和A0—A7模拟口这些利用起来从而扩大可弹奏的音域。 2、由于这架钢琴设计的琴键是用椴木板,且后面部分是连接在一起的,这样弹奏时按键按下没有往下移的感觉,体验感还不是很好,改进时可以考虑一下改变按键的材料或每个按键单独一体,让每个按键都有一定的可往下移动的效果,再在下面安装弹簧,这样就能实现按下就往下移,松开往上返回。 3、目前程序控制灯光的颜色是随机获取RGB的值来实现的,但感觉颜色变化还不够明显,可以对灯带的程序可以进一步进行优化,使颜色切换更加的明显,更能体现“炫彩”两个字。 作者其它帖子 ◆ 小尚,别跟丢了!——自动跟随的麦克纳姆轮小车 https://mc.dfrobot.com.cn/thread-296803-1-1.html ◆ 来吧!一起动手制作一台架子鼓 https://mc.dfrobot.com.cn/thread-289948-1-1.html ◆ 炫彩电子钢琴的设计与制作 https://mc.dfrobot.com.cn/thread-280116-1-1.html ◆ [micro:bit×OBLOQ物联网挑战赛第三轮] 坐姿矫正仪 https://mc.dfrobot.com.cn/thread-269139-1-1.html ◆ 【挑战2】基于物联网的智能闸道、人数统计与安全预警系统 https://mc.dfrobot.com.cn/thread-268643-1-1.html ◆ 物联网比赛第一关:远程监测温度和亮度 https://mc.dfrobot.com.cn/thread-268162-1-1.html ◆ 来来来,让我们一起来打地鼠! https://mc.dfrobot.com.cn/thread-268413-1-1.html |
© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed