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

Поклонники продукции Microchip Technology Inc тусуются тут.
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Уважаемый Soir!Доброго здоровья.Спасибо что не забыли и нашли время,вечером попробую напишу.
solovey33
Родился
Сообщения: 11
Зарегистрирован: Чт фев 09, 2012 08:28:49

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

Сообщение solovey33 »

Здраствуйте. Большое спасибо Soir за огромную помощь в создании терморегулятора. Хотелось бы спросить, возможно ли реализовать проэкт http://radiokot.ru/circuit/digital/home/92/ (Термоконтроллер "Мурка"), автор Black27512 на контроллерах PIC (например PIC16F628, PIC16F690), и, если возможно, попросить помочь. Необходимо сделать регулятор температуры на твердотопливный котел.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

solovey33 писал(а):...возможно ли реализовать проэкт http://radiokot.ru/circuit/digital/home/92/ (Термоконтроллер "Мурка"), автор Black27512 на контроллерах PIC (например PIC16F628, PIC16F690)

Если распишете алгоритм, то в принципе можно. Есть ограничения, у указанных PIC-ов меньше выводов, то есть схему надо менять.
solovey33 писал(а):...если возможно, попросить помочь. Необходимо сделать регулятор температуры на твердотопливный котел.

Подробнее давайте.
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Добрый вечер. Уважаемый Soir! опрбовал v10.1 Нажатием кнопки MODE мигает показание, показание регулулируется кнопками + - . Нажатием + - меняются показание POOM,ALARM в режиме ALARM горит точка в младьшем разряде но нечего не регулируется.Нажатие MODE FREEZE выводится символ ta ,больше нечего,по кругу не меняется.Реле не срабатывало не разу,выстовлял t room 50гр.Кроме символа ta других символов невыводилось.Нажатие FREEZE нечего не происходит.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Александровичь писал(а):...опрбовал v10.1 Нажатием кнопки MODE мигает показание, показание регулулируется кнопками + - . Нажатием + - меняются показание POOM,ALARM в режиме ALARM горит точка в младьшем разряде но нечего не регулируется.Нажатие MODE FREEZE выводится символ ta ,больше нечего,по кругу не меняется.Реле не срабатывало не разу,выстовлял t room 50гр.Кроме символа ta других символов невыводилось.Нажатие FREEZE нечего не происходит.

Ужас какой-то... Это я про грамматику.
Где пробовали, в железе?
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

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

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

Сообщение Soir »

Александровичь писал(а):Прошу прощения за граматику на двойки учился(это не помешало выучить детей и построить большй в два этажа дом)

А я, дурак, был отличником и живу в квартире (это тоже не помешало выучить детей), а работаю на тех, кто учился на двойки...
Александровичь писал(а):...проверял на отладочной плате.

В монтаже уверены?
При прошивке проверьте EEPROM МК, его нужно стирать, везде должны быть FF.
Раз проверялось в железе, то расшифруйте:
Александровичь писал(а):Нажатием кнопки MODE мигает показание, показание регулулируется кнопками + - .

Может не просто "показание" мигает, а установленная температура для датчика ROOM?
Александровичь писал(а):Нажатием + - меняются показание POOM,ALARM в режиме ALARM горит точка в младьшем разряде но нечего не регулируется.

Что здесь не так? В этом режиме ничего и не должно регулироваться.
Александровичь писал(а):Нажатие MODE FREEZE выводится символ ta ,больше нечего,по кругу не меняется

Чтоб менялось по кругу, надо эти кнопочки отпустить и нажимать на MODE.
Как-то точнее описывайте возникшие проблемы, а то у меня складывается впечатление, что Вы не читали описание, а пытаетесь методом тыка разобраться в работе устройства.
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Дайте свой адрес пришлю фото вопросы отпадут где лучьше жить.Я Вас уважаю за труд по этому спорить не хочу.Радио хобби не как не зароботок.( Везде должны быть FF)Так и было.Показание мигают в режиме установки температуры POOM.Нажатием + - меняются показание температуры POOM,ALARM на индикаторе,как описанно у вас.Чтоб менялось по кругу, надо эти кнопочки отпустить и нажимать на MODE.Всё делал точьно как описанно у вас в Manual.
solovey33
Родился
Сообщения: 11
Зарегистрирован: Чт фев 09, 2012 08:28:49

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

Сообщение solovey33 »

Всем добрый вечер.

