Page 74 of 109

Re: Термостат ∆T=0,1°C

Posted: 01 Dec 2013 08:32
by Recov
auroso, если почитать всю тему, будет видно что я не мог запустить схему недели две что ли. И все из-за неумения прошивать МК. В твоем случае надо разок поменять датчик, а потом последовательно смотреть где косяк.

Добавлено спустя 3 минуты 55 секунд:
UT5ULJ, печатка хорошая слов нет. Но ты зря не поставил супервизор, прошивка время от времени будет слетать 100%

Re: Термостат ∆T=0,1°C

Posted: 01 Dec 2013 17:52
by auroso
1 на кнопки реагирует
2 avrdudeprog
3 осцилографа нету

Добавлено спустя 9 минут 7 секунд:
не могу разобраться как отправить файл
Перепрошил микросхему так же
Трансформатор на 60 ма может маловато не вытягивает
и конденсатор поставил не 10мкф а 1000мкф иначе не хотел запускаться

Re: Термостат ∆T=0,1°C

Posted: 02 Dec 2013 08:38
by andreich78
auroso wrote: Трансформатор на 60 ма может маловато не вытягивает
и конденсатор поставил не 10мкф а 1000мкф иначе не хотел запускаться
питание хиловато. Попробуй запитаться от батареек, автомобильный аккум - тоже подойдет.
у тебя семисегментный индикатор, если потребуется зажечь все семь, при токе через светодиод 10 ма - ты одним только индикатором засадишь свой блок питания. А у тебя еще реле (небось), оно вообще от 20ма во включенном состоянии.

Re: Термостат ∆T=0,1°C

Posted: 02 Dec 2013 23:28
by auroso
спасибо огромное за советы -заработало.Только один вопрос -к 6 ноге сделал выход на управление нагрузкой соответственно через реле и транзистор - получается когда температуру нужно набирать обмотка реле выключена -это так и должно быть?

Re: Термостат ∆T=0,1°C

Posted: 03 Dec 2013 15:11
by Nikolas
если точка на индикаторе горит реле должно быть включено от ноги 6

Re: Термостат ∆T=0,1°C

Posted: 04 Dec 2013 15:40
by Glot
можно ли в установках температуры от -55°С до +124°С сделать +5 до +40 не больше (ограничить нижний и верхний режим) хотелось бы применить для обогрева эл.покрывал. Может кто переделывал прошивку и есть готовая пенсионеры будут признательны .... [email protected]

Добавлено спустя 1 минуту 23 секунды:
hardlock, можно ли в установках температуры от -55°С до +124°С сделать +5 до +40 не больше (ограничить нижний и верхний режим) хотелось бы применить для обогрева эл.покрывал. Может кто переделывал прошивку и есть готовая пенсионеры будут признательны .... [email protected]

Re: Термостат ∆T=0,1°C

Posted: 04 Dec 2013 16:46
by andreich78
Glot wrote:можно ли в установках температуры от -55°С до +124°С сделать +5 до +40 не больше (ограничить нижний и верхний режим) хотелось бы применить для обогрева эл.покрывал. Может кто переделывал прошивку и есть готовая пенсионеры будут признательны .... [email protected]
ты уверен в своих знаниях настолько, чтобы этот термостат в такие устройства втыкать?
вот для примера что написал один не очень умелый человечек в этот форум некоторое время назад:
http://hardlock.org.ua/viewtopic.php?f= ... 5767#p5767
случись что - неправильно сработает термостат и при прогреве покрывала хотя бы до +80 можно и кони двинуть от болевого шока.
Например, в прошивке нет проверки правильности передачи данных от датчика - при обрыве на линии термостат будет думать, что получает от датчика 0xFF 0xFF, а для программы - это 0 по цельсию.
Причем, схема и прошивка мне лично нравятся, но надо же отличать поиграшки от сертифицированных устройств.

Re: Термостат ∆T=0,1°C

