Добавить в корзинуПозвонить
Найти в Дзене
АЛАЕВ

Двухканальный счетчик времени наработки устройства с OLED-дисплеем (Hours Meter). Часть 2.

Начало этой истории хранится здесь: Выдалось немного времени и я решил доделать проект, оформленный в виде монтажной платы. Я уже собрался разводить печатную плату, но мой опыт подсказал, что нужно сперва проверить необходимые комплектующие на доступность в свободной продаже. И мой опыт меня не подвел! В первой версии этого проекта я применил OLED-дисплей с диагональю 0.66 дюйма разрешением 64 х 48 пикселей на драйвере SSD1306 с интерфейсом SPI. На тот момент, когда писалась первая часть публикации, - это был доступный, дешевый и весьма популярный индикатор! Сейчас, если попытаться найти эти дисплеи в продаже, то вы увидите, что их во-первых, почти нет у поставщиков, во-вторых, у них безумные цены доставки, раза в 4 превышающие стоимость самого индикатора. Сразу возникает вопрос: "И кому нужен будет такой проект?". Меня не устроила перспектива использования труднодоступных деталей, поэтому пришлось много переделывать и фактически начинать с начала. В настоящее время рынок завоевал

Начало этой истории хранится здесь:

Выдалось немного времени и я решил доделать проект, оформленный в виде монтажной платы. Я уже собрался разводить печатную плату, но мой опыт подсказал, что нужно сперва проверить необходимые комплектующие на доступность в свободной продаже.

И мой опыт меня не подвел!

В первой версии этого проекта я применил OLED-дисплей с диагональю 0.66 дюйма разрешением 64 х 48 пикселей на драйвере SSD1306 с интерфейсом SPI.

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

Сразу возникает вопрос: "И кому нужен будет такой проект?".

Меня не устроила перспектива использования труднодоступных деталей, поэтому пришлось много переделывать и фактически начинать с начала.

В настоящее время рынок завоевали OLED-дисплеи с диагональю 0.96 дюйма разрешением 128 х 64 пикселя на том же драйвере SSD1306 и интерфейсом I2C.

Например, вот.

OLED-дисплей с диагональю 0.96" разрешением 128 х 64 на драйвере SSD1306 и интерфейсом I2C
OLED-дисплей с диагональю 0.96" разрешением 128 х 64 на драйвере SSD1306 и интерфейсом I2C

Средняя цена за такой дисплей - 100 р. с бесплатной доставкой!

При этом еще можно выбрать цвет дисплея (белый, желтый, голубой и даже двухцветный желтый/голубой, который и был выбран для этого проекта).

Также стоит отметить, что применение интерфейса I2C против SPI позволяет высвободить 2 функциональных пина контроллера, а это значит, что итоговое устройство может стать интереснее и конкурентоспособнее.

Я снова пошел по пути макетирования на монтажной плате, прежде чем заниматься разводкой печатной платы. В очередной раз хотел убедиться, что все получилось, прежде чем отдавать плату в исполнение на производство.

Итак, что у меня вышло. Для наглядности можете сравнить два фото по принципу "было --> стало".

Предыдущий вариант исполнения счетчика времени наработки (моточасов).

Предыдущий вариант исполнения счетчика времени наработки (моточасов).
Предыдущий вариант исполнения счетчика времени наработки (моточасов).

Новый вариант исполнения счетчика времени наработки (моточасов).

Как можете видеть по фото - дисплей чуть крупнее (0,96" против 0,66"). Отображаемые цифры счетчика крупнее, текстовая информация меньше, чтобы исключить их "склеивание" и улучшить визуальное восприятие. Я применил двухцветный дисплей (желто/голубой), хотя без каких либо изменений можно установить любой монохромный дисплей из ранее представленных.

Для управления дисплеем используется только два сигнала (SCL/SDA) за счет чего в новой версии счетчика освободились два 10-bit АЦП, которые можно задействовать для измерения различных параметров. Будем считать, что эта универсальность - задел на будущее этого проекта!

Основной функционал счетчика остался без изменений относительно первого проекта.

