Часы-термометр на микроконтроллере ATmega8. V 2.0

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

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


Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Часы-термометр на микроконтроллере ATmega8. V 2.0

Сообщение Alexander H »

За основу взята схема и программа:
Часы с функцией термостата с тремя временными зонами.
http://startcd.narod.ru/clock/cl_termo.html
http://radiokot.ru/circuit/digital/home/30/
Изменения:
удален порт call a-h; шаг настройки термостата 0,5гр.;
введена коррекция показаний датчиков температуры; период опроса датчиков 5с.

Если заинтересовало могу выложить разводку печатной платы
в Layout 5.0.

Изображение
Вложения
HEX-files.rar
файлы прошивки:
индикаторы с общим анодом,
индикаторы с общим катодом
(17.7 КБ) 1392 скачивания
source.rar
исходник WinAVR
(20.24 КБ) 1446 скачиваний
Описание.rar
описание, схема, fuse-биты
(140.08 КБ) 2229 скачиваний
Последний раз редактировалось Alexander H Вт июл 21, 2009 12:59:37, всего редактировалось 3 раза.
DimAlt
Вымогатель припоя
Сообщения: 576
Зарегистрирован: Пт май 19, 2006 05:39:11
Контактная информация:

Сообщение DimAlt »

Круто!
Вы многое поменяли в исходнике:) Главное разобрались и поняли идею!
А у вас тоже датчики врут? И на сколько интересно? У меня в норме, врали один раз, когда допустил ошибку в коде, при паразитном питании не включался порт на вывод. Врали в плюс из-за пониженного напряжения.
Еще вопрос по коду, а почему так
if (MINUS | PLUS) вместо if (MINUS || PLUS), ведь | это поразрядное И, || - логическое, по моему правильней ||, если развернуть строку
if ( (key==4)||(key==0) ).
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

А у вас тоже датчики врут? И на сколько интересно?


Термометр изначально показывал температуру правильно, но через некоторое время температура возрастала примерно на два градуса. Возможно бракованные датчики.
Изменил период опроса датчиков. Датчики теперь врать почти не стали.
Если только примерно на 0,5 градуса. Хотя с другой стороны с чем сравнивать. Эталонного градусника нет. Во всяком случае человек привыкает. Так и в этом случае коррекция введена намеренно.

if (MINUS | PLUS) вместо if (MINUS || PLUS), ведь | это поразрядное И, || - логическое, по моему правильней ||, если развернуть строку


Да вы правы, хотя в данном случае ошибки не будет.
Только возможно незначительное увеличение программного кода.
Аватара пользователя
ARV
Ум, честь и совесть. И скромность.
Сообщения: 18544
Зарегистрирован: Чт дек 28, 2006 08:19:56
Откуда: Новочеркасск
Контактная информация:

Сообщение ARV »

Alexander H писал(а):
А у вас тоже датчики врут? И на сколько интересно?
Термометр изначально показывал температуру правильно, но через некоторое время температура возрастала примерно на два градуса. Возможно бракованные датчики.
Изменил период опроса датчиков. Датчики теперь врать почти не стали.
я этих термометров-термостатов попеределал - ужас! и по отзывам все завышают на пару градусов. я обычно не заморачивался и опрашивал их раз в секунду (точнее, запускал цикл измерения сразу после считывания температуры). поиск причин привел меня к документу, в котором рассказывается о мощности, рассеиваемой датчиком при работе. так вот, при обычном (не паразитном) питании и непрерывном опросе (т.е. непрерывной работе) это не такая уж и маленькая мощность - скорее всего вранье датчика обусловлено именно саморазогревом. думаю, если снимать питание с датчика между опросами - погрешность будет отсутствовать совсем, а программный код усложнится несильно. правда, это возможно лишь для достаточно редких замеров, как у вас - секунд через 5, не менее...
если рассматривать человека снизу, покажется, что мозг у него глубоко в жопе
при взгляде на многих сверху ничего не меняется...

Мой уютный бложик... заходите!
FlyGreen
Встал на лапы
Сообщения: 88
Зарегистрирован: Сб ноя 01, 2008 11:50:26

Сообщение FlyGreen »

Ну не знаю.... Я Димину схему пару раз собрал, и обе правильно все показывали. Сравнивал со спиртовым термометром.
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

1. На датчиках у меня действительно заниженное напряжение питания (3,8В). Это связано с тем, что в буфере стоит аккумулятор.
2. В первом варианте печатной платы исполнительное реле стояло на плате. В связи с этим, как выяснилось позже, при включении термостата плавно поднималась температура (примерно на 0,5 градуса). Пришлось сделать отдельную плату (вынести реле).
3. Увеличение времени периода опроса датчиков тоже увеличило точность показаний.
скорее всего вранье датчика обусловлено именно саморазогревом. думаю, если снимать питание с датчика между опросами - погрешность будет отсутствовать совсем

Я думаю саморазогрев датчиков идет во время их опросов (и то как показывают форумы не у всех датчиков).
Саша

Сообщение Саша »

FlyGreen писал(а):Ну не знаю.... Я Димину схему пару раз собрал, и обе правильно все показывали. Сравнивал со спиртовым термометром.


У меня тоже трое таких часов, на работе дома и у родителей. Везде используется по 2 датчика. Вроде вопросов нет. Вот сейчас взял комнатный датчик под мышку показывает 36.5. Датчик держу под мышкой около 7-ми минут. Датчики на паразитном питании.
FlyGreen
Встал на лапы
Сообщения: 88
Зарегистрирован: Сб ноя 01, 2008 11:50:26

Сообщение FlyGreen »

Я тож так делал :P У дурных котофф мысли сходяцо :))
Аватара пользователя
Signalman
Встал на лапы
Сообщения: 96
Зарегистрирован: Пт янв 02, 2009 22:34:29
Откуда: от туда
Контактная информация:

Re: Часы-термостат ATmega8 (новая версия)

Сообщение Signalman »

Alexander H писал(а):Если заинтересовало могу выложить разводку печатной платы
в Layout 5.0.

Если не трудно
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

Описание платы:
1. Вместо батарейки стоит аккумулятор 3,6в в буфере: GP T279 (60AAH3BMU)
Изображение
Возможно применение такого аккумулятора: GP 80 BVH3A3H
Изображение
2. Вместо КРЕН5 стоит КРЕН12
Изображение
подстроечным резистором подбирается напряжение на аккумуляторе 3,7..3,8в. Если такая схема питания не нравится то можете переделать плату под батарейку. Заменять КРЕН12 не рекомендую т.к. стабилизация у нее выше да и питать ее можно от 8..40в.
Вложения
85x85.rar
(28.12 КБ) 1562 скачивания
Последний раз редактировалось Alexander H Вт июл 21, 2009 13:03:14, всего редактировалось 1 раз.
Аватара пользователя
MagistrKIA
Открыл глаза
Сообщения: 67
Зарегистрирован: Сб мар 07, 2009 21:09:19

Сообщение MagistrKIA »

А можно применить DS1621 в качестве датчика температуры ????
KIA
Аватара пользователя
MagistrKIA
Открыл глаза
Сообщения: 67
Зарегистрирован: Сб мар 07, 2009 21:09:19

Сообщение MagistrKIA »

Можно ли заменить 74НС595 на К555ИД7 или КР1564ИР52 и как ????
KIA
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

А можно применить DS1621 в качестве датчика температуры ????

Можно ли заменить 74НС595 на К555ИД7 или КР1564ИР52 и как ????

Заменить можно, но придется переписывать программу и переделывать печатку.
Аватара пользователя
MagistrKIA
Открыл глаза
Сообщения: 67
Зарегистрирован: Сб мар 07, 2009 21:09:19

Сообщение MagistrKIA »

А Вы не могли бы переделать Вашу схему и прошивку для К555ИД7 и на датчик DS1621, так как возникают трудности с преобретением тех деталей которые использовались в Вашей схеме ? Заранее большое кошачье спасибо !!!!!!
KIA
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

А Вы не могли бы переделать Вашу схему и прошивку для К555ИД7 и на датчик DS1621, так как возникают трудности с преобретением тех деталей которые использовались в Вашей схеме ? Заранее большое кошачье спасибо !!!!!!

Извините нет.
У DS1621 данные передаются через I2C/SMBus последовательный интерфейс, а программа разработана под 1-проводную последовательную шину.
К555ИД7-дешифратор на 8 направлений, а в программе используется 9 семисегментных индикаторов.
КР1564ИР52-отечественный аналог 74НС595.
Последний раз редактировалось Alexander H Ср мар 18, 2009 19:51:26, всего редактировалось 1 раз.
Аватара пользователя
Alexander H
Встал на лапы
Сообщения: 83
Зарегистрирован: Вт фев 24, 2009 20:37:59

Сообщение Alexander H »

Можно использовать К555ИД10-Часы-термометр на ATmega8. (от DimAlt)
Andrew Bond
Открыл глаза
Сообщения: 50
Зарегистрирован: Ср окт 22, 2008 12:39:45
Контактная информация:

Сообщение Andrew Bond »

Нашел ошибки в программе.
1. При установке дней страбатывания будильника моргают сразу два разряда, не соответствующие устанавливаемому в текущий момент разряду, и понять, какой день недели выбран для установки, можно только методом "научного тыка".
2. Если производить корекцию секунд в ХХ часов 59 минут, и при этом секунд больше 30 (например 15:59:42), то при нажатии кнопки корекции, секунды обнуляются и прибавляется минута (это правильно), но в данном случае, когда 59 минут, не происходит сброс минут в 00 и прибавления часа. Просто минут становится 60 (например 15:60:00).
Вообще, что-то авторы этой модификации часов от Димы, забросили своё творение, в отличие от автора, который чуть не каждый день штампует новые прошивки. Жаль, что в этом случае они бесполезны, а в исходниках слишком сложно разобраться.
mallsa
Первый раз сказал Мяу!
Сообщения: 20
Зарегистрирован: Вт дек 30, 2008 12:16:08
Откуда: Ukrein

Сообщение mallsa »

Здравствуйте! Кто подскажет, собрал я эти часики и вот проблема. Идут вроде точно, температуру показывает точно можно сказать но войти режим настройки-сложно. Команды перескакивают. тоесть настройки включаются в случайном порядке и нет завершение по времени выход в 0 режим. Что у меня нетак?
Я туточки
DimAlt
Вымогатель припоя
Сообщения: 576
Зарегистрирован: Пт май 19, 2006 05:39:11
Контактная информация:

Сообщение DimAlt »

Возможно применены очень хреновые кнопки, с очень хитрым дребезгом, то есть контакт установился стоит стабильный где 0,2сек, а потом опять пропадает.
Но скорей всего трабла с проводниками к кнопкам и индикатору, где то что то замыкает.
Аватара пользователя
SKIF05
Открыл глаза
Сообщения: 42
Зарегистрирован: Сб окт 10, 2009 16:55:59
Откуда: Беларусь г. Витебск

Сообщение SKIF05 »

Доброго всем времени суток!
Собрал часы "Часы-термометр на микроконтроллере ATmega8. V 2.0" работаю :)) но я взял индикаторы у которых в каждом сигменте соеденины последовательно по 2 светодиода! и из-за этого недостаточная яркость!! вопрос такой как можно поднять яркость и можно ли как нить дороботать схему что бы использовать допустим 12В индикаторы и больше!!
Ответить

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