Posted: 04 Dec 2013 19:21
by IYra
andreich78 wrote:
Glot wrote:можно ли в установках температуры от -55°С до +124°С сделать +5 до +40 не больше (ограничить нижний и верхний режим) хотелось бы применить для обогрева эл.покрывал.
Например, в прошивке нет проверки правильности передачи данных от датчика - при обрыве на линии термостат будет думать, что получает от датчика 0xFF 0xFF, а для программы - это 0 по цельсию.
Прошивка (ОА )с ограниченнием диапазона и проверкой датчика на обрыв
Ну и конечно поставить супервизор.
Не проверял.

Re: Термостат ∆T=0,1°C

Posted: 05 Dec 2013 07:54
by andreich78
IYra wrote: Прошивка (ОА )с ограниченнием диапазона и проверкой датчика на обрыв
Ну и конечно поставить супервизор.
Не проверял.
Ну уж выложи и исходник :)
А я его погоняю на модельке.

Re: Термостат ∆T=0,1°C

Posted: 05 Dec 2013 08:58
by IYra
andreich78 wrote: А я его погоняю на модельке.
В протеусе у меня не заработало. А в железе все нормально (инкубатор).
Проверка организованна просто

Code: Select all

  //-- Проверка на корректность читаем 3 байт
  t2 = w1_read() ;
  if (t2 > 250) Tnew = 10999 ;
Пробовал вытаскивать датчик - высвечивается 9999

Re: Термостат ∆T=0,1°C

Posted: 05 Dec 2013 10:06
by Glot
IYra, зачем нужен супервизор, все таки есть проблема по питанию конструкции ... или импульс сброса должен удерживаться в течение определенного времени после превышения порога ... если раньше было описано подключение к кондиционеру, и говорилось что работает без глюков (+5 +30) может брешет кто знает но прошивку не выкладывали тогда. а по поводу сертификации здесь надо подумать в покрывалах применяются обычная биметаллическая пластина и нет регулировок.

Re: Термостат ∆T=0,1°C

Posted: 05 Dec 2013 10:36
by andreich78
IYra wrote:В протеусе у меня не заработало. А в железе все нормально (инкубатор).
Проверка организованна просто

Code: Select all

  //-- Проверка на корректность читаем 3 байт
  t2 = w1_read() ;
  if (t2 > 250) Tnew = 10999 ;
Пробовал вытаскивать датчик - высвечивается 9999
ничё так.

я только распишу как было бы совсем правильно.
1. Датчик каждый раз на запрос READ SCRATCHPAD посылает в шину всё содержимое своего буфера плюс CRC (контрольную сумму).
2. В конфигурации с одним датчиком на линии достаточно завести буфер для чтения всех посланных байтов и одну переменную для пересчета CRC.

Code: Select all

BYTE data_buffer[9] = {0,0,0,0,0,0,0,0,0};
unsigned char crc;
3. Читать нужно все 8+1 присланных байт, лучше прямо в цикле (еще одна переменная). Это при наших раскладах потребует где-то еще 6 мс - незначительное время.
4. После чтения - считаем CRC функцией w1_dow_crc8(void *p, unsigned char n), она уже подключена через 1wire.h:

Code: Select all

crc = w1_dow_crc8(data_buffer,8);
5. Если CRC не совпало - у нас ошибка на линии
5.1 Я бы в этом месте сделал вторую попытку чтения с реинициализацией линии w1_init() и т.д., но только на этот раз - проверил бы результат работы функции w1_init, которая возвращает 1 только если на шине кто-нибудь откликнулся и 0 если никого нету дома.
6. Если в линии ошибка, я бы отрубал сразу все силовые цепи

Code: Select all

PORTD.3 = 0;
PORTD.2 = 0;
а твой подход с увеличением температуры - быстр, но подумай, ведь кто-то прошьет свой термостат прошивкой "для холодильника" и при такой температуре всё останется в состоянии "включено"

