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

DIY 视觉暂留 (POV) 球体:Arduino Mega 驱动的 LED 光绘艺术

组件与材料

组件数量
Arduino Mega 25601
Adafruit NeoPixel 环形模块 (WS2812 5050 RGB LED)1
330Ω 电阻1
接近传感器 (霍尔/光电)1
直流减速电机1
开放式滚珠轴承 625 2RS (5×16×5mm)1
3D 打印结构件1 套

所需工具

项目简介

大家好,今天分享一个视觉暂留 (POV) 球体项目。

POV 原理:交流电灯以 50/60Hz 频率闪烁,人眼视觉暂留效应使其看似持续发光。利用这一原理,单排高速旋转的 LED 可在空间中“绘制”出球面图像。本项目每半圈 58 颗 LED,共 116 颗,配合 3D 打印圆环与电机旋转,形成球形显示面。详细制作过程见视频。

代码

使用 FastLED 库驱动 WS2812B,通过中断检测霍尔传感器同步每转位置,按预存图案数组 kalp[40][75] 逐列点亮 LED,形成心形等图案。

#include "FastLED.h"
#define NUM_LEDS 58
#define DATA_PIN 6
unsigned char i, m;
unsigned int wait = 1;
unsigned int wait2 = 10;
byte hall = 0;
CRGB leds[NUM_LEDS];

// 40行 x 75列 图案数组 (1=亮, 0=灭)
bool kalp[40][75] = {
  {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,0,1,1,0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
  {0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,0,0,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,1,1,1,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0},
  // ... 此处省略中间 36 行,完整数组请见源码 ...
  {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
};

void setup() {
  FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);
  attachInterrupt(1, LEDiyak, RISING); // 数字引脚 3 (中断 1) 接霍尔传感器
  for (int i = 0; i < 58; i++) leds[i] = CRGB::Black;
  FastLED.show();
}

void LEDiyak() {
  hall++;
  if (hall > 2) hall = 0;
}

void loop() {
  if (hall > 0) {
    for (m = 0; m < 75; m++) {
      for (i = 0; i < 40; i++) {
        if (kalp[i][m] == 1) leds[i + 7] = CRGB::Green;
        else leds[i + 7] = CRGB::Blue;
      }
      FastLED.show();
      delayMicroseconds(wait);
    }
    for (int i = 0; i < 58; i++) leds[i] = CRGB::Blue;
    FastLED.show();
    delayMicroseconds(wait2);
    for (int i = 0; i < 58; i++) leds[i] = CRGB::White;
    FastLED.show();
    delayMicroseconds(wait2);
  }
}

原理图

DIY 视觉暂留 (POV) 球体:Arduino Mega 驱动的 LED 光绘艺术

制造工艺

  1. Arduino POV 时钟:自制视觉暂留 LED 显示器
  2. 定制 4×4 井字棋名片 PCB – 设计、制作与代码指南
  3. 多位置温度传感器系统,助力智能家居集成
  4. 862D+ 电烙铁 DIY 智能温控器:精准可靠,低成本替代方案
  5. MotionSense:基于 Arduino 与 ESP8266 的智能入侵检测系统
  6. 3D 打印机防火卫士:智能传感器安全系统
  7. 自制便携式视觉暂留显示器:Arduino UNO 与 ATtiny85
  8. 基于 Arduino、Yaler 与 IFTTT 构建 Web 化 IoT 仪表盘
  9. Arduino 简易排斥式磁悬浮:电路与 DIY 指南
  10. 进阶遥控夹爪机器人:精密抓取 DIY 指南
  11. 高性能 Arduino 气象气球数据记录器
  12. CoroFence 热成像检测器:Panasonic GridEye + PIR + IoT 集成