Мобільна версія Форум Arduino Документація Гарантійні умови 0 0
UA RU
Графік роботи магазину:
Пн-Пт: 8.00 - 19.00
Сб: 10.00 - 17.00
Нд: вихідний
Каталог
Напиши статтю і отримай знижку!

Велокомпьютер на Arduino

2016-10-07

Всі статті →

Назар Дядюн

Всем привет! Сегодня расскажу о своем велокомпьюетере на ардуино. До этого у меня был еще один велокомпьютер, но на Attiny 2313, однако он меня не устраивал функциональностью, и возможностью быстро дописать необходимый функционал. Мною было решено переделать его на платформу Arduino. Поставив перед собой цели - начал закупаться оборудованием для сборки.

Из аппаратной части мне понадобилось:

  • Arduino Pro Mini.
  • LCD дисплей разрешением 16х2 с подсветкой.
  • Пара тумблеров для включения питания и подсветки дисплея.
  • Несколько кнопок для навигации.
  • Цифровой термометр Dallas 18B20.
  • Парочка литиевых аккумуляторов от телефонов.
  • И очень много разной мелочевки вроде резисторов, проводов, и прочего...

Затем я начал писать софт для велокомпьютера. Было много проблем, но одной из самых значимых была запись в энергонезависимую память значений расстояния. А заключалась она в том, что моя плата каким-то образом постоянно стирала EEPROM каждую перезагрузку. И после нее оставались пустые ячейки. Все решилось библиотекой, которая была найдена в интернете.

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

На этой фотографии само устройство. Дисплей. Кнопки навигации и питания. И очень кривая сборка :)

Взгляд на кнопки с другого ракурса:

Одно из самых не красивых мест данного прибора. Однако тут Мы видим: Круглый порт для датчика(Левее), круглый порт для зарядки аккумуляторов(Правее), внизу виднеются сами аккумуляторы, порт для быстрой прошивки микроконтроллера(Справа в углу).

Для зарядки аккумуляторов я не использую никаких дополнительный устройств ввиду того, что мне не жалко этих аккумуляторов. Они и так потеряли свою емкость. Однако Вам крайне советую использовать контроллеры заряда.

Думаю пришло время познакомится с "Операционной системой" под названием VeloPC. На текущий момент имеет версию 1.7

Как только Вы нажмете кнопку питания, на дисплее появится уже знакомый всем экранчик загрузки:

Затем краткая информация об температуре и напряжении батарей.

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

Взгляд на кнопки с другого ракурса:

Скорость, уровень заряда батареи с красивым значком, дистанция за текущую поездку.

Кстати говоря о скорости: в качестве датчика я использую обыкновенный геркон, купленный на этом сайте. Работает отлично, никаких ложный срабатываний. За 450+ км "наших" дорог пока не развалился :)

Если нажать на зеленую кнопку, то происходит сохранение текущего пробега с выводом общей дистанции на экран.

Если нажать на среднюю красную кнопку, то происходит очистка текущего пробега с выводом общего на экран.

Окей. Если нажать на кнопку меню(правая красная), то мы перейдем к следующему экрану меню:

На нем Мы видим: температуру и напряжение батарей.

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

Нажав на эту же кнопку еще раз, Мы перейдем на следующий экран:

 

На нем вся информация о пробеге, а именно: дистанция текущей поездки и общая дистанция.

 

Теперь о новенькой "вкусняшке" которую я добавил в версии 1.7. Это измеритель максимальной скорости. Для того, что бы попасть в этот режим нужно:

1.Зайти на главный экран.

2.Задержать кнопку "меню" от 6 до 10 секунд. 

И Мы попадем сюда:

 

Тут отображается текущая и максимальная скорость.

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

На экране отобразится подтверждающая надпись, и скорость сбросится.

В итоге я проехал с ним 450+ км. Лично у меня аккумуляторы держат около 40 - 50 км. Но это уже индивидуально. В будущем планирую облагородить устройство, сделать новый корпус. Ну и само собой обновить версию ПО.

Схема подключения:

На этом вроде бы и все. Как все подключить Вы сможете найти в скетче, который я приложил. Спасибо сайту Arduino.ua за отличное качество товаров, обслуживание а также чудесную поддержку! 

Спасибо всем за внимание! Хорошего Вам дня!

Скетч:


Ваша оцінка статті:

Відмінно
Добре
Задовільно
Погано
Дуже погано

Загальна оцінка:

Оцінка "Велокомпьютер на Arduino"
4 з 5
зроблена на основі 2 оцінок 2 клієнтських відгуків.

Дякуємо Вам за звернення! Ваш відгук з'явиться після модерації адміністратором.
Максим Викторович
23.04.2018 22:09:19
Все замечательно, но не понятно какой транзистор? И какие пины взаимодействованы?
Mr. Alex
26.03.2018 15:17:00
Задумка очень классная! Молодец, что смог реализовать до конца! Но есть и недостатки, а именно в написанном коде: "возможностью быстро дописать необходимый функционал" - это не про этот скетч! Все навалено в одну кучу. Методы setup и loop километровые, не сразу понятно где они начинаются и где заканчиваются. Лучше весь этот функционал разбить на отдельные маленькие (до 10 строк) методы. А еще лучше потом эти методы расформировать по смыслу в отдельные классы. Советую почитать о ООП. Это даст намного больше гибкости Вашему проекту.
оплата картами Visa і MasterCard