情人节智能向日葵:Arduino 光敏追踪仿生花
项目灵感
情人节将至,办公室窗台上一株塑料向日葵虽丑却激发灵感:何不做一株会随光线转动的仿生向日葵?经多次 3D 打印迭代,最终呈现这款「阳光情人节向日葵」。
电子部分
采用 circuito.io 一键生成原理图、接线表与框架代码:
- 打开 预配置链接(含 Pro Mini、光敏电阻、金属齿轮舵机)
- 按需调整(如换电池供电、换主控板)
- 点击 Generate 获取分步接线指南、BOM 表、示例代码
- 下载代码,解压,用 Arduino IDE 打开上传
- 将下方核心逻辑代码替换进
firmware标签页,保留顶部引脚定义与库引用
核心逻辑代码
/* 核心循环:读取光敏值 → 映射为舵机角度 → 驱动舵机转动 */
void setup() {
Serial.begin(9600); Serial.println("start");
servo.attach(SERVO_PIN_SIG);
servo.write(servoRestPosition);
}
void loop() {
// 读取 1000 次取平均,抑制噪声
ldrSample = ldr.readAverage(1000);
Serial.print(ldrSample); Serial.print('\t');
// 将光照范围 200-900 映射为舵机 10°-95°
servoRestPosition = map(ldrSample, 200, 900, 10, 95);
servoRestPosition = constrain(servoRestPosition, 10, 95);
Serial.println(servoRestPosition);
servo.write(servoRestPosition);
delay(20000); // 20 秒采样一次,省电
}
3D 打印与组装
所有 STL 文件见 GitHub 或项目附件:
- 1 × 底座
- 1 × 连杆
- 1 × 连接件
- 1 × 萼片
- 6 × 花瓣
- 10 × 草叶(需用柔性耗材,如 Filaflex)
组装要点
- 花瓣、连杆、萼片用细钢丝穿接(模型预留小孔)
- 舵机用 2 颗螺丝固定底座侧面,输出轴用钉子连接萼片
- 光敏电阻嵌入底座舵机座下方专用孔
材料清单
| 元件 | 型号/规格 | 数量 |
|---|---|---|
| 主控板 | SparkFun Arduino Pro Mini 5V/16MHz | 1 |
| 光敏电阻 | Mini Photocell | 1 |
| 舵机 | 金属齿轮标准舵机 (MG996R 等) | 1 |
| 3D 打印耗材 | PLA (花瓣/底座) + TPU/Filaflex (草叶) | 若干 |
| 其他 | 细钢丝、钉子、M2 螺丝、热熔胶 | 适量 |
工具需求
- 3D 打印机(打印柔性草叶需直驱挤出机)
- 烙铁、焊锡
- Arduino IDE / circuito.io
祝你拥有一个阳光满溢的情人节!
制造工艺
- 葵花籽:美味营养零食的古老根源
- Arduino 强化学习避障小车:Q-Learning 让机器人自主学会“右转”
- 互动陀螺仪 LED 显示:NeoPixel Ring + Arduino Pro Mini
- DIY Arduino USB 游戏手柄 — 自制高性能游戏手柄
- DIY 云朵发光服装 — LED 灯带 + Arduino Nano + SparkFun 元件
- 工业级循线搬运机器人 — 物料自动化传输方案
- Pixie:基于 Arduino Pro Mini 的 NeoPixel 智能腕表 - 极简 DIY LED 时钟
- 智能 Arduino 水杯:实时监测饮水量与智能提醒
- DIY 节日影子剧场:Arduino 与可寻址 LED 灯条打造光影秀
- Arduino 向日葵:制作电子向日葵追踪阳光
- 便携式远程监控摄像头机器人系统
- 智能手语手套:柔性传感器 + 加速度计 + 蓝牙将手势转文字/语音