Программируемый на неделю комнатный термостат.

Вопросы и замечания по статьям и схемам, представленным на нашем сайте

При поддержке РадиоКОТструктор.ру


Аватара пользователя
greentm
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт янв 31, 2013 16:30:24

Re: Программируемый на неделю комнатный термостат.

Сообщение greentm »

A-D2 писал(а):
greentm писал(а):Уважаемый rmopal , пожалуйста. Можете скомпелировать прошивку и под обычное реле? С таким же Гистерезист 1гр. и 1,5 гр

Так эта прошивка идет под обычное реле..только выход на него с 28 ноги atmega8. Лично проверил, получается алгоритм такой, по умолчанию реле выключено, котел подключен к нормально замкнутому контакту реле, при достижении заданной температуры на 28 ноге появляется сигнал и включает реле, которое разрывает цепь и котел выключится..затем при понижении температуры в помещении реле снова выключается и создает цепочку для включения котла. Вот и всё.


Да действительно так и работает. К сожалению мне это не подходит. У меня хата тёплая и лишь иногда мне нужно включать котёл. Данная прошивка удобна тем кто постоянно использует котёл. Мне нужны всего пару часов в сутки. Поэтому мне нужно что бы питание шло на реле только в момент включения. Пожалуйста выставьте такую прошивку. В данной теме есть такая прошивка от автора, но там Гистерезист совсем маленький. Мне нужно хотя бы 1 градус.
Аватара пользователя
Игорь Владимирович
Открыл глаза
Сообщения: 76
Зарегистрирован: Сб дек 12, 2009 00:49:45
Откуда: Украина, г. Житомир

Re: Программируемый на неделю комнатный термостат.

Сообщение Игорь Владимирович »

Давно не заходил на форум.
Вижу у многих проблема с кастомными настройками гистерезиса и диапазона температур.
Сам я давно уже не пользую Code Vision, пересел на GCC и Linux, поэтому скомпилировать не могу.
НО. Неужели это так сложно, открыть проэкт готовый в Коде Вижине, найти строки:

Код: Выделить всё

//========
// GLOBAL DEFINES
//========
#define scan_delay 15               // Задержка до следующего сканирования клавиатуры = n*16,3ms

#define temp_max 300                // Максимальная температура уставки = n/10°С  *кратно 5
#define temp_min 80                 // Минимальная температура уставки = n/10°С

#define hyst 2                      // Гистерезис переключения = 0.n°С

                                    // Коды кнопок:
#define btn_plus   btn_tsk & 0x01   // "+"
#define btn_minus  btn_tsk & 0x02   // "-"
#define btn_right  btn_tsk & 0x08   // ">"
#define btn_left   btn_tsk & 0x04   // "<"
#define btn_ok     btn_tsk & 0x10   // "ok"

Нажать на кнопку BUILD, предварительно сохранив файл, и зашить прошивку. Это совсем не сложно, честно. :) Попробуйте, и сами убедитесь. Среду програмирования желательно правда иметь не ниже той, в которой писалось. Там в статье есть версия, но в любом случае не ниже 2-й. Фузы здесь: http://radiokot.ru/forum/download/file.php?id=24297 (форум, 2-я страница).
Если надо больше градуса, то градус представляется значением макроса hyst == 10. Гистерезис вычисляется в одну и другую сторону, тобишь гистерезис 10 означает включение на градус меньше и отключение на градус больше.

И да. реле управляется в функции relay(). На 3-й странице Savage описал отличия в коде от бистабильного до моностабильного реле.

Код: Выделить всё

void relay (char s)
{
#asm ("cli")
if (s)
{
//PORTC |= 0x10;
//delay_ms(50);
//PORTC &= ~0x10;
PORTC &= ~0x20;
}
else
{
//PORTC |= 0x20;
//delay_ms(50);
//PORTC &= ~0x20;
PORTC |= 0x20;
};
#asm ("sei")
}
Аватара пользователя
greentm
Первый раз сказал Мяу!
Сообщения: 39
Зарегистрирован: Чт янв 31, 2013 16:30:24

Re: Программируемый на неделю комнатный термостат.

Сообщение greentm »

Спасибо большое. Всё получилось. Единственное на что у меня ушло много времени так это на компиляцию проекта. СVavr 2.05 ни в какую под win7 не хотел компилировать. Пришлось поиграться с гуглем и бубном пока сделал. А в самих исходника всё клёво описано, спасибо автору. Я вот хотел бы узнать какая именно строка или строки, отвечают за включение релейки в нужный момент? Существуют 2 вида включения релейки:
1) Подается сигнал на включение её в момент нагрева и она замыкает контакты.
2) Постоянно подается сигнал и она размыкает контакты после пропадает сигнал и она отключается и контакты соединяются.
Какие значения меняются в коде чтобы менять варианты?
sirga
Первый раз сказал Мяу!
Сообщения: 21
Зарегистрирован: Чт фев 14, 2013 21:32:55

