Диммер, ардуино

yden
Offline
Зарегистрирован: 30.01.2016

Здравствуйте.

Прошу совета, плиз.

Приобрел на али диммер для ардуино: https://ru.aliexpress.com/item/AC-L...32802025086.html?spm=a2g0s.9042311.0.0.boNprI

Цель - управление скоростью вращения канальным вентилятором 30 вт.

Вопрос: как этим чудом управлять?

Использую arduino nano.



благодарю

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

AC-IN - 220V, LOAD - нагрузка, 

VCC/GND - +5V/GND с ардуины, PWM - на pin, умеющий PWM (см. в справке по analogWrite). Потом в скойтче - analogWrite(pin, 0) ... analogWrite(pin, 255)

avton
avton аватар
Offline
Зарегистрирован: 11.05.2014

Не совсем так , надпись zero-cross не о чем не говорит?

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

Напишите, как. Я с удовольствием скорректирую свои предположения. Z-C в моей теории вполне может оказаться дергалкой за прерывание для каких-нибудь там одному китайцу ведомых нужд.

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

sadman41 пишет:

Напишите, как. Я с удовольствием скорректирую свои предположения. Z-C в моей теории вполне может оказаться дергалкой за прерывание для каких-нибудь там одному китайцу ведомых нужд.

Цветомузыка получится. На тиристорных без Z-C никак. Ловим ноль и открываем тиристор на н-ное время.
Если бы ТС не был ленивым, то на форуме это не раз обсуждали. Есть и библиотеки готовые. Нах, пускай сам ищет.

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

Хм. А зачем там PWM тогда написано, а не какое-нибудь "ON"? С точки зрения моей логики - выводить ZC на МК, чтобы он дергал за ногу тиристору - туповато. 

 

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

Ну кто же китайца знает? Там явная стандартная схемотехника - симистор, мостик для ZC, два оптрона.
А с другой стороны, как симистором управлять не зная где полуволна?

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

Вот и я в недоумении. У рободина тупых описок пока еще не встречалось на платах.

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

OlegK
OlegK аватар
Offline
Зарегистрирован: 26.11.2014

sadman41 пишет:
С точки зрения моей логики - выводить ZC на МК, чтобы он дергал за ногу тиристору - туповато.

От сигнала с вывода ZC (пересекли 0 сети) дёргается прерывание МК, в котором запускается таймер на требуемое время, на которое нужно задержать включение симистора относительно начала полуволны. По истечении этого времени дёргаем симистор (вывод PWM - хз почему так обозван). Чем меньше величина задержки открытия, тем большая мощность выделится на нагрузке, и наоборот.
Называется эта хрень - фазо-импульсное регулирование.

Пардон, управление.

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

На тот вход подаются импульсы, если ON написать это твердотелка получится. В ней симистор и оптрон с ZC. В этом на симистор оптрон без ZC.

Если интересно как работает, можете здесь посмотреть.

xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

В отзывах нашел

/*
Переменный резистор (10 КоМ) на ардуино аналоговый pin 3
Pin 2 с ардуино подключаем к модулю пину Z-C
Pin 4 с ардуино подключаем к модулю пину PWM

питание модуля 5 вольт.

В нагрузку подключаем обычную лампу "Ильича". 
*/



int _SCT2_DLDIV = 0;
bool _SCT2_DLOSN = 0;
unsigned long _SCT2_DLST = 0UL;
bool _SCT2_DLIDM = 0;


void setup()
{
  pinMode(2, INPUT);
  pinMode(4, OUTPUT);
  TCCR2A = 0;
  TCCR2B = 0 << CS22 | 1 << CS21 | 0 << CS20;
  TIMSK2 = 1 << TOIE2;
  TCNT2 = 210;
  attachInterrupt(0, _SCT2positiveCoutFunction, RISING );
}
void loop()
{
  _SCT2_DLDIV = (map(( (analogRead (3))), (0), (1023), (1102), (9664)));
}