На дисплее мы видим (сверху вниз):

  • название устройства "Hours Meter";
  • счетчик "USER:" - пользовательский счетчик, который может быть обнулен пользователем;
  • счетчик "MAIN:" - главный (основной) счетчик, который не может быть обнулен.

Оба счетчика работают в диапазоне от 0 до 999999.9 часов с дискретом записи 6 минут (0.1 часа) в eeprom контроллера.

999999.9 часов - это 100 с лишним лет )))

Сброс времени наработки пользовательского счетчика осуществляется путем выключения устройства, нажатия и удержания кнопки "СБРОС" и последующего включения устройства.

Нажатие кнопки "СБРОС" во время работы устройства не приводит к выполнению каких-либо действий.

Ну а теперь несколько слов о том, как это сделано. Полная схема связей, по которой разводилась печатная плата, представлена ниже.

Полная схема связей счетчика времени наработки устройства (счетчика моточасов)
Полная схема связей счетчика времени наработки устройства (счетчика моточасов)

Небольшие пояснения по схеме устройства.

  • Разъем J7 - разъем питания устройства, на него подается входное напряжение питания.
  • Защитный диод D4 - "защита от дурака" от случайной неправильной полярности подключения, что иногда случается! Поможет спасти жизнь устройству, которое планируется выпускать как внешний модуль для установки где угодно.
  • D3/R9 - индикация подачи питания на устройство.
А теперь зададимся вопросом, а какое должно быть входное напряжение питания?

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

1. В случае, если устройство планируется использовать по основному назначению в качестве счетчика времени наработки устройства, входное напряжение должно быть стабилизированным 5±0,5 В. В этом включении источники опорного напряжения (U4/U5) не используются и шунтируются резистором R10 = 0R.

2. Если мы планируем использовать два измерительных канала АЦП, то контроллер следует питать от источника опорного напряжения (U4/U5).

  • (U4/U5) - источник опорного напряжения (ИОН). Схемотехнически заложены ИОН из серии REF19x. Два представлены на схеме в качестве дублирования. Фактически устанавливается и используется только один из возможных вариантов: U4 - REF19x в корпусе SO-8 или U5 - REF19x в корпусе DIP-8.
В случае использования ИОН, входное напряжение может находиться в диапазоне от 4.5 до 15 В в зависимости от применяемого ИОН (см. datasheet на конкретную применяемую модель).
  • U2/U3 - микроконтроллер фирмы Microchip Attiny85. U2 - в корпусе DIP-8, U3 - в корпусе SO-8, опять дублирование и опять используется либо тот, либо другой.
  • Разъем J6 - для программирования ICSP микроконтроллера U2/U3.
  • U1 - OLED-индикатор с I2C интерфейсом и драйвером SSD1306. Разрешение 128х64 пикселя, диагональ 0,96 дюйма.

Обвязка каналов АЦП1 и АЦП2 устанавливается при необходимости и только в случае расширения функционала устройства.

  • Делители R1/R3 и R2/R4 - делители напряжения до допустимого уровня АЦП каналов 1 и 2, рассчитываются индивидуально под входное измеряемое напряжение.
  • D1/D2 - защитные элементы (стабилитроны), которые спасут наши АЦП при выходе за допустимый диапазон измерений.
  • R6/C2 и R7C3 - интегрирующие цепочки, для устранения мелких колебаний входных сигналов.

Как и в предыдущем проекте к этому модулю можно подключить внешний цифровой датчик температуры типа DS18B20. Для этих целей используется разъем J5. В случае, если датчик температуры не используется и устройство собирается по своему основному назначению, - устанавливается кнопка сброса пользовательского счетчика S1.

На основе представленной полной схемы связей была спроектирована печатная плата устройства.

Проектирование печатной платы устройства (слева Top, справа Bottom)
Проектирование печатной платы устройства (слева Top, справа Bottom)

С лицевой стороны печатной платы (Top) размещается только индикатор и контроллер + ИОН в случае их исполнения в DIP-корпусе.

Выводные контроллер и ИОН отлично прячутся под модулем OLED-индикатора.

Все остальные детали размещаются с обратной (Bottom) стороны платы.

Печатные платы уже запущены в производство, а собранные модули счетчиков времени наработки устройства (моточасов) скоро будут доступны для заказа!

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

-8