Обявления

Для полноценной работы рекомендуется пройти регистрацию.

Рекламные сообщения будут удаляться вместе с пользователем. Что есть реклама - буду решать я.

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

Здесь только проекты на ATtiny

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

Сообщение kenkel » 10 янв 2013 19:58

Хорошо- попробую объяснить алгоритм работы твердотопливного котла.
В отличии от инкубатора- основная задача которого поддержание температуры в заданных пределах, твердотопливный котел требует периодической закладки топлива (дров, угля...). Если это не сделать вовремя- котел попросту затухнет. При этом- что-бы не гонять циркуляционный насос вхолостую его нужно отключить. (экономия электрики). Необходимость закладки топлива в котел можно определить по падению температуры теплоносителя на выходе из котла. Актуальность проблемы возростает ночью, когда обслуживающий персонал ( например жена :-) ) попросту спит.
Исходя из выше сказанного городится огород с термостатом.
Итак- растапливаем котел- при достижении температуры уставки (около 20*с) включается циркуляционный насос системы отопления. Система прогревается до определенной температуры (70-80 *С) . Затем система начинает остывать. Опытным путем была определена температура теплоносителя- при которой нужно загрузить топливо Тalarm. При опускании температуры до Talarm термостат должен издать сигнал. Загружаем топливо и процесс повторяется. Если топливо не загружать- при достижении температуры уставки отключается циркуляционный насос.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 10 янв 2013 20:25

kenkel писал(а): Итак- растапливаем котел- при достижении температуры уставки (около 20*с) включается циркуляционный насос системы отопления. Система прогревается до определенной температуры (70-80 *С) . Затем система начинает остывать. Опытным путем была определена температура теплоносителя- при которой нужно загрузить топливо Тalarm. При опускании температуры до Talarm термостат должен издать сигнал. Загружаем топливо и процесс повторяется. Если топливо не загружать- при достижении температуры уставки отключается циркуляционный насос.

Ну тогда примерно так.
Заводим глобальный флаг lHeat = 0. При достижении температуры = 60*С (большей чем Тalarm) флаг
устанавливается в 1 (lHeat = 1). Проверяем условие (lHeat == 1) и (t = Тalarm+диапазон).
Если выполняется - алярм. Флаг сбрасывается в 0 при достижении нижней границы диапазона.
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 10 янв 2013 23:30

Спасибо за ответ. На данном этапе выяснил- кусок кода выложенный выше- рабочий. Немного расширил диапазон Talarm- 55-54*C. Пока работой термостата удовлетворен.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение kenkel » 12 янв 2013 17:45

Вот уже 2 дня гоняю свой термостат для твердотопливного котла (ТТК). Появились мысли по его усовершенствованию.
1. Захотелось вывести на индикатор в каком состоянии находится теплоноситель (идет нагрев или охлаждение). Для этого хочу задействовать на индикаторе сегменты E и F первого символа. Идея заключается в том, что-бы при нагреве (в течении 5 сек)горел сегмент F, соответсвенно при охлаждении сегмент E. При равновесном состоянии (температура стабильна в течении 5 сек)- ничего не горело. Выкладываю свою скромную попытку реализовать задуманное. К сожалению- в программировании я не силен и результатом остался недоволен.
Вложения
termostat_led.rar
(4.58 КБ) Скачиваний: 157
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 12 янв 2013 20:14

kenkel писал(а): К сожалению- в программировании я не силен и результатом остался недоволен.

Что не получилось ? конкретней
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 12 янв 2013 20:53

___________________________________________!_______Имеем ________________________!____Желаемое________________
Что имеем сейчас.- 1- Температура не меняется -! Сегмент Е горит постоянно ! Сегменты E и F не горят
2- Температура поднимается-! Сегмент Е гаснет, Загорается сегмент F ! Горит сегмент F ( сегмент E не горит)
!и тут-же гаснет, Загорается сегмент E !
3- Температура снижается - ! Сегмент Е горит постоянно. ! Горит сегмент E (сегмент F не горит)
----------------------------------------------------------------------------------------------------------------------------------------------------------------------
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 12 янв 2013 23:04

["kenkel"]