void  _SCT2positiveCoutFunction()
{ if ((!_SCT2_DLOSN) && (!_SCT2_DLIDM)) {
    _SCT2_DLIDM = 1;
    _SCT2_DLST = micros();
  }
}

ISR (TIMER2_OVF_vect)
{ if ((_SCT2_DLIDM)) {
    if (_SCT2_DLIDM) {
      if (_SCT2_DLOSN) {
        if ((_SCT2_DLST + 4) < micros()) {
          _SCT2_DLST = micros();
          _SCT2_DLOSN = 0;
          digitalWrite(4, 0);
          _SCT2_DLIDM = 0;
        }
      } else {
        if ((_SCT2_DLST + _SCT2_DLDIV) < micros()) {
          _SCT2_DLST = micros();
          _SCT2_DLOSN = 1;
          digitalWrite(4, 1);;
        }
      }
    }
  }
  TCNT2 = 210;
}

 

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

xDriver пишет:

В отзывах нашел

Ну, если резюка ставить, тогда проще готовый купить)))

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

Вобщем, предположения два:

1) На ноге быть написано PSM (Pulse Skip Modulation), как в описании товара;

2) Китаец планировал устроить беспредел, подавая туда PWM, который будет открывать тиристор, закрывающийся при переходе через 0. Наверное на лампочках накаливания это будет выглядеть, как димминг.

xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

to bwn

может и так

а можно дисплей с кнопками, а можно nextion, а можно ...

главное переменой _SCT2_DLDIV присвоить значение 1102 - 9664 и управляй ка хощ.

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

sadman41 пишет:

2) Китаец планировал устроить беспредел, подавая туда PWM, который будет открывать тиристор, закрывающийся при переходе через 0. Наверное на лампочках накаливания это будет выглядеть, как димминг.

Не, натуральная цветомузыка получается.))) Кстати ТС может быть неприятно удивлен с вентилятором, снаббером на той плате и не пахнет.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Роботдин молодцы, что сделали фазовый регулятор, который все паяли сами: две оптопары, мост, симистор и три резистора.

после получения прерывания от ноги ZC у нас есть 10 мс- полупериод переменного тока 50 Гц.

Чем позднее мы откроем симистор. тем меньше тока попадет в нагрузку.

Примеров кода много в сети.

вот.  или вот.

==================

последнее - мотор вентилятора ассинхронный и очень плохо будет регулироваться фазовым регулятором...  но будет.

для него лучше сделать частотник "псевдосинус". Но придется паяльником поработать.

Deamon
Offline
Зарегистрирован: 21.09.2017

Подскажите, твердотельное реле типа G3MB-202P для этих целей подойдёт?

xDriver
xDriver аватар
Offline
Зарегистрирован: 14.08.2015

для каких, для этих ? 

yden
Offline
Зарегистрирован: 30.01.2016

Как думаете может лучше использовать для регулировки скорости канального вентилятора 220V 30 вт связку:

https://ru.aliexpress.com/item/2000W-SCR-Voltage-Regulator-Dimming-Dimmers-Speed-Controller-Thermostat-AC-220V-G205M-Best-Quality/32245839388.html?spm=a2g0s.9042311.0.0.mCl58E

- шаговый двигатель https://ru.aliexpress.com/item/Smart-Electronics-28BYJ-48-5V-4-Phase-DC-Gear-Stepper-Motor-ULN2003-Driver-Board-for-arduino/32314913056.html?spm=a2g0s.9042311.0.0.mCl58E

 

?

bankir_1986
Offline
Зарегистрирован: 23.03.2015

Может вечер пятницы так действует, но в модуле от рободина стоит симистор BTA16, но на плате написано normal 2A, peak 3A. Очередная описка? Или BTA16 уже не те пошли?

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

yden пишет:

Как думаете может лучше использовать для регулировки скорости канального вентилятора 220V 30 вт связку:

