2023-12-20 11:47:04 [显示全部楼层]
6082浏览
查看: 6082|回复: 5

可定制声音的数字自行车喇叭

[复制链接]

可定制声音的数字自行车喇叭




项目背景

首先让我讲一个令我萌发做这个项目的故事。当我还是个孩子的时候,我父亲从中东给我买了一个电子自行车铃铛。这是我们村子里第一次见到这种新奇的东西。它有四个按钮,每个按钮产生不同的声音,并伴有明亮的LED灯。安装在我的自行车上后的一整天,我的兄弟骑着自行车在村子里兜风,兴奋地按响喇叭。看着他那样真是有趣。但是这种愉悦感很短暂。就在那个晚上,当我们熟睡时,这个喇叭被小偷偷走了。当小偷拆下它时,他的手不小心按到了一个按钮,发出声音。等到我妈妈来查看时,小偷已经带着喇叭消失了。这一事件让我和我兄弟都感到很受伤。除了失去喇叭本身,我对它的内部工作方式充满了好奇。然而,在我满足好奇心之前,它就消失了。

最近我在 Instructables 网站上看到了一个名为 “Make Some Noise Contest” 的比赛。当我看到这个比赛时,我想起了这件往事。我认为可以制作一个类似的或甚至更好的喇叭。这就是我制作这个项目的原因。

因此,在这个项目中,我们将制作一个可定制声音的数字自行车喇叭,可以产生最多4种不同的声音,每个声音都以 .mp3/wav 格式保存在 micro-SD 卡上,有4个输入按钮用于播放声音,每个按钮都分配给 micro-SD 卡上不同的声音。此外,它还配备了可充电电池,可以使用 USB Type-C 为电池充电,在背面还加了一个电池充电指示灯,还有一个用于打开/关闭的小开关。它由预制组件以及完全可以3D打印的机身零件制成。

材料清单

元器件

工具

  • 焊接铁
  • 扳手套装
  • 鼻子钳
  • 胶枪
  • 切线器/剥线器
  • 热缩套管
  • 多用途计
  • 尼龙束带(黑色)
  • 3D打印机(3D打印服务)

步骤 1:在 Autodesk Fusion 360 中建模

使用 Fusion 360 规划和设计我的项目。主体设计为无需螺丝即可固定电池和电子器件 - 只需卡住即可。我使用了一些热熔胶确保安全牢固。按钮面板包括按钮帽也是3D打印的。我在网上找到了一些精确的模型。这使得设计过程更加简单,所有设计文件都在附件里面。


全部设计文件打包下载:
下载附件全部设计文件.rar

步骤 2:3D打印

我用 Numakers 出品的 PLA+ 材料 3D 打印了全部零件。我使用黑色和橙色的丝料,这是个很抢眼的配色组合。打印参数设为层高0.2毫米,填充率100%。如果没有3D打印机,可以找在线3D打印服务。

步骤 3:MT3608 上的电压设置

在组装之前,我们需要在MT3608上预设电压。如果您购买了新的模块,需要将电位器逆时针旋转大约20次或更多次,直到获得稳定的输出电压,然后就可以使用该模块。将电池连接到 VIN+ 和 VIN-,并将电压设置为 5 伏。用万用表在 OUT+ 和 OUT- 测量电压。之后拔掉电池输入。

步骤 4:拆除MP3-TF-16P 模块的引脚插针

MP3-TF-16P 模块带有预先焊接的引脚插针,我们需要将其拆除,如果没有正确工具,操作上会有点难度。我使用吸锡器和钳子一起来拆掉引脚插针。尽量不要损坏 PCB 上的相关元器件。这个教程对我帮助很大。

步骤 5:上传代码到 XIAO

我向来喜欢在装配之前将代码上传到微控制器。在本项目里,我们使用了 Seeed studio 出品的微型XIAO SAMD21 开发板,它带有强大的 ATSAMD21G18A-MU 低功耗微控制器。

可参考以下完整教程

