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

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

Сообщение Soir »

tbogdan писал(а):Синхронизация не нужна , так как буду использовать MOC304x и симистор ВТА41
Я внесу соответствующие изменения в прошивку.
tbogdan писал(а):резонатор внешний или внутрений, частота 4МГц?
Во внешнем кварце нет никакой необходимости, частота 4МГц.
Реклама
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Теперь когда не будет синхро, то желательно переставить сигналы
сегмент D на PD3/INT1 (5)
OFF на PC5 (28)
HEATER на PB5 (19)
плату будет легче развести.
И не сочтите за наглость, еще при установке таймера первой программы (Р0) в нулевое значение
нагрев, желательно чтобы проходил до установленной температуры без учета времени и дальше по программе,
если так можно.
Реклама
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

tbogdan писал(а):Теперь когда не будет синхро, то желательно переставить сигналы
сегмент D на PD3/INT1 (5)
OFF на PC5 (28)
HEATER на PB5 (19)
плату будет легче развести.
Изменил. По ходу исправил мелкие ошибки. Путаюсь в работе кнопок. Проверьте все режимы.
tbogdan писал(а):...при установке таймера первой программы (Р0) в нулевое значение
нагрев, желательно чтобы проходил до установленной температуры без учета времени и дальше по программе,
если так можно.
Это еще не переварил... То есть, нагрузка сразу врубается на полную мощность? Учитывая инерционность системы будет перегрев. Или как это "без учета времени"?
Вложения
Termo_ATMEGA8.zip
(34.16 КБ) 210 скачиваний
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Это еще не переварил... То есть, нагрузка сразу врубается на полную мощность? Учитывая инерционность системы будет перегрев. Или как это "без учета времени"?
Soir Спасибо!
давайте пока не будем ничего не менять, проверим в работе.
Реклама
Эиком - электронные компоненты и радиодетали
Говорящий с текстолитом
Аватара пользователя
Сообщения: 1692
Зарегистрирован: Ср окт 12, 2011 20:37:13

Сообщение bav123 »

Небольшой отчет.
Собрал на работу для управления отопителем.Когда погода не сильно холодная то при включеной печке становится душновато.Отключишь и через несколько минут становится как то некомфортно.Вот и дергаешь тумблером туда - сюда.Предложеный Soir режим с гистерезисом понравился.Поставил температуру 20гр. и гистерезис 1 и в кабине сидеть одно удовольствие.
Реклама
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Всем доброго дня!
Собрал схему терморегулятора, предложенную Soir, на ATmega8
есть несколько ошибок в работе
1- нет возможности в сервисном режиме изменить количество программ (параметр Pr всегда 0)
2- переход в сервисном режиме от установки к установки проходит как то не понятно, с большой задержкой,
то есть нажимая "SET" переход к другой установке проходит через несколько секунд.
3- разогрев не происходит так как коэффициент выходной мощности всегда очень низкий (1%)
Вложения
shem.JPG
(191.57 КБ) 362 скачивания
Реклама
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

tbogdan писал(а):Собрал схему терморегулятора, предложенную Soir, на ATmega8
есть несколько ошибок в работе...
Да, есть косяки... Буду исправлять.
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

Soir писал(а):
tbogdan писал(а):Собрал схему терморегулятора, предложенную Soir, на ATmega8
есть несколько ошибок в работе...
Да, есть косяки... Буду исправлять.
Неудачно выбрана стратегия работы кнопок. Это касается совмещения функций в кнопке DISPLAY. Я внес изменения в прошивку и в описание работы. Все режимы не проверял, это за Вами, у меня не хватает времени. Если такой вариант не подходит, давайте свои идеи по работе кнопок. Может Вкл. перенести на кнопку Сброс. Первое нажатие Вкл., второе Сброс...
Вложения
Termo_ATMEGA8.zip
(12.44 КБ) 172 скачивания
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Soir спасибо!
1. количество программ в сервисном режиме устанавливается но выполняются все 20, независимо сколько выставлено.
2. при нажатии сброс цифры мерцают
3. при входе в сервисный режим, если первая была нажата кнопка SET происходит вход в режим установки h а дальше не переключается, а если первой была нажата DISPLAY, тогда все нормально.
4. при быстром наборе температуры и выходе за верхний предел, пока не будет пересчитан SP, нагреватель остается включен.