Проблема как я понял с алгоритмом вывода сегментов. Не знаю как сделано у вас.
Чтобы понять это нужен ваш проект.
Я бы сделал так. Заводим три глобальные переменные.
BYTE tCount = 0 - счетчик секунд увеличивается на 1 в таймере.
WORD oldTemp - значение температуры 5 сек назад
BYTE nFlag = 0 - что выводить (0 - ничего, 1 и 2 - соотв.сегменты)
Затем проверка после измерения температуры
tCount++
if (tCount==5)
{
if (oldTemp>Temp) nFlag = 1 ;
if (oldTemp<Temp) nFlag = 2 ;
if (oldTemp==Temp) nFlag = 0 ;
oldTemp=Temp;
tCount = 0;
}

Далее nFlag используется в функции PrepareData() для вывода сегментов
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение andreich78 » 12 янв 2013 23:19

kenkel писал(а):2- Температура поднимается- Сегмент Е гаснет, Загорается сегмент F и тут-же гаснет, Загорается сегмент E

Если я правильно понял эту смелую попытку изобразить таблицу...

код я посмотрел, задумано почти правильно, но
думаю, дело вот в чем:
0. нулевую разницу текущего и предыдущего показания датчика ты считаешь за повышение температуры
Код: Выделить всё
//####################### by Kenkel
if (Tnew >= Told)
{ Din =1;}
else
{ Din =0;}
//#################################

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

итого:
температура почти не меняется, датчик выдает дискреты то вверх, то вниз, Din перекидывается то в 0 то в 1, на дисплее скачут твои сегменты.
По уму - надо делать какое-то усреднение по нескольким измерениям, и уже по нему решать, повышается температура, или нет.
andreich78
Частенько бываю
 
Сообщения: 91
Зарегистрирован: 25 июн 2012 12:45

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

Сообщение kenkel » 14 янв 2013 02:33

Спасибо за подсказки.
Итак- в лоб решить задачу не удалось. Кодевижен ругается на недостаток места в ATTiny2313. В результате проб и ошибок сделал рабочий вариант. Его и выкладываю- строго не судите, это мои первые шаги в программировании.

Движемся дальше. Задача такая- обеспечить работу термостата с циркуляционным насосом, используя его возможность работать на 3 скоростях. Алгоритм работы будет такой:
1- Растапливаем котел. При температуре теплоносителя (Tохл) 22*С включается насос. При достижении Тохл 40*C включается вторая (повышенная) скорость насоса. При достижении Тохл 60*C- включается третья (самая высокая) скорость насоса. При остывании соответственно насос снижает свою скорость- вплоть до полной остановки. Естественно сохраняется функция Alarm. Скорость работы насоса думаю выводить на 3 горизонтальных сегмента первого символа индикатора.
Подозреваю, что для реализации задуманного можности ATTiny2313 ,будет уже недостаточно и придется переносить проект на более мощный камень ( например ATMega8). Надеюсь на Вашу помощь в реализации задуманного.
Вложения
TTK_Alarm_55_54.5_COLD_MOD.zip
(5.66 КБ) Скачиваний: 143
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение andreich78 » 14 янв 2013 09:01

kenkel писал(а):Кодевижен ругается на недостаток места в ATTiny2313. В результате проб и ошибок сделал рабочий вариант. Его и выкладываю- строго не судите, это мои первые шаги в программировании.
...
Подозреваю, что для реализации задуманного можности ATTiny2313 ,будет уже недостаточно и придется переносить проект на более мощный камень ( например ATMega8). Надеюсь на Вашу помощь в реализации задуманного.

тут такое дело - исходный проект выдает на экран температуру с точностью до 0.1С, под хранение температуры используются двухбайтные переменные, и с ними производят вычисления и сравнения. Под твои нужды - это чрезмерная точность. Если пользоваться однобайтовыми переменными, освободится куча места, по кр. мере под твою логику - хватит. Но придется переделать треть программы.

Если будешь мигрировать на другой чип - понадобится ревизия всей программы.

"Выбирай, но осторожно. Но выбирай" (С)
andreich78
Частенько бываю
 
Сообщения: 91
Зарегистрирован: 25 июн 2012 12:45

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

Сообщение IYra » 14 янв 2013 09:52

kenkel писал(а):Спасибо за подсказки.
Надеюсь на Вашу помощь в реализации задуманного.


