Мобильная версия
Вход в магазин
Регистрация
Напомнить пароль
Список желаний
(098) 067-12-26   Киевстар
(066) 142-24-48   МТС
(063) 642-36-59   Лайф

График работы магазина:

Пн-Пт: 10.00 - 19.00

Сб-Вс: выходные

Киев, пр-кт Голосеевский, 97-А
р-н метро "Выставочный центр"

Каталог

Знакомство с Digispark

Не так давно познакомился в Интернете с интересной разработкой от Digistump. Учитывая довольно скромные технические характеристики Attiny85, или как его иногда называют – "Тинька", (8-битный процессор от AVR – до 20 МГц, 8 Кб флеш памяти для программ,

Обслуживание блока энергонезависимой памяти EEPROM

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

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

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

Индикатор загруженности Wi-Fi каналов на ESP8266 и OLED SSD1306

Индикатор позволяет получить наглядную картинку загруженности Wi-Fi каналов.

Портативный анализатор спектра на Pololu Wixel c OLED SPI дисплеем

В предыдущей статье рассматривался вариант анализатора спектра ISM диапазона. Для сбора данных использовался модуль Pololu Wixel, но собирались данные в операционной системе ведущего устройства. Для визуализации данных можно использовать OLED дисплеи
Напиши статью и получи скидку!

"Велокомпьютер на 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 км. Но это уже индивидуально. В будущем планирую облагородить устройство, сделать новый корпус. Ну и само собой обновить версию ПО.

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

На этом вроде бы и все. Как все подключить Вы сможете найти в скетче, который я приложил. Если возникнут вопросы(А они точно возникнут :) Пишите мне в Вк: https://vk.com/nazar_diadiun

Я охотно всем отвечаю и помогаю! Спасибо сайту Arduino-ua.com за отличное качество товаров, обслуживание а также чудесную поддержку! 

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

Скетч:


оплата картами Visa и MasterCard