Терморегулятор на микроконтроллере PIC16F84 датчикe DS18B20

Поклонники продукции Microchip Technology Inc тусуются тут.
Ответить
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

nvz писал(а):...Теперь я со своей задачкой...
Никакого отношения к теме "Терморегулятор на микроконтроллере PIC16F84 датчикe DS18B20" Ваша задачка не имеет. Давайте не смешивать и так сплошная каша в теме - ничего не найти.
Реклама
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

Ясно, спасибо за ответ.
Реклама
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

nvz писал(а):Ясно, спасибо за ответ.
Я не отказываю в помощи, создайте отдельную тему, или через личку.
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

Тема: микроконтроллер в автомобиле.
Реклама
Эиком - электронные компоненты и радиодетали
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Ср мар 23, 2011 13:22:35
Откуда: Kiev

Сообщение yuzd »

Добрый день. Уважаемый Soir, подскажите можно ли модернизировать вашу разработку двухвыходного термостата с стр.38 до трех, или четырех выходного? т.е. три-четыре установки температуры и три-четыре гистерезиса? Мне даже лучше устройство вообще без дисплея, тоесть в исходниках например установить температуру и гистерезис. Главное чтоб выходов побольше было. Вот http://diodak.com/elektronika/zasilacz/ ... rownik.pdf http://diodak.com/elektronika/zasilacz/zasilacz.html нашел подобное устройство на atiny2313, но в нем меня не устраивают темпереатурные пределы. а изменить их нелязя.
Реклама
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

Можно. Давайте конкретнее чего и сколько.
Реклама
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Ср мар 23, 2011 13:22:35
Откуда: Kiev

Сообщение yuzd »

Четыре выхода на нагрузку, с четырьмя регулировками температуры, и гистерезиса. Схема для охлаждения. И если можно, то еще вариант с четырьмя выходами, только три из них на охлаждение, а четвертый на обогрев. Заранее благодарен!
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

Под конкретнее я понимаю численные значения температур и гистерезисов, раз они будут жестко зашиты в прошивку, и разрешающую способность. Могу их затолкать в EEPROM. Тогда Вы сможете самостоятельно при прошивке МК задавать новые значения.
Насчет нагрева/охлаждения возможен вариант прямых и инверсных выходов, а Вы уже будете подключать на выбор.
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Ср мар 23, 2011 13:22:35
Откуда: Kiev

Сообщение yuzd »

а может можно вашу схему с индикатором переделать, чтобы кнопками все-таки изменять параметры. Насколько я понимаю осталась свободная 4я ножка, а если схему сделать не на 4х значном индикаторе, а на 3х, то освободится еще одна ножка для четвертого выхода. К сожалению пока в контроллерах не очень, потому возможно мыслю не правильно насчет ножек и выходов.
Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

Сообщение Аlex »

Сделайте на контроллере с бОльшим кол-вом ног. Зачем голову ломать, думавши что-бы "выкинуть" из схемы ?
Всё равно, ув. Soir'у придётся практически всю программу переделывать.
Можно взять PIC16F876A. У нас, к примеру, он стоит всего на 20-30 рублей дороже 628-ого. При цене последнего в 100 руб.
Контактная информация:
Встал на лапы
Аватара пользователя
Сообщения: 86
Зарегистрирован: Вт авг 19, 2008 14:48:19
Откуда: Харьков

Сообщение Cricket2107 »

Всем мяу! Сделал тоже терморегулятор с датчиком DS18b20 только на меге 8. Все работает нормально, вот задумываюсь я о помехах возможных , что если МК зависнит и не выключит или не включит нагрузку? Это будет неприятно. Поэтому я хочу включить в нем сторожевой таймер но не знаю как. Я кодю в CVAVR там в мастере можно включить сторожевой таймер и можно через фьюзы. В чем разнича между включением таймера через CVAVR и если во фьюзах тупо включить этот таймер? Поправте если я чо не допонимаю , короче подскажите как сделать защиту от зависаний?
Муррр.
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

