Полезное

воскресенье, 23 февраля 2014 г.

Часы на ИВ-22

Автор: RoboC

Лампа:ИВ-22
Схема: есть (PIC16F628)
Плата:есть 
Прошивка:есть
Исходник:есть
Описание: есть
Особенности: "..я его слепила из того что было." Часы,будильник,ночной режим,температура.








Схема:



С претензией на реализацию "Франкенштейн II".
    Часы собраны для проверки схем питания для будущих часов на ИВ-4 и, как бы, являются побочным продуктом их разработки.
Собирал из того, что было в ящике под разборку(в том числе и МК).
Костяк программы взял отсюда , который изменен под свои нужды. 
Часы умеют:

1.  Часы/день недели.
2.  Температура дома (-55..+99 ⁰С).
3.  Температура с радиодатчика (-55..+99 ⁰С).
4.  Будильник с автоповтором.
5.  Радиозвонок.
6.  Коррекция хода.
7.  Кольцевое отображение данных.
8.  Резервное питание.
Дополнительные функции:
-  уменьшение яркости индикатора ночью (время ночи и яркость настаиваются).
-  при обрыве датчика температура_1 не отображается.
-  если сигнала нет 50 минут, то температура_2 не отображается.
-  выход будильника настраивается (длинный 0, короткий 0, секундные 0, генератор с настраиваемым тоном). Сигнал «каждый час» , ночью отключается.
-  коррекция хода +/-0,1сек в сутки до 24 минут.
-  отображение данных: Часы->День->Температура_1-> Температура _2.
-  время отображения данных настраивается: 1-20сек часы, 0-10сек день и температура.
-  резервное питание: CR2032, ток потребления 0,7мА
Потребляемый ток примерно 100-120мА от 9 Вольт.

Платы односторонние, не сложные:

  



Все собрано "бутербродиком". На плате клавиатуры разведено и радио, и RGB подсветка.
    Индикатор в дежурном режиме:
-  отображение по кольцу.
-  любой пункт можно убрать, кроме часов.
-  время отображения любого пункта можно настроить.

Пункты меню настройки:
-   вход/выход осуществляется по длинному нажатию на кнопку «МЕНЮ».
-   смена пунктов меню по кольцу по короткому нажатию на кнопку «МЕНЮ».
-   регулировка параметров кнопками «МИНУС» и «ПЛЮС».
-   кнопки регулировки работают по такому принципу: нажал - параметр изменился, держим дальше; после некоторой задержки (0,5сек) включается автоповтор нажатия (8Гц).
-   кнопка «МИНУС» (слева) прибавляет параметр в 2х старших разрядах индикатора, уменьшает одиночный параметр или отключает будильник в дежурном меню.
-   кнопка «ПЛЮС» (справа) прибавляет параметр в 2х младших разрядах индикатора, увеличивает одиночный параметр, сбрасывает секунды в ноль или включает будильник в дежурном меню.
-   при включенном будильнике горит точка в младшем разряде индикатора.
-   при настройке тона будильника звучит сигнал.  За качество сигнала сильно не ругайте, сделал, как мог. Можно поставить внешнюю пищалку с генератором или музыкальную открытку, для этого и сделан выбор режима будильника.

- "BudL"   - будильник
- "ЧАc"    - часы/минуты
- "SEC"    - минуты/секунды
- "dEHЬ"  - день недели  
- "tЧАС"  - сколько времени светятся часы
- "tdAY"   - сколько времени светится день недели
- "ttEr"    - сколько времени светится температура
- "Corr"   - коррекция хода (от +/-0,1 сек до +/-24 секунд в сутки)
- "YArc"   - яркость индикатора в ночное время
- "НОЧЬ" - время ночи (ХХ.YY, где ХХ - начало ночи, YY - конец ночи)
- "tOH"    - тональность звукового сигнала будильника
- "ArPt"    - авторепит, автоповтор будильника (2-60 минут)
- "dAt1"   - выбор датчика температуры (DS18S20/DS18B20/нет датчика)

    Значения переменных меню "Corr", "Yarc", "Ton" и "dat1" заносятся в EEPROM через 20 секунд после отпускания всех кнопок.
    При прошивке часов необходимо настроить EEPROM: частота кварца, номер радиозвонка, режим будильника, отображение знака градуса, отображение символов (например "d") перед температурой. См. исходник!