Не все так страшно. Предлагаю свой вариант термостата (модернизация).
В нем есть три гистерезиса на один датчик (дельта одна - общая). Делалось для теплицы.
Два гистерезиса на нагрев, третий на открывание форточки. Но он пока закомментирован
так как не хватает выводов. Можно убрать точки на индикаторе. Или не выводить с такой
точностью(3 цифры).
Также подключив еще два датчика можете смотреть температуру дома и на улице.
Только вам надо проект немного допилить под себя. Место там хватит.
Кстати предлагаю использовать CodeVisionAVR V2.05.3 Пользуюсь уже месяц.
Глюков пока не замечено и размер программы получется меньше на несколько байтов.
Описание в прикрепленном файле.

Добавлено спустя 10 часов 43 минуты 43 секунды:
В ветке №53 RuTa56c предлагает вставлять
extern BYTE View;
extern BYTE Counter;
extern WORD T_LoadOn;
extern WORD DeltaT;
extern void RefreshDisplay(void);
в файл kbd.h для сборки проекта в CodeVisionAVR V2.0

При этом получаются интересные вещи
размер файла при сборке CodeVisionAVR V1.25.9 - 945 байт
размер файла при сборке CodeVisionAVR V2.05.3 - 957 байт
добавления в файле kbd.h
размер файла при сборке CodeVisionAVR V2.05.3 - 939 байт
добавления в файле kbd.с
Ну это так - информация к размышлению
Вложения
thermostat_3dat_3gist.rar
Проект, описание и фьюзы
(94.19 КБ) Скачиваний: 209
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 15 янв 2013 01:24

Спасибо за проект- буду разбираться.
Сегодня разобрал ( фактически снял верхнюю крышку) циркуляционный насос. Цель- понять как коммутируются в нем скорости. В итоге набросал кусок схемы управления насосом. Прошу подсказать электронный эквивалент данной схемы (можно- но не хочу собирать управление на реле).

Пока вырисовывается следующее. Для реализации задуманного мне нужно 4 свободные пина ATTiny2313 (1- Alarm, 3- управление насосом). От точности отказываться не хочу. Скорее всего откажусь от кнопок- по мне проще перешить микру.

CodeVisionAVR V2.05.3 скачал. Попробовал в нем собрать свой последний вариант- не вышло. Буду работать на добром старом CodeVisionAVR V1.25.7a. Интересно, что Ваш проект собрался в V2.05.3 без проблем.
Вложения
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 15 янв 2013 09:40

kenkel писал(а):CodeVisionAVR V2.05.3 скачал. Попробовал в нем собрать свой последний вариант- не вышло. Буду работать на добром старом CodeVisionAVR V1.25.7a. Интересно, что Ваш проект собрался в V2.05.3 без проблем.

Повторяю еще раз. Чтобы все собиралось в V2.05.3 без проблем вам надо вставить в начало файла
kbd.c следующий код
extern BYTE View;
extern BYTE Counter;
extern WORD T_LoadOn;
extern WORD DeltaT;
extern void RefreshDisplay(void);


Но так как вы склоняетесь к варианту без кнопок(кстати помоему для вашего проекта это оптимальный
вариант) то в проекте можно удалить все что сязано с кнопками (файл kbd.c,kbd.h и код в termostat_led.с).
И тогда все это спокойно соберется в V2.05.3
Также убирается все связанное с EEPROM - повышается надежность устройства при сбоях питания.
Хотя все равно супервизор не помешает.
Кстати можно еще ALARM повесить на обрыв датчика. В моем проекте это есть.

А по поводу насоса как я понял на каждую скорость своя обмотка.
Ну и использовать 3 связки оптопара+симистор
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 17 янв 2013 00:35

Да- похоже что так. На каждую скорость- своя обмотка. Однако боюсь програмных глюков и буду делать управление в связке- транзистор+ реле+симистор. Зима знаете- не хочу рисковать.


"Кстати можно еще ALARM повесить на обрыв датчика. В моем проекте это есть."