Re: Программируемый на неделю комнатный термостат.

Сообщение sirga »

greentm писал(а):Пришлось поиграться с гуглем и бубном пока сделал.



не могли бы вы мне помочь? как застпвили компилировть codevision 2.05? выдаёт ошибки too few arguments in function call :(
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

Скажите пожалуйста, эта схема после пропадания питания сбросит все настройки по-умолчанию?

У контроллера есть энергонезависимая память? (прошу прощения, но не нашел в обсуждении ответа)

На одном из вариантов печатной платы стоит батарейка, но она только для часов при пропадании питания?

И ещё, в магазинах предлагают много вариантов контроллеров и диспелеев, все подойдут или есть аналоги тех, что здесь применили?


Спасибо за внимание!
Аватара пользователя
savage
Нашел транзистор. Понюхал.
Сообщения: 187
Зарегистрирован: Пн дек 17, 2007 14:06:09
Откуда: Саранск

Re: Программируемый на неделю комнатный термостат.

Сообщение savage »

Честно признаться не знаю какая версия сейчас актуальна, но ту что собирал я имеет инергонезависимую память. Все прекрасно сохраняется.
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

savage писал(а):Честно признаться не знаю какая версия сейчас актуальна, но ту что собирал я имеет инергонезависимую память. Все прекрасно сохраняется.

А подробнее можете назвать, хотя бы какой тип корпуса контроллера? Здесь два варианта плат для DIP28 и TQFP32, у вас какой?
Вариантов тьма в магазинах как микросхем, так и индикаторов, пока разберусь уже лето будет. Помогите?!! Горю желанием сделать, завтра пойду в магазины изучать ассортимент. Програмист уже готов помочь (сперва подумал писАть надо) зашить.
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

Сделал плату, собрал схему, с индикатором разобрался (1и2 ноги местами менять). Но вот не помнит схема данных после пропадания питания!!! Сбрасывается всё, даже часы! Досада такая, столько времени и труда и напрасно?? Есть кто может подсказать причину такого поведения? ??
A-D2
Родился
Сообщения: 13
Зарегистрирован: Вс мар 29, 2009 17:34:34

Re: Программируемый на неделю комнатный термостат.

Сообщение A-D2 »

prince67 писал(а):Сделал плату, собрал схему, с индикатором разобрался (1и2 ноги местами менять). Но вот не помнит схема данных после пропадания питания!!! Сбрасывается всё, даже часы! Досада такая, столько времени и труда и напрасно?? Есть кто может подсказать причину такого поведения? ??

батарейку к ds1307 необходимо подключать,без нее время полюбому будет сбрасываться а соответственно и программа работы
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

A-D2 писал(а):
prince67 писал(а):Сделал плату, собрал схему, с индикатором разобрался (1и2 ноги местами менять). Но вот не помнит схема данных после пропадания питания!!! Сбрасывается всё, даже часы! Досада такая, столько времени и труда и напрасно?? Есть кто может подсказать причину такого поведения? ??

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

Спасибо за ответ! Так и вышло, питание не дошло до неё!! Небольшой подтрав, всё работает!!
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

Вот уж не думал, что датчик DS18b20 так будет врать. Или ему надо сделать что-то? Допустим прикрутить на кусок алюминия, что бы снизить инерционность? Или у меня такой экземпляр попался??? В доме +24, а термостат показывает почти +30. Ужасть.
A-D2
Родился
Сообщения: 13
Зарегистрирован: Вс мар 29, 2009 17:34:34

Re: Программируемый на неделю комнатный термостат.

Сообщение A-D2 »

prince67 писал(а):Вот уж не думал, что датчик DS18b20 так будет врать. Или ему надо сделать что-то? Допустим прикрутить на кусок алюминия, что бы снизить инерционность? Или у меня такой экземпляр попался??? В доме +24, а термостат показывает почти +30. Ужасть.

попробуйте поиграться с резистором в цепи датчика(4,7кОм)поизменяйте в меньшую сторону или большую может повлияет
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

Спасибо за совет, я уже читал о резисторе, попробую. А еще вопрос такой, в меню термостата три символа - луна, солнце и пламя, не пойму что к чему, по инструкции автора только два символа обсуждалось- луна и пламя, а к чему солнце?
Аватара пользователя
Игорь Владимирович
Открыл глаза
Сообщения: 76
Зарегистрирован: Сб дек 12, 2009 00:49:45
Откуда: Украина, г. Житомир

Re: Программируемый на неделю комнатный термостат.

Сообщение Игорь Владимирович »

Солнце (некое его подобие, кружочек из точек) - ручной режим. Таймер отключается и термостат держит одну и ту же температуру до нажатия кнопки окей. Сделано для того чтобы, например, при отъезде на длительный период, поставить какую то минимальную температуру для экономии топлива.
Аватара пользователя
Игорь Владимирович
Открыл глаза
Сообщения: 76
Зарегистрирован: Сб дек 12, 2009 00:49:45
Откуда: Украина, г. Житомир

Re: Программируемый на неделю комнатный термостат.

Сообщение Игорь Владимирович »

Версий на самом деле не так уж и много. По началу там было просто пару исправлений (вроде 2), и поэтому все предыдущие версии до последней не актуальны. Абсолютно все настройки сохраняются в EEPROM. Батарейка держит время. Последняя же версия существует в 2-х вариациях - для бистабильного и моностабильного реле. Разница между ними в реализации функции relay(). Все же это вызвало некую путаницу между версиями которую надо исправлять.
Изменение гистерезиса, выбор температурного диапазона и выбор типа реле производится компиляцией исходника под свои нужды. Прошу не беспокоить просьбами скомпилировать исходник, так как кодевижин давно не пользую.

Последняя актуальная ревизия исходника в аттачменте (исходный код + файл проэкта кодевижн. готовых прошивок нету - компилировать самостоятельно). Поддерживает выбор типа реле:
- По умолчанию реле моностабильное, если не определить это явно - раскоментировать #define BISTABLE_RELAY
- PORTC4 - включает и отключает моностабильное реле;
- В случае бистабильного реле PORTC4 подает импульс на включение а PORTC5 - импульс на отключение.


Также можно было бы попытаться систематизировать все на первой странице обсуждения, но нельзя редактировать сообщение.
Вложения
Source_latest_revision.zip
(12 КБ) 441 скачивание
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

A-D2 писал(а):попробуйте поиграться с резистором в цепи датчика(4,7кОм)поизменяйте в меньшую сторону или большую может повлияет

попробовал поиграться с номиналом резистора, от 10 кОм до 1 кОм, улучшений к сожалению не отметил, врёт. Прикрутил к нему небольшой радиатор, стало лучше, но не то. Утром пришел на работу, включил, показал 20.8, рядом контрольный показывает столько же. После получаса работы датчик саморазогрелся и температура выросла на 5 градусов. В сети написано, что опрашивать датчик надо реже, а здесь опрос раз в секунду что ли?
Теперь вопрос, как изменить опрос датчика, скажем раз в 20 секунд и ещё, инвертировать включение реле, те при уменьшении температуры реле включается и по достижении выключается. Я вижу где это изменить, но боюсь неправильно получится :) Хелп ми :cry:
Аватара пользователя
SIV
Первый раз сказал Мяу!
Сообщения: 32
Зарегистрирован: Вт июл 12, 2011 18:37:43
Откуда: Україна, Львів

