-
Микропроцессорный регулятор мощности для паяльника на PIC16F628A
-
PIC16F628A
,
MAC15
,
MOC3020
Update. Обратите внимание, что прошивка из этого поста - не самая свежая. Лучше брать прошивку из поста "Снова о регуляторе мощности. Универсальная прошивка для любого включения светодиодов".
Что он может:
- 20 уровней регулировки с запоминанием уровня
- фазовое управление мощностью
- линейная регулировка мощности (не фазы)
- наличие режима форсированного разогрева в течении 5 или 10 минут
- плавное включение нагрузки
- автоматическое отключение нагрузки через 30 мин
- наличие режима без отключения нагрузки
- линейная шкала на светодиодах
- управление мощностью и выбор режимов осуществляется двумя кнопками
- в схеме использован микропроцессор PIC16F628A.
Принципиальная схема контроллера
Перечень элементов
Обозначение | Номинал | Примечание |
---|---|---|
C1 | 1n | |
C2 | 10µ x 10V | |
C3 | 1n | |
C4 | 1n | 600V |
C5 | 100n | |
DA1 | PC817 | |
DA2 | MOC3020 | MOC3020-MOC3023 |
DD1 | PIC16F628A | |
R1 | 2k2 | |
R2 | 220k | |
R3 | 220k | |
R4 | 1k | |
R5 | 22k | |
R6 | 220 | |
R7 | 39 | |
R8 | 220 | |
R9 | 220 | |
R10 | 220 | |
R11 | 220 | |
R12 | 220 | |
R13 | 220 | |
R14 | 220 | |
R15 | 220 | |
R16 | 220 | |
R17 | 220 | |
R18 | 220 | |
R19 | 220 | |
VD1 | 1N4148 | |
VD2 | 1N4148 | |
VD3 | 1N4148 | |
VD4 | 1N4148 | |
VD5 | 1N4148 | |
VS1 | MAC15N | MAC16N |
VT1 | 2SC828 |
Благодаря наличию оптронов цифровая часть гальванически развязана с сетью, но, тем не менее, в схеме присутствует высокое напряжение, поэтому при повторении конструкции необходимо соблюдать технику безопасности!
Осцилограммы на выводах процессора.
Смещение импульсов друг относительно друга на осцилограмме соответствует второй ступени регулировки мощности (горит 1 светодиод)
Ширина импульса на RA4 около 170uS, на RB3 около 1.5mS
Прошивка
Версия 2: (доступно зарегистрированным пользователям)
Обратите внимание, что более свежая и функциональная прошивка есть здесь
Правильно выставленные фьюзы - залог успеха:
CONFIG = 0x2150
или
CONFIG = 0x3F50 (если считать неопределенные биты 9-12 за "1")
CP | - | - | - | - | CPD | LVP | BOREN | MCLRE | FOSC2 | !PWRTE | WDTE | FOSC1 | FOSC0 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | x | x | x | x | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 |
Для прользователей IC-PROG установка фьюзов должна выглядеть так (сам не проверял, подтвердите или поправьте в комментах кто пробовал)
FOSC<2:0> = 100 (INTOSC internal oscillator: I/O function on RA6/OSC2/CLKOUT pin, I/O function on RA7/OSC1/CLKIN)
WDTE = 0 (WDT. Disabled)
PWRTE = 0 (Power-up Timer Enable bit. Enabled)
MCLRE = 0 (RA5/MCLR Pin Function Select bit. RA5/MCLR is digital I/O)
LVP = 0 (Low Voltage Programming Enable bit. RB4/PGM is digital I/O, Low Voltage Programming is off)
Как и любая цифровая схема, данный регулятор не нуждается в налаживании, и в случае правильной сборки и исправных деталей начинает работать сразу. Но, как оказалось, это только в теории. На практике бывает, что контроллер в лучшем случае не работает вообще, и в этом случае проблему отыскать сравнительно легко. Это или фьюзы неверно выставлены, ошибка в монтаже или еще что-то подобное, глобальное.
Гораздо хуже, когда процессор вроде работает, есть индикация, но в нагрузке творится что-то непонятное. В таком случае очень полезно посмотреть осциллограммы на входах и выходах процессора RA4 и RB3.
К сожалению, не у всех под рукой есть осциллограф. С расчетом именно на такой случай я добавляю тестовую прошивку, которая позволит определить, есть ли на входе RB3 сигнал с частотой 100Гц с детектора нуля.
Прошивка
Версия 1 от 09.04.13: (доступно зарегистрированным пользователям)
Данная прошивка предназначена только для указанной цели, больше ничего она не делает. Фьюзы для этой прошивки такие-же, как и для основной прошивки. Она работает с рассчетом, что используется внутренний тактовый генератор на 4MHz. Результат работы выводится на светодиодный индикатор.
Значения отдельных светодиодов индикатора указаны на рисунке ниже:
Фактически индикаторы означают следующее:
0-20 Hz - импульсов скорее всего нет вообще
<93 Hz - импульсы следуют с сильно низкой частотой
с 94 по 106 Hz - норма (с учетом погрешности калибровки внутреннего генератора на 4MHz)
>108 Hz - импульсы следуют слишком часто
Возможна ситуация, когда горит одновременно несколько светодиодов, что означает, что обнаружены импульсы, следующие с разными интервалами (частотами), чего в нормально работающем детекторе нуля не должно быть, максимум - пара соседних из "нормального" интервала
Наконец регулятор обзавёлся печатной платой, которую разработал и любезно предоставил RN3QNR
Печатная плата в формате .LAY: (доступно зарегистрированным пользователям)
Выглядит в собранном виде это так:
Для регулятора готова новая прошивка, которая позволяет работать в одном из двух режимов. Параметры каждого из режимов (время и мощность форсированного разогрева, время до отключения и мощность при отключении) могут быть выставленны индивидуально в режиме настроек.
Читайте про новую прошивку здесь
Даташиты
- Войдите или зарегистрируйтесь, чтобы отправлять комментарии
ОБСУЖДЕНИЯ
Интересно, почему чаще используется программное управление симистором в момент перехода сетевого напряжения через ноль? Ведь можно упростить схему используя специализированый оптосимистор, например МОС3063. В аналоговых устройствах успешно им пользуюсь. Или есть особенность при связке с микроконтроллером? Только начинаю изучать pic16F628A...
Спасибо за схему, попробую повторить и приспособить для своих нужд, а именно регулировать сварочный ток по первичке, взяв мощнее симистор. До недавно успешно пользовался схемой на К1182ПМ1, но нечаяно спалил её, а новую тяжко и дорого купить.
MOC3063 и аналогичные, со встроенным детектором нуля, используются там, где нужно просто открыть симистор, например зажечь лампочку на всю катушку. Управляющий сигнал можно подавать в любой момент времени, но благодаря встроенному детектору нуля реальное открытие симистора происходит всегда в момент перехода сетевого напряжения через 0. Делается это для снижения помех, которые лезут обратно в сеть, да и режим работы самого симистора, мне кажется, облегчается.
MOC3020 и аналогичные, не имея встроенного детектора 0V позволяют открывать симистор на любом угле синусоиды, что позволяет строить схемы фазового управления мощностью нагрузки. Для того, чтоб открывать симистор на определенном угле сетевой синусоиды, процессору нужно знать о моменте переходов сетевого напряжения через 0V, чтоб, во-первых, отсчитывать задержку открытия симистора от этого момента, и, во-вторых, для расчёта периода колебаний, т.к. схема не кварцованная, да и в сети не всегда точно 50Гц может быть.
Здравствуйте.Подскажите пожалуйста,как можно зарегится на этом сайте,почему то не проходит регистрация,не отправляются письма на указанный емайл в регистациии
Были проблемы с отсылкой почты, сейчас всё работает
упакуйте пожайлуста прошивку ( .hex )в архив, в браузере белеберда какая то.
Готово, качайте.
спасибо
Поясните, плиз, назначение куска схемы с РС817?
В программировании я, увы, не спец, потому расскажите в какой программе Вы прошивали процессор, и можно ли его прошить вне схемы?
Да, и хотя бы кратко, черкните порядок работы с кнопками. Непонятно также, как включить режим без отключения нагрузки.
И еще хотелось бы узнать Ваши рекомендации по расположению элементов на плате, с целью минимизации наводок, etc.
Спасибо
Кусок схемы с PC817 формирует короткие импульсы в моменты перехода сетевого напряжения через 0.
Прошивать процессор можно в любой программе, которая работает с имеющимся у Вас программатором. Я сейчас использую PICkit 2 с программатором, который печатался в журнале "Радио" № 11 за 2010
Прошить процесcоор можно вне схемы, можно прямо в схеме - это ни на что не влияет.
Порядок работы с кнопками:
Нормальный режим: если просто включить регулятор - он встанет на последний запомненный уровень мощности.
Форсированный разогрев 1: если включить с нажатой кнопкой SA1 - регулятор выйдет на 100% мощности. Через 10 мин. или при нажатии на любую кнопку он вернется на на последний запомненный уровень мощности, переходя в Нормальный режим.
Форсированный разогрев 2: если включить с нажатой кнопкой SA2 - регулятор выйдет на 100% мощности. Через 20 мин. или при нажатии на любую кнопку он вернется на на последний запомненный уровень мощности, переходя в Нормальный режим.
Если в течение получаса в этих трех режимах не трогать кнопок, то регулятор снижает мощность на нагрузке до 0% (моргают все индикиторы сразу). Нажатие на любую кнопку возвращает в Нормальный режим.
Режим без отключения: если включить с нажатыми кнопками SA1 и SA2 - он выставит на нагрузке последний запомненный уровень мощности, как в Нормальном режиме, но автоматического отключения нагрузки происходить не будет.
Если во время работы в Нормальном или Без отключения режиме нажать любую кнопку - регулятор перейдет на режим установки мощности (моргают светодиоды), теперь можно выставить нужный уровень мощности и оставить кнопки в покое - через 3 сек индикаторы перестанут моргать, новое значение мощности будет запомнено.
Рекомендации по расположению простейшие: силовая часть должна быть отдельно от цифровой, границей служат 2 оптрона. В принципе, к наводкам схема не чувствительна.
Благодаря наличию оптронов цифровая часть гальванически развязана с сетью, но, тем не менее, в схеме присутствует высокое напряжение, поэтому при повторении конструкции необходимо соблюдать технику безопасности!
Большое спасибо!
А что надо будет поменять в схеме/прошивке, если вместо MOC3020 применить MOC3041, со встроенным детектором нуля? По идее, должно быть компактней и дешевле?!
Извините за дилетантские вопросы...
Такая замена не пройдет. Я уже писал про это парой постов выше. Почитайте про принципы фазового управления мощностью, например тут
Можно ли использовать другие симистроы, например BT137-600, а транзистор BC337?
И ещё автору: нельзя ли сделать ондикацию на 2х семисегментниках от 0 до 99?
Другие симисторы скорее всего будут работать - узел не слишком критичный к параметрам элементов. Транзистор подойдет любой маломощный n-p-n. У меня стоит какой-то первый попавшийся под руку.
А вот что касается индикации - идея отличная, и сделать ее теоретически нет проблем, надо только пару ключей транзисторных добавить и слегка перелопатить программу, но это потребует времени, а вот со временем как раз сейчас плохо.
Не могли бы ВЫ поделится исходником программы, хочется режим работы по времени отключить навсегда, заранее спасибо.
Данный hex имеет выставленные биты конфигурации?
Нет, фьюзы туда не включены
Можно ли выложить прошивку в hex с включенными битами конфигурации? Просто не могу запустить данное устройство, прошиваю PIC, включаю устройство, пройсходит индикация светодиодами как показано на видео, при упарвлении кнопками индикация исправно работает, но на нагрузке (лампа накаливания) ничего не меняется, вот вопрос на выходе RA4 должен ли быть сигнал и какой? У меня просто ничего с него не выходит. Есть ли какой то мануал по настройке данного устройства?
За ранее спасибо за ответ!
Что-то быстро не получилось в MPLab сделать прошивку с конфигурационными битами. На выходных еще пошаманю.
На RA4 сигнал должен быть, но, возможно, очень короткий, импульс с частотой 100Гц. Кода под рукой сейчас нету, точно скажу попозже. Но, чтоб сигнал увидеть, обязательно нужна нагрузка на плюс: как мы все помним, RA4 - выход с открытым стоком.
И импульсы на B3 с детектора нуля должны поступать обязательно - иначе ничего не будет работать.
Спасибо за ответ, буду копать дальше, но изначально нужно попробывать правильно прошить PIC, возможно все дело в этом. Если у Вас получиться с прошивкой буду очень благодарен.
Спасибо огромное за подробное разъяснение о битах конфигурации, установил как у Вас показано
(CONFIG = 0x2150) и все заработало, но прошил другой контроллер установил и опять проблема, прошил вновь заработало опять (проверено на лампе накаливания). Спасибо что не оставили без ответа мои вопросы. Сначало была проблема при прошивке в PICKIT2 (самодельный, полный аналог), не проходило верификацию по конфигурации Verification of configuration failed, вычитал в инете,
"В меню "Tools” можно включить опцию ”Use VPP First Program Entry", это может понадобиться для контроллеров, конфигурация которых и настройка портов не позволяет войти в режим программирования (например, для контроллеров PIC12F675 с включенным внутренним сбросом и портами, подключенными к PGD и PGC, настроенными на выход). Попробуйте включить эту опцию, если программатор выдает ошибку проверки конфигурации ('Verification of configuration failed.')."
Включил эту опцию, и все прошилось хорошо и после этого заработало, пробовал без включения опции не пошло, регулировка по светодиодам идет, а на нагрузке ничего.
Ну это так, вдруг кому пригодится, чтобы не мучались как я. Еще раз большое спасибо, будем тестить дальше Ваш регулятор.
Так и не смог запустить данное устройство, прошил PIC запустил вроде все пошло, но при отключении из сети и повторном включении лампа горит в полный накал, а индикаторы показывают половину (горят 5 штук), уже не знаю что может быть, в схеме стоит вместо MOC3020 - MOC3021.
Не расстраивайтесь, разберемся :)
Оптосимистор MOC3021 для этого регулятора годится.
Вопрос первый - пробегает ли по светодиодам волна после включения регулятора (так, как это видно на видео)?
Добавил в текст осцилограмму, сравните с сигналами в своем устройстве. Первым делом должен быть сигнал на RB3, что говорит о правильной работе узла формирователя импульса перехода через ноль сетевого напряжения. Если его нет - разбирайтесь с этим узлом. Он вообще работает независимо от всей остальной схемы.
Доброго времени суток! По поводу вашего вопроса, волна после включения регулятора пробегает, устанавливается на последний запомненный уровень. Сигнал на RB3 есть, в принципе похож на вашу осцилограмму, а вот выхода с RA4 нет. После включения лампа загорается сразу и все. Но было так что устройство работало, т.е. после включения пробегает волна, лампа моргает и устанавливается на запомненный уровень, свечение лампы согласно "уставке". Только почему то работает через раз.
Раз заработало и все, потом не извесно заработает или нет. Может ли симистор MAC15N самопроизвольно открыватся или нет ? Хотя сигнал на RA4 все равно должен был присутьствовать, а его нет. Да а у вас можно давать ссылки на фото, я бы выложил осцилограмму свою?
Добрый вечер. Ссылки вроде выкладывать можно, хотя на 100% не скажу, попробуйте. Если не получится - тогда будем разбираться.
Для проверки работоспособности узла с MOC3020 и MAC15 попробуйте отсоединить резистор R8 от ноги процесоора RA4. При висящем в воздухе резисторе нагрузка должна быть отключена. При соединении резистора с землей нагрузка должна включаться. Посмотрите, какой ток идет через резистор на землю. Для MOC3021 он должен быть в пределах от 15mA до 60мА.
Проделал все как Вы объяснили, узел MOC3021 и MAC15 работает, установил ток в линии RA4-MOC3021 25mA. И вот она радость все пошло, но радоваться пришлось не долго. Включил заработало, отключил, включил заработало, отключил, включил через 30 минут и опять лампа светит в полный накал не заработало. Индикация на светодиодах работает без нариканий, хотя как то был раз, что волна пробегала 2 раза вместо одного. Но это было всего один раз.
Странно конечно всё это.
- Можно попробовать еще ток поднять.
- Блокировочный керамический конденсатор 0.1мкф на ножки питания процессора обязательно.
- RA5 попробовать на +5 резистором 1к подтянуть.
-Поменять в фюзах значения бита !PWRTE на 1.
Хорошо бы осцилограммы посмотреть в работающем и неработающем состояниях.
Хорошо попробую, и осцилограммы постараюсь сделать.
Где взять печать, Заранее спасибо!
К сожалению, нет печатки. Всё было собрано на макетке.
Может кто нибудь из гостей развёл и поделиться!
Подскажите, если кто знает: можно ли в этой схеме применить ТС160, и почему симистор(ТС160) при подключении в сеть с лампой накаливания в нагрузке, находится в полуоткрытом состоянии? Быть может он пробит? Но без напряжения при прозвонке между катодом и анодом высокое сопротивление. Что может быть?
Алексей, если Вы сомневаетесь в симисторе, то для его проверки можно в цепи управляющего электрода вместо оптисимистора MOC3020 просто попробовать поставить кнопку ( конечно, соблюдая технику безопасности, т.к. там будет 220 вольт. При разомкнутой кнопке нагрузка должна быть выключена, при замкнутой - включена. В некоторых схемах видел для тс160 резисторы R1и R2 ставят 1K, а не 220 Ом.
Для проверки схемы можно так-же попробовать оптосимистор MOC3020 нагрузить сразу на нагрузку (без симистора MAC15), например на лампочку на 220В, но ее мощность не должна превышать 10-15Вт.
Спасибо Вам большое за ответ, попробую так сделать.
Здравствуйте всем! Очень понравилась данная конструкция , терморегулятора . Автору большое спасибо.Сейчас идет стадия сборки этого регулятора , монтаж печатный так что как будет закончен тест выложу эскизы.
Кто ищет тот находит , кто борится тот побеждает!!!
Все здравствуйте , как и обещал после тестирования могу поделиться эскизом печатной платы.
Кто ищет тот находит , кто борится тот побеждает!!!
Да если кому надо пишите на mail (rn3qnr@mail.ru)
Кто ищет тот находит , кто борится тот побеждает!!!
Если есть желание поделиться с общественностью, я могу тут выложить Вашу печатку.
В качестве симистора применил BTA12 600В ,купленные мной MAC15 оказались бракованными (обидно ). Все симисторы из коробки были изначально пробиты , нагрузка сразу загоралась , узел регулировки и индикации работал без нареканий . Прошивал программатором PICKIT2 ,биты конфигурации доделывал в hex файле в MPlab.Вот краткое изыскание моих действий . Автору спасибо!!!!!
Кто ищет тот находит , кто борится тот побеждает!!!
Еще вопрос к автору , назначение перемычки на RB0?
Кто ищет тот находит , кто борится тот побеждает!!!
Это небольшой задел на будущее - хочу сделать при наличии перемычки по умолчанию режим без автоматического отключения нагрузки через 30 мин.
Пока (в текущей прошивке) это не реализовано.
У всех ли завелось это замечательное устройство? Я бьюсь с ним уже давно, нет выхода импульсов с RA4 (скорее всего там сразу высокий уровень). Нагрузка лампа на 15Вт сразу на оптосимисторе, загорается в полный накал. Подбор резистора в цепи управление оптосимистора приводил к стробоскопическому эффекту на лампе, либо вообще не горела. Индикация по светодиодам рабочая.
Уважаемый MadVolt! Не могу вручить Вам медаль "За волю к победе", но чтоб как-то помочь, выложил тестовую прошивку, которая, надеюсь, поможет Вам запустить этот регулятор. Смотрите update в конце поста.
Все свершилось ! Устройство заработало! Благодаря Вашей прошивке для тестирования удалось определить, что на входе RB3 частота 20Mhz или менее того. начал копать и оказалось что проблема скрывалась в транзисторе VT1 в цепи формирования импульса перехода через ноль. Заменил транзистор на другой и все пошло !!! Хотя перед пайкой проверяю все детали! Спасибо Вам огромное за данное устройство !!!
Отлично, приятно слышать. Заглядывайте еще, постараюсь побыстрее выложить новую прошивку с возможностью настройки параметров.
Обязательно буду заглядывать к Вам!
здраствуйте немогу зарегистрироваться на вашем сайте не приходит письмо на эмейл
К сожалению, в настройки отсылки почты вкралась ошибка. Теперь исправлена.
Здравствуйте уважаемые радиолюбители , давно я здесь не появлялся.К автору предложение выложить мою печатку , как вы на это смотрите ?
Кто ищет тот находит , кто борится тот побеждает!!!
Смотрю положительно, я уже писал чуть раньше. Присылайте на root собака linker.ru , я выложу.
Страницы