Почта

    Если Вы желаете поделится в этом блоге своим проектом или реализацией чужого, присылайте мне на почту.

воскресенье, 20 ноября 2016 г.

Часы - радио термометр c Bluetooth

Автор: RoboC

Лампа: ИН-17, ИН-19
Схема: есть ( PIC16f887)
Плата:есть (Sprint-Layout 6)  
Прошивка:есть
Исходник:нет
Описание: eсть
Особенности: датчик температуры,  датчик давления, датчик влажности,выносной радио датчик  и часы в одном флаконе,управление со смартфона по bluetooth.

Схема:
Скачать схему 300dpi

Что умеют:
  • дата,время;
  • температура по проводу DS18b20;
  • температура по радио (1 версия RFM70/73, 2 версия SE8R01 /аналог nRF24L01);
  • атмосферное давление ;
  • влажность;
  • RBG подсветка;
  • 1я версия сохраняет статистику в 24L512;
  • управление часами по bluetooth с помощью приложение(с кнопок только базовые функции - установка времени, включение/выключение подсветки,включение/выключение bluetooth);
  • ночной режим.

Все началось в далеком 2014 году! Мной сделал этот  термометр и как развитие проекта возникла идея добавить к нему часы. Быстренько все было собрано на монтажке:
Внимательные читатели заметили ключевые отличия с конечной схемой:
  • Не хватает дополнительных анодных ключей для нижней платы.
Я планировал отключать лампы при помощи 155ИД1, подавая на ее ножки комбинацию больше 10. Но в реальности из 12 микросхем которые у меня были , 10 шт выдавали "мусор" в таком режиме, поэтому пришлось добавить  для каждой лампы свой анодный ключ.
  • Ламп на нижней индикаторной лампе всего 4.
Изначально задумка корпуса была такой,  т.к. ИН-17 у меня было только 4 :)
Планировалась большая сенсорная кнопка включения :)

Проект изменен, лампы докуплены , пришла пора сделать первую плату.






Смотрится прикольно, особенно правильная пятерка.  Затем надо определиться с размером верхней и нижней плат.



Делаем собственно верхнюю плату и впаиваем лампы,не забывая впаять светодиоды и проверить их :



Разводка платы - не легкое дело.


В результате получилась совсем не сложная плата ;)
Переходных отверстий совсем мало!!!
Начинаем сборку как всегда с преобразователей DC-DC 180В  и 3.3В.


Очередь анодных ключей  и светодиодов(каждый проверить!).


Осталось дело за малым - собрать все остальное :)




Итак!!! Электроника работает и нужно что то думать о корпусе.
Там все впритык и куча проводов :( , зато корпус маленький и смотрится зачётно.


     Вместе с работой по изготовлению корпуса, шёл процесс по созданию мобильного приложения для смартфона или планшета.
Т.к. я этим делом не занимался и не интересовался в прошлом, то перспектива осваивать Eclips + Java Development Kit (JDK ) не радовала.
"Пошерстив" по просторам инета , натолкнулся на достаточно простой способ создавать простые мобильные приложения в графической среде, используя визуальный язык программирования - App Inventor. Подкупило то, что процесс напоминал очень сильно язык\программу Scratch, благодаря которому  я пытался обучить  когда то программированию свою дочку.
     Сама программа ничем не примечательна. Она посылает, используя мостик Смарт-блютуз- UART , команды в МК. Со стороны МК связь по bluetooth обеспечивает модуль HC-05(можно НС-06) или другой. Исходник программы я выкладываю.
 4 вывода, которые используются у модуля HC-05, расписаны на картинке выше. Скорость порта 9600-8-n-1.


 На этом моменте( готовая программа и электроника, но без корпуса) проект замирает в коробочке на стеллаже на год с небольшим, оставив только видео на YouTube :)




   Файлы проекта для модуля RFM70/RFM73 (используется общий радио датчик с этим моим термометром. ):

Прошивка
Программа для стартфона
Исходник программы для смартфона.
Перечень компонентов.
Платы с промаркированными компонентами.

    Прошёл год с небольшим. За это врепмя,как это не странно, достаточно часто люди спрашивали об этом проекте и обычно отсылка платы и схемы охлаждало пыл соискателей.  Наконец, к 2000 странице на РадиоКоте решил я "добить" этого монстра.  Т.к. радио модули RFM70/73 уже вышли "из моды"  , их вытеснил более дешевый nRF24L01, логично было бы переделать радио часть на этот модуль.
Но вот беда - 24ка размером раза в 2 больше чем RFM73  и в, почти сделанный, корпус он никак не влазил.
    Как же быть? Решение - радио модуль на чипе SE8R01. Ценой  0.4$  и размерами как RFM73 , он хорошо подошел. Вот только  Vcc и Gnd  выводы у этих модулей наоборот :)
Работа над корпусом продолжена!



   

В прорези заливается прозрачная ювелирная смола и после покраски свет от информационных светодиодов будет виден свкозь нее (краску).
 Устаревший  датчик давления BMP085, так же заменен на новый BMP180.

Вот так ужасно смотрятся "потрошки" часов.

Вид после сборки.


Слева виден индикатор включенного  Bluetooth.

Про радио датчик.
В моем варианте датчик выполнен для питания от аккумуляторов 18650 Li-ion, коих у меня завалялось пару штук. В качестве зарядника использована плата с Али, на микросхеме  TP4056. LDO на 3.3В я сдул с платы BMP180, т.к. она там не нужна, я  формирую ей сам нужное напряжение питания. Контроллер помельче взял PIC16F886  в корпусе SSOP-28 (купил я их давно 10ок :) )