Да- это понятно. Кстати- пробовал отключать датчик температуры, насос продолжает работать.
Сегодня после резкого похолодания у нас резко потеплело. Решил поэкспериментировать- поднял температуру отключения насоса до 45*С. Циклическая работа твердотопливного котла позволила не только топить его при плюсовой температуре (обычно в такой ситуации я перехожу на отопление газом) , но и сьекономить топливо. Супер- первый раз в жизни топлю в таком режиме!!!.
Перешил микру- температуру Alarm опустил до 45*С. Температура отключения насоса- 50*C. Посмотрим , что из этого получится.

"Повторяю еще раз. Чтобы все собиралось в V2.05.3 без проблем вам надо вставить в начало файла
kbd.c следующий код"

С этим я разобрался. Пробовал собирать на собственном проекте термостата. Дополнительно нужно вставить- extern WORD Delta T;. Так вот- хекс файл в V1.25.7a- 5 745b, V2.05.3- 5 769b.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 17 янв 2013 09:42

kenkel писал(а):Однако боюсь програмных глюков и буду делать управление в связке- транзистор+ реле+симистор. Зима знаете- не хочу рисковать.

Что за програмные глюки ??? А связка оптопара(переход через 0)+симистор меньше по размерам,
дешевле, надежней и тише.

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

При обрыве датчика (если вы вставили мой код) температура = 10999. На дисплее - 9999.
А там вы уж сами програмируйте что нужно включить или выключить.

kenkel писал(а): С этим я разобрался. Пробовал собирать на собственном проекте термостата. Дополнительно нужно вставить- extern WORD Delta T;. Так вот- хекс файл в V1.25.7a- 5 745b, V2.05.3- 5 769b.


В какой файл вы вставили ? Вставлять надо в kbd.c тогда размер будет меньше.
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 17 янв 2013 12:00

Да я не прав- не туда вставлял. V2.05.3- хексфайл- 5708b.
Спасибо за терпение.

Под програмными глюками я имел ввиду ситуацию когда у насоса включатся сразу две скорости одновременно. Как понравится это насосу я не знаю. Не хочу рисковать.

Работаю пока с оригинальным кодом (инкубатор)- переделанным под свои нужды. Кстати- ночные испытания показали, что перевод насоса по скоростям нужно привязывать не к температуре на выходе из котла, а к разности температур- выход\вход. Чем выше разность- тем выше скорость. Температуру Alarm- нужно поднимать с 45 до 52*C. Котел практически потух- а тревожного гудка так и небыло.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение andreich78 » 17 янв 2013 15:36

kenkel писал(а):Под програмными глюками я имел ввиду ситуацию когда у насоса включатся сразу две скорости одновременно. Как понравится это насосу я не знаю. Не хочу рисковать.
ну твоя-то существующая схема включения исключает возможность одновременного включения обмоток. Или ты решил релюшки отрезать и напрямую рулить с МК?
релюшки включены так, что третья замкнет свою обмотку только при включенной второй, вторая - только при включенной первой.
andreich78
Частенько бываю
 
Сообщения: 91
Зарегистрирован: 25 июн 2012 12:45

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

Сообщение kenkel » 17 янв 2013 16:32

Да- схему на реле я задумывал так. При включении второй скорости- автоматически отключается первая. При этом реле R1- остается во включенном состоянии. При включении третьей (R3)- отключается вторая. Реле R1 и R2- включены. То есть- одновременно может быть включена только одна обмотка на насосе.
Под электронным эквивалентом схемы на реле я имел ввиду- схему в которой была-бы реализована указанная функция.

Напрямую рулить с МК- боюсь.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение kenkel » 19 янв 2013 01:51

Решено- делаю спаренный термостат. Верхняя часть- использую свою версию термостата. В ней- Alarm+ общее включение котла (пока для реализации функции циклического включения котла по заданной температуре. В перспективе- думаю посадить на этот пин управление заслонкой на выхлопе из котла). Нижняя часть- вариант термостата от IYra. В ней- управление насосом (3 скорости) по разности температур - выход\вход воды в котел. 3й пин- PD4 думаю получить за счет отказа от индикации десятых градуса.
Пока пробую самостоятельно править исходник от IYra.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 19 янв 2013 12:45