在 IDE 里添加 XIAO 开发板后,我们需要安装 MP3-TF16P 库文件,可参考这个如何安装库文件的教程

这是我们项目的代码,请将其上传到 XIAO

#include "Arduino.h"
#include "SoftwareSerial.h"
#include "DFRobotDFPlayerMini.h"

#define RX D6 // DFPlayer Mini的RX引脚连接到数字引脚6
#define TX D7 // DFPlayer Mini的TX引脚连接到数字引脚7

#define BUTTON_1 D0 // 按钮1的数字引脚
#define BUTTON_2 D1 // 按钮2的数字引脚
#define BUTTON_3 D2 // 按钮3的数字引脚
#define BUTTON_4 D3 // 按钮4的数字引脚

SoftwareSerial mySoftwareSerial(RX, TX); // 创建一个SoftwareSerial对象
DFRobotDFPlayerMini myDFPlayer; // 创建一个DFPlayerMini对象

void setup() {
  mySoftwareSerial.begin(9600); // 开始软串口通信
  Serial.begin(9600); // 用于调试的开始串口监视器

  if (!myDFPlayer.begin(mySoftwareSerial)) { // 初始化DFPlayer Mini
    Serial.println("无法开始:");
    Serial.println("1.请重新检查连接!");
    Serial.println("2.请插入SD卡!");
    while(true);
  }

  // 设置音量(0到30)
  myDFPlayer.volume(30);

  pinMode(BUTTON_1, INPUT_PULLUP); // 将按钮引脚设置为带有内部上拉电阻的输入
  pinMode(BUTTON_2, INPUT_PULLUP);
  pinMode(BUTTON_3, INPUT_PULLUP);
  pinMode(BUTTON_4, INPUT_PULLUP);
}

void loop() {
  if (digitalRead(BUTTON_1) == LOW) {
    playSong(1); // 播放音轨1的函数
    delay(500); // 添加一个小延迟,以防止一次按下多次触发
  } else if (digitalRead(BUTTON_2) == LOW) {
    playSong(2); // 播放音轨2的函数
    delay(500);
  } else if (digitalRead(BUTTON_3) == LOW) {
    playSong(3); // 播放音轨3的函数
    delay(500);
  } else if (digitalRead(BUTTON_4) == LOW) {
    playSong(4); // 播放音轨4的函数
    delay(500);
  }
}

void playSong(uint8_t track) {
  myDFPlayer.play(track); // 播放指定的音轨号
  Serial.print("播放音轨 ");
  Serial.println(track);
}

步骤 6:接线图

现在我们可以开始组装了。所有组件都安装在侧壁上,以利用空间和便于布线。

让我们开始组装吧!

步骤 7:扬声器单元组装

第 1 小步

取下 2 个充电状态 LED

第 2 小步

给 2 个 LED 的正极连接电线,负极一个连接红色 LED,一个连接蓝色 LED。

第 3 小步

将 LED 电线连接到 BMS 上。

第 4 小步

用钳子把 BMS 和 LED 穿过 3D 打印件压下去。注意:不要损坏LED。

第 5 小步

我们需要将电池连接到 BMS,将电池的正极连接到 BMS 的 B+,负极连接到 B- ,将电池焊接在 3D 打印的槽上

第 6 小步

给电源开关焊接两根电线,将电源开关推入3D打印的槽中

第 7 小步

将 BMS OUT+ 连接到 MT3608 的 VIN+,VIN- 连接到电源开关的第二个端口,可以将 MT3608 插入3D 打印的槽中

第 8 小步

用适当长度的电线预先焊接在 XIAO 上。

第 9 小步

从5芯线缆中剥开 20mm 的电线

第 10 小步

通过主体的孔将电线引入

第 11 小步

将 5 芯线缆分别连接到 XIAO 的 GND,D0,D1,D2,D3 引脚

第 12 小步

将电线和 XIAO 推入 3D 打印的槽中,用热熔胶枪粘合 5 芯线缆和 XIAO

第 13 小步

