设计一个听起来很美的钢琴门铃
扫描二维码
随时随地手机看文章
这是一个漂亮的外观和声音门铃与钢琴键,将把你的访客的体验到一个全新的水平。
门铃经常被忽视,但想想看,门铃是你和来访的人之间的第一个互动。你的门铃不应该更有意义吗?能给你的来访者带来微笑的东西?
这就是为什么我做了这个看起来很漂亮,听起来像微型钢琴的门铃。它有五个独立的,功能齐全的钢琴键。每个键,当按下,播放一个独特的音符,从一个真正的钢琴采样。
想象一下,当你的客人听到这个漂亮的门铃时,他们脸上的惊讶和喜悦。这些键的设计感觉就像真正的钢琴键,实际的键旅行提供了一个令人满意的,反应灵敏的感觉。对你来说,这是一种温柔、悦耳的声音,而不是标准门铃发出的刺耳的铃声。
设计和3D打印
我开始用Fusion 360设计门铃。我在Pinterest上看到了这个门铃设计,作为参考。然而,这种设计似乎是把所有的键连接在一起,形成一个按钮。但是我想要5个不同的,独立的按键。所以我的设计有单独的键。
随着设计的最终确定,我把它们送去使用标准PLA长丝进行3D打印。
油漆
原始的3d打印PLA,有一些沉闷,颗粒状的外观。这种白色并不是我想要的钢琴白色。
解决这个问题的方法很简单。一层漂亮的喷漆!我选择了一种有光泽的白色喷漆来达到抛光的效果。
我涂了三层喷漆,每层之间留出10到15分钟的干燥时间。经过大约12个小时的干燥,琴键看起来很光滑,闪闪发光,就像一架真正的钢琴一样。
JLCMC
这个项目的一部分由JLCMC赞助。如果你是一个像我一样的创造者,你就会知道为你的项目找到合适的机电部件是多么具有挑战性。这就是JLCMC的用武之地。
为什么选择JLCMC?
一个值得信赖的名字:JLC是PCB制造和原型设计领域的全球领导者,jlcmc在其机械零件产品中坚持同样的奉献精神,以保证质量和客户满意度。
无与伦比的价格:延续JLC的传统,JLCMC以具有竞争力的行业领先价格提供机械零件,让您在不牺牲质量的情况下保持预算。
广泛的产品范围:无论您是需要精密工程组件还是定制解决方案,JLCMC都提供全面的选择来支持您的项目-对于爱好者和专业人士来说都是完美的。
全球可靠性:凭借全球数百万制造商的信任,JLCMC将同样可靠的服务扩展到机械零件,确保您可以信赖的始终如一的质量。
如果您现在注册,您将获得19美元的优惠券和每月MC优惠券,以帮助节省更多。
钢琴的琴键是如何操作的
现在,我们来谈谈钢琴键是如何工作的。虽然我们可以简单地在每个琴键下面放置按钮,然后收工,但我希望这些琴键感觉更像一架真正的钢琴,具有真正的琴键移动。为此,我决定使用一些微型限位开关。
这些开关提供平滑,延长旅行与令人满意的软点击在结束正是我们需要这个应用程序!
建立限位开关电路
其中一个挑战是处理键的数量。最简单的解决方案是将每个限位开关连接到微控制器上的单独引脚。但是,我不想把五根电线和一根额外的接地线穿过墙壁连接到扬声器盒中。
为了解决这个问题,有一个聪明的技巧,可以将电线的数量从六根减少到两根。
目标是让微控制器区分这五个开关。为了实现这一点,我们可以创建一个电阻阶梯。梯子连接在5V和微控制器上的GPIO引脚之间。
当第一个开关被按下时,GPIO引脚接收到完整的5伏电压。按下第二个开关将导致电压在GPIO引脚下降,由于10kΩ电阻在线。使用第三个开关,电压降将由两个串联的10kΩ电阻引起,产生20kΩ电阻。4号交换机增加30kΩ电阻,5号交换机增加40kΩ电阻。
通过读取这些独特的电压降,微控制器可以准确地告诉哪个开关被按下。唯一需要注意的是,如果同时按下多个开关,此方法将无法工作,但这对于我们的应用程序来说是完全没问题的。
组装钢琴侧
钢琴侧准备好了,是时候组装了。首先,我用螺丝把两把黑钥匙固定好,然后用胶水把它们固定住。接下来,我把钥匙连接到框架,再次使用螺丝和一些胶水。
对于电路,我用双面胶带把它粘在底板上。我还焊接了一根长长的黑色电线,稍后将连接到扬声器一侧。
最后,我把底板固定到外壳的其余部分。
收集数据
现在我们需要收集一些数据。我们已经建立了电阻阶梯,但是我们需要知道每个键的具体电压读数。为此,我使用了一个迷你面包板并插入了微控制器。我在D2和地之间添加了一个10 kΩ电阻。然后,从钢琴键组件的两根电线连接到D2和5v。
我为微控制器写了一个简单的程序。该代码只是读取引脚D2上的电压并将其打印到串行监视器。我们可以上传这些代码并开始按每个键,一个接一个,注意我们看到的值。这些数据以后会有用,所以把它保存在某个地方。
钢琴声音产生
我最初的计划是为Arduino使用micro-SD卡模块。这个想法是将单个钢琴音调的录音存储在SD卡上,然后让微控制器根据按下的键播放相应的声音文件。但是我想用的SD卡坏了。
在探索了不同的方法(在ChatGPT的帮助下)之后,我终于找到了一种能够提供令人惊讶的良好音频质量的方法。现在,说实话,我不完全理解代码。
但是,看起来核心概念涉及将音频文件转换为可以直接嵌入微控制器程序代码的特定格式。从本质上讲,我们将声音转化为微控制器可以直接“读取”和输出的数据。
我把电路组装在一个迷你面包板上。主要是因为这将允许我稍后用SD卡升级它。
你可以参考图表来建立联系。但如果可以的话,我建议你使用SD卡。音质会好很多。
编码
现在,是时候将主代码上传到微控制器了。在这段代码中,我们使用来自每个限位开关的电压读数来确定哪个键被按下。一旦按下一个键,相应的钢琴音色就会使用我前面提到的代码播放出来。之后,在重复这个过程之前有2秒的延迟。
音频创建
要使用该代码,您需要首先将音频转换为“。大胆的“原始”。我们首先将立体声转换为单声道。
然后,我们将改变采样率为16000。
我们现在将音频规范化。
最后,使用如下所示的设置导出音频。
现在,我们需要将原始音频转换为“。h”格式。为此,我编写了一个python脚本,您可以在附件中找到它。
一旦所有的音调被转换,我们可以把它们放在Arduino代码所在的文件夹中。我们需要在脚本中包含这些头文件,如下所示。
如果您愿意使用SD卡,我强烈建议您这样做,您可以在我以前的一个项目中找到这个过程。
装配与安装
我们现在可以启动电路并测试它以确保一切正常工作。
我把所有东西都放在我做的一个外壳里,最后用一块薄薄的圆形海绵盖住扬声器。
现在我们可以小心地安装钢琴键组件,在门外,在门旁边。
扬声器组件在里面找到了它的家,确保将连接线整齐地放在两者之间。
最后,我们用5V电源为整个电路供电。
结论
这就是答案!随着一切连接和供电,你现在可以享受独特的和满意的经验,你的新钢琴门铃。琴键的触感,美妙的钢琴音色,以及你自己制作的事实——这是一种非常有益的感觉。
说实话,我还是更喜欢用SD卡来播放音频。室内外设备之间的连接线是我想改进的另一个领域——真正的无线解决方案仍然是最终目标。
本文编译自hackster.io