Получилась вот такая плата:



DS18b20  с подоконника выбрасываю за окно на проводе.
Решил так , что бы не беспокоится об влиянии отрицательной температуры на аккумуляторы и  не возится с заменой батареек.
Заказал на Али такую коробочку:

Как придет, выкину разъем USB  и поставлю свою платку сверху.
Будет датчик в коробочке.

Продолжение следует ...

22 комментария:

  1. Интересно! Ждем продолжения.

    ОтветитьУдалить
  2. Помнится вы "грозились" все датчики переселить на радиомодуль. Ждать нам такого обновления или собирать как есть? Или собирать и ждать:)

    ОтветитьУдалить
    Ответы
    1. Да, собственно, это не сложно, но времени не хватает на все :(.
      Для RFM73 ничего не будет дорабатываться, 99.7% флеша занято.
      У SE8R01 я выкинул статистику, на которую и так флеша не хватило, но нужены ли 2 радио там?

      Удалить
  3. Нельзя ли добавить схему в лучшем разрешении в раздел скачать, а то очень плохо читаются надписи? И будет ли версия полностью радио или это нереально?

    ОтветитьУдалить
    Ответы
    1. Добавил ссылку под схемой.

      Удалить
    2. Спасибо! Теперь всё читаемо....

      Удалить
    3. Под SE8R01 возможно.
      Вы как будете схему рисовать мне на почту напишите обговорим этот вопрос.

      Удалить
  4. Буду собирать как есть и так ОЧЕНЬ здорово получилось! Я по своей специальности страшно далёк от электроники и тут вам слабый помощник... Я только собиратель:) Полное радио освободило бы датчики от неминуемого нагрева, а корпус от лишних дырок соответственно...только плюсы:) И пикалку им....пусть хоть в 12 пикнут:) "И тут Остапа понесло......"

    ОтветитьУдалить
  5. "Меня терзают смутные сомнения"... На схеме раздельное управление цветовыми каналами - led1-led5, а на видео и печатке - led7-led12. А нет ли других серьёзных несоответствий схеме? А то я собрался рисовать платы по схеме... "Да призадумалась, а сыр во рту держала"....

    ОтветитьУдалить
    Ответы
    1. О, ужас!!! :) Если вы собираете мою плату, то прошивка соответствует плате на 100%.
      Если вы разводите свою плату то:
      -подключение ИД1 к лампам для вас не важно, вы подключаете как удобно(порядок цифр я переставлю программно).
      -подключение светиков к MBI для Вас не важны. Тут главное не перепутать 3 пары. Причем порядок пар не важен. А то у поляка получилось парой 1 и 6 лампа, 2 и 3 лампа, 4 и 5. Обидно :( Пары выделены физически и программно не исправишь.
      - мигающие точки между (раз у Вас ИН-12, скорее всего они понадобятся)лампами можно подключать к DS3231, но удобнее это сделать к свободному порту MBI (конечно же через ключ). Можно учесть и тот и тот вариант.

      Пришлете мне письмецо, ну не первый же Вы раз :), и вопрос быстренько решается непосредственно под вашу плату.

      Когда я делаю часы , то не рисую схему,а сразу рисую плату. А по плате, когда все заработало, рисую схему => плата главнее!

      Удалить
    2. Для понимания: аппаратно в камне привязаны только шина I2C(SDA,SCL),ССС1(GCLK),UART(BthRx,BthTx) и куда угодно не переместишь вывод Кеу, только на какой то из выводов для АЦП АNx.
      При наличии свободного времени, я постараюсь исправить несоответствие в подключении светодиодов на схеме:)
      Так же я буду благодарен Вам за найденные ошибки.

      Удалить
  6. Спасибо за развёрнутый ответ! Значит буду курить и схему, и плату, помня кто из них важнее:)

    ОтветитьУдалить
  7. Зачем у ламп ИН-19А и ИН-19В подключены неиспользуемые символы (dB A/B ...)? Или они всё-таки как то используются?

    ОтветитьУдалить
    Ответы
    1. При тесте и анти отравлении намного красивей когда все символы подключены.
      Символ A/B, например, используется при форматировании флеш.


      Удалить
  8. Вопрос по питанию схемы: 155ид1 от чего запитаны?
    Схему и плату(платы) собираюсь развести в P-CAD. Хотелось бы поменьше ошибок. Сверстаю выложу. Проверите?

    ОтветитьУдалить
  9. Непопулярность будильников в часах на ГРИ, на мой взгляд, обусловлена в основном неудобством управления им, а управление со смартфона по bluetooth кажется устраняет этот недостаток. Так может имеет смысл расширить возможности Всемометра, ведь возможные проблемы с отключением питания можно решить добавлением с схему ионистора?

    ОтветитьУдалить
    Ответы
    1. Там место и для литеврй батареи есть, но проблема была в другом - 99.8℅ флеша занято.
      В ревизии под se8r01, я порезал функционал статистики 10% освободилось.Но будильник же в смарте круче :)
      Вот едечасный сигнал можно и добавить на свободную ножку mbi5030.

      Удалить
    2. А если ежесигналом управлять со смартфона, то получится бу-----ик:)....

      Удалить
  10. Можно не подключать радиомодуль? Какие параметры при этом будет индицировать устройство и будет ли оно вообще корректно работать без модуля?

    ОтветитьУдалить
    Ответы
    1. Да будет корректно работать и без подсветки ,и без радио.
      Напишите на почту я отключу для вас экран уличной температуры, чтоб не раздражал нулями.

      Удалить