Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

DIY Arduino «Снежинка»: 30-LED декоративный дисплей на Arduino Nano

Компоненты и расходные материалы

Компонент Количество
Arduino Nano R3 1
SMD-светодиоды (0603/0805) 30
Латунная проволока 0.8 мм (каркас + проводка) ~2 м
Резисторы 220 Ом (SMD 0805/1206) 17
Картон + двусторонний скотч (для жёга SMD) 1

Инструменты

О проекте

Декоративная «снежинка» из 30 светодиодов, сгруппированных в 17 независимых каналов, управляемых Arduino Nano. Каждая группа может ШИМ-димироваться для плавных анимаций. Каркас и проводка — латунная проволока (freeform soldering), что делает устройство эстетичным и без печатной платы.

Конструкция

  1. Выбор шаблона: кристалл снежинки, напечатанный под размер Arduino Nano (шестиугольник в центре).
  2. Каркас/земля: согнут шестиугольник из одного куска проволоки, припаял 6 лучей — общая шина катодов.
  3. Монтаж SMD LED: использовал приспособление из картона и скотча для удержания светодиодов при пайке к лучам. Аноды направлены к центру.
  4. Разводка анодов: Arduino Nano размещён под центральным шестиугольником. 3 слоя латунной проволоки соединяют пины Nano с анодами через резисторы 220Ω. Требует терпения — избегать замыканий, делать аккуратно.
  5. Группировка пинов: Nano имеет 18 выходов (A6/A7 — только вход). 1 пин — тач-сенсор. Осталось 17 пинов для 17 групп LED:
    • 6 «листьев» (концы лучей) — по 1 пину каждый
    • 6 «ветвей» (пары по 2 LED) — на 6 PWM-пинов
    • 5 «ядра» (пары по 2 LED) + 1 группа из 4 LED — на оставшихся пинах
  6. Ток на пин ~8 мА (220Ω), суммарно ~240 мА — чуть выше безопасного для ATmega328P (200 мА), но работает.

Ёмкостной тач-сенсор

Дополнительная латунная стержень — тач-сенсор (библиотека ADCTouchSensor от Paul Stoffregen). Позволяет переключать анимации касанием, включать/выключать, «искры» при прикосновении.

Важное замечание

Проверяйте все диоды перед пайкой! После монтажа заменить почти невозможно (обратная полярность или брак).

Программирование и анимации

Изначально планировалось димировать только PWM-пины, но библиотека SoftPWM позволяет программный ШИМ на любых пинах — открывает неограниченные возможности анимаций.

Исходный код (snowflake.ino)

#include "SoftPWM.h"
#include <ADCTouchSensor.h>

byte edgeLedPins[]   = {13, A4, A5, 2, 8, 12};   // 6 "листьев"
byte middleLedPins[] = {10, 6, 3, 5, 9, 11};     // 6 "ветвей" (PWM)
byte innerLedPins[]  = {A2, A3, A1, 4, 7, A1};   // 5 пар + 1 общий (A1 дважды)

ADCTouchSensor touchSensor = ADCTouchSensor(A0, 1);

void setup() {
  Serial.begin(115200);
  SoftPWMBegin();
}

byte animation = 0;
long touchAt = 0;

void loop() {
  switch (animation) {
    case 0: _fill(100); break;
    case 1: shinyAnimation(); break;
    case 2: circleAnimation(); break;
    case 3: loopAnimation(); break;
    case 4: fireworkAnimation(); fireworkAnimation(); fireworkAnimation(); fireworkAnimation(); fireworkAnimation(); fireworkAnimation(); animation++; break;
    case 5: smileAnimation(); break;
    default: animation = 0; break;
  }

  int touchValue = touchSensor.read();
  if (touchAt + 2000 < millis() && touchValue > 1000) {
    touchAt = millis();
    animation++;
    _fill(0);
  }
}

// Анимации: firework, smile, circle, wave, loop, slowOn, shiny, fading
// Все используют SoftPWMSet(pin, value) для плавности.
// Вспомогательные функции: _fill(), _prevIndex(), _nextIndex() для кольцевых буферов.

Полный код с всеми анимациями прилагается к проекте.

Схемы

Производственный процесс

  1. Как дюбельные шплинты (dowel pins) обеспечивают точность проектов: применение в мебели, полках и станках
  2. Материалы для шплинтов: дерево, металл и пластик — подробный разбор
  3. 5 ключевых факторов выбора правильных шплинтов (Dowel Pins)
  4. Валёк для теста: от этрусских истоков к современному мастерству
  5. Эволюция и мастерство современных кеглей для боулинга
  6. От древних фибул к современному производству: история булавки-английки
  7. TinyML: инженеры объединяются для стандартизации AI в ультра-низкопотребляющих системах
  8. Сборка кабеля развязки I/O и адаптера для макетной платы Raspberry Pi — пошаговое руководство
  9. Динамическое LED-художество в форме треугольника: сборка RGB-дисплея на 45 светодиодов с Arduino UNO
  10. Матрица шаровых контактов (BGA): что это и почему это важно