Я что-то не понял, это релейный регулятор или пропорциональный? Проверял на лампе , горит в полный накал,никакой регуляции мощности нет. В чём может быть проблема?
Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16Fxx и DS18B20
Добавлено: Пн апр 22, 2013 09:07:18
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 147
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 996 Откуда: Уфа
Рейтинг сообщения:0
Это не проблема, а так задумано. Обычно нагреватели, в отличии от ламп, имеют достаточную инерционность нагрева и при большой мощности приличные токи включения. Поэтому для снижения помех фазовый способ управления симистором не применим (да и оптопара включает только при переходе через ноль). Пропорциональная регулировка осуществляется за счет соотношения времени включенного состояния к отключенному в течении 1 секунды с дискретностью 10. Таким образом мощность может быть 10% 20% и т.д. с количеством полных полупериодов в нагрузке соответственно 5, 10, 15 .... 50 (максимальная мощность). При испытаниях такой способ дал вполне удовлетворительные результаты.
Хатуль_мадан, я не говорил о фазовой регулировке нагревателя. Если мощность нагревателя регулируется количеством пропусков периодов, то лампа должна мигать, но она шпарит на полную мощность. При достижении установленной температуры происходит отключение. Гистерезис установлен. В общем работает как обычный позиционный регулятор.
Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16Fxx и DS18B20
Добавлено: Вт апр 23, 2013 10:24:46
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 147
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 996 Откуда: Уфа
Рейтинг сообщения:0
Так если она не мигает в диапазоне гистерезиса, то значит не включен режим пропорционального регулирования, или задан нулевой гистерезис. Мигание будет, если температура уже достигла Tust-dT/2 или еще не превысила Tust+dT/2. При температуре менее Tust-dT/2 нагреватель включен всегда, при превышении Tust+dT/2 нагреватель всегда выключен, а при dT=0 можно догадаться, как будет вести себя схема По любому, лучше прочитать файлик описания к регулятору, или попробовать в протеусе поэкспериментировать (модели выкладывались)...
лучше прочитать файлик описания к регулятору читал. в протеусе поэкспериментировать В протеусе играл. Гистерезис не нулевой, режим пропорционального регулирования включён.
Хатуль_мадан, вопрос решён. Было подозрение на микроконтроллер , при прошивке пришлось несколько раз перепрошивать, до этого его использовал во многих поделках. Заменил контроллер , всё работает. Чертовщина какая-то, ну да и ладно. Теперь буду гонять на реальном объекте. PS: Вот если бы взять этот регулятор и на его основе разработать ПИД-регулятор.....
Уважаемый Хатуль_мадан Повторил "в железе" Вашу конструкцию из первого сообщения данной темы. Схему немного перерисовал "под себя" и под имеющиеся компоненты (см. вложение). Прошивка Ваша, EEPROM не менял. Заработало (на столе) сразу. Но есть несколько вопросиков: - нечётко работают кнопки; в принципе один раз выставил и забыл, но как-то неуютно, что ли, нельзя ли подправить програмку? - сегменты индикатора раз в секунду подмигивают (в момент измерения?); немного раздражает - нельзя никак убрать эти заметные мигания? - при включении питания на 1 секунду включается нагрузка (пока стоит лампа - вспыхивает и гаснет); не будет ли проблем с компрессором холодильника? - пару раз наблюдал срыв работы устройства - показания температуры начинали быстро мигать и уменьшаться до минус 55 градусов (минимальный уровень DS18B20?), регулировка не работала; поэтому решил убрать резистор 91ом из цепи питания DS18B20 - вроде пока "полёт нормальный"; правильно сделал и что-то ещё попробовать? В остальном - всё (пока) работает как в Вашем кратком описании... Спасибо за полезную вещь (как раз сломался механический термостат в холодильнике - хочу заменить).
Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16Fxx и DS18B20
Добавлено: Пн май 06, 2013 19:52:56
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 147
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 996 Откуда: Уфа
Рейтинг сообщения:0
В том же порядке: 1. Кнопки на моем регуляторе работают нормально, опрос в прерываниях инидкации, дребезга нет. Попробуйте проверить сами кнопки. 2. С подмигиванием боролся, но не победил. Динамическая индикация вызывается чаще, чем требуемое время опроса датчика, запрещаются прерывания, поэтому моргает. 3. Проблему при включении как-то не замечал, хотя возможно она и есть. Для холодильника уже выкладывал специальную доработанную прошивку. 4. Описанный срыв в работе ни разу не замечал, да он и невозможен. Датчик цифровой, поэтому показания или есть, или индикация ошибки, плавать до -55 температура не может. Скорее всего, так проявилась неисправность самого датчика. Регулятор только принимает из него преобразованную температуру и выводит на индикацию с контролем порогов срабатывания реле. Если регулятор не универсальный, а только для холодильника, то лучше перепрошить МК спец. прошивкой с первой страницы. Там есть установки максимальных интервалов работы компрессора, паузы в работе и т.п.
PS(7.05.2013): После фразы "пару раз наблюдал срыв работы устройства - показания температуры начинали быстро мигать и уменьшаться до минус 55 градусов (минимальный уровень DS18B20?), регулировка не работала" только сейчас понял возможную проблему. Раз индикатор начал мигать, значит включилась установка температуры, а т.к. она стала уменьшаться, то значит нажата (замкнута) кнопка минус, установленная температура падает до минимально возможного предела -55, при этом никакие регулировки не должны работать, пока не будут записаны новые установки. Выход (с записью в память) из этого режима только при отжатых (всех) кнопках более 5 сек. Проверьте еще раз качество кнопок, или замените другой кнопку "-". Возможно она механически как-то застревает в корпусе, или утечки внутри ее, или др. проблема. Если случайно и бесконтрольно повторится такой случай, то появится возможность "загнать" установку температуры в самый минимум, потом она может сохранится в памяти, тогда терморегулятор не уследит за температурой со всеми вытекающими последствиями. Можно конечно попробовать опрашивать кнопки только в первые секунды после включения питания, потом блокировать опрос, но тогда тоже теряется некоторая универсальность. Сообщите результат, как проверите, может еще что подумаем... Выходит резистор в цепи питания датчика не виноват
Последний раз редактировалось Хатуль_мадан Вт май 07, 2013 11:11:12, всего редактировалось 1 раз.
Спасибо за ответ. Всё ясно. Прошивка использована именно специальная для холодильника. Все временные параметры (время паузы 2мин, время работы 36мин, время отдыха 18мин выдерживаются). Вероятно, проблема с кнопками, проверю. Удачи!
Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16Fxx и DS18B20
Добавлено: Ср ноя 27, 2013 14:53:21
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 147
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 996 Откуда: Уфа
Рейтинг сообщения:0
А есть в чем-то разница прошивок для PIC16F84 и PIC16F84A? Я думал они одинаковы. Отличаются, например, только PIC16F876 и PIC16F876A наличием/отсутствием компараторов.
Собрал регулятор, прошивка " DS18B20_LCD-OA_PIC16F84A.hex ", мк PIC16LF84, при включении по 2 сек., "25.0", "d 0.4", "ПOFF", "uOFF" и потом часто (примерно 0,5сек)моргает тоже самое. При отключенном датчике по 2 сек., "25.0", "d 0.4", "ПOFF", "uOFF", " ERR" и опять моргает. На кнопки никак не реагирует с датчиком и без. Что может быть и в каком направлении рыть?
Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16Fxx и DS18B20
Добавлено: Сб янв 03, 2015 21:14:44
Открыл глаза
Зарегистрирован: Чт май 01, 2014 22:09:14 Сообщений: 53
Рейтинг сообщения:0
Здравствуйте! Ребят подскажите пожалуйста как настроить winpic800 (ну там фьюзы и всякая другая лабудень)!? Боюсь испортить микроконтроллер а описание программы очень скудные!
Приветствую уважаемое собрание. Круговорот схем в природе:) На forum.cxem.net/index.php?showtopic=100569&st=0 еще в 2012 году выложили схему терморегулятора на pic16f628 и 18b20. Как писал топик стартер, схема и прошивка из большой темы "Терморегулятор на микроконтроллере PIC16F84 датчикe DS18B20" Приводил ссылку, но что-то того сообщения уже не находит. Описание работы. 1. Температура меряется 1 раз в секунду, выводится на индикатор. Формат отображения: десятки, единицы, десятые. Для температуры больше +99,9 оС сотни, десятки, единицы. Для температуры меньше -9,9 оС десятки, единицы. 2. Гистерезис односторонний. То есть если выставлена температура 40,0 оС, а гистерезис 5,0 оС, то в режиме нагреватель включится при 35,0 оС, а выключится при 40,0 оС. 3. Нажатием на кнопку MODE индикатор переводится по кругу на отображение: – текущая температура. – установленная температура выключения нагревателя, мигает точка во втором разряде; – гистерезис, мигает точка в младшем разряде; – текущая температура. 5. Кнопки PLUS/MINUS работают по короткому и длинному нажатию.(пошаговая или быстрая смена чисел) 6. Пределы установки температуры 0 ÷ +99,9 оС. 7. Пределы установки гистерезиса 0,1 ÷ 50,0 оС. 8. По истечении 6 сек от последнего нажатия на кнопки, индикатор переходит в режим отображения текущей температуры. Если были произведены какие-либо изменения, они запишутся в память. 9. При сбое в работе датчика нагрузка выключается. В архиве всё необходимое.
Но вопрос в другом. Почему-то эта схема нормально работает только у топистартера. Правда, потом еще у пары человек заработала. У остальных же проблемы одинаковые - все три кнопки работают как "mode"Но если кнопка "mode" работает так как, ей положено, то "+" работает как "mode" и "+" , а "-"- - как "mode" и "-". При этом меняются значения как выставленной температуры , так и гистерезиса.... Народ шил разными программаторами . Собрал и я этот девайс (подкупил односторонним гистерезисом - если выставлено 30 градусов и гистерезис 2 - то нагреватель включит при 28, а выключит при 30). Развел свою плату. Прошил контроллер PicKit2 - Прошивал и внутрисхемно и отдельно пик - результат одинаковый.Кнопки работают криво. Что интересно - прошивка ,сразу же считанная с пика ,совсем не совпадает с прошиваемой. Вот зашил в DIP pic16F628A и тут же считал... В smd варианте считывается то же самое
Прикрепляю два файла - ter.zip - оригинальный файл из топика . И dip.zip сразу же после прошивки считано из пика...
Помогите, если кто может? В чем проблема? Почему у большинства неправильно работает? Хотелось бычтобы зработало так как надо..
Заранее спасибо.
С уважением, Nick.
Вложения:
Комментарий к файлу: оригинальный файл из топика ter.zip [46.28 KiB]
Скачиваний: 374
Комментарий к файлу: сразу же после прошивки считано из пика... dip.zip [12.03 KiB]
Скачиваний: 622
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения