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

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

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

Сообщение Soir »

Niks13 писал(а):...уже такая каша, что не помню что там в начале темы было...

Аналогично. Тему давно пора закрыть, так как название уже далеко не отражает содержание. В замен нее создать 10 новых. Вот и сейчас можно было создать новую тему, но вы спросили здесь, я здесь и отвечу и т.д.
Теперь по существу.
Niks13 писал(а):...В идеале, если бы было 2 датчика температуры и 2 нагревателя, которые поддерживают разную температуру в 2х ящиках...

Этого не будет. Я замаялся создавать один регулятор, маневрируя между тайм-слотами датчика, фазой сетевого напряжения, углом открывания симистора и динамической индикацией. А тут еще один, нет, я пока не представляю как это все организовать.
Все, что могу для Вас сделать, это, если нужно, поменять кое-что в настройках, интерфейсе... Могу переписать программу под Атмега8.
Niks13
Прорезались зубы
Сообщения: 214
Зарегистрирован: Пн янв 16, 2012 02:06:36
Откуда: Луганск

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

Сообщение Niks13 »

Soir писал(а):Все, что могу для Вас сделать, это, если нужно, поменять кое-что в настройках, интерфейсе... Могу переписать программу под Атмега8.

Уважаемый Soir
Если Вам не трудно, сделайте мне, На чем угодно, (микросхемы куплю, программатор для ПИКов, если нужно, спаяю) термостат, с фазовым управлением, с одним каналом (сделаю 2 термостата в одном корпусе), но чтоб гистерезис был 0,1-0,2*С, и захватывал предел 0-50*С. Будет захватывать -30-+100С, вообще замечательно. Как Вам удобнее, так и делайте. Больше, мне, ни чего не нужно. Не нужна мне, возможность изменения шагов мощности и времени. Какие поставите, такие и будут. Главное, чтоб на лампах, небыло резкого изменения напряжения, что их быстро убивает. Чем меньше настроек тем лучше.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Niks13 писал(а):Если Вам не трудно, сделайте мне, На чем угодно, (микросхемы куплю, программатор для ПИКов, если нужно, спаяю) термостат, с фазовым управлением, с одним каналом (сделаю 2 термостата в одном корпусе), но чтоб гистерезис был 0,1-0,2*С, и захватывал предел 0-50*С. Будет захватывать -30-+100С, вообще замечательно. Как Вам удобнее, так и делайте. Больше, мне, ни чего не нужно. Не нужна мне, возможность изменения шагов мощности и времени. Какие поставите, такие и будут. Главное, чтоб на лампах, небыло резкого изменения напряжения, что их быстро убивает. Чем меньше настроек тем лучше.

Тогда чем Вас не устраивает термостат с страницы 47? "Лишних" настроек там нет, да и пользоваться ими или нет определяйте сами, зачем их убирать из прошивки...
Niks13
Прорезались зубы
Сообщения: 214
Зарегистрирован: Пн янв 16, 2012 02:06:36
Откуда: Луганск

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

Сообщение Niks13 »

Soir писал(а):Тогда чем Вас не устраивает термостат с страницы 47?

Ну почему-же не устраивает? Я вот и спрашивал про него
Как я понял, если не быть старухой из сказки о золотой рыбке, то меня может спасти схема которую Уважаемый Soir выкладывал на 47стр апр 25, 2011 16:36:35.

Просто у меня так все смешалось в голове, что я уже не мог понять, какой из всех, Вами разработанных, мне больше подойдет. Теперь понял , что не ошибся. В общем, возвращаюсь на стр 47 и дальше не лезу. Да?
Ну, и если не трудно, порекомендуйте, пожалуйста, какой программатор собрать, чтоб прошить 16Ф628. (А так хотелось на АВР)
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Niks13 писал(а):В общем, возвращаюсь на стр 47 и дальше не лезу. Да?

