Сегодня речь пойдет об очередных часах. Нравятся они мне, да и вещь в хозяйстве полезная. Вообще-то делать часы я не собирался, но случилось так, что все часы, представленные в предыдущих статьях, я раздал друзьям и в принципе достаточно спокойно обходился без них. Но в один прекрасный день мне попалось на глаза объявление о продаже ИН-18 за совершенно смешную стоимость (если правильно помню, то меньше 2500р за 6 штук). Соответственно, они были сразу же куплены.
Тогда и зародилась идея сделать себе "домашние" часы. Не валяться же таким редким лампам в столе. Сказано - сделано. Пока почта перемалывала в своих недрах мою посылку с лампами, я нарисовал схемы и развел платы. Схемотехника аналогична предыдущим часам, т.к. уже хорошо себя зарекомендовала, за исключением того, что вместо AtMega8 был использован STM32F100. Во-первых у него большее число пинов ввода-вывода, во-вторых больше аппаратных возможностей и памяти, ну и в-третьих он дешевле и меньше (хотя размер в данном проекте не особо важен). Подсветки в этот раз две и они независимы. Одна для ламп и вторая для корпуса, например. При этом все 3 канала цвета подключены к выходам аппаратного ШИМ МК, а переключение между ними динамическое. Так же изменения коснулись микросхемы часов реального времени. DS1307, которые я использовал в прошлых схемах, не всегда показывали высокую точность хода, была сильная зависимость от качества кварца, аналогична ситуация и со встроенными в МК часами. А т.к. постоянно подводить часы мне не хотелось, так же как и цеплять туда GPS или еще что для автосинхронизации времени, то я использовал давно лежащие без дела PCA2129T, про которые я рассказывал вот тут //cxem.net/mc/mc188.php. Производитель обещал очень высокую точность хода (как оно и оказалось в последствии, за месяц работы уход не замечен). А если же не повезло и точность плывет, то можно внести коррекционные коэффициенты в память МК.
Раз уж делать, то нужна полноценная индикация, с секундами. В качестве секундных я использовал ИН-8. Найти их труднее, чем те же ИН-14, обладающих такой же формой и размерами, но ИН-8 имеют "правильную" цифру 5, а не перевернутую 2, как ИН-14.
Схемы получились следующие:
Все элементы схемы поместились на двух платах размером 180х44 мм. Вполне себе компактно.
На фото видна ошибка разводки в ВВ преобразователе, перепутаны ножки IRF740. На платах, приложенных к проекту, она исправлена. Использование "панелек" для ламп в данном случае сильно помогло при установке плат в корпус. С несъемными лампами это было бы на порядок сложнее из-за риска повредить лампы. Плюс замена, в случае чего, возможна без разборки часов. Панельки изготовлены из контактов DSUB разъема, а для ИН-8 - из цанговой линейки. Если же ИН-8 с жесткими выводами, то все панельки изготавливаются одинаково.
Как только все элементы были распаяны и проведено первичное тестирование схемы на работоспособность, начались поиски подходящего корпуса. В ходе поисков было решено обратиться в мастерскую, предоставляющую услуги лазерной резки и гравировки. Изначально планировался корпус из акрила, но на момент заказа ничего подходящего в мастерской не оказалось. Зато тонких листов дерева различной толщины было множество. Чертежи выполнил в Компас 3D и по ним мне нарезали пачку заготовок из дерева. После этого я просто сложил их вместе и покрыл лаком в 3 слоя. Процесс, к сожалению, не заснял, там как-то не до этого было. Получилось вполне сносно. Стороны между слоями, я не лакировал, иначе корпус был бы собран неплотно. Верхняя крышка так же лакировалась отдельно, чтобы исключить склеивание ее с корпусом.
В нижней части корпуса вклеил 4 светодиода. Эта сторона так же не лакировалась, т.к. закрывается акрилом, одна сторона которого обработана мелкой наждачной бумагой с водой для придания матовости. Благодаря этому свет от светодиодов рассеивается более равномерно.
Фото, конечно, так себе, но общий смысл понятен.
Платы устанавливаются на длинные болты, высота задается гайками (синий огрызок разъема дырку загораживает прижимает кнопки к задней части корпуса). Так же оставлен разъем для программирования, чтобы не пришлось потом все разбирать ради изменения программы. Длинна провода такова, что его можно вытащить слегка приподняв верхнюю крышку корпуса. Припаивается разъем на специально отведенные для этого контактные площадки.
В собранном виде все это выглядит вот так.
Функционал остался прежним. Все те же 4 режима работы (часы же все таки):
- Время;
- Время -> Дата;
- Время -> Температура;
- Время -> Дата -> Температура.
Управление осуществляется 3 кнопками. MENU, +, -. Кратковременное нажатие на MENU переключает режимы, длительное - переводит часы в режим настройки. Переход по настройкам (Часы-Минуты-Дата-Месяц-Год) осуществляется кратковременным нажатием этой же кнопки, а изменение параметра - кнопками + и -. При этом, если в течении минуты не производить никаких действий, то включается отображение времени без сохранения настроек. Время записывается в момент перехода на экран настройки даты, секунды при этом обнуляются. Кратковременное нажатие на + или - в режиме работы управляет сменой цветов подсветки ламп и корпуса соответственно. Длительное нажатие - включает или выключает соответствующую подсветку. Все изменения сохраняются в память МК.
Тут есть одна недоработка, на этапе проектирования,я совершенно забыл, что мне понадобится память для хранения настроек и поэтому я ее просто не поставил. В итоге пришлось делать запись во Flash память МК, т.к. EEPROМ у него нет, плюс микросхема часов тоже обделена памятью, в отличии от DS1307, что не есть хорошо. Во-первых у нее не такое и большое число циклов перезаписи (что в случае сохранения настроек часов не так критично, т.к. их меняют не часто). Во-вторых запись во Flash приводит к остановке работы МК и в момент записи наблюдается дерганье часов, что можно увидеть на видео. Не сильно страшно, но неприятно. В будущем скорее всего переделаю плату и добавлю туда микросхему EEPROМ. Кроме этого, уже на этапе программирования пришла идея по динамической индикации. Было бы удобнее подавать сигнал с выхода канала ШИМ МК на лампы через обычную микросхему логики. Тогда отпадает необходимость крутить программный ШИМ для индикации. Это изменение тоже хотелось бы внести на новую плату. Места вроде как хватает.
P.S. Места в МК еще вагон. Можно добавить чего-то эдакого. Может к кого есть предложения? Говорите, не стесняйтесь. Плюс можно без проблем перевести схему на работу с любой другой микросхемой часов реального времени. Потребуется лишь незначительная правка одной библиотеки.
И, традиционно, видео работы сего девайса.
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот | |
---|---|---|---|---|---|---|---|
Основная плата | |||||||
U1 | МК STM32 | STM32F100C8 | 1 | Поиск в магазине Отрон | |||
U2 | Часы реального времени (RTC) | PCA2129T | 1 | Поиск в магазине Отрон | |||
U3 | К155ИД1 | 1 | Поиск в магазине Отрон | ||||
U4, U5 | DC/DC импульсный конвертер | MC34063A | 2 | Поиск в магазине Отрон | |||
VR1 | Линейный регулятор | LM1117-N | 1 | Поиск в магазине Отрон | |||
Q1, Q2, Q4-Q7 | Биполярный транзистор | BC847 | 6 | Поиск в магазине Отрон | |||
Q3 | MOSFET-транзистор | IRF7104 | 1 | Поиск в магазине Отрон | |||
Q8 | MOSFET-транзистор | IRF840 | 1 | Поиск в магазине Отрон | |||
Q9 | Биполярный транзистор | BC857 | 1 | Поиск в магазине Отрон | |||
D1 | Выпрямительный диод | HER106 | 1 | Поиск в магазине Отрон | |||
D2 | Выпрямительный диод | 1N4148 | 1 | Поиск в магазине Отрон | |||
L1 | Катушка индуктивности | 150 мкГн | 1 | Поиск в магазине Отрон | |||
L2 | Катушка индуктивности | 38 мкГн | 1 | Поиск в магазине Отрон | |||
C1-C3, C6, C8, C9, C13-C15, C18, C20 | Конденсатор | 100 нФ | 12 | Поиск в магазине Отрон | |||
C4 | Конденсатор | 1 мкФ | 1 | Поиск в магазине Отрон | |||
C5 | Конденсатор | 100 мкФ | 1 | Тантал | Поиск в магазине Отрон | ||
C7 | Конденсатор | 470 мкФ | 1 | Поиск в магазине Отрон | |||
C10, C11 | Конденсатор | 20 пФ | 2 | Поиск в магазине Отрон | |||
C12 | Конденсатор | 4.7 мкФ | 1 | 400В | Поиск в магазине Отрон | ||
C16, C17, C19 | Конденсатор | 220 мкФ | 3 | Поиск в магазине Отрон | |||
C21 | Конденсатор | 510 пФ | 1 | Поиск в магазине Отрон | |||
C22 | Конденсатор | 550 пФ | 1 | Поиск в магазине Отрон | |||
R1-R3, R5-R7, R29 | Резистор | 4.7 кОм | 7 | Поиск в магазине Отрон | |||
R4, R13-R16 | Резистор | 10 кОм | 5 | Поиск в магазине Отрон | |||
R9, R10, R17-R19, R31 | Резистор | 1 кОм | 5 | Поиск в магазине Отрон | |||
R22 | Резистор | 220 Ом | 1 | Поиск в магазине Отрон | |||
R23 | Резистор | 0.22 Ом | 1 | 1-2 Вт | Поиск в магазине Отрон | ||
R24 | Резистор | 1 МОм | 1 | Поиск в магазине Отрон | |||
R25 | Подстроечный резистор | 20 кОм | 1 | Поиск в магазине Отрон | |||
R26, R30 | Резистор | 330 Ом | 2 | Поиск в магазине Отрон | |||
R27 | Резистор | 0.33 Ом | 1 | 1-2 Вт | Поиск в магазине Отрон | ||
R28 | Резистор | 3 кОм | 1 | Поиск в магазине Отрон | |||
Y1 | Кварц | 8 МГц | 1 | Поиск в магазине Отрон | |||
Плата с лампами | |||||||
Q1-Q6 | Биполярный транзистор | MMBTA92 | 6 | Поиск в магазине Отрон | |||
Q7-Q12 | Биполярный транзистор | MMBTA42 | 6 | Поиск в магазине Отрон | |||
R1-R6 | Резистор | 5.6 кОм | 6 | Поиск в магазине Отрон | |||
R7, R9, R11, R13, R15, R17, R19-R30 | Резистор | 10 кОм | 18 | Поиск в магазине Отрон | |||
R8, R10, R12, R14, R16, R18 | Резистор | 1 МОм | 6 | Поиск в магазине Отрон | |||
R32, R35, R38, R41, R43, R46 | Резистор | 100 Ом | 6 | Поиск в магазине Отрон | |||
R33, R34, R36, R37, R39, R40, R3, R42, R44, R45, R47, R78 | Резистор | 68 Ом | 12 | Поиск в магазине Отрон | |||
Скачать список элементов (PDF)
Прикрепленные файлы:
- IN-18_SRC.rar (189 Кб)
- IN-18_PCB.rar (3791 Кб)
- IN-18_Case.rar (94 Кб)
Комментарии (60) | Я собрал (0) | Подписаться
Для добавления Вашей сборки необходима регистрация
[Автор]
1. ФМ радио
2. MP плеер
3. Будильник (с установкой мп3 или радио)
4. Пульт ДУ.
[Автор]
А мп3 плеер не к месту?
[Автор]
[Автор]
[Автор]
Мне кажется, линии T1-T6 стоит гальванически развязать относительно высоковольтной части.
[Автор]
[Автор]
[Автор]
[Автор]
Часы на ИН-18 всегда выглядят очень внушительно..
[Автор]
А нельзя в этой схеме вместо PCA2129T применить DS1307?
Как её "присобачить" к существующей STM32?
[Автор]
Сделайте, пожалуйста, прошивку под DS1307, потому как они есть в наличие, а PCA2129T ещё довольно дороги в приобретении. Да и точности 1307 для бытового уровня, думаю вполне хватит.
Наверное и схему нужно будет несколько изменить? Заранее спасибо.
[Автор]
[Автор]
P.S. PCA2129 можно у nxp на халяву выпросить
По поводу "у nxp на халяву выпросить" - ни разу не приходилось это делать, только через магазин....
[Автор]
1 - используется pca2129
0 - используется ds1307
То, что в архиве, скомпилировано под ds1307. Если будут проблемы с работой прошивки, пиши, разберемся =)
[Автор]
[Автор]
[Автор]
[Автор]
(В сети встречаются такие варианты, особенно для ин-18)
[Автор]
Или короткое время компенсируется повышенным током?
[Автор]
[Автор]
[Автор]
[Автор]
[Автор]
Часы спешат, причем только в режиме 1, когда отображается только время. За два часа "убегают" примерно на 10 минут вперед. Если включить любой другой режим, в котором время чередуется например с датой, часы показывают время точно. Сталкивался ли кто с такой проблемой?
Выложите пожалуйста.