(098) 067-12-26 Киевстар (098) 067-12-26   Киевстар
(066) 142-24-48 Vodafone (066) 142-24-48   Vodafone
(098) 067-12-26 Lifecell (063) 642-36-59   Lifecell
 info@arduino.ua
График работы магазина:
Пн-Пт: 9.00 - 19.00
Сб: 10.00 - 19.00
Вс: выходной
г. Киев, ул. Васильковская, 30
ст.м. "Васильковская"
Каталог

Краткое руководство по конфигурационному файлу config.txt мини-компьютера Raspberry Pi. Часть - 1

В первой части цикла статей по настройке конфигурационного файла config.txt мини-компьютера Raspberry Pi, мы кратко опишем опции управления температурным контролем процессора (SoC), настройки его тактовых частот и напряжения питания.

Як приучити дитину спати без світла і не боятись темноти

Як приучити дитину спати без світла і не боятись темноти? Малі діти не можуть спати без світла, бо бояться темноти. Але ж спати в темноті ліпше, ніж при світлі. Мій проект - лампа на пульті дозволить рішити питання.

Микроконтроллеры семейства STM8

Компания STMicroelectronics выпускает 2 основные линейки микроконтроллеров (далее МК): 8ми разрядные STM8 и 32х разрядные STM32 (на ядре Cortex).МК семейства STM8 обладают меньшей производительностью чем STM32, но при этом обладают следующими

Лазерний гравер на базі кульмана

Іноді постає питання в гравіюванні великої площі. Для вирішення цієї задачі і було затіяно даний проект при відносно не великій його вартості. В інтернеті легко знайти багато готових проектів плотерів, лазерних граверів і навіть 3д принтерів на базі

Светодиодное освещение рабочего стола на Arduino

Хороший свет на рабочем месте всегда был одним из главных “пунктиков” для меня. Особенно когда сидишь ночью в темноте и пишешь курсач или кодишь в VS - из-за высокой контрастности, между светлым монитором и темным задним фоном, глаза сильно
Напиши партнеры https://hacklab.kiev.ua/!

Светодиодное освещение рабочего стола на Arduino

2020-09-03

Все статьи →

Хороший свет на рабочем месте всегда был одним из главных “пунктиков” для меня. Особенно когда сидишь ночью в темноте и пишешь курсач или кодишь в VS - из-за высокой контрастности, между светлым монитором и темным задним фоном, глаза сильно перенапрягаются и устают. Сначала рядом стояла лампа, но она занимала достаточно много места на столе, поэтому было решено сделать новую, более “миниатюрную”.

У китайцев заказал 5м светодиодной ленты (теплый белый цвет) и блок питания 12В 3А, в эпицентре – алюминиевый профиль для этой ленты с пластиковой линзой для рассеивания света.

Светодиодные ленты: https://arduino.ua/cat264-svetodiodnie-lenti

Все остальное нашел у себя в ящике, а именно:

Все паяется по схеме:

Для прошивки контроллера используем плату Arduino nano и код из папки примеров Arduino ISP, подробную инструкцию писал в статье про сборку портативного осциллографа: https://arduino.ua/art97-kak-sobrat-portativnii-oscillograf

Так же делюсь последней версией прошивки. Все функции и переменные описаны в виде комментариев в коде:

/*

 *  Прошивка для светодиодного светильника LEDlamp v.2.1
 *  Добавлено:
 *                       плавное включение/выключение
 *                       выключение после долгого нажатия на кнопку
 *                       включение заданной яркости за постоянное к-во миллисекунд
 */
 
#define BTN 2 // Пин для подключения кнопки
#define LED 3 // Пин для подключение мофсета
 
byte State = 0, flag = 0;
bool ButtonState = HIGH; // Изменить в зависимости от использованной в проекте кнопки
 
unsigned long previousMillis = 0; 
unsigned long interval = 2000;     // К-во миллиссекунд для включения заданной яркости
unsigned long currentMillis = 0;
 
void setup() {
 
  Serial.begin(9600);
 
  pinMode(LED, OUTPUT);
  pinMode(BTN, INPUT);
  pinMode(A0, INPUT);
 
}
 
void loop() {
 
  if ( digitalRead(BTN) == ButtonState ) {
 
    flag++;
    currentMillis = millis();
 
  }
 
  while ( digitalRead(BTN) == ButtonState ) {
 
    if ( millis() - currentMillis >= interval ) {
 
      flag = 0;
      analogWrite(LED, 0);
      break;
 
    }
  }
 
  while ( digitalRead(BTN) == ButtonState ) delay(1); // Задержка от ложный нажатий
 
  switch (flag) {
 
    case 0:
      analogWrite(LED, 0); // Вторым аргументом в функции устанавливается яркость ленты
      break;
 
    case 1:
      analogWrite(LED, 40);
      break;
 
    case 2:
      analogWrite(LED, 85);
      break;
 
    case 3:
      analogWrite(LED, 175);
      break;
 
    case 4:
      analogWrite(LED, 250);
      break;
 
    case 5:
      flag = 0;
      break;
 
  }
 
  delay(1);
 
}

 

Есть один нюанс: блок питания подбирается из расчета потребления тока лентой - обычно 1А/м + 1А в запас (по умолчанию большинство лент требует 12В напряжения)

Блоки питания: https://arduino.ua/cat27-bloki-pitaniya или https://arduino.ua/cat200-bloki-pitaniya-negermetichnie

P.S. Свой светильник я наклеил за монитор дабы он освещал задний фон. При максимальной яркости вполне удобно что-то записывать в сумерках, поздней ночью обычно ставлю рядом еще и лампу. Контроллер повесил слева в углу, кнопка светится постоянно (пока не нажата) – для этого на плате запаивается перемычка.

Ссылки:

Ваша оценка статьи:

Отлично
Хорошо
Удовлетворительно
Плохо
Очень плохо

Общая оценка:

Оценка "Светодиодное освещение рабочего стола на Arduino"
3 из 5
сделана на основе 3 оценок 3 клиентских отзывов.

Благодарим Вас за обращение! Ваш отзыв появится после модерации администратором.
Вадим
16.11.2020 00:04:09
вы серьезно? целая мега на такую мелочь? для такой задачи хватит 13той тиньки
Artem
02.11.2020 07:41:10
Може і гарно, але при такому освітлені це просто додаткове навантаження на зір
Олексій Савченко
04.10.2020 18:00:24
Досить гарно вийшло!
оплата картами Visa и MasterCard