fibx 发表于 2023-10-20 09:07:59

万圣节的电子动画头骨

本帖最后由 fibx 于 2023-10-20 09:07 编辑

# 万圣节的电子动画头骨

https://www.bilibili.com/video/BV1nj411v7y1/

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211707vmww2ip8x11xuxmp.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211650ckk4kwgdg6q6rmqm.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211638fmpnnxux82qzqul2.jpg)

大家好!我叫帕特里夏(Patrícia),住在巴西,很高兴与大家分享我的第一个项目。我的英语可能不太流利,但我会在谷歌翻译的帮助下尽力而为。如果你有任何问题,请毫不犹豫地在评论区用任何语言提出问题,我会尽力回答!在这篇文章中,我想向您介绍一个有趣的互动项目,一个由 Arduino 驱动的电子动画头骨。这个头骨可以进行眼睛和下巴的运动,使其成为一件令人着迷且身临其境的电子艺术作品。

## **项目概况:**

这款电子动画头骨由两个作为眼睛的 5 毫米红色 LED 和三个作为控制眼睛和下巴运动的微型伺服电机组成,能创造出逼真的表情。但这个头骨真正的特别之处在于它具有对周围环境做出反应的能力。它配备了超声波传感器(HC-SR04),可以检测物体的接近程度,当有人接近或离开时,头骨可以做出不同的反应。眼睛和嘴巴动画的速度和强度变化多端,为附近的任何人提供互动和身临其境的体验。

## **如何计算所需电流:**

- LED:LED 的总电流为 0.04A (40mA)。
LED电流=2*(0.02A)= 0.04A(或40mA)

- 伺服系统:伺服系统的总电流为 1.65A (1650mA)。
伺服电流=3*(0.22A)*2.5=1.65A(或1650mA)

- 超声波传感器:传感器消耗约15mA。
传感器电流=0.015A(或15mA)

- Arduino Uno:Arduino 消耗约 50mA 电流。

**现在将所有电流相加:**

所需总电流 = 0.04A (LED) + 1.65A (伺服) + 0.015A (传感器) + 0.05A (Arduino) = 1.755A (或 1755mA)

在极端情况下,所需的总电流为 1.755A (1755mA),但大多数情况下 1A 就足够了。

## **重要说明:**

**关于控制:**

控制伺服电机时,最好使用 PWM(脉冲宽度调制)引脚,因为它可以实现更平滑、更精确的运动。尽管可以使用非 PWM 数字引脚控制伺服电机,但这可能需要更多工作和编程技能。因此,只要有可能,请选择 PWM 引脚进行伺服电机控制。

**关于传感器:**

HC-SR04超声波距离传感器不应连接到 Arduino PWM 引脚,因为它依赖于简单的脉冲协议来测量距离,而PWM引脚会生成具有可变脉冲宽度的脉冲信号。这种不兼容性可能会导致测量受干扰和不准确。为了实现可靠、准确的通信,请将传感器连接到 Arduino 的非 PWM 数字引脚。

**结论:**

制作电子动画头骨是一个独特且令人兴奋的项目,它融合了电子和艺术。Arduino 驱动的头骨能够对周围环境做出反应,增添了更多的互动性。如果您是 DIY 电子产品的粉丝,并且想要尝试一些创意,我希望这个项目能够激发您的灵感。请记住,无论您偏爱哪种语言,我都会帮助解决任何问题或进行解释。祝万圣节玩得开心,打造你的电子动画头骨!

# 材料

## **所需材料:**

- 国家地理“人体”收藏中的人类躯体
- Arduino Uno 或类似品(我使用 Uno,然后将芯片放入 Standalone/Zatino中)
- 电解电容 1000uF 16V
- 2x 5mm 红色 LED
- 2x 330 欧姆电阻
- 3x SG90 9g 微型伺服电机
- 超声波传感器 HC-SR04
- 柔性电线/跳线
- 薄热缩管
- 快干胶
- 热熔胶
- 密封件(“婆婆的舌头”)
- 黑色双面毛毯
- 硬线
- 万能电路板 (PCB),用于组装头骨内部电路
- 钳子、剪刀、微型研磨机(理想)
- 电源 5V 和至少 1A。

# 第 1 步:眼睛

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211621go49eypsppjitpus.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211605yiid551bccs0jrb1.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211550z66z9drgv46sgd6s.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211538lxlry7dpt3pwz7pl.png)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211516nt2ehzp1z1needew.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211502hzlt44et9lt9k9z9.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211444tz3f663bol2voelf.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211426fjlmkvbrvdj87j83.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211405msocgh39b3gmi1bs.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211348qr9axgrx29kddclp.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211331mo99qb20u1yu18u2.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211315tsu24siexpsls4ig.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211301brl6q6qwklzf9ll9.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211243lj664wlxx3u3nauu.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211225qsi6rd030qtjrr08.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211206hn0ynr4nf4333l99.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211150snfvqvjsjwolsw11.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211134fxhqiwt5tp35xzk0.jpg)

1. 使用微型研磨机为眼睛打孔。
   **注意:**孔的尺寸必须足以放置伺服电机的传动轴,使其不会卡在孔中,防止电机烧毁;
2. 切割伺服电机的“襟翼”以匹配头骨(见图);
3. 用热熔胶粘合伺服电机;
4. 切掉眼窝并丢弃;
5. 切掉伺服电机的塑料“臂”,将带有速干胶水的圆形部分放在眼睛的顶部;
6. 将眼睛安装到伺服电机上。

# 第 2 步:测试眼睛的角度

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211119jiw54glv35z6usli.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211101enlln64nq1njc55q.jpg)

将眼睛放在正确的位置,以“直视前方90°”为中心轴;

向里和向外看:50° 或 130°

# 第 3 步:过线孔

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211040t29555ysguqbshc0.jpg)

在头骨上钻一个孔,让刚性下颌线穿过。

# 第 4 步:下巴

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211020mzl88i8khrehaial.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/211001fqe8g6g62kaw1s19.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210940f7gvyagunpuayivv.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210919q8xwnnntnnopwvtc.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210859i22lrl1120dlg2ce.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210842ktkvtt966teev1tt.jpg)

1. 剪断下巴上的 2 个锁扣;
2. 在下巴侧面打一个孔以安装刚性线;
3. 将下巴伺服电机粘到头骨上(参看图片);
4. 取一根硬线,弯曲一端的一小段,使其呈 L 形,以装入下巴上的孔中,并将线的另一端穿过步骤 2 中打的孔。
5. 下巴伺服电机还包含一根尖端弯曲的电线,以适应来自钳口的电线。

OBS:下巴伺服电机的角度,按如下参数调整:

嘴巴闭合:140°

半开嘴:110°和90°

张嘴:70°

# 第 5 步:连接

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210823gj3glqg2jxgyccc5.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210807ikbkgm0ypc5ibmcb.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210747q6h6k0wldkt6jnyj.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210729kpdjwfoh2mecjy6c.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210713yf5t3wxftkfbt6sx.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210653enkn0cvscow44lo8.jpg)

1. 如图所示进行连接;
2. 在头骨底部再打一个孔,将伺服电机信号线(橙色线)以及万能电路板上的火线和零线穿过。

OBS:使用 Arduino Uno 或您选择的其他一种。

# 第 6 步:超声波传感器 HC-SR04 和最终组装


![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210637m50tm4acmduthkmi.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210614fbzhbyo69wyyrnzr.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210558eosgoopsspwsvcss.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210540u9azq1bse12ru14e.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210523btltfdk43k4p1nlr.jpg)

![](https://imagemc.dfrobot.com.cn/data/attachment/album/202310/19/210505dyckfxccu4puy4ni.jpg)

1. 将超声波传感器放在头骨前面,尽可能靠近眼睛,模拟头骨在眼睛前面时会看起来是斗鸡眼;

2. 制作一个木制支撑物或其他任何东西来支撑头骨,发挥你的创造力。

3. 用毯子或另一块深色布覆盖整个电子部件以隐藏电子部件(传感器除外)。

# 第7步:程序代码

```c++
// 嘴巴:
int fechada = 140;
const int abertura1 = 110;
const int abertura2 = 90;
const int abertura3 = 70; // 伺服的最大启动

// 眼睛:
const int olhoEsquerdoFora = 50;
const int olhoEsquerdoDentro = 130;
int olhoEsquerdoFrente = 90;

const int olhoDireitoFora = 130;
const int olhoDireitoDentro = 50;
int olhoDireitoFrente = 90;

// 传感器引脚:
const int trigPin = 8; // 超声波传感器输出引脚(触发)
const int echoPin = 7; // 超声波传感器输入引脚(回声)

// 伺服电机引脚:
const int olhoEsquerdoPin = 3; // 用于左眼伺服的带 PWM 的数字引脚
const int olhoDireitoPin = 5; // 用于右眼伺服带 PWM 的数字引脚
const int mandibulaPin = 11; // 用于卡爪伺服的带 PWM 的数字引脚
const int enderecoOlhos = 0; // EEPROM 中用于存储眼睛位置的地址
const int enderecoMandibula = 2; // EEPROM 中用于存储钳口位置的地址

// 定义控制动画的距离。
const int distanciaLonge = 50; // 50厘米以上
const int distanciaMedia = 30; // 30 至 50 厘米之间
const int distanciaPerto = 15; // 小于或等于15厘米
```



附件:












>英文链接:(https://www.instructables.com/Animatronic-Skull-With-Arduino/)
>英文作者:(https://www.instructables.com/member/patymaker/)
>中文翻译:(https://mc.dfrobot.com.cn/home.php?mod=space&uid=835443&do=profile)

![](https://mc.dfrobot.com.cn/forum.php?mod=attachment&aid=MTA5MTU1fDIyNTRkNWM4fDE2OTcxMjA4MzJ8ODM1NDQzfDMwNjM5Nw%3D%3D&noupdate=yes)




昊盟 发表于 2023-10-27 08:06:27

好复杂的创意
页: [1]
查看完整版本: 万圣节的电子动画头骨