Например TDA7294

Форум РадиоКот • Просмотр темы - Терморегулятор на микроконтроллере PIC16F84 датчикe DS18B20
Форум РадиоКот
Здесь можно немножко помяукать :)

Текущее время: Пн фев 09, 2026 06:20:20

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 1950 ]     ... , , , 75, , , ...  
Автор Сообщение
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Пн фев 27, 2012 20:09:30 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
Тогда проверьте еще и вот эту прошивку 4.2.

С работы попал на дачу. Только что приехал домой. Сразу залил последнюю версию (4.2). После надписи Soir ошибка 2. Проверял на2х процессорах. Залил прошивку 4.1. Все запустилось нормально, но испытать на реальном объекте, просто сил нет. Ужасно устал. Завтра, с утра, стоматолог и сразу испытания. К вечеру смогу сказать что-то вразумительное. Сейчас просто вырубаюсь. Извините!


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 11:17:46 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
Сразу залил последнюю версию (4.2)...

Да, я тоже, когда проверил в железе, столкнулся с таким же. А Proteus был всем доволен...
Погонял у себя версии 4.0 и 4.1 (немного доработал, исправил выявленные ошибки, выкладываю последние варианты).
По 4.0 реагирует быстро, но проскакивает заданную температуру. При 40 град температура достигла 48 град, затем 37 и на следующем проходе уже установилась, точность поддержания 0,2 - 0,3 град. (это именно в этом варианте, в выложенных ранее была "мертвая зона" при низких значениях коэффициента пропорциональности, что не позволяло точно вывести температуру).
Версия 4.1 работает медленнее, но зато не проскакивает так далеко. До входа в стабильный режим колебания 41-38 град. А дальше те же 0,2-0,3 град.
Еще раз версия 4.2. Некий гибрид 4.0 и 4.1. По идее должно получиться нечто среднее. В железе не проверял, смогу только вечером.
P.S.
Все проверки провожу на стенде, состоящем из понижающего трансформатора, лампочки 24V 0,1А и датчика, упакованных в отрезок ПВХ трубки. Настройки: t 40,0; St 10; Pr0.1; d 0,1. Конечно, это совсем не полевые условия и у Вас результаты могут быть другими.


Вложения:
Termometr_16F628_PWM_v4.0.zip [4.03 KiB]
Скачиваний: 206
Termometr_16F628_PWM_v4.1.zip [4.01 KiB]
Скачиваний: 183
Termometr_16F628_PWM_v4.2.zip [4.14 KiB]
Скачиваний: 222
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 18:26:31 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
немного доработал, исправил выявленные ошибки, выкладываю последние варианты.

Здравствуйте, Уважаемый Soir!
Вы быстрее меняете прошивки, чем я успеваю проверять :)))
Сегодня игрался с версией 4.1 (предпоследней) Пока что, минимальный разбег, составляет 2,5 *С. Но вариантов проверки, еще уйма. Сейчас я сделал такую конструкцию. В литровую банку, положил лампу 40Вт. На неё, поставил еще одну банку, на дне которой уложен мох (4см) залитый водой, на мох поставил черенки винограда ( пока того, который мне не жалко) и датчик. Все это обернул с боков,куском вспененного полиэтилена, толщиной 2см. Конструкция, долго нагревается и долго остывает. Поэтому проверка занимает много времени. Как я говорил, между моим нагревателем и датчиком, слой влажного мха 4см, (который видимо и создает мне проблемы). Когда в районе датчика, температура достигает установленной, та часть мха, что касается дна, уже успевает разогреться очень сильно. В результате, мощность на нагревателе уже падает до 0 а температура еще растет. Когда температура снижается, ниже заданной, мощность начинает расти и успевает выйти на 100% до того как начнет, подниматься температура в районе датчика. На данном этапе, я с установленным Pr-0,5, постепенно увеличивал время. Но стабилизации достигнуть пока не получается.
Завтра думаю, эту конструкцию, взять с собой на работу, и в течении суток, смогу экспериментировать. Микросхем у меня только 2. Какие прошивки, на Ваш взгляд, стоит проверять в первую очередь, для такой конструкции. И с каких установок St и Pr, ориентировочно, начать проверку?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 18:48:25 
Друг Кота