Для Soir:
Примерный алгоритм работы:

В обычном режиме - индикация текущей температуры.

Нажатие на кнопку SET:

1- выбор режима Ручной, Автомат (обязательно, чтобы при неработающем котле регулирование не происходило, только индикация температуры)

2- установка температуры регулирования.

3- установка количество шагов двигателя, необходимых для закрытия/открытия заслонки, регулировкой этого параметра можно установить на сколько сильно она

будет открываться. Одно значение равно 8-ми шагам двигателя. При закрытии независимо от установленного значения двигатель делает дополнительно 10 шагов (для

предотвращения люфта) (последнее не обязательно). По возможности регулировать отдельно для закрытия и для открытия заслонки.


4– скорость вращения двигателя, вернее, пауза между шагами, т.е. чем это число меньше, тем выше скорость вращения. По возможности регулировать отдельно для

закрытия и для открытия заслонки.

5– гистерезис регулирования, то есть указывает ширину окна в градусах, в пределах которого регулятор не будет предпринимать действий. Например: при значении

01 и установленной температуре +60 градусов открытие будет происходить при достижении 60.5 градусов, а закрытие при 59.5 градусах. Значение 02 будет

закрывать и открывать при 61 и 58 градусах соответственно и так до 10-20 градусов (как удобнее сделать).

Запоминание настроек - как удобнее сделать (например длительное нажатие на кнопку SET).

Дополнительно, если температура превысила установленую на величину гистерезиса, заслонка закрылась, а температура не упала за (примерно) 3 минуты (или, если

проще сделать, температура достигла значения 85-90 градусов) включилась сигнализация (Авария). В этот момент регулирование прекращается, температура

индицируется (если можно) переменно со словом ALARM, но это не обязательно(индикация).

Алгоритм частично взят из http://radiokot.ru/circuit/digital/home/92/, но я добавил некоторые дополнительные функции.

Надеюсь, я не выдумал невозможное, думаю такой регулятор будет интересен многим, и не только для отопления

Выкладываю примерную схему в PROTEUS
Вложения
Termoregulator.rar
(17.96 КБ) 216 скачиваний
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

Александровичь писал(а):...Всё делал точьно как описанно у вас в Manual.

В Proteus эта часть программы работает четко, а Proteus меня редко подводит, поэтому я ему доверяю на 99%...
Ладно, на выходных соберу на макете, посмотрю что не так.
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Аналогично на выходных вытравлю плату зделаю всё как паложенно.
Soir
Друг Кота
Сообщения: 3956
Зарегистрирован: Ср окт 14, 2009 10:37:49
Откуда: Украина

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

Сообщение Soir »

solovey33 писал(а):Примерный алгоритм работы...

Примерно понятно.
Кое-что нужно точнее.
1. Каким образом идет управление двигателем. Мне нужен алгоритм работы транзисторов Q1-Q4. Какой когда на какое время открывается и когда закрывается. Другими словами, как идет управление одним шагом двигателя на открытие и закрытие.
2. Скорость вращения (пауза между шагами) в каких единицах меряется, в секундах, минутах... Какие пределы установки (это кстати нужно указать для всех устанавливаемых параметров).
3. Скорость вращения это и есть скорость регулирования? Нужно определить сам алгоритм регулирования. Скажем температура уменьшилась на 5 градусов, заслонка открылась (или закрылась?) на 1 (или сколько?) шаг, если через 1 минуту (или сколько?) температура не изменилась, тогда заслонка еще... Или температура начала расти, тогда... Или продолжает еще быстрее падать, тогда...
Этот момент мне совершено непонятен.
solovey33 писал(а):думаю такой регулятор будет интересен многим, и не только для отопления

Это для меня не аргумент. Если за что-то здесь берусь, то только из спортивного интереса и желания помочь, количество заинтересованных при этом для меня абсолютно никакой роли не играет.
solovey33 писал(а):Выкладываю примерную схему в PROTEUS

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

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

Сообщение Soir »

Александровичь писал(а):Аналогично на выходных вытравлю плату зделаю всё как паложенно.

Soir писал(а):...Ладно, на выходных соберу на макете, посмотрю что не так.

