» » » Простая динамическая подсветка для стола на Ардуино

Простая динамическая подсветка для стола на Ардуино


Думаю, есть люди которым несколько неудобно постоянно подходить к лампе и включать свет, отчего есть охота заставить всё лампу включаться самостоятельно. Да, есть "умные" розетки, которые управляются по Wi-Fi, есть более простые, на которых можно настроить время срабатывания, но, конечно же, можно всегда купить диммер и не особо не мучаться. Но это всё можно сделать своими руками (кроме Wi-Fi-розетки), хоть этот вариант для, например, светодиодных лент, так как при управлении переменкой будут некоторые ньюансы, в лице вышеупомянутого диммера. В нашем же случае яркость в зависимости от окружающего освещения будет плавно меняться.

Необходимые детали



1. Arduino, в данном случае – Nano, можно что-нибудь мельче, например Micro
2. Светочувствительный элемент, здесь - резистор (18 КОм) и фоторезистор (у меня стоит СФ-2 6А), соединённый последовательно. Всё это будет работать практически как подстроечный резистор.
3. MOSFET-транзистор IRF3205, лучше слабее, 55 ампер – это чересчур много (если потребляемый ток небольшой, то и особо мощный транзистор не требуется)
4. Само собой, провода. Тонкий провод нужен для отведения "датчика" ближе к окну, тот, что толще подключим к блоку питания лампы и к Ардуинке (да и сам модуль необязательно на толстый провод вешать, всё равно мало потребляет)



Сборка. Шаг 1



Работу этого своеобразного датчика освещённости надо по-хорошему проверить, ибо я пытался сделать всё максимально дешевле и проще, как у меня выходило.

Чтобы его сделать, нужен резистор и фоторезистор. Соединяем их последовательно, к началу и концу будут подсоединены выводы 5V и GND, центральный - к заданному аналоговому контакту в прошивке, его номер меняется.

Если есть сомнения, что такой датчик не очень-то и работает, можно его проверить, используя код ниже и монитор порта.

Код для проверки, если возникли сомнения:

#define potent_pin 0  // Контакт средней ноги, 0 меняется на любой другой аналоговый
int val;              

void setup() {
  Serial.begin(9600);  //Включаем вывод в порт на 9600 бод
  
}

void loop() {
  val = analogRead(potent_pin);     
  val = map(val, 0, 1023, 0, 100);   //100 можно заменить на любое значение до 1023 включительно
  val = constrain (val, 0, 100);     //100 меняем на значение, заданное выше, если было изменено
   Serial.println (val);             //вывод в монитор порта
  delay (30);                        //задержка

}





Если значения на выходе меняются, в зависимости от освещённости, значит всё нормально

Сборка. Шаг 2



Отлично, датчик работает. Теперь время создать код для генерации ШИМ-сигнала для управления полевиком.

ВНИМАНИЕ. ШИМ на контроллёрах ATmega168/ATmega328 генерируется только на 3, 5, 6, 9, 10 и 11 цифровых выводах.

Код 2:

int pwm;              

void setup() {
 
}

void loop() {
pwm = analogRead(0);
pwm = map(pwm, 1023, 0, 0, 255);
pwm = constrain(pwm, 0, 255);
analogWrite (3, pwm-255); //   ШИМ на третий цифровой                      

}


Число 255 можно менять в диапазоне от 0 до 1023 включительно, причём менять это значение можно прямо «на ходу». Как мне показала практика, максимальное 255 - оптимальный вариант, если меньше - днём горит слишком ярко, если больше - слабее горит тогда, когда надо.

Сборка. Финал



На вывод 5V и GND паяем крайние контакты нашего резистора, на А0 ставим средний. Затвор полевого транзистора припаиваем к D3, исток к минусу питания от Ардуино и блока питания, светодиоды - минусом к стоку и плюсом питания к плюсу источника. Схематически это выглядит примерно так:

Полевой транзистор на радиатор ставить не обязательно, если, конечно, используется мощный, но в особо мощном смысла нет. Длинный же провод нужен был для отведения датчика в то место, куда не попадает сторонний свет, например за цветок или на улицу через окно и т. п. На плюс питания и сток полевого транзистора желательно поставить конденсатор, ибо, например, моя лента стала работать не очень-то и правильно. Ардуино можно питать не от USB или блока питания от телефона, а от блока питания ленты, подав напряжение 7-15 вольт на GND и VIN.

Корпус сделан из корпуса убитого блока питания, куда я и поместил блок питания ленты и Ардуино, с выпаянным разъёмом. Чуть-чуть не подошёл по размеру, но он и так постоянно был на изоленте.



Вот я закрыл датчик рукой:

А вот не держу руку над ним:


Где же это может пригодиться?



Эта конструкция может помочь при какой-либо тонкой работе, где нужна стабильная подсветка, например, если вы забыли включить свет, но лента включена. Так же это удобно использовать, если у вас где-либо есть рассада для дальнейшей посадки на грядку. Где же такое использовать, судить, конечно же, Вам.

P.S. Верно, мои руки кривые и я на схеме неправильно воткнул светодиод.
Становитесь автором сайта, публикуйте собственные статьи, описания самоделок с оплатой за текст. Подробнее здесь.

RGB-ночник управляемый руками

9.2
Идея
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
9.4
Описание
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
8.4
Исполнение
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
Итоговая оценка: 9.0 из 10 (голосов: 5 / История оценок)

Добавить комментарий

    • smilesmilesxaxaokdontknowyahoonea
      bossscratchfoolyesyes-yesaggressivesecret
      sorrydancedance2dance3pardonhelpdrinks
      stopfriendsgoodgoodgoodwhistleswoontongue
      smokeclappingcraydeclarederisivedon-t_mentiondownload
      heatirefullaugh1mdameetingmoskingnegative
      not_ipopcornpunishreadscarescaressearch
      tauntthank_youthisto_clueumnikacuteagree
      badbeeeblack_eyeblum3blushboastboredom
      censoredpleasantrysecret2threatenvictoryyusun_bespectacled
      shokrespektlolprevedwelcomekrutoyya_za
      ya_dobryihelperne_huliganne_othodifludbanclose
1 комментарий
  1. Имя
    Посмотри Гайвера
    @@@
    Cделай раз в 10 лучше
    @@@
    Profit

Привет, Гость!


Зарегистрируйтесь

Или войдите на сайт, если уже зарегистрированы...

Войти

Добавьте самоделку

Добавьте тему

Онлайн чат

Опрос
А Вы уже рассказали на сайте о своей самоделке?

Последние комментарии

Все комментарии
Новые самоделки на почту

Введите электронную почту и получайте письма с новыми самоделками. Не более одного письма в день.