6-ти канальный Диммер или регулятор мощности на мк atmega16

Обсуждаем контроллеры компании Atmel.
Ответить
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

Вот решил разобраться, как работает 6-ти канальный диммер на микроконтроллере atmega16.
Раннее делал 1 канальный диммер на мк attiny2313 и симистор bt139 и 2 кнопки.

Если кто сталкивался с многоканальным управлением симисторов, подскажите пожалуйста.
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

ATMEL86 писал(а):подскажите пожалуйста
Подсказать то что?
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

Мне нужно управлять 6-и каналами (нагрузками) независимо друг от друга.
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

думаю просит идею.
если гдето не так понял или есть другие идеи - поправь:
1) если 6-канальный диммер, то это 6 тиристоров (симисторов) с фазовым управлением,
2) т.к. каналов много, то проще использовать программный таймер (причём не обязательно до 255и), но для его стабильного счёта задействуем прерывание по "железному" таймеру и сброс обоих таймеров при переходе через 0 (синхронизацию с питающей сетью),
3) придётся строго дозировать загрузку ЦП контроллера, а также использовать пребуфер вывода для подавления джиттера (сначала по прерыванию обновляем состояние порта, а потом формируем данные для следующего цикла.
4) если используется симистор, возможно придётся делать общей положительную шину питания (для работы симистора в правильных квадрантах).
у меня на этом форуме есть поделка люстра с ИК управлением (на тини 2313) сделать в ней диммирование, думаю можно, останется только продумать как в неё данные отправлять (интерфейс и гальваноразвязка от сети).
Последний раз редактировалось Ivanoff-iv Ср авг 16, 2017 16:34:18, всего редактировалось 1 раз.
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Реклама
Эиком - электронные компоненты и радиодетали
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

Один канал:
Из сети ловил переход через "0" и на вход int0
в обработчике внешнего прерывания запускал таймер, таймер считал до значения регистра сравнения.
Далее на выход порта выводим "1" ждем 50us в порт выводим "0" и выключаем таймер.
Реклама
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

С какой дискретностью планируется управление?
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Реклама
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

С какой дискретностью?
Очень быстро наверно.
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

нет, сколько уровней яркости?
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

Конечно крайне мало данных чтобы что-то посоветовать.

Пол периода это 10 мс или 180 градусов. Допустим будем регулироваться с дискретностью 100мкс или 1,8 градуса. Т.е. поделим полупериод на 100 частей.
При тактовой частоте 16 МГц за 100мкс МК выполнит 1600 однотактовых команд. Это приличное число, т.е. между этими точками МК может заняться спокойненько другим вещами. Эти точки дисретизации условно нумеруем от 0 до 100.

Запускаете таймер в режиме СТС и настраиваете прерывание так, чтобы оно вызывалось каждые 100мкс.
Так же настраиваете внешнее прерывание от детектора фазы.

Для каждого канала задается точка включения (фаза включения симистора), например по UART или как то еще. Ну видимо 6 переменных для 6 каналов.
В прерывании от детектора: сброс таймера и обнуление счетчика текущей дискретной точки (текущей фазы) на полуволне.
В прерывании от таймера:
инкремент счетчика дискретных точек;
если счетчик совпадает с заданием, то соответствующий порт включается иначе выключается.

Не знаю насколько понятно написал и надо будет конечно учесть кой-какие нюансы. Например, не увеличивать счетчик больше какого-то числа, можно останавливать таймер при фазе больше 160 градусов и запускать снова по детектору, учесть что детектор может быть чуть раньше или позже фактичего перехода через ноль и т.д.
Последний раз редактировалось Z_h_e Ср авг 16, 2017 20:31:53, всего редактировалось 1 раз.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

О... :idea: что то уже проясняется. буду думать.
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Уж не цветомузыку ли 6-канальную вы решили смастерить?
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

Добрый вечер ARV! :) не к сожалению не цветомузыку... Та вот интересно стало многоканальное управление симисторами, тэны
попробую по нагревать.
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

Я как то делал расчёты и теперь сую этот график везде куда попало :) . Это зависимость действующего напряжения и мощности от угла открытия симистора. Можно заметить что в диапазонах 0-20 и 160-180 градусов регуливание практического смысла врядли будет иметь
СпойлерИзображение
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

О... класс спасибо за график!
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

если тены, то можно и не спешить, деля полупериод на части, а считатьисами полупериоды.
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
ARV
Ум, честь и совесть. И скромность.
Аватара пользователя
Сообщения: 18678
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск

Сообщение ARV »

Вот именно: для ТЭНов самое то применить алгоритм Брезенхама и управлять пропуском полупериодов или даже периодов. Получается весьма экономно по ресурсам.
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
Контактная информация:
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

На верно пропуски периодов или полупериодов,чревато помехами в сети. Будет "стучать". А тем более 6 каналов.
Друг Кота
Аватара пользователя
Сообщения: 7077
Зарегистрирован: Пт ноя 11, 2016 05:48:09
Откуда: Сердце Пармы

Сообщение Ivanoff-iv »

а резкое включение прямо посреди периода при максимуме напряжения не будет стучать?
в диммерах чтобы этот эффект хоть както подавить фильтра применяют, а если всегда при 0в включать - помех и наводок однозначно меньше будет.
Для тех, кто не учил магию мир полон физики :)
Безграмотно вопрошающим про силовую или высоковольтную электронику я не отвечаю, а то ещё посадят за участие в (само)убиении оболтуса...
Встал на лапы
Аватара пользователя
Сообщения: 120
Зарегистрирован: Сб апр 20, 2013 16:38:32
Откуда: Страна Чудес

Сообщение ATMEL86 »

Кто может нарисовать фазо - импульсное управление пропусков периодов, полупериодов?
Собутыльник Кота
Аватара пользователя
Сообщения: 2708
Зарегистрирован: Сб май 14, 2011 21:16:04
Откуда: г. Чайковский

Сообщение Z_h_e »

В простейшем случае берете твердотельное реле с детектором нуля, например SSR-25DA. С каждого канала идет сигнал управления для реле, ШИМ периодом пару секунд. Данное реле (по сути тот же симистор) будет включаться точно в момент перехода через ноль, из-за чего не будет помех, но возможно будут моргать лампы накаливания.
Изображение
Добро всегда побеждает зло. Поэтому кто победил - тот и добрый.
Ответить

Вернуться в «AVR»