2024-10-16 15:58:57 [显示全部楼层]
50浏览
查看: 50|回复: 1

[项目] 基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测

[复制链接]
本帖最后由 RRoy 于 2024-10-16 16:01 编辑

这是一个结合了3D打印、舵机、PIR传感器和DFPlayer MP3模块的DIY项目,旨在制作一个带有动画眼睛的"鱿鱼游戏"老板面具。当检测到动作时,面具的眼睛会移动并播放声音,非常适合万圣节使用。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图1

这个项目是一个很好的起点,特别适合那些想控制眼球运动和播放特定音频文件的小伙伴们。通过协调PIR传感器检测到的运动、舵机的移动和DFPlayer的音频播放,你可以实现一个非常优秀的动画效果。



步骤1:3D打印部件
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图2

眼睛及面具本身都是使用标准3D打印机和PLA打印出来的。打印质量为中等,如果你想要更好的外观,可以打磨然后平滑地涂上颜料。

3D打印组件包括:

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图3

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图4
  • 面具(面部)
  • 两个眼球
  • 两个眼睑
  • 舵机支架(用于固定所有5个舵机)
  • 万向节(用于实现眼睛的平滑运动)
  • 支撑面具内部的两根杆
  • 用于盖住电子元件和便于安装在墙壁上的背板

你可以选择使用不同颜色的眼球,甚至在打印后手绘。万向节对眼睛的平滑运动至关重要,使其能够模拟真实的动作。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图5

3D打印文件可以文末下载。

步骤2:组装眼睛
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图6

现在我们有了3D打印的部件,是时候开始组装眼睛了。我们将使用五个MG90S舵机来控制眼睑和眼球的运动。以下是需要的材料:


组件:
  • 5个MG90S舵机

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图7
  • 铁丝(我们使用几个回形针来连接杆)

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图8
  • 钳子和剪线钳

组装过程:

校准舵机:确保所有舵机初始位置为90度。这对于确保动作的正确校准非常关键。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图9

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图10

安装舵机:将每个舵机放入3D打印的舵机支架中。两个舵机控制眼睛的左右运动,两个控制上下运动,一个用于眼睑。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图11

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图12

连接眼球:使用回形针线将舵机与眼球连接,形成连杆结构。这会将舵机的旋转传递给眼球运动。添加万向节确保眼球运动平滑。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图13

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图14

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图15

连接眼睑:最后一个舵机将控制眼睑,使你的面具能够眨眼或闭眼。使用相同的方法将眼睑连接到舵机上。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图16

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图17

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图18

眼睛的运动依靠伺服电机在两个轴上(上下和左右)进行操控。每只眼睛的运动由两个伺服电机控制,而眼睑的开合则由一个伺服电机控制。

步骤3:测试眼睛
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图19

在我们继续项目的其他部分之前,先来测试一下眼睛确保一切正常。

以下是测试的简单电路设置:

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图20

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图21
  • 将舵机连接到面包板。
  • 上传一个简单的舵机控制代码,使眼球向各个方向移动,并眨眼。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图22

使用Arduino IDE上传代码,并观察运动。可以根据需要调整角度和延迟时间。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图23
舵机连接
我们的设置第一部分涉及将五个舵机连接到Arduino Nano。这些舵机将控制以下运动:
  • 舵机1:左眼的水平运动
  • 舵机2:左眼的垂直运动
  • 舵机3:控制眼睑
  • 舵机4:右眼的垂直运动
  • 舵机5:右眼的水平运动

以下是IO引脚分配:
  • 舵机1:数字2
  • 舵机2:数字3
  • 舵机3:数字5
  • 舵机4:数字6
  • 舵机5:数字9

确保你的舵机有合适的外部电源供电,因为Arduino板载的5V供电不足以为多个舵机供电。
代码说明
舵机控制代码使用Servo库来管理每个舵机的运动。它定义了左右移动以及眼睑上下移动的具体角度。设置部分初始化了每个舵机,设定初始位置,并包含一个循环,以便在定义的角度之间平滑过渡。眼球的运动是根据代码中设定的条件触发,确保眼睛按照预期动作。

代码可以在文末下载。
步骤4:设计PCB
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图24

设计一块PCB来整合所有组件,包括DFPlayer、PIR传感器、舵机、扬声器和Arduino Nano。目的是创建一个更稳定的电路和原型。



组件包括:
  • Arduino Nano(主控制器)
  • DFPlayer MP3模块(用于声音)
  • PIR传感器(运动检测)
  • 5个舵机输入
  • 扬声器用于音频输出

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图25

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图26