kenkel писал(а):Решено- делаю спаренный термостат. Верхняя часть- использую свою версию термостата. В ней- Alarm+ общее включение котла.
Нижняя часть- вариант термостата от IYra. В ней- управление насосом (3 скорости) по разности температур - выход\вход воды в котел. 3й пин- PD4 думаю получить за счет отказа от индикации десятых градуса.

Если отказаться от кнопок и от индикации десятых градуса (от точки тоже можно отказаться) то получится
6 свободных выходов. Это я к тому что можно все сделать на одном проекте. Опять же Alarm будет общий.
Ну это конечно если без кнопок можно обойтись.
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 19 янв 2013 20:44

Думаю, что без кнопок пока не обойтись. Нужно погонять термостат в разных режимах- поэтому принято такое решение.

Подправил Ваш исходник под свои нужды. На удивление- в кодевижине V2.05.3 все собралось. За железом поеду завтра. Сегодня решил погонять хекс в протеусе и тут облом. Не показывает температуру протеус. Подскажите, в чем моя ошибка?
Вложения
Termostat_MY.zip
(84.41 КБ) Скачиваний: 162
Proteus.zip
(37.96 КБ) Скачиваний: 115
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

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

Сообщение IYra » 19 янв 2013 21:04

kenkel писал(а):Думаю, что без кнопок пока не обойтись. Нужно погонять термостат в разных режимах- поэтому принято такое решение.

Ну потом когда все устаканится можно расмотреть и бескнопочный вариант
kenkel писал(а):Сегодня решил погонять хекс в протеусе и тут облом. Не показывает температуру протеус. Подскажите, в чем моя ошибка?

Протеусом не пользуюсь. Собираю на макетке. На форуме много информации что протеус часто глючит.
Так что не обращайте внимание. Правильно собрать и все заработает.

Добавлено спустя 1 час 6 минут 55 секунд:
А кстати мой проект в Протеусе работает ?

Посмотрел ваши добавления. Нашел несколько ошибок
1.
BYTE Tnew1 ; // температура воды на выходе из котла MOD
BYTE Tnew2 ; // температура воды на входе в котел MOD

заменить на

WORD Tnew1 ; // температура воды на выходе из котла MOD
WORD Tnew2 ; // температура воды на входе в котел MOD

если Gis больше 25.6 то и ее надо делать WORD
2. В условиях на равенство использовать == а не =
3. Реакцию на разницу температур надо ставить после for(ii=0; ii<devices; ii++)
когда будут измерены обе температуры
Код: Выделить всё
       for(ii=0; ii<devices; ii++)
       {
        Tnew = izm_temp(ii) ;
         
        if (ii==0) Tnew1 = Tnew ;          // Первый датчик температура на выходе из котла 
        if (ii==1) Tnew2 = Tnew ;          // Второй датчик
                 
        if (ii==UBRRL)  // Текущий датчик
        {
        }
       }   // for
        Tvyvod = Tnew2 ;    // Вывод на индикатор температуры на обратке
        if (( Tnew1 == 10999) | ( Tnew2 == 10999))
        {
         PORTD.5 = 1;  // (на индикаторе 9999 ) проблемы с датчиком включаем 3 скорость насоса MOD
        }     
        else
        {
         Gis = (Tnew1 - Tnew2) ;         
             
         if (Gis >= (T_LoadOn + DeltaT)) PORTD.3 = 1 ; //если разность темп. равна или больше 1 уставки + дельта = включаем 1 скорость насоса           
         if (Gis <= T_LoadOn) PORTD.3 = 0 ;  // если разность темп. меньше 1 уставки = выключаем 1 скорость (выкл. насоса)
         
         if (Gis >= (T_LoadOn1 + DeltaT)) PORTD.4 = 1 ;  //если разность темп. равна или больше 2 уставки + дельта = включаем 2 скорость насоса             
         if (Gis <= T_LoadOn1) PORTD.3 = 0 ;     // если разность темп. меньше 1 уставки = выключаем 1 скорость
         
         if (Gis >= (T_LoadOn2 + DeltaT)) PORTD.5 = 1 ;    //если разность темп. равна или больше 3 уставки + дельта = включаем 3 скорость насоса
         if (Gis <= T_LoadOn1) PORTD.5 = 0 ;  // если разность темп. меньше 1 уставки = выключаем 3 скорость
        }         