Вкл./ стоп можно сделать так как Вы рекомендуете одной кнопкой, но обязательно надо сделать индикацию режима в каком находится регулятор, или отдельным индикатором на каком то выводе, свободен 18 (РВ4), или "OFF" на индикаторе, чередующий с показом температуры.
Пример платы.
Вложения
2.JPG
(231.89 КБ) 405 скачиваний
1.JPG
(103.37 КБ) 376 скачиваний
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Soir и еще, если можно уменьшить опорное напряжение примерно до 2.5В, чтоб была возможность поставить отдельный прецизионный стабилизатор, измерение и регулирование до 1000 - 1200 градусов, не более.
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

tbogdan писал(а):1. количество программ в сервисном режиме устанавливается но выполняются все 20, независимо сколько выставлено.
Изменения количества программ вступают в силу после их записи в EEPROM (через 10 сек после завершения манипуляций с настройками) и после отключения-включения питания. В новой прошивке этот момент реализуется при нажатии кнопки ON/OFF при старте термостата.
tbogdan писал(а):2. при нажатии сброс цифры мерцают
Должно уйти, проверьте.
tbogdan писал(а):3. при входе в сервисный режим, если первая была нажата кнопка SET происходит вход в режим установки h а дальше не переключается, а если первой была нажата DISPLAY, тогда все нормально.
Изменена работа кнопок. Описание во вложении, проверяйте.
tbogdan писал(а):4. при быстром наборе температуры и выходе за верхний предел, пока не будет пересчитан SP, нагреватель остается включен.
Очевидно Ваш нагреватель слишком мощный для такого алгоритма, давайте свой.
tbogdan писал(а):Вкл./ стоп можно сделать так как Вы рекомендуете одной кнопкой, но обязательно надо сделать индикацию режима в каком находится регулятор, или отдельным индикатором на каком то выводе, свободен 18 (РВ4), или "OFF" на индикаторе, чередующий с показом температуры.
Вынес светодиод. Можно, конечно, индикацию ON/OFF засунуть в перебор DISPLAY или SET, как скажете.
tbogdan писал(а):и еще, если можно уменьшить опорное напряжение примерно до 2.5В, чтоб была возможность поставить отдельный прецизионный стабилизатор, измерение и регулирование до 1000 - 1200 градусов, не более.
С этим чуть позже разберусь...
Вложения
Termo_ATMEGA8.zip
(27.11 КБ) 172 скачивания
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

Soir писал(а):
tbogdan писал(а):и еще, если можно уменьшить опорное напряжение примерно до 2.5В, чтоб была возможность поставить отдельный прецизионный стабилизатор, измерение и регулирование до 1000 - 1200 градусов, не более.
С этим чуть позже разберусь...
Давайте разберемся.
В данной прошивке в качестве опорного напряжения используется внешнее напряжение, подаваемое на вход AREF (pin 21). В нашем случае +5V. Шкала прибора 0-5000. Вы можете подать на вход AREF другое напряжение, в пределах от 2,5 до 5,0V. Шкала прибора при этом сохранится - 0-5000. То есть, при подаче напряжения на вход АЦП от 0 до AREF показания прибора будут от 0 до 5000.
Если Вам просто нужна другая шкала, можно внести изменения в прошивку под Ваши требования.
Есть еще вариант использования внутреннего опорного напряжения 2,56V. На вход AREF цепляется конденсатор для уменьшения влияния помех. Со шкалой та же история...
Можно также использовать AVCC c подключением конденсатора на вход AREF...
Вот и все варианты. На каком остановимся?
P.S.
Шкалу лучше уменьшить, все равно АЦП лишь 10 бит... Точнее будут показания.
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Soir я Вам признателен за работу которую Вы делаете, СПАСИБО!
4. при быстром наборе температуры и выходе за верхний предел, пока не будет пересчитан SP, нагреватель остается включен.

Очевидно Ваш нагреватель слишком мощный для такого алгоритма, давайте свой.
Алгоритм подходит нормально, я имитировал перегрев, пробовал как поведет себя регулятор.
Есть еще вариант использования внутреннего опорного напряжения 2,56V. На вход AREF цепляется конденсатор для уменьшения влияния помех. Со шкалой та же история...
Точности внутреннего опорного напряжения хватит, так что можно подключить внутренний источник опорного напряжения с конденсатором на AREF, плата у меня так и сделана.
Шкалу сделать от 0 до 1000 градусов.
попробую только после выходных
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