Re: Программируемый на неделю комнатный термостат.

Сообщение SIV »

Хочу применить термостат для управления бойлером косвенного нагрева с насосом рециркуляции.
Для економии енергоресурсов нужна функция остановки насоса рециркуляции.
Кто бы мог добавить функцию изменения уровня допольнительного вывода порта в зависимости от смены температурного режима.
Для примера при высоком температурном режиме на дополнительном выходе порта высокий уровень (1) и наоборот при низком температурном режиме на дополнительном выходе порта низкий уровень (0).
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

SIV писал(а): нужна функция остановки насоса рециркуляции.

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

Что мне не понравилось, датчик температуры врёт (причину пока не нашли), реле надо инвертировать (это не сложно) и гистерезис установить который нужен, что так же автор здесь разжевал.

У меня так и не получилось улучшить показания DS18B20, сделали опрос раз в 20 секунд, стало некомфортно, долго и к тому же уменьшили разрядность до 9 (было 12) всё равно датчик врёт. Ответов по теме нет.
prince67
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср фев 20, 2013 14:36:40

Re: Программируемый на неделю комнатный термостат.

Сообщение prince67 »

Котяры, ну не уж то не кто не поможет??? Уже програматор спаял, буду сам компилировать программу, как быть с датчиком Далласа, как исправить опрос?
Аватара пользователя
vladant
Вымогатель припоя
Сообщения: 554
Зарегистрирован: Чт апр 14, 2011 20:39:14

Re: Программируемый на неделю комнатный термостат.

Сообщение vladant »

Нужно заменить датчик. И бутет вам счастье. У всех показывает правильно. Проверьте еще провод к датчику, может ёмкость у него большая. У меня витая пара две жилы и 18b20 с паразитным питанием на 5 метрах меряет точно.
Ответить

Вернуться в «Статьи»