资料介绍
描述
让我们从一些动态图片开始:
介绍
该项目的目的是制作个人生日礼物。在这样做的同时享受电子、软件和 3D 打印的乐趣!
草莓奶油蛋糕有 4 种操作模式,通过旋转草莓编码器进行设置。
默认模式只有led效果,没有声音。然后你有生日模式,蛋糕播放生日快乐,直到你再也不想庆祝生日。它还具有“随机播放”模式。它在这里播放随机歌曲。最后还有一个惊喜模式,在这种模式下,灯熄灭,没有音乐播放,如果灯亮了,它会突然播放一首歌。
Part1 :木琴
多少个键和什么频率?
经过几次迭代后,我接受了这个折衷方案:
- 12键,铜制,外径10mm,内径8mm。
- 支持音符 C6、D6、D#6、E6、F6、F#6、G6、A6、A#6、B6、C7、D7。
我从 http://users.df.uba.ar/sgil/physics_paper_doc/papers_phys/lapp.pdf获得的密钥长度公式
我切了一块比计算值大几毫米的铜片,然后轻轻地锉掉边缘。我定期使用应用程序(检查频率 。注意:在管子上钻孔或打磨管子会稍微改变频率。
几个学习者:
- 你真的需要更多的键来播放大多数音乐。我猜至少有 18 个或 24 个。使用 12 个键,该设备只能播放部分歌曲或带有简单旋律的歌曲。
- 虽然木琴是和弦的(可以同时敲击所有 12 个键),但实际上大多数可播放的歌曲并不使用它。
- 管子用砂纸抛光,然后涂上清漆。如果您将钥匙放入无绳电钻中,通过旋转钥匙并用 600 号砂纸固定它很容易使其变得非常光滑。
第 2部分:电磁铁和撞针
这比我预想的要困难得多。
我从一个电磁铁开始,如果有电流流过它,它就会把铁芯拉到它的中心。事实证明这不是一个好主意,因为它需要电磁铁中的大量电流,并且您只能将某些东西拉入核心,而无法排斥它,这使得击键更加困难。
然后我读到了关于使用钕磁铁作为磁芯的信息。这显着降低了所需的电流,现在可以通过将磁铁与电磁铁相斥来敲击琴键。
但是 - 没有什么是免费的 - 另一个问题出现了:前锋中的磁铁相互影响。必须进行大量调整(曾在线圈底部添加铁环以引导磁场),但最终找到了一个解决方案,即每个撞针只使用一个磁铁,并保持足够多的撞针分开。
最终撞针由三部分组成:铁制家具螺丝的空心部分、塑料支架和钕磁铁。无需胶水,磁铁将其固定在一起。
我制作了电子设备,以便可以通过软件控制电磁铁电流。虽然改变打击力对于播放歌曲并不是绝对必要的,但它使调试和调音变得容易。
最终的电磁铁有 570 匝 0.2mm 直径的漆包线。电阻约为5.5Ohm。
为了减少撞针回落到核心中产生的声音,在关键部位使用了毡织物,并且电磁铁的内部和撞针的外部都经过了平滑处理。
不过,我对音质并不是 100% 满意,敲击琴键的声音对我来说有点突出......
Part3 :电子产品
原理图
原理图没什么特别的。Atmega328PB 微控制器与 12 通道 DAC 进行串行通信。每个 DAC 输出后接一个功率双极晶体管,布置为射极跟随器。
二极管 D3..D14 保护晶体管免受感应反冲能量的影响。
我添加了一些基本的过电压、ESD 和错误极化保护。通过添加这些,测试期间破坏组件的变化大大减少。
印刷电路板
PCB就是我所说的1.5层PCB。底部是完整的接地层,因此无需蚀刻。所有轨道都在顶层运行,要访问 GND,您只需添加一个过孔。
在我的下一个项目中,我将在线订购 pcb,但现在我自己蚀刻它,如果原型制作要快得多。
如果您使用镊子和双目显微镜,安装相对较小的组件是最容易的。
物料清单
所有组件均在mouser.com购买
LED环和79
使用好旧的WS2812智能LED。18 为“79”,35 为环,全部串联。
任何 5V/2A 稳压电源都可以工作。我拿了一根 USB A 到 USB B 电缆并切断了 USB B 连接器。我将红/黑线焊接到 PCB 上的 5V/GND。USB A 连接器可插入 USB 充电器或移动电源。
Part3 :机械零件
大约 8 个月前,我们购买了我们的 Prusa mk3s 打印机,它确实达到了预期。它提供了漂亮的结果并且可以毫无问题地工作。带纹理的钢板提供了非常好的表面。
我儿子是 3D 设计师,他像专业人士一样使用 fusion-360(供个人使用)。
第三部分:软件
使用 SD 卡可以直接在 arduino 软件中读取 MIDI 文件。没有一个,下一个最好的事情是将 midi 文件转换为更紧凑的数组格式。后者是我所做的。
step1:选择一个midi文件并对其进行预处理。例如,剪掉一块或只保留 1 个“轨道”。我使用 MuseScore3(免费)来做到这一点。
step2 : 使用 midicsv 工具 将 midi 文件转换为 csv 文件。
step3:我做了一个excel宏:
- 打开 csv 文件。
- 移调音符,使最低音符对应于蛋糕上可用的最低音符 (C6)。
- 允许您检查是否可以在蛋糕上播放歌曲中的所有音符。如果没有回到绘图板(Musescore 或只是找到另一个 midi 文件)。
- 生成一个可以粘贴到 arduino 源代码中的数组。
为 Atmega328PB 控制器设置 arduino。
在使用 arduino IDE 之前,必须在处理器中加载引导加载程序。由于我忘记在 MISO/MOSI/SCK 引脚上添加排针,我必须先将小电线焊接到这些引脚上。
Atmega328PB 的额外功能默认情况下不可用,因此我必须在 IDE 中安装 Watterott 软件包 ( https://github.com/watterott/Arduino-Boards)才能正常工作。
经过很多问题我发现boards.txt中的波特率需要从57600更改为115200。
c++软件
事件驱动的应用程序可能更简洁,但我决定采用同步解决方案。主循环以固定的 300Hz 运行,每个对象或状态机在每个周期都更新。
高级概览应用程序
DacBH2221FV.h 允许您将值写入任何 dac 通道。
Key 类包含驱动单个键所需的所有内容。键由它们的 midi 编号标识。
MusicPlayer 类拥有 12 个键并且知道如何播放歌曲。歌曲存储为结构紧凑的数组(请参阅 SongData.h )
ControlLights 类提供简单的函数来控制 79 和环形 LED。
RotarySwitch 和 SwitchAndLDR 类允许访问旋转开关和光传感器。
最后,Controller 类使所有这些都可以协同工作。
- 自动遥控汽车开源分享
- 自动浇水的花盆开源分享
- 自动路灯开源分享
- 自动洗手机开源分享
- 自动鱼缸开源分享
- 歌剧蛋糕pcb开源项目
- 开源网络协议分析器WireShark软件下载 15次下载
- 自动上电STC单片机下载器(开源 )
- 自动售货机项目教程及文件下载 0次下载
- 开源课程行动倡议及科学导论综述 6次下载
- 使用单片机实现定时器控制播放生日快乐歌的仿真设计实例资料合集 4次下载
- 使用单片机实现生日歌的程序和仿真资料免费下载 9次下载
- 使用单片机进行生日快乐歌设计的程序免费下载
- 单片机蜂鸣器 生日快乐 【汇编版】 0次下载
- 能声控发出祝你生日快乐歌的电路
- 基于Jenkins+GitLab+Maven实现代码自动打包编译发布 3892次阅读
- 利用开源软件的最佳实践 464次阅读
- 前沿开源技术领域的开源大数据一一解读 1005次阅读
- Selenium在自动化中有何用处 1612次阅读
- 构建开源芯片生态需要什么要的 4327次阅读
- 2020年开源的六大发展趋势 4257次阅读
- 开源过程中的5件注意事项 3548次阅读
- 开源与云的一些争论 3200次阅读
- NASA的开源软件是什么?NASA的开源软件的详细分析 7186次阅读
- 有意思!如何制作一支吹不灭的蜡烛? 2.2w次阅读
- 教你用单片机播放生日快乐歌 1.3w次阅读
- 开源神经网络图片上色技术解析 解密深度学习自动上色 1.1w次阅读
- jenkins有什么用_jenkins如何自动部署 3.6w次阅读
- 11个机器学习开源项目 2767次阅读
- 红帽推出Ansible 2.2 :为开源自动化框架奠定牢靠的基础 984次阅读
下载排行
本周
- 1山景DSP芯片AP8248A2数据手册
- 1.06 MB | 532次下载 | 免费
- 2RK3399完整板原理图(支持平板,盒子VR)
- 3.28 MB | 339次下载 | 免费
- 3TC358743XBG评估板参考手册
- 1.36 MB | 330次下载 | 免费
- 4DFM软件使用教程
- 0.84 MB | 295次下载 | 免费
- 5元宇宙深度解析—未来的未来-风口还是泡沫
- 6.40 MB | 227次下载 | 免费
- 6迪文DGUS开发指南
- 31.67 MB | 194次下载 | 免费
- 7元宇宙底层硬件系列报告
- 13.42 MB | 182次下载 | 免费
- 8FP5207XR-G1中文应用手册
- 1.09 MB | 178次下载 | 免费
本月
- 1OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 2555集成电路应用800例(新编版)
- 0.00 MB | 33566次下载 | 免费
- 3接口电路图大全
- 未知 | 30323次下载 | 免费
- 4开关电源设计实例指南
- 未知 | 21549次下载 | 免费
- 5电气工程师手册免费下载(新编第二版pdf电子书)
- 0.00 MB | 15349次下载 | 免费
- 6数字电路基础pdf(下载)
- 未知 | 13750次下载 | 免费
- 7电子制作实例集锦 下载
- 未知 | 8113次下载 | 免费
- 8《LED驱动电路设计》 温德尔著
- 0.00 MB | 6656次下载 | 免费
总榜
- 1matlab软件下载入口
- 未知 | 935054次下载 | 免费
- 2protel99se软件下载(可英文版转中文版)
- 78.1 MB | 537798次下载 | 免费
- 3MATLAB 7.1 下载 (含软件介绍)
- 未知 | 420027次下载 | 免费
- 4OrCAD10.5下载OrCAD10.5中文版软件
- 0.00 MB | 234315次下载 | 免费
- 5Altium DXP2002下载入口
- 未知 | 233046次下载 | 免费
- 6电路仿真软件multisim 10.0免费下载
- 340992 | 191187次下载 | 免费
- 7十天学会AVR单片机与C语言视频教程 下载
- 158M | 183279次下载 | 免费
- 8proe5.0野火版下载(中文版免费下载)
- 未知 | 138040次下载 | 免费
评论
查看更多