Регулировка яркости светодиода подключенного к реле с IR пульта

andrwgldmn
andrwgldmn аватар
Offline
Зарегистрирован: 05.12.2018

Доброго. С ардуино дела особо не умел, но с кодерством немного сталкивался. Так вот, возможно ли сиё действие, описанное в заголовке темы? Осилил только включение реле с пульта, а дальше затуп.. Помогите советом, будьте добры.

Подключено было по:

Код прилагаю:
 

//ir
#define REMOTE_TYPE 1 // 1 = stock ir
#define ir_pin 2
// stock ir
#if REMOTE_TYPE == 1
#define BUTT_ENABLE     0xFF02FD
#define BUTT_HASH     0xFF52AD
#define BUTT_UP   0xFF629D
#define BUTT_DOWN   0xFFA857
#define BUTT_LEFT   0xFF22DD
#define BUTT_RIGHT   0xFFC23D
#endif

#include "IRremote.h"

IRrecv irrecv(ir_pin);
IRsend irsender;
decode_results results;
unsigned long code;

//relay
#define relay_pin 3

void setup()
{
  pinMode(relay_pin, OUTPUT);
  digitalWrite(relay_pin, LOW);
  irrecv.blink13(true);
  irrecv.enableIRIn();
}

void loop()
{
  if (irrecv.decode(&results))
{
    unsigned long current = results.value;
    if (current != code)
{
      code = current;
      switch (code)
{
        case BUTT_ENABLE:
          digitalWrite(relay_pin, HIGH);
          break;
        case BUTT_HASH:
          digitalWrite(relay_pin, LOW);
          break;
}
}
}

    irrecv.resume();
}

 

sadman41
Offline
Зарегистрирован: 19.10.2016

А светодиод где?

andriano
andriano аватар
Offline
Зарегистрирован: 20.06.2015

Боюсь, что с реле это невозможно - у него слишком низкая скорость переключения.

sadman41
Offline
Зарегистрирован: 19.10.2016

Так ему светодиод вместо лампы что ли... А смысел в чем?

andrwgldmn
andrwgldmn аватар
Offline
Зарегистрирован: 05.12.2018

делаю освещение, хотелось бы с пульта вкл/выкл и регулировать яркость led ленты

andrwgldmn
andrwgldmn аватар
Offline
Зарегистрирован: 05.12.2018

sadman41 пишет:

А светодиод где?

он идёт после реле как на картинке.

sadman41
Offline
Зарегистрирован: 19.10.2016

Тогда вам не реле нужно, а модуль MOSFET. И рулить им через analogWrite().

andrwgldmn
andrwgldmn аватар
Offline
Зарегистрирован: 05.12.2018

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

sadman41
Offline
Зарегистрирован: 19.10.2016

Да пожалуйста. Начните с этого, чтобы увидеть как работает система в целом: https://www.arduino.cc/reference/en/language/functions/analog-io/analogw...

Потом в своем скетче заведете переменную, которую по одной кнопке будете увеличивать, а по другой - уменьшать. После изменения - применять ее analogWrite() для установки уровня ШИМ на пине, который будет дергать мосфет, а мосфет - ленту.

bwn
Offline
Зарегистрирован: 25.08.2014

PT4115. Там, вроде, тоже просто ШИМ-ом можно, но о токах заботиться не надо, пока не доехали.

sadman41
Offline
Зарегистрирован: 19.10.2016

Интересная мелкосхема. И она реально 3 ватта "обслуживает", не греется?

bwn
Offline
Зарегистрирован: 25.08.2014

В пути, на просторах необъятной родины. Планирую для светильников на кухню с 3-х ваттными светодиодами (~ по 15Вт). Где-то в теме про аквариум у человека на них 10-ваттные матрицы запитаны.

bizzon
Offline
Зарегистрирован: 29.03.2016

А реле прикольней. По жужжанию мона узнавать яркость.:)

andrwgldmn
andrwgldmn аватар
Offline
Зарегистрирован: 05.12.2018

вообще не могу понять как его всё сделать. пин модуля мосфета на цифровом 3 пине, как тогда делать регулировку через analogWrite? если перекинуть на аналоговый то работать ничего не будет

bwn
Offline
Зарегистрирован: 25.08.2014

Внезапно, analogWrite к аналоговым пинам отношения не имеет. И аналоговые пины, аналоговые только в одну сторону.)))

AlexanderNO
Offline
Зарегистрирован: 08.11.2018

Почти Ваш случай: https://arduino-kit.ru/blogs/blog/project_11

Zontgom
Offline
Зарегистрирован: 08.09.2018