tbogdan писал(а):Точности внутреннего опорного напряжения хватит, так что можно подключить внутренний источник опорного напряжения с конденсатором на AREF, плата у меня так и сделана.
Шкалу сделать от 0 до 1000 градусов.
Изменил прошивку. Напряжение на входе АЦП должно быть в пределах 0-2,5V.
Кстати. Выходное сопротивление источника сигнала должно быть не более 10 кОм. У Вас на схеме R14 100 кОм.
Ну и еще. Если показания будут прыгать, говорите, будем что-то усреднять, увеличивать количество замеров и т.д.
Вложения
Termo_ATMEGA8.zip
(34.51 КБ) 211 скачиваний
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

Модератор
Аватара пользователя
Сообщения: 4614
Зарегистрирован: Чт мар 18, 2010 23:09:57
Откуда: Планета Земля

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

nvz, у меня сейчас реально времени нет. :( Работы навалилось... :?
Если появится времечко (что вряд-ли в течении пару месяцев), то гляну.
Контактная информация:
Открыл глаза
Сообщения: 66
Зарегистрирован: Сб ноя 12, 2011 15:22:01
Откуда: Тернопіль

Сообщение tbogdan »

Доброго дня !
Soir, не сочтите за наглость, но хотел попросить еще несколько изменений в прошивке,
более удобно будет, если количество заданных программ в сервисном меню, будет соответствовать и в режиме установок (SET).
В данной прошивке, количество программ отрабатывается то что задано в сервисном меню,
но в режиме установок перебираются все 20.
Все таки желательно сделать обязательное отключение нагревателя, при превышении текущей температуры над установленной.
И еще, если можно, озвучить конец программы и переход на другую, и само собой окончание работы.
Выход сделать на бузер с встроенным генератором, чтоб было проще, свободные остались только PB6 (9) и PB7 (10).
Soir, получился не плохой регулятор, может лучше будет если переместите в новую тему, а то в этой теряется не подходит название.
После испытаний выложу платы и вид устройства.
Еще раз БОЛЬШОЕ спасибо!!!!
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

Сообщение Soir »

tbogdan писал(а):...более удобно будет, если количество заданных программ в сервисном меню, будет соответствовать и в режиме установок (SET).
В данной прошивке, количество программ отрабатывается то что задано в сервисном меню,
но в режиме установок перебираются все 20.
Изменил.
tbogdan писал(а):Все таки желательно сделать обязательное отключение нагревателя, при превышении текущей температуры над установленной.
Тут давайте подробнее. Нагреватель отключается, а программа продолжает работать? Или отключается все устройство? В общем нужен алгоритм поведения в таком случае.
tbogdan писал(а):И еще, если можно, озвучить конец программы и переход на другую, и само собой окончание работы.
Выход сделать на бузер с встроенным генератором, чтоб было проще, свободные остались только PB6 (9) и PB7 (10).
Добавил. Включение питания один короткий. Запуск/остановка - один короткий. Завершение программы - два коротких. Завершение всего цикла - три длинных. Можете предложить свою "музыку". Обратите внимание на нагрузку вывода под Buzzer, возможно надо усилитель (транзисторный ключ).
Ну и, как я понял, используется внутренний тактовый генератор, кварц не нужен.
tbogdan писал(а):...может лучше будет если переместите в новую тему, а то в этой теряется не подходит название.
Если есть желание - создавайте тему, мне как-то... Только дайте ссылку, чтобы я мог отвечать на вопросы, если таковые будут.
Вложения
Termo_ATMEGA8.zip
(26.59 КБ) 196 скачиваний
nvz
Электрический кот
Аватара пользователя
Сообщения: 1056
Зарегистрирован: Чт ноя 25, 2010 16:58:42
Откуда: Средний Урал

Сообщение nvz »

Аlex писал(а):nvz, у меня сейчас реально времени нет. :( Работы навалилось... :?
Если появится времечко (что вряд-ли в течении пару месяцев), то гляну.
Вопрос снят, спасибо за внимание. Soirу отдельное спасибо!
Первый раз сказал Мяу!
Сообщения: 24
Зарегистрирован: Вс дек 11, 2011 00:10:46

Сообщение bratt »

схемa и соответственно прошивка устройства типа двухканального термостата с двумя каналами по нагрузке (типа один датчик на один канал), три кнопки управления, один 3-й индикатор с общим анодом, датчик температуры 18В20 , диапазон регулироки температуры термостата 0 - 125 град. С , гистерезис 1 - 20 град, везде шаг температуры 1 град. микроконтроллер или PIC16F84 если его хватит или ATTiny2313
Ответить

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