Карма: 28
Рейтинг сообщений: 568
Зарегистрирован: Чт май 05, 2011 21:26:34
Сообщений: 4550
Откуда: Украина, Славутич
Рейтинг сообщения: 0
Так дела не будет, я уже говорил что надо снять единичную характеристику... если включить нагреватель, через какое время температура установится? Вот примерно постоянная времени регулирования должна составлять минимум половину от этого времени.
Либо надо использовать два регулятора для каждой зоны отдельно, если есть необходимость регулировать температуру в двух зонах одновременно и между ними стоит преграда.


Вернуться наверх
 
Эиком - электронные компоненты и радиодетали
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 19:28:43 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Alexeyslav писал(а):
если включить нагреватель, через какое время температура установится? Вот примерно постоянная времени регулирования должна составлять минимум половину от этого времени.

А от какой температуры, начинать отсчет? От той, что сейчас на подоконнике, где стоит конструкция? А если завтра, похолодает и ветер повернет в окно? Температура на подоконнике, упадет градусов на 5. Я так понимаю, нужно учитывать время, за которое температура, повышается на 1 или сколько-то градусов. Так и то, эта величина будет не линейна. Чем больше разница между наружной и требуемой, тем медленнее будет идти прогрев.

Alexeyslav писал(а):
Либо надо использовать два регулятора для каждой зоны отдельно, если есть необходимость регулировать температуру в двух зонах одновременно и между ними стоит преграда.

Но тогда почему, при использовании того, что я выкладывал download/file.php?id=96492 мне чудесно удавалось, обходится одним? Да и не нужно мне в двух зонах. Только в одной! Но, она отделена от нагревателя, довольно инерционной прослойкой.


Уважаемый Soir, я вот чего подумал. А что получится, если сделать так, чтоб мощность останавливалась, как только начинается повышение температуры. Сейчас, если я правильно понимаю, у нас мощность повышается, при любом значении температуры, которое ниже установленной. А если сделать так, чтоб при снижении температуры, ниже установленной, начала повышаться мощность но, как только, снижение прекратится и температура начнет опять подниматься, мощность перестала увеличиваться. По идее, это не даст мощности падать до 0 и подниматься до 100% если в этом нет необходимости.
Может я конечно и не правильно мыслю. Не силен я в этом.


Последний раз редактировалось Niks13 Вт фев 28, 2012 20:17:10, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 20:17:03 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
Завтра думаю, эту конструкцию, взять с собой на работу, и в течении суток, смогу экспериментировать. Микросхем у меня только 2. Какие прошивки, на Ваш взгляд, стоит проверять в первую очередь, для такой конструкции. И с каких установок St и Pr, ориентировочно, начать проверку?

Для Ваших условий, как я понимаю, надо делать медленный регулятор. Из прошивок это 4.1. Прошивку 4.2 проверил, мне не понравилось самому, идея была хорошая, но где-то видно ошибся. Но с ней пока не стоит заморачиваться.
Pr выбирать минимальный, а St побольше.
Если сравнивать с Вашим старым термостатом, то главная разница состоит наверно в том, что он работал в узком диапазоне выходной мощности. И соотвественно не разгонялся от 0 до 100.
Могу еще Вам предложить оба варианта (4.0 и 4.1) с ограниченими диапазона выходной мощности. Если и они не пойдут, тогда не знаю, чем еще помочь. Сейчас нарисую...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 20:33:36 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
Если сравнивать с Вашим старым термостатом, то главная разница состоит наверно в том, что он работал в узком диапазоне выходной мощности. И соотвественно не разгонялся от 0 до 100.

У него, тоже весь диапазон использовался. При включении, лампа загоралась на полную мощность, но при приближении к заданной Т, притухала все сильнее. Температура, проскакивала заданную и она гасла полностью, а потом медленно начинала загораться. Было несколько, затихающих выходов, а потом температура стабилизировалась и лампа светилась с определенным накалом. Температура, на обычном спиртовом термометре, стояла как вкопанная. Цифрового, у меня небыло и сказать точность в десятых, я не могу.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 20:40:02 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
Могу еще Вам предложить оба варианта (4.0 и 4.1) с ограниченими диапазона выходной мощности.

Так требуемая мощность в % зависит ведь от максимальной нагревателя?
А тот вариант, что я предлагал выше, не годится?
Soir писал(а):
Если и они не пойдут, тогда не знаю, чем еще помочь.