И что-то вы с портами намудрили PORTD.5 занят левым разрядом дисплея
И ShowDisplayData(BYTE Num) надо править если вы хотите убрать один разряд
Может проше отказаться от точки и выводить 4 разряда
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение Satarych » 20 янв 2013 00:59

Всем здрасте.
Спаял сей девайс, отличная штука, всё работает. Пришлось правда немного изменить прошивку, поменять выводы на индикатор)).
Собственно зачем пишу. Я достаточно неплохо шарю в программировании, а вот с электроникой только на уровне "спаял - работает, отлично". Хотелось бы разобраться с питанием, слетел у меня EEPROM и в дельту вписалось какое то огромное адовое значение. Каждый раз после фейла перепрошивать как то лень, хочется раз и навсегда разобраться.
1. "При включенном BOD и температуре кристала близкой к 0°С работа устройства оказывалась очень нестабильной - постоянно происходил сброс."
При температуре тиньки или даже только датчика? Если датчик будет на улице в -20 С, а основная схема дома, то с BOD будет нормально работать?
2. На случай работы без BOD. Подойдёт ли такая деталька в качестве супервизора и как её подключать?
Satarych
Пробегал мимо
 
Сообщения: 4
Зарегистрирован: 19 янв 2013 15:52

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

Сообщение IYra » 20 янв 2013 10:54

Satarych писал(а):Всем здрасте.
1. Если датчик будет на улице в -20 С, а основная схема дома, то с BOD будет нормально работать?

Должна работать нормально. Проблемы возникают только если Тинька на морозе.
А может вам повезет с Тинькой и она заработает на холоде. Попробуйте ради интереса.
Satarych писал(а):2. На случай работы без BOD. Подойдёт ли такая деталька в качестве супервизора и как её подключать?

Второй вариант предпочтительней тем более деталь копеечная.
Деталька подойдет только надо выбрать с соответствующим порогом, зависящим от питания МК.
Подключать просто - питание и 3 вывод (OUT) к RESET. Ну и не забыть сопротивление между ПЛЮС и Reset
IYra
Живу тут
 
Сообщения: 543
Зарегистрирован: 01 фев 2012 19:36
Откуда: Санкт-Петербург

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

Сообщение kenkel » 20 янв 2013 18:25

++++++++++++++++А кстати мой проект в Протеусе работает ?++++++++++++++++++++

Ваш проект в протеусе то-же не работает. Нет индикации температуры+ странная реакция на нажатие кнопок.


++++++++++++++Посмотрел ваши добавления. Нашел несколько ошибок++++++++++++++
1. Заменил.....
+++++++++++ если Gis больше 25.6 то и ее надо делать WORD+++++++++++++++++++++
1.1 Сделал....
2.Поменял.....
3. Поменял....

+++++++++++++++++И что-то вы с портами намудрили PORTD.5 занят левым разрядом дисплея+++++++++++++++++++++

Да- с портами я то-же напутал- нужно было PORTD.4.

И ShowDisplayData(BYTE Num) надо править если вы хотите убрать один разряд+++++++++++++++++++++++++++++++++++
Попытался закоментировать вывод 4 разряда- наверное что-то не правильно сделал?


++++++++++++++++++Может проше отказаться от точки и выводить 4 разряда++++++++++++++++++++++++++++

Под точкой Вы понимаете- точку отделяющую целое значение градуса от десятых или точка есть показатель включения нагрузки?
Если второй вариант- то конечно нужно отказаться от точки. Есть мысль- выводить на дисплей скорость насоса например так- 1я скорость= включено нижнее подчеркивание в первом разряде, 2я скорость- включено нижнее и среднее (минус) подчеркивание в первом разряде, 3я скорость- включено нижнее, среднее и верхнее подчеркивание.
Как в таком случае отказатся от точки?

Добавлено спустя 1 час 33 минуты 56 секунд:
PS/ С последним вопросом разобрался- как в железе отключить точку- понятно. Как это сделать в программе- пока не ясно.
kenkel
Частенько бываю
 
Сообщения: 37
Зарегистрирован: 06 янв 2013 23:15

Пред.След.

Вернуться в ATtiny



Кто сейчас на конференции

Сейчас этот форум просматривают: PEPSISTAS, Yahoo [Bot] и гости: 1