А, да, почему недостаточно просто прочитать 3й байт?
- Третий байт скратчпада содержит какие-то данные и доступен для записи, положить туда 0xFF и даже прописать его в EEPROM никто не запрещает, так что возможны непонятки. В частности - в протеусе, судя по всему, моделька DS18B20 содержит именно в этом байте именно 0xFF ;)

Прикладываю рабочую модельку для Proteus 7.7 внутри лежит папочка FTermo с твоей версией прошивки, проект termostat_led.prj настроен для отладки в протеусе - после команды "Make" в окне отчета о компиляции нажимай кнопку "Execute user's program", там запускается батничек, который копирует нужные для отладки файлы в правильную папку.

Re: Термостат ∆T=0,1°C

Posted: 05 Dec 2013 13:22
by IYra
Glot wrote:IYra, зачем нужен супервизор, все таки есть проблема по питанию конструкции ...
Проблемы с контроллером. Слетают настройки. Об этом много писалось на форуме.
1. Ставится супервизор
или если контроллер работает при положительных температурах
2. Включается bodlevel
или
3. Подключается резервное питание (через квадратную батарейку и диод последовательно например)

Добавлено спустя 7 минут 12 секунд:
andreich78 wrote: "для холодильника" и при такой температуре всё останется в состоянии "включено"
Все делалось для нагревателя и в режиме ограничения по памяти. Как можно проще.
А для холодильника можно поставить -273 :-)
Спасибо за подсказку в Proteus

Re: Термостат ∆T=0,1°C

Posted: 11 Dec 2013 14:48
by Glot
IYra, прошил termostat_led_5_40.rar работает, гистерезиса с головой хватило бы и 4-5 градусов, в прошивке я установил 39 предел поставил d10 отработало на 50 многовато если можно подкорректировать d=4-5 градусов не больше, глюков не замечено, сбоев не было ....есть ли наработки с подключением супервизора. [email protected]

Re: Термостат ∆T=0,1°C

Posted: 11 Dec 2013 16:32
by IYra
Glot wrote:поставил d10 отработало на 50 многовато если можно подкорректировать d=4-5 градусов не больше
Не понял :shock: d10 - значит 1 градус (с десятыми) корректируется кнопками. В чем проблема ?
Или используется 3-х сегментный индикатор ? Тогда надо ставить d1
Glot wrote: .есть ли наработки с подключением супервизора.
Супервизор использовал - резистор и светодиод как писалось на форуме. Сбоев по памяти не было за год,
хотя электричество часто отключали. А до этого слетало иногда.

Re: Термостат ∆T=0,1°C

Posted: 11 Dec 2013 17:10
by Glot
IYra, я имел ввиду ограничить в прошивке 5.40 гистерезис до 4-5градусов чтоб случайно или после сбоя не перегревал тепло регулятор,а на термо покрывало и вполне 4 градусов гистерезиса хватит...

Добавлено спустя 6 минут 55 секунд:
еще чтобы было понятно...
пример сделал 39градусов это потолок прошивки 5.40
установил гистерезис случайно (или сбой 20) не вопрос
что получается 39+20=50 (нагрузка отключится будет 50градусов)
ограничить гистерезис до 4.0 градуса (с десятыми)
мы же ограничили в 5.40 (+5 +40) +4 гирстерезиса

Re: Термостат ∆T=0,1°C

Posted: 11 Dec 2013 18:52
by IYra
Glot wrote: я имел ввиду ограничить в прошивке 5.40 гистерезис до 4-5градусов

Понял.

Добавил ограничение дельты - 0.1 - 4 градуса

Проверка EEPROM на сбой - если не попадает в диапазон-устанавливаются значения по умолчанию
28.0 и дельта 1.0
В случае сбоя (память или датчик) индикатор начинает мигать. Нажатие на любую кнопку останавливает мигание

Re: Термостат ∆T=0,1°C