С фазоимпульсным регулированием и на DS18B20, наверно больше ничего. Хотя эта версия не финальная, она базовая. У меня "в черновиках" еще несколько, для чего-то (кого-то) дорабатывал, добавлял таймеры еще какие-то навороты...
Где-то еще гуляет разработка на PIC16F876. И на ATMEGA8 где-то было, только датчик другой.
Вы все-таки пробежитесь по теме дальше 47-ой страницы, люди делали, что-то спрашивали..., чтоб потом не задавать теже вопросы. Ту версию я проверял на макете, все работало как и предполагалось.
Niks13
Прорезались зубы
Сообщения: 214
Зарегистрирован: Пн янв 16, 2012 02:06:36
Откуда: Луганск

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

Сообщение Niks13 »

Soir писал(а):Вы все-таки пробежитесь по теме дальше 47-ой страницы

Да я, ночью, до 56 пробежал и умер. Там, в принципе, уже только космические корабли и, (что еще более сложно) ректификационные колонны пошли. Мне аж стыдно стало, что я с такой пустяшной фигней тут маюсь.
Дочитал все до конца. Опять 2 часа ночи :sleep: Каши в голове добавилось и она, похоже, заняла место мозгов. :cry: Если я правильно понял, МОС3021 вешаем на 16 ногу? Три остальных ноги идущие на осциллограф просто от него отключаем? И для чего нужен джампер 2?
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

Сообщение Александровичь »

Как файл печатки прицепить.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Александровичь писал(а):Как файл печатки прицепить.

В архиве.
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

Тема оочень интересная, только долго читать. Читаю уже три вечера )))). Кто нибудь бы сделал срез. в формате :
- № варианта. алгоритм, схема, прошивка.
Контроллеры только начинаю осваивать.Вчера собрал Экстар-ПИК и проверил по методике, все исправно.Ускорение для срочного изучения явилась неожиданная поломка варочного котла для сыра. Работал себе котел с 73 года на МЕХАНИЧЕСКОМ терморегуляторе. НО с наступлением 2012 года отказало реле ( предсказания Майя для него сбылось :)) ). Мерием теперь температуру сыра градусником, а включаем тены вручную. Силовая часть проста как все гениальное, 2 трехфазные тены + 3 пускателя.
А вопрос в следующем.
Есть ли тут прошивка и схема отвечающая следующим требованиям:
- 1 включение котла
- 2 быстрый нагрев 2мя тенами до 1-ой уставки ( 90 гр.)
- 3 отключение одного тена и догонка до основной уставки оставшимся теном ( 100 гр.)
- 4 включение третьего пускателя, который переводит 2-ой тен на одну фазу, для поддержания тепла
э пока температура медленно не опустится ло 1-ой уставки
- 5 если температура ниже 1-уставки, опять быстрый нагрев ( две тены ) и далее с пункта 2.
А теперь внимание, хотелось бы ввести сюда таймер скажем от 1 до 99 мин. Который бы включался при достижении основной уставки. То есть температура бы к примеру в 99 градусов ( с гестирезисем скажем в 5 градусов) поддерживоласьт в течении 45 минут.

Продумал уже схему и с простым включением охлаждения под свои нужды. но удобнее было б просто три отдельных выхода. А главное таймеры нигде не попалось. Конечно уже и таймер подобрал, но на отдельном МК. Зная,что можно сделать на одном неспокойно спиться. Вечерами вспоминаю еще со времён Spectruma ассэмблер, но пока еще не достиг полного восстановления знаний прошлого. А сыр то варить надо, приходиться специально возле котла крутиться все время...а их два.
Спасибо за любую пормощь ... Мяуу муррр
Электроника - наука о контактах
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

evum писал(а):Тема оочень интересная, только долго читать. Читаю уже три вечера )))).

Бросьте это занятие. До Вас тут сыроваров не было. Были сауны, инкубаторы, печи, даже самогонные аппараты, а сыроварни не было.
evum писал(а):Кто нибудь бы сделал срез. в формате :
- № варианта. алгоритм, схема, прошивка.

Найти бы этого "кто-нибудь"... Не желаете?
evum писал(а):Есть ли тут прошивка и схема отвечающая следующим требованиям:...

Нет. Но может будет. Если у Вас уже есть схема - давайте, я посмотрю что к чему. Датчик какой? Какой МК, индикатор...?
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