yuzd писал(а):Четыре выхода на нагрузку, с четырьмя регулировками температуры, и гистерезиса. Схема для охлаждения. И если можно, то еще вариант с четырьмя выходами, только три из них на охлаждение, а четвертый на обогрев.
Если без индикаторов, то переписать гораздо проще. Убрать лишнее и чуть-чуть добавить… Заняло 15 минут времени.
Логика работы простая. Если измеренная температура больше либо равна установленной включается охлаждение, нагрев отключается. Если измеренная температура меньше установленной на величину гистерезиса охлаждение выключается, включается нагрев.
Нагрев и охлаждение это просто инверсные по отношению друг к другу выходы МК.
Канал 1 RB0 (выв. 6 МК) - охлаждение, RB4 (выв. 10 МК) - нагрев.
Канал 2 RB1 (выв. 7 МК) - охлаждение, RB5 (выв. 11 МК) - нагрев.
Канал 3 RB0 (выв. 8 МК) - охлаждение, RB6 (выв. 12 МК) - нагрев.
Канал 4 RB1 (выв. 9 МК) - охлаждение, RB7 (выв. 13 МК) - нагрев.
При ошибке считывания температуры с датчика все выходы отключаются.

Запись установок.
При прошивке МК в память EEPROM необходимо занести данные.
Данные должны быть представлены в 16-тиричном формате. (Для перевода воспользуйтесь калькулятором Windows). Защиту от дурака не делал, поэтому думайте о корректности данных. Числа могут быть только целые, в пределах от 0 (0x00) до 125 (0x7D). Ввод отрицательных значений не предусмотрен. (Конкретики так и не дождался.)
В ячейку памяти EEPROM с номером 0 занести температуру для 1-го канала, с номером 4 – гистерезис для 1-го канала. Для других аналогично:
канал 2 – температура - ячейка 1, гистерезис - 5;
канал 3 – температура - ячейка 2, гистерезис - 6;
канал 4 – температура - ячейка 3, гистерезис - 7.

Схема и прошивка во вложении. Светодиоды замените соответствующими ключами для управления нагрузкой. Что непонятно – спрашивайте.
Вложения
Termometr_v6.1_nodisp.zip
(12.44 КБ) 235 скачиваний
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Ср мар 23, 2011 13:22:35
Откуда: Kiev

Сообщение yuzd »

Огромное спасибо за прошивку, проверил на макетке - все отлично работает. По поводу конкретики - устройство будет управлять вентиляторами в коробке, в которой будет стоять радиооборудование (р/л репитер). При одном срабатывании температуры, включится охлаждение радиостанции на низких оборотах, при другом на высоких, при третьем включится нагнетательный вентилятор, при четвертом (alarm) отключится передатчик, дабы охладится, вот примерно такое устройство, конкретно температур не писал, т.к. еще до конца сам не решил какие будут температуры и гистерезисы, провожу пока опыты, дабы определится. Если репитер будет стоять в холодном (на улице) месте, то использую один канал для включения обогрева коробки (например, при +10).
Теперь несколько вопросов собственно к схеме, т.е. прошивке, насколько надежно хранить параметры в EEPROMе? Не появится ли там мусор при скажем пропадании электричества, или еще каких-то помехах? (когда-то столкнулся с таким на attiny2313) все-таки устройство будет стоять необслуживаемо, хочется знать что все будет надежно, ничего не перегреется и не сгорит? Собственно такие вопросы, и еще пожелание к //При ошибке считывания температуры с датчика все выходы отключаются.// - Можно ли сделать, чтобы при ошибке один вывод включался в единицу? (например, произошла ошибка, сгорел или оторвался датчик, вентилятор включается на постоянное охлаждение.)
Спасибо!
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

yuzd писал(а):...Теперь несколько вопросов собственно к схеме, т.е. прошивке, насколько надежно хранить параметры в EEPROMе? Не появится ли там мусор при скажем пропадании электричества, или еще каких-то помехах? (когда-то столкнулся с таким на attiny2313) все-таки устройство будет стоять необслуживаемо, хочется знать что все будет надежно, ничего не перегреется и не сгорит? Собственно такие вопросы...
Такие же вопросы можно поставить и к надежности других элементов схемы: блока питания, резисторов, вентилятора и т.п. Ничего абсолютно надежного нет. Если Вас беспокоит именно продукция Microchip, то где-то у них на сайте или в даташите встречал такой параметр. Конечно в космос с PIC16F628A не летают. А так ничего не перегреется и не сгорит. Если Вы не доверяете EEPROM, у него надежность конечно ниже, чем остальной части МК, то можете мне сообщить нужные температуры, я их занесу в прошивку и про EEPROM можно будет забыть. Собственно EEPROM имеет ограничение по количеству циклов записи, что-то порядка 1 млн (это минимум, а типичное 10 млн). То есть, если в день перезаписывать 100 раз, то лет на 30 хватит.
yuzd писал(а):...и еще пожелание к //При ошибке считывания температуры с датчика все выходы отключаются.// - Можно ли сделать, чтобы при ошибке один вывод включался в единицу? (например, произошла ошибка, сгорел или оторвался датчик, вентилятор включается на постоянное охлаждение.)
Можно. Прошивка во вложении. Таким свойством обладает канал №1 (выводы 6 и 10 МК, при обрыве датчика или ошибке при считывании на обоих этих выходах устанавливается логическая единица).
Вложения
Termometr_v6.1_nodisp.zip
(1.49 КБ) 178 скачиваний
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

