Велокомпьютер своими руками на МК

Анализ статьи о создании велокомпьютера своими руками на микроконтроллере. Узнайте, как собрать прибор с дисплеем и кнопками управления.

После покупки нового велосипеда решил я его оснастить велокомпьютером, но китайские поделки покупать не стал по трём причинам:
1. Высокая цена
2. Отвратительное качество сборки
3. Ну, я же радиолюбитель!

И поэтому я поступил как настоящий радиолюбитель — собрал желаемый прибор самостоятельно.

Велокомпьютер своими руками на МК

В данной статье я расскажу вам, как самому собрать велокомпьютер  на микроконтроллере. Данный велокомпьютер выполнен на микроконтроллере Attiny2313, в качестве дисплея использован однострочный ЖК индикатор на контроллере HD44780. Прибор умеет отображать текущую скорость, общее и промежуточное расстояния (отображаются в метрах). Общее расстояние, в отличии от промежуточного сохраняется в энергонезависимой памяти EEPROM. Схема велокомпьютера очень проста и не содержит дорогостоящих компонентов:

Велокомпьютер своими руками на МК

Дисплей подключён к микроконтроллеру по распространенному 4-х битному интерфейсу. Кнопки S1,S2,S3 (подтянуты десяти килоомными резисторами к плюсу питания) управляют прибором. Подстроечный резистор R6 регулирует контрастность дисплея. Светодиод HL1 индицирует подачу питания. В качестве динамика Ls1 можно использовать пьезоизлучатель. Транзистор VT1 — можно ставить любой биполярный n-p-n структуры, например КТ315 (я применил BC546B). Микроконтроллер Attiny2313 можно использовать с любыми буквенными индексами.

Зачем нужен внешний кварц микроконтроллеру, у которого есть свой тактовый генератор?
Наверное, у каждого из вас появился такой вопрос, и я на него постараюсь ответить. Без кварца работа устройства будет крайне не стабильна (неточность измерения, крякозяблики на дисплее и т.п.) потому, что встроенный тактовый генератор в микроконтроллере имеет большую «плавающую точку» и его частота постоянно колеблется. Если у вас нет такого кварца, не расстраивайтесь! Просто измените программу под тот кварц, который у вас есть. Впишите, в строчку $crystal= частоту своего кварца и всё будет ОК. Но на «худой конец», если у вас нет никакого кварца, используйте встроенный тактовый генератор (пример установки фьюз-битов внизу), конечно работать будет не совсем точно и стабильно.

