На создание этого проекта подтолкнули проекты двух паяльных станций с LCD и семисегментными индикаторами (огромное спасибо их создателям), желание получить паяльную станцию и опробовать свои силы в программировании микроконтроллеров.
Итак, основные отличия от вышеупомянутых станций - управление станции энкодером с встроенной кнопкой, простенькое меню станции, позволяющее контролировать ряд параметров и возможность автоматической калибровки станции под конкретный паяльник.
Схематически станция очень похожа на варианты Михи и Павла:
Пояснения к схеме: специально упущены моменты питания. Каждый решает сам, каким образом оно будет организовано. То ли это будет один источник 24В с понижение до 5В для питания цифровой схемы или это будут две обмотки трансформатора : К примеру, у меня для питания нагревателя используется блок питания от ноутбука 19В 3,42А, который у меня был "лишним". В идеале - это 24В и ток не менее 2А. В предлагаемой плате уже стоит стабилизатор на 5В и сглаживающий конденсатор, но стабилизатор рассчитан на использование без радиатора. Хотите на радиатор - вынесите стабилизатор за плату.
Отсутствие кварцевого резонатора обусловлено тем, что частоты и стабильности внутреннего генератора вполне достаточно для нормальной работы станции.
По поводу LCD - использовать можно любой индикатор 16 символов на 2 строки с контроллером HD44780 либо аналогичным. Главное соблюсти следующие условия:
На моей плате на 10 контактный разъем LCD дополнительно выведено напряжение подсветки через ограничительный резистор (пин 4) и напряжение конраста (пин 8).
Подсветку можно делать, можно не делать. По даташиту смотрим куда подключать. Ну и тогда прибавляем ток подсветки к требованиям к БП для питания цифровой части схемы.
Используется АТМега 16 только из-за размера флеша в 16Кб ну и просто была под рукой. По идее, та прошивка, которая есть на данный момент, влезет и в Мегу 8, но использует 98% её памяти.
Усилитель термопары выбран LM358N из соображений дешевизны и достаточности для данного проекта. Как возможность дальнейшего апгрейда остаётся второй усилитель микросхемы.
Транзистор для ШИМа тоже используется любой подходящий. Греться он практически не должен, потому как работает в ключевом режиме. Я использовал IRFZ44N, который подсмотрел в станции от Михи, так что спасибо ему за наводку. Чем меньше сопротивление открытого канала - тем лучше. У IRFZ44N оно равно 0,022 Ом.
Энкодер я взял тот, который нашёл в радиомагазине. Подойдёт абсолютно любой механический (для оптического нужно будет подать на него питание и убрать подтягивающие резисторы с выходов). Можно даже и в этом варианте убрать подтягивающие резисторы, включив внутренние Меги, но я не особо хочу ими рисковать :. Ножки у моего энкодера были не промаркированы, так что где что определял методом научного тыка. Если не найдёте с кнопкой - не расстраивайтесь. Придется тогда просто вынести отдельно кнопку, что будет, правда, не настолько удобно, но всё же как вариант.
Пищалка использовалась без генератора. Если поставите с генератором - будет каша. В таком случае маякните мне и я внесу необходимые изменения в прошивку.
Немного про усилитель термопары. Постоянный резистор обратной связи я сначала поставил 120 кОм как в одном из вариантов паяльных станций, но толи из-за того, что усилитель с индексом N, а не просто 358, толи из-за паяльника, но такого сопротивления оказалось мало. Пришлось ставить два на общее сопротивление 164 кОм. После настройки одно пришлось убрать (закоротить) и оставить одно на 82 кОма. Этого оказалось достаточно.
Резистор R6 можно не ставить. Практика показывает - если сгорит транзистор ШИМа и будет пробой - скорее всего накроется и порт МК или весь МК.
Паяльник использовался как и в предыдущих станциях для Solomon'а с такой же распиновкой (картинка стыбрена, разумеется):
Схема сначала у меня работала на макетке, той, которая без пайки. Нормально. Температура не скачет.
Пара очень важных моментов:
1. Контакт S (крайний правый) полевика должен быть подключен непосредственно к земле питания нагревателя, а не к земле в другом месте. Несоблюдение этого условия в первоначальном варианте моей платы привело к тому, что при включении нагрева шли очень сильные помехи на вход усилителя термопары, которые сажал на землю конденсатор С1 вместе с полезным сигналом и температура становилась равна нулю.
2. В первоначальном варианте платы не было С3 и когда включался или поддерживался нагрев - температура делала скачёк и практически не могла установится на одном уровне. Разместить его нужно как можно ближе к микросхеме усилителя между ножками 3 и 4 (в плате он уже есть).
3. В процессе настройки температуры (настраивал по термопаре мультиметра прикрепленной к самому кончику жала) выяснилось, что термопара паяльника (или мультиметра?) довольно нелинейна и если её настроить на 280 градусах, то комнатную температуру она будет занижать уже на 10-12 градусов. Я так и оставил. Главное чтобы было правильно в рабочем диапазоне. Со временем можно будет попробовать программно внести коэффициент. Ещё одно - от момента установки температуры по термопаре паяльника до установки её на жале проходит секунд 15. Не стоит об этом забывать.
Теперь о работе станции. Сразу после включения станция проверяет работоспособность ЕЕПРОМа, а точнее таблицы с калибровочными данными. Если они неверны (а так и есть при первом включении), станция попросит перезапустить её с нажатой кнопкой, после чего запустится процедура калибровки. Процедура эта довольно длительная из-за желания минимизировать влияние тепловой инерции паяльника. В ходе калибрования паяльник будет разогрет от 40 до 420 градусов. В это время будет отображаться устанавливаемая температура и текущая температура. После окончания калибровки станция перейдёт в рабочий режим. На данный момент процедура калибровки довольно примитивна, но у меня уже есть идеи для более правильной калибровки, которую я постараюсь реализовать в следующих прошивках.
Если всё ОК, то сразу после включения станция сделает "мягкий" разогрев, чтобы уменьшить нагрузку на блок питания, потому как холодный нагревательный элемент имеет существенно меньшее сопротивление, нежели в рабочем состоянии.
В основном режиме станция показывает выбранную и текущую температуры.
Вход в меню реализован через нажатие кнопки в рабочем режиме. Первые три пункта - выбор пресетов температур. То есть, нажали кнопку, вошли в меню на первый пресет, для его выбора - снова нажали кнопку. Если нужно - покрутили энкодер, выбрали второй или третий пресет, нажали кнопку, получили нужный выбор температуры.
Четвёртый пункт меню - вход в подменю настройки пресетов. Тут тоже всё просто. Выбрали пресет, нажали кнопку (возле значения высветились знаки "<" и ">"), выставили температуру пресета, нажали кнопку - настройка запомнилась в ЕЕПРОМе. Дальше выбрали выход в основное меню.
Пятый пункт - запуск калибровки. Нажатие на кнопку - запуск процедуры. В принципе можно убрать этот пункт, т.к. калибровку можно запустить включив станцию и удерживая кнопку.
Шестой пункт - настройка таймера спящего режима. Перед переходом в спящий режим станция три раза коротко пикнет, после чего один раз длительно пикнет (примерно 1 секунду) и выдаст на экран сообщение о том, что она заснула. Выход - нажатие кнопки. В спящем режиме жало немного подогревается.
Седьмой пункт - возвращение в рабочий режим.
Во время навигации в меню паяльник переходит в режим очень слабого нагрева из соображений безопасности.
Прошиваем либо на программаторе, либо выводим разъем на плате. Я вывел на плате. После прошивки отключаем программатор и только после этого включаем станцию, иначе будут глюки.
Теперь по поводу фьюзов. Опишу только что нужно, а уже кто в каком программаторе шьёт - так и будете выставлять. Итак, выставляем работу от внутреннего генератора 8 МГц. По умолчанию Мега установлена на 1МГц, от чего работать она не перестанет, но будет "вяло" отзываться на энкодер и изменения температуры, ну и таймер будет некорректно работать. Дальше, отключите JTAG - его пины используются. Выставляем BODEN и BODLEVEL, так, чтобы при напряжении ниже 2,7В (можно 4В) МК правильно выключался (нужно для корректной работы, потому как в устройстве используется ЕЕПРОМ).
Вот собственно и всё. Надеюсь, устройство понравится.
Файлы:
Печатная плата в формате SL 5.0.
Прошивка МК.
Вопросы, как обычно, складываем тут.