При программировании в EEPROM необходимо прописать( в прошивке эти числа уже прописаны,Вы их можете изменить):                                             
( 02 F0 00 14 14 XX YY ZZ WW KK MM LL) дальше по умолчанию FF                                   
 Пояснения:                                                                                     

  • 02:     00 - термометра 1 нет, 01 - DS18S20, 02 - DS18B20 (начальная установка, меняется в меню).
  • F0:     значение коррекции = 240 (начальная установка, меняется в меню).
  • 00:     значение коррекции = 0   (начальная установка, меняется в меню).                            *
  • 05:     яркость ночи 5 (начальная установка, меняется в меню). 
  • 14:     тон звука 20 (начальная установка, меняется в меню).                                        
  • XX:     00 - 4.000МГц, 01 - 4.096МГц (в меню нельзя поменять).                                     
  • YY:  номер звонка (в меню нельзя поменять)                                                      
  • ZZ:  отображать знак градуса? 00 - нет, 01 - да (в меню нельзя поменять)                        
  • WW:  режим звука 00 - постоянно, 01 - один импульс, 02 - через секунду,                         
                 03 - пищит с частотой TON (в меню нельзя поменять)                             
  •  KK:  индикаторы с общим катодом? 00 - нет, 01 - да (в меню нельзя поменять)                      *
  •  MM:  что высвечиваем перед температурой в доме? (см ниже)                                       
  •  LL:  что высвечиваем перед температурой на улице? (см ниже)      

Меню можно подробнее рассмотреть на видео:


 Мерцание результат близких частоты записи камеры(50гц) и дин.индикации(62гц).
Визуально его не видно!
Старенькое видео,когда часы были в коробочке:





Теперь немного фото:





 
Качество изготовления индикаторов просто ужасно!! Это отобранные из 10 шт сносно ровные:


  
На плате видно уже настроенное радио, но осталось колдовство с прошивкой. Так же справа, разведенная  RGB подсветка.




 Видна зеленка от не получившейся  маски(первый раз пробую ее нанести!). Ну и косяк - забыл про выводы на кнопки.
 


Напоследок фото собранного  "бутербродика". Кнопок нужных не нашлось, временно стоят эти.

И  тут, на рабочем столе, будет стоять это чудо, вероятнее всего без корпуса.





Архив: исходник,прошивка,платы

Upd 2015/05/17:
   Для подавления засвета надо поставить эту перемычку(к -27В) и , соответственно, убрать ту, что показана на плате к накалу. 
Upd 2016/08/11:
Прошивка, исходник, модель протеуса 8х (устранена неисправность будильника) .

Upd 2021/01/04:
Зачеркнутый резистор не ставить, номиналы всех SMD 390 кОм.
 