Posted: 12 Dec 2013 00:34
by Recov
Glot wrote:IYra, ....есть ли наработки с подключением супервизора. [email protected]
В моем посту от 19 ноября есть печатки с супервизором. Необязательно твои переделывать, просто можно сверху напаять резистор и светодиод. Прошивки точно не будут слетать, проверено.

Re: Термостат ∆T=0,1°C

Posted: 13 Dec 2013 06:53
by ZimA
Recov wrote:Прошивки точно не будут слетать, проверено.
Слетает. Лично у меня. Уже и бод включил. Правда редко.

Re: Термостат ∆T=0,1°C

Posted: 13 Dec 2013 10:18
by Recov
Странно. У меня после установки супервизора ни разу. Я их с десяток слепил. У других вроде тоже не слетают...

Re: Термостат ∆T=0,1°C

Posted: 13 Dec 2013 21:56
by UT5ULJ
Сделанный термостат приспособил к насосной яме, для предотвращения замерзания насосной станции в сильный мороз. РПонятно что насосная закрыта плотным люком сверху 10 см слой утеплителя ( минвата). Выставил порог включения +5 с гистерезисом 5. Снеделюю порлет нормальный дажк в -10 по Цельсию в яме быо +7 термостат не включался. В качестве нагревателя жестяная банка из под муки с лампочкой накаливания в 100 Вт.

Сегодня на улице +3 все течет и тает. Заглядыфваю на индикатор термостата показывает +13 и нагреватель включен. Такого по определению не может быть ( 5 плюс гистерезис 5 итого 10. А у меня 13. Оказалось что ночью толи свет мигнул толи пропадание его было и в память вместо +5 записалось +85. Кнопочкой вернул на +5 и все заработало.

Стабилизатор по питанию 7805 и два кондера на входе и віходе по 47 Мкф. плюс блокировочніе по 0.1

Добавлено спустя 3 часа 13 минут 14 секунд:
Recov wrote: UT5ULJ, печатка хорошая слов нет. Но ты зря не поставил супервизор, прошивка время от времени будет слетать 100%
Что есть супервизор ? можно подробнее ? и где он на схеме автора ?

Re: Термостат ∆T=0,1°C

Posted: 14 Dec 2013 01:06
by Recov
У кого слетают настройки, то мое мнение, или нет супервизора, или он неправильно поставлен! Сейчас с ним разберемся. А в принципе вот в архиве некоторые ответы участников форума, к сожалению не помню кто это писал, просто имею привычку умные мысли сохранять в ворде. Там же некоторые мои пояснения следуюя которым добъетесь безпроблемной и надежной работы термостата.
И вот так управляется отопление в моем доме вторую зиму, прошивки ни разу не слетатали.

UT5ULJ вместо лампочки лучше применить греющий кабель. Не дай бог перегорит твоя лампочка в самый неподходящий момент...

Re: Термостат ∆T=0,1°C

Posted: 14 Dec 2013 04:02
by georg77
"Стабилизатор по питанию 7805 и два кондера на входе и віходе по 47 Мкф. плюс блокировочніе по 0.1"
на входе 7805 я бы поставил 1000 или 2200 мкф - 47 явно мало
если вы только не используете древние К50-6 то блокировочные не нужны - просто бесполезны

Re: Термостат ∆T=0,1°C

Posted: 14 Dec 2013 07:37
by Recov
У меня на УАЗе при электролитах (блокировочных) 470 мкФ без керамики 01 показания сбивались (мельтишили) при заведенном пихале. После установки 3-х по 01 мкФ все работает ровно. Щас морозы я его не завожу, а так бы фотку выложил.

А при обычном использовании межет и не нужны они.

Re: Термостат ∆T=0,1°C

Posted: 17 Dec 2013 15:44
by JVOROBEY
Сделал второй термостат.Когда датчики рядом, температуру показывают с разницей в 0,1 С, это норм. или нужно прошивки исправлять, что бы показания были одинаковые?