После того как я нарисовал схему и подумал каким будет велокомпьютер, сел на свой любимый велик и поехал по городу — покупать радио детали по следующему списку:

  • Микроконтроллер Attiny2313 1шт.
  • Кнопки тактовые (без фиксации) 3шт.
  • Резисторы номиналом 10 кОм 5шт.
  • Резисторы номиналом 1 кОм 2шт.
  • Резистор номиналом 100 Ом 1шт.
  • Панелька под микроконтроллер DIP-20 1шт.
  • Транзистор биполярный BC546B 1шт.
  • Пьезоизлучатель 1шт.
  • Кварц 4 МГц 1шт.
  • Светодиод (синего свечения) 1щт.
  • Построечный резистор номиналом 10 кОм 1шт.
  • ЖК индикатор (дисплей) на контроллере HD44780 1*16 1шт.
  • Керамические конденсаторы 18 пФ 2шт.
  • Керамический конденсатор 0.1 мкФ 1шт.
  • Электролитический конденсатор 100 мкФ 1шт.
  • Штекер 2.5 1шт.
  • Гнездо для штекера 2.5 1шт.
  • Гнездо MiniUSB 1шт.
  • Пластмассовый корпус 85x60x35мм 1шт.
  • Крепёж на руль велосипеда 1шт.
  • Кнопка с фиксацией 1шт.
  • Геркон 1шт.
  • Корпус, который я купил для велокомпьютера:

    Велокомпьютер своими руками на МК

    Макетная плата, термоусадка, АКБ и метр провода у меня были.
    Приехавши домой сразу взялся за сборку велокомпьютера. Первым делом взялся за корпус. В корпусе надо сделать прямоугольную дыру размером 15×60мм.

    Возможно, вы спросите, а как ты делал такую дыру? Да очень просто! Сначала размечаем карандашом, где будем делать дырку, потом сверлилкой сверлим по контуру отверстия когда весь контур высверлили выламываем кусок пластмассы и обрабатываем всё напильником. Вот что получилось у меня:

    Велокомпьютер своими руками на МК

    Кстати, все остальные отверстия я делал по ходу сборки. Изнутри корпуса на дыру приклеил кусочек органического стекла, чтобы пыль и влага не попадали на дисплей.

    Далее спаял плату поставил кнопки, дисплей и всё остальное. Монтаж делал на макетной плате.

    Вид сзади (без крышки):

    Велокомпьютер своими руками на МК

    Плата:

    Велокомпьютер своими руками на МК

    Велокомпьютер своими руками на МК

    Зарядка через MiniUSB:

    Велокомпьютер своими руками на МК

    У меня прибор питается от аккумулятора телефона Nokia на 3.7v. Зарядка осуществляется через MiniUSB порт, подключённый прямо к аккумулятору. Возможно, вы скажете, это же не правильно! И будете правы, для этого дела есть специальные микросхемы но я таковой микрухи не нашёл и пришлось довольствоваться тем что было. Но как-никак зарядка идёт, и за два часа заряда мой аккумулятор заряжается полностью. В рабочем режиме с включенной подсветкой дисплея велокомпьютер потребляет ~30мА.

    Установка велокомпьютера на велосипед

    Чтобы считать, расстояние и скорость велоспидометру нужен, так сказать «орган восприятия». Геркон — это и есть этот «орган», устанавливается он на раме велосипеда рядом с колесом, на спицах колеса устанавливается магнит. Чтобы когда колесо делало полный оборот, магнит «проходил» напротив геркона и «замыкал» его, тем самым формируя импульс который нужен велокомпьютеру для расчёта расстояния и скорости. На схеме указано, где подключать геркон к прибору. Я геркон припаял на небольшой кусочек макетной платы, припаял к нему провода и усадил на него термоусадку. И закрепил это всё на раме велосипеда с помощью пластмассовых стяжек.

    Велокомпьютер своими руками на МК

    Пример установки магнита на спицы колеса:

    Велокомпьютер своими руками на МК

    Велокомпьютер я закрепил посредине руля велосипеда:

    Велокомпьютер своими руками на МК

    Описание устройства

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

    Загрузка велокомпьютера (приветствие):

    Велокомпьютер своими руками на МК

    Информация о версии:

    Велокомпьютер своими руками на МК

    Информация об авторе:

    Велокомпьютер своими руками на МК

    Главный экран:

    Велокомпьютер своими руками на МК

    Кнопка S1 — при нажатии сохраняется общее расстояние в энергонезависимой памяти EEPROM, в течение секунды на дисплее отображается надпись «All:» а после её общее расстояние и надпись «Save», звучит звуковой сигнал, после чего велокомпьютер возвращается к подсчёту расстояния и скорости (главный экран).

    Велокомпьютер своими руками на МК

    Да, да! Вы не ошиблись (смотря на фотографию выше), за несколько дней я проехал 191км! Потому что сегодня (21.08.2012), до школы осталось 11 и дабы проводить лето решил сделать «небольшую» покатушку за город.

    Кнопка S2 — при нажатии обнуляется промежуточное расстояние, на дисплее отображается сообщение «Total clear!», звучит звуковой сигнал, после чего велокомпьютер возвращается к подсчёту расстояния и скорости (главный экран).

    Велокомпьютер своими руками на МК

    Кнопка S3 — при нажатии в течение секунды на дисплее отображается надпись «All:» а после её общее расстояние и звучит звуковой сигнал, после чего велокомпьютер возвращается к подсчёту расстояния и скорости (главный экран).

    Велокомпьютер своими руками на МК

    Настройка велокомпьютера

    Чтобы велокомпьютер отображал правильное расстояние, и скорость он должен знать, какое расстояние проезжает велосипед за один оборот колеса (иначе прибор будет просто неправильно считать расстояние и скорость), это расстояние хранится в константе Coleso (у меня по умолчанию 2.08 метра). Для настройки велокомпьютера, измерьте длину колеса своего велосипеда в сантиметрах полученное значение переведите в метры и впишите его в константу Coleso, перекомпилируйте программу с новыми значениями и прошейте ею велокомпьютер.

    Велокомпьютер своими руками на МК

    Если кто это сделать не в состоянии, присылайте мне на e-mail длину своего колеса, сделаю прошивку под ваш велосипед.

    Прошивка МК велокомпьютера

    Прошивка для велокомпьютера находится в файлах к статье и называется t2313veloC.HEX, прошивку писал в среде BASCOM-AVR (исходник прилагается).
    Пример установки фьюз-битов на внешний кварц 4МГц:

    Велокомпьютер своими руками на МК

    Пример установки фьюз-битов на внутренний тактовый генератор 4 МГц:

    Велокомпьютер своими руками на МК

    В файлах к статье есть проект данного девайса в симуляторе Proteus. Но предупреждаю, что в симуляторе прибор работает очень медленно! В протеусе разве что светодиодами мигать можно (без глюков).

    Велокомпьютер своими руками на МК

    Видео работы велоспидометра:

    Заключение

    В заключении хотелось бы сказать, что велокомпьютер вышел отличный и не дорогой, затраты составили 113400 бел/руб. Для примера: самый дешёвый китайский велокомпьютер стоит не менее 200000 бел/руб, который я видел. Да и вообще своё — это сделанное для себя, качественно и с любовью, а не китайское г…но, которое на следующий день после покупки сломается. Сборка своего велокомпьютера мне доставила удовольствие, а его эксплуатация доставляет мне ещё большее удовольствие.

    И смотрите больше на дорогу чем на велокомпьютер, всяко бывает… И удачи вам на дороге и в электронике!

    Ниже вы можете скачать исходники, прошивку, проект в Proteus

    Скачать список элементов (PDF)

    Прикрепленные файлы:

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *