Mr Guo 发表于 2019-12-30 16:39:17

手工制作的电子钢琴


设计思路
      很早之前就和创客圈的朋友们团购了可以制作乐器的CocoTouch音乐主控,最近一段时间又看上了好搭的midi音乐模块,两个模块都可以做乐器,一直想把它们用起来,之前看到很多老师做了一些漂亮的作品,有电子琴,有架子鼓等等,犹豫了很久结合网络上朋友作品的思路最终决定先做一架电子钢琴,后面计划再制作架子鼓和吉他组成乐队,钢琴“音乐之王”的称号是毋庸置疑的,相信每个人都有一个乐器梦,从小就希望自己能够像舞台上的演者一样聚焦无数观众的目光,但钢琴昂贵的价格又让人望而却步,制作一架性价比极高的电子钢琴显得尤为必要,而且钢琴的移动是不方便的,如果能够有一台电子琴是可以方便携带,随时随地就可以演绎那就再好不过了,本次作品可以模拟像钢琴一样弹奏演奏,同时也增加了喇叭外放的功能,便携可充电,灯带显示等功能,本文会分别利用两种不同的芯片展示制作的过程。         下面我们先来欣赏一下视频
https://v.youku.com/v_show/id_XNDQ4NzM3NDE2OA==.html?sharefrom=iphone&sharekey=9dd5ee31a632f6f394de519ef1ee47fe6硬件清单cocotouch主控或arduino nano加midi音乐模块ws2812灯带功放模块*1喇叭*2限位开关*12加电阻18650电池*33.5mm音频线*1开关*1,杜邦线,导线若干3mm奥松切割板材2mm亚克力透光板电源和转接模块

制作过程1.图纸设计利用cad设计图纸,采用激光切割加工3mm奥松板,图纸与实物如下




2.可拆卸主板和电池底板设计为了方便主板的重复利用和电池的充电,构思了这个插销式的拆卸结构,有的小伙伴可能会问到,下边的两个小圆弧是起什么作用的, 作用是为了留出空间,方便安装喇叭模块,提醒一点的是合页部位的设计,中间要留有间隙,方便开合,和家里的门是一个道理3.电气设计这个作品一个比较大的特点就是可以随处演示,便携,可充电不需要外接音箱,电源采用了3节18650的锂电池3.1 cocotouch主控方案作品调试的时候一定要注意主控板不要和其他金属部件接触,防止短路,或者你可以用木板将其隔离开,我就是因为不小心掉落螺丝上去,短路,导致作品拖了很久才完工连接琴键的12根导线是我经过精挑细选的,为了让大家避免踩坑,强调一下注意的地方,廉价的杜邦线一定不要用,尤其是在这个需要触摸的场合,检验杜邦线的好坏可以用磁铁去吸,如果能吸住的质量应该不咋地,我刚开始就是用的廉价的杜邦线连接的,用手去触摸外面的绝缘皮都可以有信号,查找很久才发现是线的原因,伙伴们一定要注意为了方便接线和板子的重复利用,这里单独设计了一个电路模块,方便快速拆装线路,主要涉及一进两出的电源模块和触控按钮的转接排针3.2 arduino nano加midi音乐模块方案   采用arduino nano加扩展板的方式作为第二套方案的主控,性价比会比较高一点,通用性更强,nano相信大家都用过,这里就不再详细叙述,midi音乐模块是好好搭搭搞活动是买的,100元以内的价格,midi模块接nano的数字信号就可以,这里利用了12个限位开关作为钢琴的按键,nano的数字信号口基本上用完了,所以利用了A0作为midi的信号接口,灯带同样接入A1端口进行控制,限位开关是很普通的器件,这次没有用现成的模块是因为成品的模块可能体积会比较大,只好在普通的限位开关上焊接了下拉电阻,让信号更加稳定,下拉电阻的知识可以百度哦,还是很简单的,有的伙伴可能会有疑问,上面不是利用铜箔胶带作为触摸琴键的吗,为什么又换限位开关了呢,没错,确实是两种不同的方案,刚开始也是想着如能以触摸方式的话会好一点,后来发现因为触摸按键的信号nano处理起来不是很方便,模拟信号口又比较少,所以换了一种思路,正好把限位开关利用起来,效果是一样的,也是不错的选择哦4.灯带面板设计注意事项:灯带安装的时候一定要注意顺序,调试好和琴键一一对应起来后在进行安装,避免返工,灯带焊接的导线我用的是杜邦线,个人认为杜邦线不是最好的选择,如果有条件可以选择质量更好的导线,焊接时注意正负极和信号线一定要接对,注意灯带的箭头朝向灯带安装结束后,在表面安装2mm亚克力透光板让电子琴更加美观5.琴键部分柔性连接琴键部分的设计需要注意的是,柔性连接部分安装时要仔细,防止掰断,仔细的小伙伴可能会看到有的图片是导电胶带做的按键有的是铜箔做的按键,实践下来铜箔效果接触性能会好一点,导电胶带有胶的那部分接触导电可能不是太好,琴键的圆孔在设计图纸中可以看到,目的是为了固定螺丝的,为了让导线和螺丝良好的接触,我采用了直接将螺丝用焊锡焊接上去的方法,然后打热熔胶防止脱落
6.弹性按键设计
有的伙伴可能会问为什么是12个按键呢,因为cocotouch提供了12个触摸端口,所以就设计了12个按键,arduino的方案也就沿用了这个设计,那么一般的钢琴是有88个按键,如何模拟钢琴那么宽的音域呢,这里想了一个方法,默认是从左到右的7个琴键是C4音调(C4是什么,这个要自行查一下哦),如果按下8-12中某一个按键的同时再按下1-7中的某个按键那么就会切换不同的音调,大概就是这个意思可以从视频中看出,这样就可以42个琴键了哦

6.1 cocotouch方案用限位开关作为琴键的物理弹性结构部分,安装时注意和琴键的距离,太高容易抬高琴键,太低琴键按下去又压不到它(在好搭midi方案中这12个限位开关不仅起到了物理弹性作用还增加了信号传输)


6.2 ardunio nano加midi模块方案
7.喇叭功放模块设计
接线一定要注意正负极,我的喇叭是之前从垃圾堆里捡来的,攻放也是淘的,发现攻放模块驱动能力比较强,这个小喇叭有点小,攻放有点大材小用了,喇叭小的话推荐大家买几块钱5V功放板就可以了,很方便,后面设计的架子鼓会采用5V的功放板,这里喇叭接线的时候一定要注意正负极这里的功放板的音量调节旋钮事先在图纸上预留的孔位,另外一个孔位是为了让电子钢琴输出至外接音响使用和修改程序下载线使用的,例如需要在节日活动中表演节目可以外接舞台的音响8.整体材料展示


9.程序编写9.1 cocotouch编程方案先来介绍使用CocoTouch音乐主控的编程方式,cocotouch核心芯片也是arduino,主控有12个触摸引脚,用来制作乐器是非常方便的,除此之外还有arduino的所有数字引脚和模拟引脚,还有蓝牙模块和TF内存卡模块可以使用,可以创造的空间还是很大的
有兴趣的伙伴也可以登录下面的网址去详细了解接下来我们正式开始编写程序,程序可以用图形化的方式也可以用Arduino ide去编写,为了让琴键个灯带同步执行,我利用了arduino进行编程,图形化暂时还没有arduino的数字模拟引脚控制的模块,程序如下,这里需要注意的是,利用arduino编程是需要加载cocotouch的库文件的
9.2 arduino nano加midi模块编程方案这里利用了mixly图形化编程环境,在编程之前需要先加载一下库文件哦图形化编程利用的函数模块可以模拟42个音,开机还会有一个小的灯带动画展示,2-13号数字口分别对应从左到右的12个琴键
2-8号七个数字口对应C4,D4,E4,F4,G4,A4,B4;9-13五个数字口对应2,3,5,6,7五个音域,如果9-13中的一个按键按下同时再按下2-8中的某个数字口就可以切换不同的音调,总共会出现42个音

10.总结电子钢琴的制作经历了很长一段时间,很多版设计图纸的修改和电路接线的调整,最终终于能和大家见面了,制作过程也是考验一个人综合能力的过程,每次造物都能学到好多东西,这也就是造物的乐趣,接下来还会有架子鼓和吉他一一为大家呈现哦,伙伴们和我一起行动起来吧,造物让生活更精彩#资料下载链接https://t.zsxq.com/Fie27iM










kylinpoet 发表于 2020-2-18 16:20:30

这个好,必须支持。

发表于 2022-5-15 10:43:49

感觉还是那个步进电机的好一点,赞
页: [1]
查看完整版本: 手工制作的电子钢琴