по названию
по описанию

 

Интернет-магазин оборудования для спутникового телевидения www.agsat.com.ua: спутниковые HDTV ресиверы Dreambox, GI, Openbox, Vu+.

Рейтинг:  1 / 5

Звезда активнаЗвезда не активнаЗвезда не активнаЗвезда не активнаЗвезда не активна
 

pic-avr.narod.ru______image001

 

Транзистор VT1 служит для формирования синхроимпульсов, необходимых для корректного управления симистором. На базу транзистора подаётся выпрямленное пульсирующее напряжение часто­той 100 гц (верхняя эпюра на графике), на коллекторе транзистора и выводе 6 микроконтроллера DD1 формируются импульсы положительной полярности с периодом 10 мс (нижняя эпюра на графике):

 

pic-avr.narod.ru__-__1___VD5__2__6__DD1_image002

 

Используемый симистор S202S02 не позволяет реализовать фазоимпульсное регулирование напряжения (его нельзя открыть в произвольный момент времени), поэтому единственный выход - "вы­кусывать" часть полупериодов напряжения на нагрузке.

            Строго говоря, выкусывать нужно таким образом, чтобы всегда получалось чётное число полупериодов. В противном случае неизбежно образование в потребляемом токе постоянной состав­ляющей, способной вызвать нежелательное подмагничивание магнитопроводов трансформаторов и двигателей, подключённых к той же сети.

            Но это теория, на практике же, паяльник мощностью 40 ватт (или лампочка в подъёзде, включён­ная через диод) трансформаторную будку вместе с силовым трансформатором сильно не намагнитят. Поэтому в текущей версии программы микроконтроллера разрешено появление нечётного количества полуволн.

            Для примера, зададимся числом полупериодов = 100. Тогда удалив один полупериод, мы пони­зим мощность паяльника на 1%, удалив 50 полупериодов - понизим мощность на 50%. Но 50% можно получить и по другому, выкусывая каждый второй полупериод! Также, можно найти кратные значения и для других комбинаций полупериодов. Чтобы не считать каждый раз всю таблицу вручную, на языке VBA (Visual Basic for Application) из состава Microsoft Excel была написана вспомогательная программа, в которой можно задаться количеством полупериодов, шагом "выкусывания", а также разрешить или за­претить нечётное количество полуволн:

 

pic-avr.narod.ru______image003

 

В текущей версии программы микроконтроллера используется таблица из 100 полупериодов с шагом 2. Нечётное количество полупериодов - разрешено. При этом получается 51 градация мощности, что вполне удобно. Большее количество не имеет смысла, т.к. невозможно уверенно выбрать ту или иную ступень при помощи переменного резистора.

            Соответствие синхроимпульсов на выводе 6 микроконтроллера (верхняя эпюра) и импульсов управления симистором на выводе 3 микроконтроллера (нижняя эпюра) показано на рисунке (горизон­тальный масштаб - 5 мс на деление; уровень мощности - 50%):

 

pic-avr.narod.ru__-__1__6__DD1__2__3__DD1_image004

 

Как видно из графика, длительность импульсов управления равна 5 мс. Этого вполне достаточно не только для уверенного открывания симистора, но и для свечения светодиода HL1, расположенного на передней панели устройства. Напряжение на нагрузке в случае уровня мощности 50% имеет вид од­нополупериодного выпрямления:

 

pic-avr.narod.ru________-_50_image005

 

Программа для микроконтроллера ATtiny13 написана на языке Си в среде разработки CodeVi­sionAVR 1.25.5. Бесплатная версия компилятора имеет ограничение по размеру компилируемого кода (hex), в 2 кБ. Поскольку объём памяти применяемого микроконтроллера равен 1 кБ, то "бесплатность" компилятора является большим плюсом. Для редактирования исходника необходимо запустить (от­крыть) файл проекта "copper.prj".

            Вся программа состоит из четырёх функций:

            - void main(void);

            - interrupt [EXT_INT0] void ext_int0_isr(void);

            - unsigned char read_adc(unsigned char adc_input);

            - void open_simistor (void).

            Рассмотрим назначение каждой функции подробнее:

            - void main(void) - основная функция в любой программе на языке Си. После включения мик­роконтроллера первой начинает выполняться именно эта функция. Поэтому в её начале находится ини­циализация всех необходимых составляющих микроконтроллера (таймеры, АЦП, порты и т.д.), а также чтение сохранённых в EEPROM данных;

            - interrupt [EXT_INT0] void ext_int0_isr(void) - функция обработки прерывания. Отправ­ной точкой работы программы являются прерывания, инициируемые нарастающим фронтом импульсов на выводе 6 микроконтроллера. После наступления прерывания, микроконтроллер прекращает все теку­щие действия и переходит к выполнению кода, размещённого в данной функции. Условно, функция со­стоит из трёх частей:

                        - определение положения движка резистора R3 (функция  unsigned char read_adc(un­signed char adc_input));

                        - проверка условий открытого/закрытого состояния симистора;

                        - управление симистором (функция  void open_simistor (void));

            - unsigned char read_adc(unsigned char adc_input) - функция выполняет запуск преобра­зования и чтение результатов преобразования АЦП, т.е. фактически здесь определяется положение движка переменного резистора R3. Поскольку в данной задаче не требуется большого разрешения, то ис­пользуются только старшие 8 бит 10-битного результата. Частота тактирования АЦП, напротив, вы­брана большой - 600 кГц. Результат преобразования АЦП используется для выбора нужной ячейки дву­мерного массива flash unsigned char cycles[52][2], в котором находится таблица скважностей всего диапа­зона регулировки мощности;

            - void open_simistor (void) - функция управления симистором. Определяет задержку и дли­тельность импульса открывания симистора. Единственное, что нужно прокомментировать в этой функ­ции - строку " if (mode == 0) delay_us(2000); ".

            Дело в том, что во время первичных испытаний, когда вся конструкция была собрана на "соплях", и провода были длинными, наблюдалось нестабильное открывание симистора. Это происходило только при работе симистора под нагрузкой и только при напряжении питания 15 вольт (ступень для 12-ти вольтового паяльника). Нормальная работа обеспечивалась задержкой импульса открывания симистора (нижняя эпюра) относительно синхроимпульса (горизонтальный масштаб - 2 мс на деление; уровень мощности - 100%):

 

