Блок с датойБлок с временемБлок с возрастом сайта
Mr.ALB

    Анатолий Беляев (aka Mr.ALB). Персональный сайт

    Да пребудут с вами Силы СВЕТА!

     

    Тахометр(RPM meter). CH32V003A4M6

    Тахометр - RPM/CNT meter
    на CH32V003A4M6

    Продолжение предыдущей разработки программы тахометра (RPM meter) уже на китайском микроконтроллере CH32V003A4M6 (или CH32V003F4P6).

    Добавлен режим счётчика в версии v1.4.


    Описание

    Всё как в предыдуцщей разработке, только в качестве вычислителя использую микроконтроллер ф.WCH CH32V003A4M6. Преимущество тут в размерах, вместо Arduino Nano маленькая микросхемка SOP-16 – очень удобно для создания законченной конструкции маленького приборчика.

    Добавлен режим счётчика. Теперь есть возможность просто считать импульсы, при этом функция делителя сохранена, устанавливается как и в предыдущей версии через кнопку SB1 (Установка). Режим счётчика бывает нужен, к примеру, при подсчёте витков катушки индуктивности в момент её намотки или что-то подобное.

    2026-06-19

    Схема

    Датчик Холла используем такой же: A3144E, подключаем его к выводу 16 (PC0), а до этого в setup() назначаем прерывание на этот вывод.

    Информацию выводим на тот же OLED SSD1306 128*64 I2C. Управление, как в предыдущем проекте, через кнопку SB1. Кнопка настройки на выводе 13 (PA2), что удобно для конструкции.

    Схема электрическая принципиальная
    Pic 1. Схема электрическая принципиальная

    Добавлен режим счётчика. Для этого пришлось добавить кнопку переключения режимов SB2: [Тахометр] или [Счётчик]. При длительном нажатии на кнопку SB2 происходит обнуление счётчика.

    Схема электрическая принципиальная v1.4
    Pic 2. Схема электрическая принципиальная v1.4

    Описание программы

    Программа, как обычно, хорошо закомментирована, пояснять там вроде нечего. Однако в ядре WCH для Arduino IDE присутствует ошибка и поэтому вывод на дисплей OLED SSD1306 128*64 I2C не выходит. Пришлось устранять эту ошибку. Исправление ядра в Приложении в библиотеках SPI и Wire. Эти библиотеки скопировать в ядро WCH.


    Конструкция v1.2

    Для реализации устройства использую кусочек макетной односторонней платы размером 50*25мм. Дисплей, кнопка, заъём для датчика, выключатель и плата-адаптер для микроконтроллера.

    Конструкция. Разные виды
    Pic 3. Конструкция. Разные виды

    Всё смонтировано на плату. Для подключения дисплея использую панельку, можно легко снять дисплей, для доступа к микроконтроллеру. Для программирования использую контакты (SWDIO, VCC, GND) на плате слева от кнопки.

    Конструкция. Разные виды
    Pic 4. Конструкция. Разные виды

    Вид на плату с нижней стороны. Монтаж объёмными проводками. Это устройство единичное, нет смысла делать печатную плату.

    Конструкция. Разные виды
    Pic 5. Конструкция. Разные виды

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

    Конструкция. Разные виды
    Pic 6. Конструкция. Разные виды

    Плата вставлена в коробок, склееный из пластика ABS (традиция). Размеры корпуса 56,5*38,5*30 мм.

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

    Конструкция. Разные виды
    Pic 7. Конструкция. Разные виды

    Далее на экран выводится название и версия. Частота оборотов и делитель. В данный момент сигнала с датчика нет.

    Конструкция. Разные виды
    Pic 8. Конструкция. Разные виды

    С датчика поступают импульсы и на экране выводится частота оборотов в RPM(об/мин).

    Конструкция. Разные виды
    Pic 9. Конструкция. Разные виды

    Устройство питается от аккумулятора Li-Ion 600 мАч. Для его подзарядки выведен разъём платы заряда с левой стороны корпуса.

    Конструкция. Разные виды
    Pic 10. Конструкция. Разные виды

    С правой стороны корпуса выведен разъём для подключения датчика A3144E.

    Конструкция. Разные виды
    Pic 11. Конструкция. Разные виды

    Снизу корпуса выведено индикаторное стекло. При зарядке аккумулятора, свет индикатора красный, при заряженном аккумуляторе – зелёный.

    Конструкция. Разные виды
    Pic 12. Конструкция. Разные виды

    Для проверки работоспособности используется игрушечный мотор Минато v7.3.

    Конструкция. Разные виды
    Pic 13. Конструкция. Разные виды


    Конструкция v1.4

    Доработка – добавлена кнопка выбора режима работы: Тахометр / Счётчик. Как раз справа от первой кнопки было свободное место. Скетч промежуточной версии v1.3

    Конструкция. Разные виды
    Pic 14. Конструкция. Разные виды

    Версия программы v1.4, в которой устранены неточности переходной версии. Плата тахометра установлена в корпус. На дисплее видно, что выбран режим счётчика.

    Конструкция. Разные виды
    Pic 15. Конструкция. Разные виды

    На дисплее: выбран режим тахометра.

    Конструкция. Разные виды
    Pic 16. Конструкция. Разные виды

    Сравнительные размеры приборчика со стандартным коробком спичек.

    Конструкция. Разные виды
    Pic 17. Конструкция. Разные виды
    Конструкция. Разные виды
    Pic 18. Конструкция. Разные виды

    Удачно всё получилось: и программа, и конструкция. Сам приборчик совсем маленький. Если бы делать на Arduino Nano или Arduino Pro mini, то таких размеров не получить. Микроконтроллер CH32V003A4M6 имеет флэш 16384 байт, а вот его собрату CH32V006F8P6 доступно 63488 байт, что позволяет уже делать более продвинутые устройства с большими возможностями.



    Приложение

    Все, что необходимо для повторения конструкции, можно скачать по ссылкам:


    Спасибо за внимание!
    Анатолий Беляев

    . Mr.ALB
    Предыдущая страница Страница 45 Далее