将 XIAO 的 VUSB 和 GND 连接到 MT3068 的 +VOUT 和 -VOUT,然后可以连接 XIAO 和 MP3-TF-16P。 XIAO 的 D6 和 D7 分别连接到 MP3-TF-16P 的 RX 和 TX 引脚,XIAO 的 VUSB 和 GND 连接到MP3-TF-16P 的 VCC 和 GND。还要从 MP3-TF-16P 上焊接两根扬声器的电线。

第 14 小步

完成布线后,可以将 MP3-TF-16P 粘贴到 3D 打印的槽中。

第 15 小步

连接扬声器

第 16 小步

将扬声器放入主体内部并对准螺丝孔

第 17 小步

将扬声器网格插入前盖中

第 18 小步

用 M3 x 12mm 螺丝将前盖固定在主体上

第 19 小步

将一个M3螺母插入安装点的槽中

第 20 小步

将自行车支架放到喇叭主体上,并用 M3 x 20mm 螺丝拧紧

第 21 小步

将M3螺母插入支架中

这样,我们就完成了主扬声器单元的组装。

步骤 8:按钮面板组装

第 1 小步

将四个按钮插入 3D 打印的按钮支撑槽中

第 2 小步

将所有四个按钮盖按下

第 3 小步

按照这个接线图

连接所有按钮的地线

第 4 小步

将按钮组件按下到主体上,将电线穿过主体的孔,在距离主扬声器单元的距离为 25cm 的位置剪掉 5 芯电缆。将所有电线焊接到对应的按钮上

第 5 小步

将一个 M3 螺母插入按钮支架的孔中

第 6 小步

用两颗 M3 x 16mm 螺丝闭合按钮组件

步骤 9:如何编程声音

第 1 小步

用读卡器将SD卡连接到计算机,然后格式化 SD 卡

第 2 小步

您可以将任何 MP3 或 WAV 音频复制到 Micro SD卡(没有时长限制),我只复制了 4 个从互联网上下载的音频文件。

如果您需要搜索自己喜欢的新音乐,

  1. 只需在 YouTube 中搜索音效
  2. 复制视频 URL
  3. 找到 YouTube  转 MP3 的在线音频转换器
  4. 粘贴 URL
  5. 将其转换为 MP3 并下载
  6. 将下载的 MP3 文件复制到 Micro SD 卡上

第 3 小步

将微型 SD 卡插入 SD 卡槽,每个音轨将分配给 4 个按钮

步骤 10:如何将其安装到自行车上



观看我制作的视频。看起来很有画面感,对吧?,我使用了两颗 M3 x 20mm 螺丝

步骤 11:最终思考

嗯,我们成功了,看起来很酷,很独特,您可以将其用作鸣笛以外的更多用途,甚至还可以录制自己的声音播放。如果想要在自行车/汽车上卖冰淇淋或其他东西,您可以用它播放广告。有无限的可能性。

好吧,让我载着它骑行一圈,希望这次不会有人把它偷走

英文链接:Digital Bicycle Horn With Customizable Sound
英文作者:gokux
中文翻译:fibx



hnyzcj  版主

发表于 2023-12-20 21:40:47

漂亮
回复

使用道具 举报

aYYSW8AepLLd  高级技师

发表于 2023-12-21 17:46:34

厉害厉害
回复

使用道具 举报

JOVI  中级技师 来自手机

发表于 2023-12-24 04:29:44

学习学习
回复

使用道具 举报

许培享  中级技神

发表于 2023-12-26 22:51:29

学习学习
回复

使用道具 举报

Eric高伟胜  初级技匠

发表于 2024-1-7 08:58:49

致敬使用英文WIN系统的小编
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

为本项目制作心愿单
购买心愿单
心愿单 编辑
[[wsData.name]]

硬件清单

  • [[d.name]]
btnicon
我也要做!
点击进入购买页面
上海智位机器人股份有限公司 沪ICP备09038501号-4

© 2013-2024 Comsenz Inc. Powered by Discuz! X3.4 Licensed

mail