Плавный пуск нагрузки в прерывании.
- Войдите на сайт для отправки комментариев
Пнд, 13/12/2021 - 07:20
Есть готовый скетч диммера по управлению тэном на энкодере с кнопкой. При первом нажатии на кнопку, отключаем нагрузку. Второе нажатие включает нагрузку с мощностью которая была до отключения. Скетч рабочий. Только нужно сделать плавный запуск нагрузки при повторном нажатии.
void Encod() { enc1.tick(); // нужно вызывать как можно чаще enc1.setFastTimeout(40); // таймаут на скорость isFastR. По умолч. 50 if (enc1.isRight()) percent = percent + 5; // если был поворот if (percent > 100) percent = 100; // Если больше 100% остаёмся на сотке if (enc1.isLeft()) percent = percent - 5; // если был поворот if (percent < 0) percent = 0; // если меньще нуля остаёмся на нуле // Управление нажатием кнопки энкодера // остановка и запуск тэна // обработка первого нажатия. Мощность сбрасываем на ноль // и запоминаем значение мощности до сброса if (enc1.isPress()) { if ( percent > 0) percent_i = 0; if ( percent_i == 0) { percent_b = percent; // percent_b Мощность нагрузки до сброса percent = 0; } // обработка второго нажатия. восстанавливаем мощность в нагрузке до сброса if (percent_i == 1) { percent = percent_b; // восстанавливаем мощность в нагрузке до сброса ( ТУТ НУЖЕН ПЛАВНЫЙ ЗАПУС НАГРУЗКИ ) percent_b = 0; percent_i = percent_i - 2; } percent_i ++; }
Пробовал в строке 30 сделать цикл с задержкой на увеличение переменной percent. Не получилось.
Вроде и считает. Но тэн включается сразу на ту мощность которая была до останова. Без плавного пуска.
Вот и вопрос как тут можно сделать плавный запуск тэна?
Забыл написать энкодер обрабатывается в прерывании.
если управление нагрузкой идёт через прерывание то в этом куске можно сделать, через цикл в 30 строке, иначе нет
раз энкодер обрабатывается в прерывании, то нет, делайте в функции включения любое включение плавным до установленной мощности
tager, а зачем тэну плавное включение, что бы что? Он и так инерционный, плавность нагрева в любом случае обеспечена. Если речь про плавную нагрузку на сеть -то включать в момент перехода через ноль, -это будет очень плавно для сети)
tager, а зачем тэну плавное включение, что бы что? Он и так инерционный, плавность нагрева в любом случае обеспечена. Если речь про плавную нагрузку на сеть -то включать в момент перехода через ноль, -это будет очень плавно для сети)
ТКС у нихрома очень маленький, так что точно нет смысла