Итоговые выкладки я обязательно сделаю.
Пока остановился на варианте на стр 47. силовая часть меня мало заботит, это не сложно, единственное то, что буду развязывать через оптопары. А Контроллеры есть и 16F84А и 16F628 индикатора достаточно трехразрядного, хотя в наличии на 4 цифры. Датчик DS18B20
Электроника - наука о контактах
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

evum писал(а):Пока остановился на варианте на стр 47

Тот вариант явно не для Вас. Там фазоимпульсное управление нагрузкой. Но это ладно, дадите свою схему, подберу наиболее подходящий вариант.
evum писал(а):А Контроллеры есть и 16F84А и 16F628 индикатора достаточно трехразрядного, хотя в наличии на 4 цифры. Датчик DS18B20

16F84 не подойдет, а 16F628A будет в самый раз. Индикатор 3-х разрядный - нужно экономить выводы МК. Или ставить дополнительную микросхему для вывода данных на индикатор, тогда можна и 16F84, хотя его я не люблю.
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

обязательно завтра накидаю схему ...
хорошо, остановимся на 16ф628 и трехразрядном индикаторе.
Электроника - наука о контактах
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

evum писал(а):обязательно завтра накидаю схему ...

Уже накидал. В зависимости от тока индикаторов, возможно надо установить транзисторные ключи в цепи общих анодов (катодов). Кстати, какой индикатор?
И давайте полный алгоритм, куда таймер цеплять, что должно настраиваться, что запоминаться...
Вложения
Termo.zip
(12.06 КБ) 209 скачиваний
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

Soir В общем ваша схема меня устраивает. С архитектурой МК и назначением его выводов пока могу полагаться только на схемы, сделанные спецами. На выходах к исполнительным устройствам напряжение постоянное. То бишь либо есть "1! либо нет "0" ? С разводкой силовой части и коммутационных аппаратов проблем не возникнет, подберу для пробы то,что есть под рукой, а после полевых испытаний, придумаем что выбрать. Оперативно и красиво накидать схему и блок схему алгоритма не получилось, ибо оказывается на домашнем буке нет ничего!!! :oops: Вот так то сделал всё только в ворде, на сколько хватило фантазии и затёртых знаний из университетского курса программирования :oops: . К стати в очередной раз убедился Прав был Ленин- УЧИТЬСЯ,УЧИТЬСЯ И ЕЩЁ РАЗ УЧИТЬСЯ. Ох теперь жалею, что не слушал преподавателей. Протеус скачал но пока не знаю куда нажимать и,кому сдаваться ))))...изучаю. В архиве после схемы подумалось прорисовать обозначения на индикаторах вводимой переменной. Индикаторы есть с общим Анодом на 4 символа, но как уже договорились будем строить на трёх. четвертый приспособлю под индикацию включенных тэн. Все единицы измерения, отображаемые на индикаторе достаточно будет сделать целыми, в смысле без запятых. ААА на блок-схеме "+"-это ДА, а "-" - НЕТ. Жду вопросов, может что то не разъяснил ( На приёме :write: )
Вложения
схема.jpg
схема силовой части
(66.53 КБ) 357 скачиваний
алгоритм.zip
алгоритм
(106.88 КБ) 176 скачиваний
Электроника - наука о контактах
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

Вот! с утра на свежую голову видно, что алгоритм писал чайник )))) интересно, в МК есть какой то внутренний таймер, на который можно просто периодически поглядывать или нужно организовывать собственную подпрограмку для отсчета времени ?
и еще надо наверное допуск прикрутить к переменной t1 со знаком минус ? то есть такой вид в условии сделать t< t1-tр
Электроника - наука о контактах
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

evum писал(а):Вот так то сделал всё только в ворде, на сколько хватило фантазии и затёртых знаний из университетского курса программирования