https://ru.aliexpress.com/item/2000W-SCR-Voltage-Regulator-Dimming-Dimmers-Speed-Controller-Thermostat-AC-220V-G205M-Best-Quality/32245839388.html?spm=a2g0s.9042311.0.0.mCl58E

- шаговый двигатель https://ru.aliexpress.com/item/Smart-Electronics-28BYJ-48-5V-4-Phase-DC-Gear-Stepper-Motor-ULN2003-Driver-Board-for-arduino/32314913056.html?spm=a2g0s.9042311.0.0.mCl58E

 

?

Это тот же самый регулятор, только без ардуины. Минусы у него те же, не любит индуктивную нагрузку, гадит в сеть. 
С какой целью вам регулировать вентилятор? Может проще системой заслонок обойтись? Такими диммерами скорость асинхронников регулируется в очень малых пределах+шансы запалить обмотки. Если действительно необходима регулировка, то как Влад написал - частотник.

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

bankir_1986 пишет:

Может вечер пятницы так действует, но в модуле от рободина стоит симистор BTA16, но на плате написано normal 2A, peak 3A. Очередная описка? Или BTA16 уже не те пошли?

Судя по радиатору, возможно правда, с запасом в плюс.

bankir_1986
Offline
Зарегистрирован: 23.03.2015

С запасом каким? BTA16 вроде как 16А, но не 3А. Что они туда поставили?

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

bankir_1986 пишет:

С запасом каким? BTA16 вроде как 16А, но не 3А. Что они туда поставили?

Думаю это для жертв ЕГЭ, ему ведь напишешь: в импульсе 16А, он решит, что нормально будет при 8А работать, быстренько сдохнет, а рободин виноват вроде.

P/S там в 18 посте диммер китайский на 2кВт, вот нихрена не верю что долго на полной мощности протянет без ухищрений.

bankir_1986
Offline
Зарегистрирован: 23.03.2015

Согласен. Не подумал, про жертв ЕГЭ. Сам на ТЭН 2 кВт ставлю BTA41 с радиатором.

Просто закупил  намедни горсть BTA16, вот как-то и зачесалось ....

yden
Offline
Зарегистрирован: 30.01.2016

Диммирование вентиляторов - что-то вроде погодазависимой автоматики для вентиляции. 

Я отказался от идеи диммирования вентиляторов. Да, вы правы, заслонки лучше, и безопаснее.

Как думаете, для 100 трубы управление заслонкой возможно поручить шаговику типа этого http://out.arduino.ru/?redirect=https%3A%2F%2Fru.aliexpress.com%2Fitem%2FSmart-Electronics-28BYJ-48-5V-4-Phase-DC-Gear-Stepper-Motor-ULN2003-Driver-Board-for-arduino%2F32314913056.html%3Fspm%3Da2g0s.9042311.0.0.mCl58E&baseU=http%3A%2F%2Farduino.ru%2Fcomment%2Freply%2F23800%2F311847

?

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

yden, лучше серву. Здесь на форуме тема была про вентиляцию подвала, поищите там много обсуждалось.

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

bankir_1986 пишет:

Согласен. Не подумал, про жертв ЕГЭ. Сам на ТЭН 2 кВт ставлю BTA41 с радиатором.

Просто закупил  намедни горсть BTA16, вот как-то и зачесалось ....

Да нормально работают. У меня bt134 на 300Вт без радиаторов, все норм. А хотел ку202 (килограмма полтора валяется) применить в паре для коммутации 0,8кВт, а вот хренушки.((((

CatSoup
Offline
Зарегистрирован: 01.05.2017

А нафига козе баян с прерываниями, когда можно замутить регулятор со сдвигом на конденсаторе и управлять фазой открытия симистора меняя скорость заряда или цифровым потенциометром аж по I2C или напаять на ULN2003 резюков и дрыгать ее сдвиговым регистром?