Печка на Arduino
- Войдите на сайт для отправки комментариев
Доброго времени суток форумовчане, прошу Вас о помощи, мне в нелегком нашем деле.
Навоял тут скеч для управлением газовой печкой и зашел в тупик.
Вот код:
Moderator : пожалуйста, вставьте код правильно (возможно, новым сообщением в тему), как описано в http://arduino.ru/forum/obshchii/vstavka-programmnogo-koda-v-temukommentarii
Проблема заключается в том, что при розжиге пламя не стабильно и сигнал не устойчивый (то пропадет, то снова загорится и на выходе датчика такая -же петрушка), что не дает запустить печку.
Поставить задержку не вариант, так как если не загорелась вовсе напустит газу прежде чем отработает защита и вырубит все.
Думаю ,что нужна какая нибудь команда которая будет слушать 7 пин некоторое время и фиксировать периодическое появление уровня в течении небольшого времени (и считать, что так и надо), пока не разгорится.
Я такую команду не знаю, помогите пожалуйста реализовать алгоритм защиты от затухания пламени и восполнить пробелы в моих знаниях.
Баловался с аналоговым выходом, как вариант и там подобное творится.
дом то застрахован?
Думаю ,что нужна какая нибудь команда которая будет слушать 7 пин некоторое время и фиксировать периодическое появление уровня в течении небольшого времени (и считать, что так и надо), пока не разгорится.
Я такую команду не знаю,
Боюсь, такой команды никто не знает. И знаете почему? Потому, что её нет.
«Без умолку безумная девица …» :)
Вот скеч:
Может "Void loop()" можно как-то тормознуть (остановить цикл), пока не появится на 7 пине "HIGH"
Почему сразу дом, это гараж, и почему сразу должно случится, что-то плохое, ведь датчики для этого и ставятся, что-бы защитить.
Если есть дельный совет или опыт, рад буду если поделитесь.
Если есть дельный совет или опыт, рад буду если поделитесь.
Просмотрел код, почитал тему ... начните лучше с безопасных проектов, потренируйтесь, а к этому вернётесь через пару лет.
Это единственный возможный дельный совет. Надеюсь, Вы были рады его услышать.
Потому что система безопасности не отделена от системы управления. Сейчас ночь, может быть завтра объясню.
Это тестовая версия для обкатки принципов и проблем. Одна вылезла с датчиком, скеч и схема будут меняется .
Так у кого-нибудь есть идеи как решить проблему с датчиком?
Рад буду услышать идеи по реализации схемы или скеча типа этой:
Вопрос: как должна выглядеть "идея по реализации схемы или скетча"?
Думаю как угодно, только решала бы задачи
Тогда идея: ставим рыле и в цыкле его переключаем.
1. Если ты хочешь, чтобы контроллер вел себя по разному в разные моменты, то определяются СОСТОЯНИЯ, и правила переходов между ними. В СОСТОЯНИИ_№_1 контроллер одним образом реагирует на датчик пламени, в СОСТОЯНИИ_№_2 - другим. По истечении времени состояние изменяется.
2. Если ты не знал написанного выше еще ничего, если не понял - то строго НЕ НУЖНО делать задуманное.
3. Ты, имея очень слабые представления не то что о программировании, но и об автоматике в целом, делаешь устройство в котором есть клапан газа и свеча поджига. Мне кажется, что такие устройства можно классифицировать как СВУ. Без шуток.
4. Датчик из комплекта ардуино, это не датчик горения, а противопожарный датчик пламени. У него задача обнаружить горение, а не погасание. В горелках используют ионные датчики или термопары.
5. Система безопасности проектируется максимально простой и ОТДЕЛЕННОЙ от контроллера. Не программа, а физически отдельная система. Котел видел нормальный или плиту с газконтролем? Там система безопасности (например на плите) - термопара и к ней электромагнитный клапан. На время поджига ты её отключаешь, вдавив кран, потом она работает автономно. Примерно так и проектируют газовую автоматику. Контроллер запрашивает отключение у системы безопасности, та НА ВРЕМЯ отключается. Повторно запросить можно лишь через фиксированное время. Систему безопасности можно сделать на 555-ом таймере, можно даже на отдельной ардуине, если аккуратно. Она должна строго отключать газ при отсутствии пламени. Не строчкой в твоем, простите, "коде", а физически отдельно. На время поджига ты её отключаешь. Задача сделать её так. чтобы при любых командах контроллера её нельзя было отключить на опасное время.
------------------------
тебе совет: сделай систему безопасности сперва. Вот с кнопкой временного отключения и лампочкой работает или нет и есть пламя или нет. Поиграй с ней, зажигая горелку вручную, кнопкой (ты ж поджиг уже соорудил, как я понял?). Убедись, что все работает. Посмотри реакцию на перекрытие газа, на задув и т.д. Потом к ней приладишь автоподжиг - это будет уже простой задачей.
Начни с описания работы системы безопасности на бумаге. В состоянии покоя, горения, поджига, неудавшегося поджига, повторного ... и т.д Это совсем не так очевидно, как кажется на первый взгляд.
Вот тебе простой пример неочевидности - я уже про всю систему целиком. Представь:
Поджиг - неудача, защитное время прошло, вторая попытка. В теории - после продувки, а вентилятор продувки умер... ну мало ли почему - болел долго. В камере куча смеси газа с воздухом и ты даешь искру!... При закрытой камере "Бабах" - небольшой, но камера точно выйдет из строя. Выходов из положения много - не обязательно еще датчиками обкладываться, но продумать нужно и такое. Всякую разумно вероятную неисправность нужно предусматривать. Не нужно закладываться на марсиан-террористов, но на отказ мотора вентилятора продувки (например) - нужно.
Да, я полностью с тобой согласен, но я пока делаю прототип, и буду потихоньку пытается уничтожить его разными способами имитируя отказы.
По датчиками не определился ещё какие лучше ставить, начал экспериментировать с датчика пламени, так как он может отследить момент поджига и наткнулся на проблему с нестабильным срабатыванием.
Я так понял, что причина состоит в том, что при правильной смеси пламя синее и не излучает ик, так как пламя зажигалки красного цвета.
Жуть. Я даже смайлик не ставлю. Может правда лучше модель парусника купить и "долгими зимними вечерами"?
Фокс, ты распиши подробней что за датчик плаени, клапан, горелка, котел, вытяжка и так далее. Может вечерком что подскажу. Сейчас работать надо.
Ребят а опыт откуда возьмется он-же: -"сын ошибок трудных". Неужели вы родились с паяльником в одной руке и клавиатурой в другой?
Прошу не застрять тему парусниками и другими штуками не относящимися к вопросу, только по делу.
Котел использую от печки ЗАЗ с его моторчиком, клапан для подачи газа поставил автомобильный (с фильтром который 12в), поджига организован на автомобильной свечке и подключенной к ней высоковольтный преобразователь. Датчик пламени использую стандартный для ардуинки с ик диодом.
Все это подключено к силовой плате с полевыми транзисторами p-типа.
Ардуино использую для отладки. Набросал по быстрому скеч, но упёрся в то что датчик по началу не видит в котле пламя, так как оно горит не стабильно
А если Вы сразу на газ кидаетесь, то, боюсь, некому потом будет ошибки трудные совершать.
Печки от ЗАЗика я никогда не использовал.
Куда выхлоп идет? Надеюсь не в помещение? Диаметр и высота дымовой трубы?
И почему не ижекционная горелка? Можно зажечь запал (он горит постоянно), а он в свою очередь будет поджигать основную горелку при открытии клапана. На мой взгляд это проще и безопасней.
ИК диод не видит газовое пламя, если оно конечно не коптящее. На пламя масляной горелки он хорошо реагирует, а вот для газа нужен датчик на другом принципе. Доступных по цене я не встречал, но полно схем, и можно спаять самому. У меня их много и могу выложить если надо.
Пламя можно отслеживать разными способами.
Самый простой на мой взгляд:
Заводим счетчик counter
Опрашиваем датчик пламени каждые 20 мс.
Если пламя есть counter = 50;
если нет if(counter > 0) counter--;
В лупе следим за counter
если counter == 0 значит прошла 1 сек с момента отсутствия пламени и нужно отключить подачу газа
Думаю ,что нужна какая нибудь команда которая будет слушать 7 пин некоторое время и фиксировать периодическое появление уровня в течении небольшого времени (и считать, что так и надо), пока не разгорится.
Я такую команду не знаю,
Боюсь, такой команды никто не знает. И знаете почему? Потому, что её нет.
как нет? А встать, смирно...
как нет? А встать, смирно...
Она не седьмой пин слушает.
как нет? А встать, смирно...
Она не седьмой пин слушает.
Нормальная тема, я для посмотреть останусь.
Навоял тут скеч для управлением газовой печкой и зашел в тупик.
Фсёпрально, хриновый из тя вОяльщег :)))
Слухай сюды: тебе нужно сделать многостадийный конечный автомат с такими функциями как :::
0 - контроль пламени (основное) (предложу ионизационный способ, для начала)
1 - первичная продувка
2 - подготовка к запуску горелки
3 - поджиг пламени
4 - (3) + пуск газа + (0)
5 - (4) + (0)
6 - (0) + таймаут
7 - (0) + таймер горения
8 - обработчик пламени (это (0) + твой ИК диод вместе)
9 - продувка камеры после аварии (любой!)
Ну, тут могут быть ещё варианты контроля, всякие, - не помешают!
Темка понравилась, послежу, почитаю.
Почему ЗАЗ печ? Потому, что она есть и остальное тоже было оставалось собрать. Горелку нужно специально делать.
Выложите схемку пожалуйста, буду очень признателен.
Слухай сюды: тебе нужно сделать многостадийный конечный автомат с такими функциями как :::
0 - контроль пламени (основное) (предложу ионизационный способ, для начала)
1 - первичная продувка
2 - подготовка к запуску горелки
3 - поджиг пламени
4 - (3) + пуск газа + (0)
5 - (4) + (0)
6 - (0) + таймаут
7 - (0) + таймер горения
8 - обработчик пламени (это (0) + твой ИК диод вместе)
9 - продувка камеры после аварии (любой!)
Ну, тут могут быть ещё варианты контроля, всякие, - не помешают!
Темка понравилась, послежу, почитаю.
А что я не так сделал вроде все также как вы сказали:
1. Продувка врубаем 13 пин
2. Не понимаю, что под этим подразумеваете
3. Не понятно как это сделать без пуска газа
4. Здесь пускаю газ (врубаю 8 пин) и включаю искру (врубаю 12 пин), жду 2 сек. и вырубаю 12 пин, так как долго нельзя, сгорит умножитель.
5. Проверяем сигнал с датчика
6. Если все получилось то и нечего ждать работаем
7. Не понятно пока
8. Это реализовано в цикле постоянно следим за датчиком, если потухло и сигнал пропал, то вырубаем клапан газа (перекрывает газ) и ждём пока идёт продувка и отрубаем вентилятор (13 пин)
Остальное пока не доделано, тормазнул контроль пламени.
Логика совпадает с вашей. Я не претендуют на звание хорошего "овальщика" я ещё учусь, но я накидал минут за 5 этот скечь для проверки логики и работоспособности, по этому прошу перестать мне говорить о хреново запилином скетче, лучше предложите пример если конечно не трудно.
В дальнейшем планирую запилить систему диагностики, одна из функций контроль работы вентилятора, к примеру буду мерять ток, если остановился то ток вырос, овария и вырубаем газ и отрубаем все.
Эти схемы я не собирал. Скачал с Интернета. Есть еще, но они сложнее и работают от сети.
Собирал свою. Она проще. Но её нет в электронном виде. Завтра найду листок и отсканирую или перерисую.
А есть, что нибудь на 12в.
А есть с меньшим количеством деталюх, для компактности.
Что использовать в качестве электрода?
Эти схемы я не собирал. Скачал с Интернета. Есть еще, но они сложнее и работают от сети.
Собирал свою. Она проще. Но её нет в электронном виде. Завтра найду листок и отсканирую или перерисую.
Вот ссылка на то, что я собирал. Очень давно. Одна из первых схем в новом (тогда, для меня) хобби! ;)))
а картинку повторю прям тут. Как там и написано, нарисовано в чем-то страшном! ;)))
Использую в автобусе, к 12 вольтам через КРЕНку 9 вольтовую, для стабильности.
100 Ом внизу - это как-бы клапан газа ;))). Это уже много лет работает в путешествиях. Слева - это подключение электрода. По ссылке всё написано.
Электроды в керамике продаются в магазине запчастей для колонок и котлов (газовые магазины).
В дальнейшем планирую запилить систему диагностики... овария и вырубаем газ и отрубаем все.
И...
1. Продувка врубаем 13 пин
2. Не понимаю, что под этим подразумеваете
3. Не понятно как это сделать без пуска газа
Слухай сюды: тебе нужно сделать многостадийный конечный автомат с такими функциями как :::
0 - контроль пламени (основное) (предложу ионизационный способ, для начала)
1 - первичная продувка
2 - подготовка к запуску горелки
3 - поджиг пламени
4 - (3) + пуск газа + (0)
А вот допустим, что между шагами 2 и 3 у нас сработал контроль пламени... и шо, мы тупо ещщё туда гаЗку поддадим, шоб бабахнуло посильнее??? :)
Посему до диагностики нам ещё очень далеко, с таким скетчем.
И в качестве PSа - оОочень крайне рекомендую найти мастерскую по ремонту подогревателей типа вебасто, эбер и прочих прамотроников, дабы посмотреть ИХ логику работы! Далее, я думаю, что вопросы уже будут более "фтему".
Берите датчик пламени от вебасто или эберспехер. Это штырь меняющий свое сопротивление в зависимости от пламени, никакой электроники, надежно.
Эти схемы я не собирал. Скачал с Интернета.
И правильно сделал, что сказал об этом.
В качестве примера приведу тепловую пушку "элитеч" с микропроцессорным управлением. Так вот, если там енти два электрода не правильно выставить, пушка будет "вымаргивать" ошибку *неисправность ЭБУ* --- странно, да?
А в "планарах" , шо воздушные, дык там акромя штифта стоит ещё и УФ (или ИК... нипомню) датчик с стеклянным светофильтром... вот попробуй его не тем боком поставь - ухх и секасу хапнешЪ :))
Так шо там вроде всё просто, но тока с виду.
Можно горелку сделать, а можно купить. Например УГОП-16. И не обязательно новую. На пунктах приема металла полно сдают старых котлов. Обычно от 11 до 23 кВт мощностью. Цена вопроса 50-100 р.
Вот схема датчика газового пламени, которая работает у меня. Реагирует на пламя голелки портативного газового баллончика и пламя запала в котле.
VT2 желательно с большим усилением. Коллекторный ток в моем случае порядка 50 мкА.
VT1 у меня N7001
R1 можно побольше, R2 - поменьше.
Вместо или последовательно с ледом можно включить оптопару. Или вообще в качестве нагрузки VT1 реле или клапан (заменить VT1 на подходящий).
Что представляет из себя пламя. Схема из Интернета.
По моим прикидкам ток через электрод порядка десятых долей мкА. Он зависит от формы электрода и величины пламени, и может еще чего.
Схема из Интернета.
По моим прикидкам ток через электрод порядка десятых долей мкА.
Он зависит от формы электрода и величины пламени, и может еще чего.
Инет - великая сила.
Ну с величиной тока ты не ошибся.
... вот принёс ты свою печку из холода в тепло - и... хрен ты её запустишь. Конденсат, его величество!
И всё-таки не серьёзно всё это. Ещё раз предложу "подсмотреть" у брендов как они этот вопрос решили.
Правильно ли я понял, что датчик ионизации боится конденсата и сырости?
возможно подойдет что-то типа этого или этого
UPDATE. хотя это, похоже, просто электроды, как раз для такого метода (ионизационного) измерения пламени, как советует Pyotr
Вся электроника боится конденсата и сырости. Не пробовали включать только что с мороза телевизор например? Датчик конденсата стоял в самом первом отечественном ВМ12, и блокировал включение видика пока не просохнет.
Pyotr а маркировку транзисторов не подскажеш, что-бы не перерывать катологи, а использовать уже проверенные
VT2 я ставил кажется S9015. Любой маломощный p-n-p с h21э более 150-200. BC807, КТ3107...
VT1 ставил 2N7001 для универсальности. Я подключал в качестве нагрузки и оптрон, и реле. Если слаботочная нагрузка (до 10 мА), то можно и биполярник поставить npn.
Pyotr подскажи пожалуйста, собрал я схемку, но она не работает от пламени.
Если касаешся электрода, светодиод зажигается, значит схема собрана верно.
Тестирую зажигалкой (цепляю на железку корпуса зажигалки минус) и пробуют подносить пламя к электроду, но не чего не происходит.
Может есть особенности или нужно добавить ещё один каскад?
после loop()
ждем пока не появится high на 7 пине. я просто не знаю как написать это на ардуино
while(!PORTD |=(1<<PD7) return;
Вот с зажигалкой не пробовал.
Выскажу соображения. Ток проводят только ионы. Молекулы газовоздушной смеси не проводят ток. Пламя должно быть достаточного размера, контактировать с электродом и не отрываться от горелки (что бывает при избытке вторичного воздуха или высокой скорости смеси).
Для увеличения чувствительности я брал в качестве электрода кусок нихромовой спирали. 2-3 витка слегка растягивал и помещал в пламя.
Попробуй исключи R1. Замерь напряжение на R4 с пламенем и без. Можно и второй каскад добавить. Но лучше потестировать на реальной горелке.