ТО yuzd: получилось или нет?
Встал на лапы
Сообщения: 108
Зарегистрирован: Пт окт 14, 2011 21:26:51

Сообщение odvl »

Всем доброго дня!!! Уважаемые, прочитал всю ветку, в голове каша. прошу помощи: на начальном этапе схема термостата для погреба, а в последствии его применение для зимовника пчел.исходя из обсуждения на форуме, на PIC16F628,индикация 4х разрядная(с показом знака - при отрицательной темп.). точность 0.5гр. за глаза. температура ниже установленной - влючается обогрев 2-2.5квт(желательно плавно или ступенчато, главное чтоб пробки не вышибо), в установленный температурный режим - бездействие, температура выше порога установленого- включение вентилятора на охлаждение.силовая часть-необходим совет-реле или симистор-что надежнее???т.к. эта конструкция будет работать за городом и посещение возможно 1 в неделю или две. возможно отключение электричества на непродолжительное время(основная часть без силовой планируется висеть на бесперебойнике) чтоб при подаче в мое отсутствие не было каких либо сбоев программных. последний раз дружил с паяльником лет 30 назад, вот решил вспомнить как его держать
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

odvl писал(а):...желательно плавно или ступенчато, главное чтоб пробки не вышибо...
...силовая часть-необходим совет-реле или симистор-что надежнее???...
Если нужна плавная регулировка, то, естественно, реле отпадает. Ступенчато тоже вопрос, какой у Вас нагреватель? Если несколько ТЭН-ов, то можно и реле. Если всего один нагревательный элемент, то реле опять-таки отпадает.
Интересует только плавный (ступенчатый) пуск, или плавная (ступенчатая) регулировка?
Я бы посоветовал использовать симистор в любом случае. А плавность реализовать численно-импульсным методом управления нагрузкой. То есть, если взять к примеру десять периодов сетевого напряжения, то сначала нагрузка подключается только на один период, скажем в течение 10 сек, затем на два и т.д. пока не будет включаться десять из десяти. Итого: время выхода на максимальную мощность 100 сек.
odvl писал(а):возможно отключение электричества на непродолжительное время(основная часть без силовой планируется висеть на бесперебойнике) чтоб при подаче в мое отсутствие не было каких либо сбоев программных.
В бесперебойнике особого смысла нет. Все настройки буду в памяти микроконтроллера. Зачем ему работать, если нагрузки нет? Кроме того, для схемы с реле, при возобновлении внешнего питания нагрузка включится мгновенно (если в это время МК решил, что она должна быть включена), выбьет пробки. Тогда нужно, чтобы МК отслеживал наличие сетевого напряжения. В случае с симистором МК отслеживать будет и так.
odvl писал(а):последний раз дружил с паяльником лет 30 назад, вот решил вспомнить как его держать
Это похвально. Только тут не только надо уметь держать паяльник, но и прошивать микроконтроллер. Осилите?
odvl писал(а):...прочитал всю ветку, в голове каша...
Плавное включение в этой ветке не обсуждалось и такое готовое устройство здесь Вы не найдете. Но можно подойти к вопросу с другой стороны. Выбрать что-то более-менее подходящее (если это будет устройство с моей прошивкой, то я его подправлю под Вашу задачу), а плавность включения нагревателя обеспечить отдельной схемой. У меня таким образом плавно включается свет в туалете, схему выкладывал здесь.
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

2-2,5 кВт? (9-11А) Я приспособил "'электрополотенце", и ток меньше, и нагревает быстро...
Встал на лапы
Сообщения: 108
Зарегистрирован: Пт окт 14, 2011 21:26:51

Сообщение odvl »

доброго дня! в качестве обогревателя планирую подключить тепловентилятор Полярис, только нужно для него дополнительно ставить таймер для отключения встроенного вентилятора, чтобы выключал его по истечении 2-х минут после отключения керамического нагревателя. с прошивкой не знаю, будем пытаться.
Встал на лапы
Сообщения: 108
Зарегистрирован: Пт окт 14, 2011 21:26:51

Сообщение odvl »

у поляриса где-то 2.5 квт
Ответить

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