29 комментариев:

  1. Не подписаны назначения индикаторов. Какой соответствует часам, какой минутам...? Спасибо.
    Какую роль выполняет схема на MC34063 перед преобразователем напряжения накала? Без нее можно обойтись?

    ОтветитьУдалить
    Ответы
    1. 1. K1-МИН.; К2-ДЕС.ЧАС; К3-ЧАС; К4-ДЕС.МИН.
      2. Она регулирует напряжение\ток накала.
      3. Можно. Вместо нее поставить резисторы, которые разведены на плате индикации(большие) и не указаны в схеме.Только они греться будут.
      Еще вариант соединить накалы ламп парами. Это снизит нагрев.

      Удалить
    2. Спасибо. Решил молодость вспомнить и собрать часики. Решил Ваши. Вопрос, в схеме датчик тока и вывод контроллера - 10 идут на L6 BUS шины. Судя по всему они должны быть на Sg? Если все ОК разведу схему и плату в P-CAD, поделюсь с желающими.

      Удалить
    3. Вот это я отжог!! Исправил!
      Только,почему датчик тока? Это датчик температуры. Опрос его идет между циклами вывода индикации, как и датчика присутствия сетевого напряжения на выводе 13 МК.
      Хочу обратить внимание, что автор программы не я,мной исправлены массивы для правильного отображения на ВЛИ и некоторые косметические правки.
      Делая плату сейчас, я бы накалы ламп соединил парами. Это снизит нагрев источников питания. Так же поставить диод 1n4148 между выводом МК и резистором R24.

      Удалить
    4. Добрый день. Конечно датчик температуры! На работе датчики тока, зациклился. Я запитал преобразователь накала от 9В (без схемы регулирования на MC34063) и накалы соединил попарно последовательно и пары параллельно. Такой вариант в схеме на ИВ-4(17). Диод имеете в виду вывод 13 PIC через диод к резистору R24? Спасибо.

      Удалить
    5. Да с 13 ноги МК на R24,у меня стоит. Зачем? Уже не помню.. ставил при настройке.

      Удалить
  2. Уважаемый автор, а можно прошивку переделать для PIC16LF1827? Можно вообще миниатюрные собрать.

    ОтветитьУдалить
    Ответы
    1. Компильнуть , теоретически, можно.
      Только смысл? Просто возьмите PIC16F628A-I/SS, если желаете минимизировать плату.

      Удалить
  3. Приветствую, RoboC Ua
    собрал блоки питания на -27 вольт и переменку на ~2.6 вольта. Оба блока в отдельности замечательно работают. Но когда я их соединяю вместе, согласно схеме в точке VD4/ C9 происходит следующее: напряжение -27 вольт довольно быстро начинает меняться в строну увеличение, т.е. -26.5, -26, и т.д. , диод VD3 начинает зверски греться, а также начинает конкретно греться транзистор VT3. Замерить переменку не успел. Проверял без нагрузки. Боюсь теперь включать. Обе схемы блоков проверил два раза, ничего не нашел, тем более, что в отдельности, как я уже писал, они работают нормально и не греются (я не использую вашу печатную схему) сделал на макетной плате. Может есть идеи куда посмотреть, чего замерить и как исправить ситуацию.
    С уважением Arnold

    ОтветитьУдалить
    Ответы
    1. Уменьшите резистор R51 до 2-2.2k
      Уменьшите резистор R52 до 5.8k

      Удалить
  4. Доброго дня. Собрал Ваши часы, заработали. Сгменты перепутаны, но это не трудно исправить. Функционал функционирует. Вопрос в следующем - сильно отстают, в минуту на несколько сек. Что нужно сделать? В статье есть фраза "При прошивке часов необходимо настроить EEPROM.....". Можно поподробнее. Спасибо. С уважением, Вадим.

    ОтветитьУдалить
    Ответы
    1. Не правильно выбран тип кварца.
      В прошивке 5 ячейку ЕЕПРОМ пишем:
      00 - 4.000МГц, 01 - 4.096МГц (в меню нельзя поменять).
      Если есть сложности это сделать, присылайте прошивку которой прошивали на почту я изменю

      Удалить
    2. И из исходника, я в статью перенес описание ячеек ЕЕПРОМ.

      Удалить
  5. Спасибо за ответ. На выходных купил 4.096 МГц идут вроде нормально. Вопрос есть по будильнику. Я пока не увидел на 3 ножке PIC сигнала. Что я делаю не так? Точка в разряде ед. секунд включаю. Прошивка из архива _clock_ds_radio_4ms_v3.9_my.

    ОтветитьУдалить
    Ответы
    1. Какой тип .будильника выбрали?
      По исходнику вижу что их 4 шт.

      Удалить
    2. И для будильника должно быть включено разрешение звука!

      Удалить
  6. Я бы хотел просто открывать транзистор при срабатывании будильника. Хочу управлять эл. мотором музыкальной шкатулки. Если не затруднит внесите изменения или укажите конкретное место в исходнике.

    ОтветитьУдалить
    Ответы
    1. Напишите письмо на почту. В коментаоиях никак не укажешь место. Адрес под шапкой.

      Удалить
  7. Доброе утро Алексей! Возник вопросик "резервное питание: CR2032, ток потребления 0,7мА"-это не ошибка? Хотел платку срисовать, но заметил, что батарейку они за два дня скушают....

    ОтветитьУдалить
    Ответы
    1. Не моя прошивка.
      Я поставил аккумулятор.
      Возможно автор предполагал коротковременные отключения.
      У него есть свой форум. См. источник прошивки.

      Удалить
  8. Ясно.Спасибо! Я просто уточнил...может 0 затерялся:)...и пардон не два дня, а пару недель прокормятся...

    ОтветитьУдалить
  9. Здравствуйте. Изучил внимательно схему и не нашел описания на VD5, VT-VT12, VT13, VT14. Подскажите названия диодов и транзисторов

    ОтветитьУдалить
    Ответы
    1. Танзисторы - bc856
      vd5 я не нашёл :(

      Когда на плате наводишь на элемент не появляется хинтом название?

      Удалить
    2. У меня конечно зрение не ах, но по-моему надпись vd5 красуется рядом с tl431...

      Удалить
    3. на схеме возле tl431 стаб на 27 вольт = vd7

      Удалить
    4. А что написано на схеме над надписью tl431?

      Удалить
  10. Подскажите пожалуйста, какие номиналы смд резисторов на плате индикаторов, и нет ли промаркированного файла лэй с элементами?

    ОтветитьУдалить