pic-avr.narod.ru__-__1__6__DD1__2__3__DD1_image006

 

Включение и выключение задержки реализовано через положение движка переменного рези­стора R3. Если ПРИ ВКЛЮЧЕНИИ питания движок находится в крайнем левом положении (нижнем по схеме), то в EEPROM микроконтроллера записывается флаг признака включения задержки. Если движок резистора в момент включения находился в крайнем правом положении (верхнем по схеме), то в EEPROM микроконтроллера пишется флаг признака выключения задержки. Когда движок резистора на­ходится в любом другом промежуточном положении (а так оно, чаще всего, и бывает), то данные из EEPROM просто переписываются в ОЗУ микроконтроллера. Таким образом, выполнено запоминание необходимого режима работы.

            Однако, после окончательного монтажа устройства, сбои в работе симистора исчезли. На всех ступенях напряжения задержка импульса открывания симистора не требуется. Тем не ме­нее, возможность включения задержки было решено оставить.

 

            Программирование микроконтроллера

 

            Автор программировал микроконтроллер из среды разработки CodeVi­sionAVR 1.25.5. Выполнив пункт меню "Settings/Programmer" выбирают тип программатора Kanda Systems STK200+/300:

 

pic-avr.narod.ru____image007

 

Для разового программирования достаточно спаять простейший переходник на LPT порт компьютера:

 

pic-avr.narod.ru______ATtiny13_image008

 

Длина соединительных проводов не должна превышать 100 мм. Удобнее всего, собрать программатор в вилке DB-25, просверлив в корпусе отверстия под выводы панельки. Саму панельку вставляют выводами в отверстия и приклеивают к корпусу. Из вилки выводят шнур питания микрокон­троллера. Получается удобная и законченная конструкция. Питание микроконтроллера можно взять от блока питания компьютера (красный провод в любом разъёме).

            Для запуска программатора открывают файл проекта "copper.prj" из папки "COPPER", затем выпол­няют пункт меню "Tools/Chip Programmer":

 

pic-avr.narod.ru__CodeVisionAVR_image009

 

Все необходимые настройки программатора импортируются из файла проекта автоматически. Остаётся только включить питание микроконтроллера и нажать кнопку "Program All".

            В случае использования другого программатора необходимо воспользоваться файлом "copper.hex" из папки "COPPER" и установить необходимые "перемычки" (Fuse Bits) в соответствии с рисунком.

 

            Конструкция и детали

 

            Абсолютно формальный раздел, т.к. всё зависит от имеющихся в распоряжении деталей и средств. Микросхему стабилизатора К142ЕН5А можно заменить на 78L05, вместо оптосимистора S202S02 вполне подойдёт какой-нибудь BT-138 + твердотельное оптореле типа PVT412. Если не пред­полагается использовать низковольтные паяльники, то трансформатор Т1 можно взять маломощный, с напряжением вторичной обмотки 7 - 12 вольт. Кстати, распайка трансформатора Т1 для получения не­обходимых напряжений:

 

pic-avr.narod.ru____289-220-50_image010

 

 

Комментарии   

+1 # RE: Регулятор температуры паяльникаСергей 04.12.2015 10:50
Здравствуйте. Невозможно скачать файлы для схемы.
# RE: Регулятор температуры паяльникаDoc 18.01.2016 20:00
поправил

Рекомендуем посетить наш магазин

Разработано Ext-Joom.com

Яндекс.Метрика Яндекс цитирования РадиоКОТ - популярно об электронике. Авторские схемы, новые разработки. Обучение по электронике, микроконтроллерам, ПЛИС. Форум
   
Вся информация, предоставленная на данном ресурсе разрешена к ознакомлению детям школьного возраста. Все практическое использование связанно с повышенной электрической опасностью и разрешено детям только под присмотром родителей.