Уважаемый, Soir. Вы, в любом случае, мне уже помогли. Из такого обилия прошивок, я в любом случае найду ту, которая меня устроит. Тем более, что одна такая, уже есть. Я писал раньше. А если я поиграюсь подольше, с записью установок и полученными результатами, то 100% смогу добиться высокой точности, хотя в данном случае, она мне особо не нужна. Это для моей конструкции, столько проблем возникает, а для других целей, просто великолепный терморегулятор получился. Только, его бы, как-то, в отдельную статью или тему оформить, чтоб людям не штудировать столько страниц


Последний раз редактировалось Niks13 Вт фев 28, 2012 21:25:57, всего редактировалось 1 раз.

Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 20:55:18 
Друг Кота

Карма: 28
Рейтинг сообщений: 568
Зарегистрирован: Чт май 05, 2011 21:26:34
Сообщений: 4550
Откуда: Украина, Славутич
Рейтинг сообщения: 0
От температуры переходный процесс не зависит. главное это время за которое будет достигнуто 70% от максимальной температуры. Весь диапазон от начальной до максимальной при которой наступит равновесное состояние и будет принято за 100%.
Тот момент когда температура достигнет 70% и будет постоянной времени объекта. на это и надо настраивать регулятор. Чтобы построить эту характеристику нужно постоянно снимать показания термометра и строить график. Вручную конечно делать это довольно накладно, я бы сделал термометр который бы выдавал значения каждую минуту в терминал, а потом в экселе построит график по снятым данным.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 21:04:33 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
Так требуемая мощность в % зависит ведь от максимальной нагревателя?
А тот вариант, что я предлагал выше, не годится?

Не редактируйте сообщения, на которые уже дан ответ. Я не видел Вашего варианта.
Мощность можно ограничить программно, что я уже сделал. Параметр L - минимальная мощность, H - максимальная. Если выставить 0 и 100 соответственно, то они не будут влиять на работу остальной части регулятора.
По поводу Вашего предложения. Сейчас попробую изменить прошивки, пусть будет так.
Niks13 писал(а):
Температура, на обычном спиртовом термометре, стояла как вкопанная. Цифрового, у меня небыло и сказать точность в десятых, я не могу.

Но сейчас у Вас уже есть цифровой, проверьте. А заодно и наоборот, проверьте спиртовым работу нового регулятора. Будет интересно, может и получите ответ на все вопросы.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 21:18:04 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Ну вот собственно и варианты.
4.0 и 4.1 это те же, но с ограничениями по мощности. 4.1.1 это 4.1 с Вашим предложением.
Есть еще идеи, но уже завтра над ними подумаю, если Вам не надоело.

P.S.
При смене прошивки сотрите EEPROM.


Вложения:
Termometr_16F628_PWM_v4.0.zip [4.2 KiB]
Скачиваний: 201
Termometr_16F628_PWM_v4.1.zip [4.23 KiB]
Скачиваний: 190
Termometr_16F628_PWM_v4.1.1.zip [4.23 KiB]
Скачиваний: 210
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 21:36:51 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
Не редактируйте сообщения, на которые уже дан ответ.

Да я начинаю редактировать, когда ответа еще нет, но пока я пишу, Вы уже отвечаете. А мне же не видно, что там уже ответ есть :)))

Soir писал(а):
если Вам не надоело.

Мне нет! Дорогие мне черенки, буду ставить 11-12 марта, так что времени еще валом. Главное, чтоб я Вас не сильно утомил.

Soir писал(а):
При смене прошивки сотрите EEPROM.