Word у меня 2003 и какой-то конвертор, но картинку сместил и отображает неправильно, блок-схема не читаемая. Поэтому, да и не только поэтому, с алгоритмом не разобрался. Сохраните файл в 2003 или сделайте скриншот.
Давайте так. Вы в принципе понятно описали раньше последовательно работы нагревателя. Если это правильно, я возьму за основу, напишу программу и дам Вам на рассмотрение, а там будем уточнять. Вы мне скажите пределы установки для каждой ступени, для гистерезиса. И самое главное, поведение устройства если что-то пошло не так. Например, ошибка датчика. Или, термостат вышел на основной режим работает один нагреватель (реле №3) на минимальной нагрузке. По какой-то причине температура снижается и мощности нагревателя не хватает. Должно ли срабатывать реле №2 или №1? Тот же вопрос при разогреве... Надо ли таймер ставить на паузу, если температура снизилась ниже какого-то предела? И т.п. Чем больше вероятных ситуаций будет оговорено, тем надежнее будет устройство. И мне проще прописать в прошивке сразу все, чем потом что-то добавлять или переделывать.
evum писал(а):...в МК есть какой то внутренний таймер, на который можно просто периодически поглядывать или нужно организовывать собственную подпрограмку для отсчета времени ?

Таймеры есть. Но для получения секунд, минут и т.п. нужно писать подпрограммы. То есть к ним надо прикручивать счетчики. Это стандартная ситуация.
evum писал(а):и еще надо наверное допуск прикрутить к переменной t1 со знаком минус ? то есть такой вид в условии сделать t< t1-tр

А что такое t и что делать, если условие выполнено/не выполнено? tp - это гистерезис (допуск)?
evum писал(а):Протеус скачал но пока не знаю куда нажимать и,кому сдаваться ))))...изучаю

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

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

Сообщение Soir »

evum писал(а):Soir В общем ваша схема меня устраивает.

Подумал, наверно нужно еще добавить кнопку START/STOP. Схема во вложении (уже в Proteus) и прошивка, она с другого проекта, но кое-что совпадает, можете потренироваться нажимать кнопки. Файлы распакуйте в отдельную папку. В именах файлов и путях к ним не используйте русские буквы и разные символы. Также не загоняйте папку слишком далеко, Proteus этого не любит.
Вложения
Termometr_v12.zip
(15.56 КБ) 190 скачиваний
Аватара пользователя
evum
Открыл глаза
Сообщения: 68
Зарегистрирован: Ср сен 14, 2011 21:00:14
Откуда: Тюмень

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

Сообщение evum »

А силовую схему то просмотрели ? Старт -СТОП как раз в алгоритме выб и увидели))). Ща исправлю его в формат какой нить более популярный, был в ворде 2007 сделан. Отсчёт времени дожлен идти с момента достижения ОСНОВНОЙ установленной температуры..то бишь задаем время кипения. Хотя былоб интересно устанавливать время не только кипячения))... а по выбору...то есть старт времени либо с начала программы либо с температуры какой то за ранее указанной...допуск=по гестирезис )

Температуру t у ( основная ) от 0 до 125гр.
Температуру t 1 ( отключения 1го тэна ) от 0 до 125гр.
Температуру t р ( допуск, гестирезис ) от 0 до 25гр.
Время Т - от 0 до 300 мин.
все цифры в целом виде.

Протеус некорректно отображает ваши схемы, ругается на отсутствие библиотек на оттдельные элементы.Эту чатсь недоработки в скоре устраню, качаю уже кучу всяких....Алгоритм в формат под ваш ворд тож ща переделаю
Последний раз редактировалось evum Сб янв 21, 2012 16:07:39, всего редактировалось 1 раз.
Электроника - наука о контактах
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Вот собственно и "родная" прошивка.
В архиве файл проекта, прошивка, описание работы. Время точно не подгонял, если надо, проверьте экспериментально, внесу поправку.
В связи с особенностью вывода RA4 (pin 3) МК сопротивление резистора R4 уменьшено до 2k. Если использовать 3-х проводную схему подключения датчика, то R4 должно быть 4,7k.
Силовую схему не смотрел, моего интереса там нет.
Proteus 7.8
Вложения
Termometr_v12.zip
(20.71 КБ) 210 скачиваний
Ответить

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