Оказалось, макет у меня собран. Поэтому уже проверил. Кнопки работают, настройки выставляются. Реле не проверял, у меня только один датчик, но с этим пока подождем. Когда и у Вас кнопки заработают, тогда и двинемся дальше.
Еще у меня индикатор с общим катодом, так что прошивку я чуть менял, но на работе кнопок это никак не должно сказаться. Так что ищите, что у Вас не так, "как паложенно".
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Хорошо спасибо буду проверять. детально(насчет положенно или паложенно мне всё равно я специалист по каминам натуральным.Радио просто помощь друзьям и для души.
Александровичь
Открыл глаза
Сообщения: 48
Зарегистрирован: Вс янв 15, 2012 20:38:43
Откуда: Украина Мелитополь

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

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

Уважаемый Soir! Кнопки работают, все параметры выставляются,правда в режиме Room и Alarm на индикаторе выше 50гр не выставляется,доходит до 50гр и начинает с нуля.После выключения питания настройки в памяти сохраняются.Реле не в одном режиме не сработало.Проверял на один датчик,завтра с работы принесу датчик попробую детально(работаю в МЧС)
solovey33
Родился
Сообщения: 11
Зарегистрирован: Чт фев 09, 2012 08:28:49

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

Сообщение solovey33 »

Для Soir
Один шаг (для двигателя от привода Floppy) соответствует повороту ротора на 1,8 градуса.

В зависимости от режима работы (полношаговый или полушаговый) поворот на 180 градусов соответствует 100 или 200 шагов (режим желательно полушаговый).

Один цикл работы транзисторов Q1-Q4 (8 шагов двигателя) - это поочередная подача импульсов на транзисторы соответсвенно с диаграмами (полношаговый или полушаговый)

Изображение
Изображение

http://radiokot.ru/lab/controller/22/
http://habrahabr.ru/blogs/controllers/50809/
http://avrlab.com/node/60

Здесь описана работа с элементами програм (может чем-то поможет)


Паузы измеряются в секундах, предел от 0,1 до 1с (на дисплее значение 1-10), точно не уверен, надо будет испытать на механике в собраном виде.

Принцип регулирования изображен на схеме регулирования. Измерения через 2 минуты (процес горения инерционен).

Предел установки регулируемой температуры 50-75 градусов. Регулирование происходит в пределах 40-87 градусов, ниже или выше - авария. При переходе нижнего или верхнего аварийного предела заслонка полностью закрывается (запускается закрытие заслонки, тоесть у нас установлено максимальное число шагов для открытия заслонки, заслонка доходит до максимума (с паузой между шагами 0,1 с, макс. скоростью) и полностью уходит обратно (с паузой между шагами 0,1 с, макс. скоростью). Желательно предусмотреть кнопку (или комбинацию) СБРОС АВАРИИ.

Предел установки количества шагов 12 или 22 (одно значение равно 8 шагов) в зависимости от режима работы (полношаговый или полушаговый).

Регулирование количества шагов необходимо только для открытия заслонки, в предыдущем сообщении ошибка.
Вложения
Схема регулирования.rar
(5.73 КБ) 204 скачивания
solovey33
Родился
Сообщения: 11
Зарегистрирован: Чт фев 09, 2012 08:28:49

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

Сообщение solovey33 »

Для Soir

При закрытии независимо от установленного значения двигатель делает дополнительно 10 шагов (для предотвращения люфта) (последнее не обязательно).

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

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

Сообщение Soir »

Александровичь писал(а):Кнопки работают, все параметры выставляются

Успех, поздравляю.
Александровичь писал(а):правда в режиме Room и Alarm на индикаторе выше 50гр не выставляется,доходит до 50гр и начинает с нуля.

Это мой промах. Я установил ограничение в 50 град, исправлю.
Александровичь писал(а):Реле не в одном режиме не сработало.

Реле тоже работают, я проверил на макете (подключал не реле, а светодиоды). Есть там моя недоработка, при изменении настроек новые не сразу вступают в силу, а только или при переходе через режим FREEZE (кстати тоже работает), или выключение/включение. Исправлю.
Александровичь писал(а):Проверял на один датчик,завтра с работы принесу датчик попробую детально(работаю в МЧС)

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

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

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

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

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

Сообщение Soir »

Александровичь писал(а):Вечером вытравлю плату, принесу датчик ,и будет удача.

Исправил в прошивке те моменты, о которых писал в предыдущем сообщении. Если будет время, вечером сам проверю на макете.
Вложения
Termometr_v10.1_CA.zip
(3.91 КБ) 193 скачивания
Ответить

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