Эх, знал-бы я как это делается :( Ладно. Сейчас найду.
Я когда в ИКПРОГЕ жму стереть микросхему, еепром же тоже стирается? Я вот стер, потом прочитал. В еепроме одни фф


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 22:19:35 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
Я когда в ИКПРОГЕ жму стереть микросхему, еепром же тоже стирается? Я вот стер, потом прочитал. В еепроме одни фф

А что такое ИКПРОГЕ? Это IC-prog? В ней стирается. FF - значит стерто.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Вт фев 28, 2012 23:39:44 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Soir писал(а):
Niks13 писал(а):
Я когда в ИКПРОГЕ жму стереть микросхему, еепром же тоже стирается? Я вот стер, потом прочитал. В еепроме одни фф

А что такое ИКПРОГЕ? Это IC-prog? В ней стирается. FF - значит стерто.

Форум что-то глюкает. Пишет слишком много соединений и страницы не открываются. :(
Да, я имел ввиду IC-prog. Просто лень было раскладку менять.
Залил в микросхемы, прошивки 4.1 и 4.1.1 в схему поставил 4.1.1 Сейчас запустил. Посмотрю что покажет, но пределы регулировки мощности, мне очень понравились. Думаю, что с таким количеством регулировок, этот термостат подойдет для любых нужд. ОГРОМНОЕ СПАСИБО, Soir!!!!
Возьму и программатор на работу. Только не знаю, есть ли КОМпорт на рабочем компе.
P.S.
Погонял малость 4.1.1 За стабилизацию температуры, пока сказать ни чего не могу, но при установке, нижнего предела, мощности (L) она часто не выходит на установленный режим. Т.е. была установлена L-10% Лампа слегка светится. Устанавливаю L-5% Проходит 5сек, включается индикация текущей температуры, а лампа остается светится, с тем-же накалом. Начинаю смотреть установки. L стоит как и ставил 5% а вот А-10%. Все это, проверял при температуре, выше заданной. Так что, это не связано, с регулированием самого термостата.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 06:42:35 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
L стоит как и ставил 5% а вот А-10%. Все это, проверял при температуре, выше заданной.

L и H это границы, в которых может меняться A. Они устанавливаются только вручную и самостоятельно программой не меняются. При включении, когда A=0, мощность может нарастать, пройдет L и продолжит расти пока не упрется в H. (Если алгоритм не повернет ее обратно раньше). Затем, при необходимости, может снижаться пока не упрется в L. То же самое, если в ручном режиме мощность была установлена вне ограничений L или H, а затем был переход в автоматический режим. Мощность по алгоритму войдет в границы и уже не будет из них выходить.
Там еще есть ограничения при установке пределов: L не может быть выше H, а H, соответственно, не может быть ниже L.
Так задумывалось... Может что-то не учел...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 12:39:22 
Прорезались зубы

Карма: 5
Рейтинг сообщений: 8
Зарегистрирован: Пн янв 16, 2012 02:06:36
Сообщений: 214
Откуда: Луганск
Рейтинг сообщения: 0
Блин!!! Пока довез свою конструкцию на работу, оторвал лампочку, а паяльник я с собой не додумался взять :cry:
Буду завтра и послезавтра проверять значит.
Soir писал(а):
L и H это границы, в которых может меняться A.

Здравствуйте, Уважаемый Soir!
Принцип работы я понял правильно. Просто у меня была такая ситуация. Реальная Т +30*С. Заданная +26*С. Мощность на нагревателе (А), падает до установленной L. L- установлена на 10%. Соответственно А упала до 10% и остановилась. Теперь, я решил изменить L и поставить 5%. Установил L-5% но А, так и осталась 10% . Впрочем сейчас только до меня дошло, что А примет значение L не через 5сек, как я подумал, а по истечении времени St. В общем, ступил я! Извините! Все там нормально.
Жаль только что целые сутки теряю из за обрыва лампочки. :cry:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 21:38:44 
Встал на лапы

Зарегистрирован: Пт фев 03, 2012 19:39:32
Сообщений: 103
Рейтинг сообщения: 0
Уважаемый Soir!
Вы по моей просьбе дорабатывалм Ваше изделие http://radiokot.ru/forum/download/file.php?id=94431 до прошивки http://radiokot.ru/forum/download/file.php?id=94465.
В протеусе все работает как надо, но на макетке пошла проблемма. При первом включении все работает правильно.
При втором включении МК начинает работать с момента достижения температуры Т2. Такое впечатление, что МК запомнил свое последнее состояние и начинает с него. А при включении питания должно быть как бы заново, разумеется кроме настроек.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 22:01:05 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
Niks13 писал(а):
Буду завтра и послезавтра проверять значит.

Чтобы Вам было чем заняться, еще вариант. Пропущу номер 4.2, что-то с ним никак, версия 4.3 - ПИД регулятор. За основу взял код LordN, выложенный здесь. (Только за основу, некоторые изменения все же внес.)
Соответствие коэффициентов условным обозначениям при индикации (в скобках величины по умолчанию):
Tint -> in (20)
Tquant -> ti (2)
Tdiff -> di (5)
Zp -> Pr (1)
St (5) как был, так и остался. Без него не удавалось застабилизировать регулятор. Правда я лишь поверхностно прошелся по подбору параметров. Практически сразу наткнулся на оптимальные для моей системы (сделал по умолчанию) и дальше не экспериментировал.
Результат лучше, чем все предыдущие. Быстро выходит на режим, практически не проскакивает установленную температуру, точность поддержания 0,1-0,2 град, при изменении напряжения в сети в пределах 150-240 Вольт кратковременные отклонения не более 0,5 град.
Еще раз подчеркну, что тщательной прогонке новую прошивку я не подвергал. Выявите глюки - пишите.
----------
Вс мар 04, 2012 16:15
Перезалил прошивку, исправил мелкие ошибки.


Вложения:
Termometr_16F628_PWM_v4.3.zip [4.15 KiB]
Скачиваний: 330


Последний раз редактировалось Soir Вс мар 04, 2012 17:15:05, всего редактировалось 1 раз.
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 22:42:15 
Друг Кота

Карма: 33
Рейтинг сообщений: 213
Зарегистрирован: Ср окт 14, 2009 10:37:49
Сообщений: 3956
Откуда: Украина
Рейтинг сообщения: 0
variaevg писал(а):
При первом включении все работает правильно.
При втором включении МК начинает работать с момента достижения температуры Т2. Такое впечатление, что МК запомнил свое последнее состояние и начинает с него. А при включении питания должно быть как бы заново, разумеется кроме настроек.

В память пишутся только пороги температур t-1 и t-2. Вы можете в этом убедиться, считав EEPROM контроллера. В адрес 0х00 пишется 0, если запись в память проводилась. По адресам 0х01 и 0х02 хранятся данные t-1, по адресам 0х03 и 0х04 хранятся данные t-2. Значения не прямые, в 16-тиричном формате со смещением для удобства обработки, но перевести их понятный вид нетрудно. Нужно содержимое младшего адреса перевести в десятичный формат, умножить на 256, прибавить к нему содержимое старшего адреса, также переведенного в десятичный формат, отнять 550 и разделить на 10. Например: по адресу 0х01 хранится 05, по адресу 0х02 хранится 45. После преобразования в десятичный формат получим: t-1 = (5*256 + 69 - 550)/10 = 79,9 град. Аналогично для t-2. Все.
Поэтому мне непонятно, что запоминается еще. Может Вы не до конца сбрасываете питание. После отключения питания разрядите конденсаторы, или сделайте паузу для того, чтобы они разрядились сами.
Если все-таки такой эффект имеет место, то считайте EEPROM и вышлите его мне. Я тогда уже сам посмотрю и поковыряю прошивку, хотя даже не представляю где можно так накосячить. Бывают иногда глюки компилятора. Или же буду проверять у себя на макете.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Терморегулятор на микроконтроллере PIC16F84 датчикe DS18
СообщениеДобавлено: Ср фев 29, 2012 23:24:11 
Встал на лапы

Зарегистрирован: Пт фев 03, 2012 19:39:32
Сообщений: 103
Рейтинг сообщения: 0
Цитата:
В память пишутся только пороги температур t-1 и t-2. Вы можете в этом убедиться, считав EEPROM контроллера. В адрес 0х00 пишется 0, если запись в память проводилась. По адресам 0х01 и 0х02 хранятся данные t-1, по адресам 0х03 и 0х04 хранятся данные t-2. Значения не прямые, в 16-тиричном формате со смещением для удобства обработки, но перевести их понятный вид нетрудно. Нужно содержимое младшего адреса перевести в десятичный формат, умножить на 256, прибавить к нему содержимое старшего адреса, также переведенного в десятичный формат, отнять 550 и разделить на 10. Например: по адресу 0х01 хранится 05, по адресу 0х02 хранится 45. После преобразования в десятичный формат получим: t-1 = (5*256 + 69 - 550)/10 = 79,9 град. Аналогично для t-2. Все.

В связи с возрастом и недостатком специального образования мало что понял.
Цитата:
Может Вы не до конца сбрасываете питание. После отключения питания разрядите конденсаторы, или сделайте паузу для того, чтобы они разрядились сами.

Припаял 1к на питание, подождал, то же самое.
EEPROM высылаю.


Вложения:
2012-02-29_232133.png [23.65 KiB]
Скачиваний: 394
Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 1950 ]     ... , , , 75, , , ...  

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y