亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

DIY 钢铁侠人偶:Arduino 控制超声波触发音效与灯光

所需元件

功能描述

人偶内部集成超声波传感器,当检测到人靠近(≤ 1.5 m)时,随机播放钢铁侠语音(SD 卡存 001~018.mp3),同时继电器控制头部、胸部、双臂 LED 亮起,营造“苏醒”效果。

接线概要

模块引脚Arduino
HC-SR04VCC/Trig/Echo/GND5V / D3 / D4 / GND
DFPlayerRX/TX/VCC/GNDD6 / D7 / 3.3V / GND
4 路继电器IN1~IN4D10~D13

核心代码逻辑

#include <Ultrasonic.h> #include <DFRobotDFPlayerMini.h>
Ultrasonic ultra(3,4); // Trig, Echo
SoftwareSerial mp3Serial(6,7); // RX, TX
DFRobotDFPlayerMini mp3;

#define HEAD 13
#define CHEST 12
#define LEFT_ARM 11
#define RIGHT_ARM 10

int x = 3; // 状态机变量

void setup() {
  mp3Serial.begin(9600);
  Serial.begin(115200);
  mp3.begin(mp3Serial);
  mp3.volume(30);
  pinMode(HEAD, OUTPUT); pinMode(CHEST, OUTPUT);
  pinMode(LEFT_ARM, OUTPUT); pinMode(RIGHT_ARM, OUTPUT);
  digitalWrite(HEAD, HIGH); digitalWrite(CHEST, HIGH);
  digitalWrite(LEFT_ARM, HIGH); digitalWrite(RIGHT_ARM, LOW);
}

void loop() {
  int dist = ultra.Ranging(CM);
  Serial.println(String(dist) + " cm");

  if (dist <= 150 && x == 3) {
    int r = random(1, 19);
    mp3.play(r);
    delay(3000);
    // 触发继电器闪烁右臂灯
    digitalWrite(RIGHT_ARM, HIGH); delay(300);
    digitalWrite(RIGHT_ARM, LOW);  delay(300);
    digitalWrite(RIGHT_ARM, HIGH); delay(300);
    digitalWrite(RIGHT_ARM, LOW);
    x = 2;
    while (ultra.Ranging(CM) <= 150) {
      digitalWrite(LEFT_ARM, HIGH);
      delay(1200);
    }
  } else {
    digitalWrite(RIGHT_ARM, LOW);
    x = 3;
  }
}

音频素材

从电影提取台词,重命名为 001.mp3~018.mp3 存入 SD 卡根目录。
示例下载:GitHub

改进建议

制造工艺

  1. Arduino 数字骰子:LCD 显示随机点数的电子骰子
  2. Find Me:基于 Arduino 与蓝牙的智能寻物器制作指南
  3. 打造功能完整的 Arduino 驱动 3D 打印机械臂:分步指南
  4. DIY Arduino 加湿器控制器:继电器安全控制高压电路
  5. 非接触体温筛查闸机:Arduino MKR1000 + 红外测温 + 舵机控制
  6. PiBot:Arduino驱动的88键钢琴机器人,精准演奏MIDI乐曲
  7. Arduino Nano 驱动 NeoPixel 矩阵:自制霓虹乒乓游戏
  8. Arduino + ThingSpeak 实时气象监测站
  9. DIY Arduino 手柄方向盘 - 游戏竞速模拟器自制指南
  10. Arduino + TEA5767 打造 FM 收音机:Nokia 5110 显频谱/信号强度/立体声
  11. Arduino 101 计步器:集成 DHT11 温湿度 + LCD 显示步数/距离/卡路里
  12. Arduino RGB 颜色混合器 – 分步制作教程