作者选择了PCBWay进行电路板制作。Gerber文件和电路原理图可以在这一链接中找到:[PCBWay项目链接](https://www.pcbway.com/project/s ... er101_c4124445.html)。如果你没有焊接经验,也可以使用PCBWay的组装PCB服务。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图27

组件清单包括用于电源需求的电容、用于电机数字输入的电阻、用于传感器和扬声器的接线端,以及DFPlayer和Arduino Nano用的公母针座。
  • 电阻和电容(用于功率调节)
  • 接线端(用于传感器和扬声器连接)
  • 公/母针座(用于DFPlayer、Nano和电机)

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图28

之后把所有的组件焊接到位。
步骤5:”面具“的主代码
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图29

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图30

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图31

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图32
集成PIR传感器和DFPlayer
一切都安装好,接下来需要将主代码上传到Arduino Nano中。这段代码整合了PIR传感器、舵机和DFPlayer MP3模块。原理很简单:当PIR传感器检测到运动时,舵机会移动以打开眼睑并移动眼球,同时DFPlayer播放声音。

代码的关键组成部分包括:
  • PIR传感器检测到运动时触发。
  • DFPlayer播放存储在SD卡上的声音文件。
  • 舵机控制眼球和眼睑的运动。
DFPlayer Mini和扬声器设置
DFPlayer Mini是一款简单、低成本的MP3播放器,可以播放存储在microSD卡上的音频文件。在这个项目中,它将在PIR传感器检测到运动时播放声音文件。
  • 将DFPlayer的RX引脚连接到Arduino Nano的数字11,将TX引脚连接到数字10。
  • 将扬声器连接到DFPlayer的SPK+和SPK-引脚用于声音输出。
PIR运动传感器连接
  • PIR传感器将检测运动并触发舵机运动和音频播放。
  • 将PIR传感器的输出引脚连接到Arduino Nano的数字7。

使用9V外部电源为电路供电,确保稳定性能。布线和编码完成后,就可以测试你的项目了。
  • 将代码上传到Arduino Nano。
  • 确保PIR传感器放置在易于检测运动的地方。
  • 当PIR传感器检测到运动时,控制眼睑的舵机应打开,DFPlayer应播放预加载的声音文件。
  • 然后,舵机将以协调的顺序移动眼球。
代码解释
主代码使用DFPlayer库来控制音频播放,同时与PIR传感器的输出进行协调。当检测到运动时,代码触发舵机移动眼睛并同时开始音频文件播放。这种同步增强了效果,使眼睛显得更加逼真。代码有效处理各种情况,确保眼球运动和声音播放之间的无缝过渡。

注意:附带文件“1.mp3”包含了项目中使用的声音“I see you(我看见你了)”。只需将音频文件上传到SD卡(SD卡格式必须为FAT32)。

文件和代码文末下载。
步骤6:最终组装
基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图33

现在我们可以把所有组件组合到面具中了。

请按以下步骤操作:
  • 插入支撑杆:将两个支撑杆连接到面具背面。
  • 安装舵机支架:使用热熔胶固定舵机支架(附有舵机和眼球)到杆上。
  • 安装PIR传感器:在面具的正面钻一个6mm的小孔,来放置PIR传感器。它是一个迷你PIR传感器,所以可以完美地适配孔位。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图34

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图35

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图36
  • 放置扬声器:将扬声器放置在面具内,确保其不露于视线。
  • 连接PCB:固定PCB在面具内部,并完成所有必要的连接。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图37

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图38
  • 封闭面具:一旦所有连接完毕并到位,使用背板将电子设备封闭起来。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图39

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图40

最后,使用双面胶或其他方法将面具安装在墙上。使用9V电源为面具供电,一切便准备就绪。

基于Arduino做的“鱿鱼游戏”BOSS面具,支持动作检测图41

你可以根据个人喜好自定义此面具,比如添加不同的声音或更复杂的眼球动作。

如果你想让你的面具更加吸引人,还可以添加LED灯,在检测到运动时亮起来,增强视觉效果。

原文地址:https://www.instructables.com/Fa ... n-Detection-and-Vo/

项目作者:MertArduino

译文首发于:DF创客社区

转载请注明来源信息

The Face.zip

467.33 KB, 下载次数: 6

hnyzcj  版主

发表于 1 小时前

赞一个
回复

使用道具 举报

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

本版积分规则

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

硬件清单

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

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

mail