Как вывести спидометр на экран магнитолы

Обновлено: 30.06.2024

Индикаторы в приборной доске автомобиля всегда играли и играют важную роль в отображении важных показателей состояния средства передвижения. Одним из важных и устанавливаемых на всех автомобилях является спидометр – прибор для отображения скорости передвижения автомобиля.

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

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

Описание прибора

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

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

Стабилизатор напряжения LM317 – регулируемый стабилизатор напряжения, который настроен на 10,5В, питает подсветку графического индикатора и стабилизатор напряжения, питающий логическую схему спидометра.

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

Графический LCD от телефона Siemens S65 (LS020) – используется для отображения всей информации, предоставляемой микроконтроллером.

Подробный список компонентов представлен в файлах проекта платы и схемы принципиальной электрической в формате программы Diptrace.

Функционал спидометра

При проектировании устройства захотелось добавить дополнительные функции, которые были бы интересны для автомобилиста, и которых не было в штатном спидометре:

Отображение напряжения бортовой сети автомобиля

Отображение ускорения автомобиля

Отображение времени разгона автомобиля с 0 до 100 км/ч

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

Скорость в диапазоне от 0 до 255 км/ч с точностью до 1 км/ч

Напряжение бортовой сети от 0 до 16В с точностью до 0,01В

Ускорение автомобиля от 0 до 255 м/с 2 с точностью до 0,01 м/с 2

Время разгона автомобиля до 100 км/ч от 0 до 255 с с точностью 0,1 с

Спидометр питается от бортовой сети автомобиля 12В

Работа спидометра

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

Датчик скорости непосредственно подключен к плате спидометра. Для подключения датчика к спидометру необходимо правильно ориентировать контакты:

Датчик выдает 6 импульсов на один пройденный метр пути.

Сигнал от датчика является цифровым и имеет форму импульсов, что позволяет нам подсчитывать эти импульсы за равные промежутки времени.

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

Сам микроконтроллер работает на 48 МГц от кварцевого резонатора на 20 МГц. Такой мощный контроллер и запущен на такой высокой тактовой частоте не случайно. Для быстрого отображения информации на графическом LCD необходимо быстро выводить информацию, для чего и был выбран микроконтроллер PIC18F2550.

Вычисленная скорость отображается на графическом LCD.

Исходя из вычисленной текущей скорости, рассчитываются и другие показатели, такие как ускорение и время разгона до 100 км/ч, также отображаемые на графическом LCD.

Напряжение питания бортовой сети подается на АЦП микроконтроллера через делитель, чтобы напряжение, подводимое к контакту микроконтроллера, не превышало напряжение питания (3,3В). Напряжение измеряется через равные промежутки времени, отмеряемое одним из таймеров микроконтроллера. Измеряемое напряжение обрабатывается и выводится на графический LCD.

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

Схема спидометра

Схема цифрового спидометра

Программа микроконтроллера

Программа микроконтроллера написана на языке CCS PICC. Для создания проекта программы микроконтроллера использовалась среда разработки MPLAB 8.66.

Корпус и установка

Плата спидометра выполнена из двустороннего фольгированного текстолита. Обе стороны соединены между собой переходными отверстиями.

Фото платы цифрового спидометра с двух сторон:

Фото платы цифрового спидометра

Плата с экраном были установлены в корпус штатного спидометра автомобиля ВАЗ 2106. Корпус штатного спидометра с платой цифрового спидометра был установлен в приборную панель на свое место.

Ниже показаны фото установленного цифрового спидометра в автомобиле.

Установленный спидометр в корпусе штатного прибора

Благодарности

Используемая литература

Описание микроконтроллера Microchip PIC18F2550

Паспорт датчика скорости Ваз 2110

Help языка CCS PICC

Embedded C programming and the Microchip PIC – Richard Barnett, Larry O’cull, Sarah Cox, 2004




Для выбора русского языка (например после сброса настроек) войдите в Настройки через главный экран или вытяните панель управления сверху и выберите Настройки.
Если активирован английский язык (по умолчанию), то пролистайте меню настроек в самый низ:

More Settings -> Language & Input -> Language Settings -> Add a Language -> Нажмите значок лупы в правом углу -> Начните вводить “rus” (появится Русский), выберите его, нажмите Россия.
Теперь нужно перетащить строчку с русским языком на первое место. Зажмите эту строчку, она активируется, двигайте вверх, отпускайте. Все, русский язык активирован.

Синхронизация даты по сети

При этом режиме магнитола синхронизирует ваше текущее время автоматически при подключении к Wi-Fi. Для настройки даты можно нажать на часы на главном (домашнем) экране, либо зайти через настройки (если активирован русский язык):

Настройки -> Больше настроек -> Дата и Время -> Синхронизация по сети.

После чего нужно установить ваш часовой пояс (пункт меню ниже). Отобразится корректное время. Если магнитола подключена корректно, то ей больше не нужно подключаться к сети для синхронизации времени. Она сохранит настройки и благодаря постоянному питанию от аккумулятора будет сохранять текущее время. Время собьется, если магнитола будет полностью обесточена, тогда потребуется подключить ее к wi-fi и время опять станет корректным (дополнительные настройки пояса не потребуются).

Изменение дизайна интерфейса

Автомагнитолы на системе Андроид 10 (модели А750, А716, А660, А760) обладают встроенной возможностью изменения вида главного экрана и экрана приложений.

Для изменения дизайна и выбора одного из 16 вариантов главного экрана нужно:

  1. Находясь на главном экране произвести длительное касание пустой области экрана. В нижней части появятся иконки с вариантами интерфейса.
  2. Нажать на вариант нового интерфейса, он сразу активируется.
  3. Нажмите на пустую область, чтобы варианты исчезли.


Произведите аналогичные действия, находясь на экране приложений для изменения вида иконок приложений (6 вариантов).


Активация двойного экрана


Скачивание и установка приложений

Для установки приложений из Play Market вам необходимо авторизоваться. Зайдите в Приложения -> Play Маркет – при первом входе начнется “Проверка”.

Важно! Убедитесь, что на магнитоле выставлено корректное текущее время и хороший сигнал wi-fi, иначе Проверка – выдаст ошибку.


Обратите внимание, что при первой авторизации процесс “Проверки” может выполнятся достаточно долго – около минуты. Пожалуйста, наберитесь терпения и подождите, пока на экране пропадет вращающийся круг и появится поле для ввода вашей гугл почты (аккаунта).

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

Для удаления приложения прижмите иконку этого приложения на пару секунд, появится окно с подтверждением удаления. Нажмите “Да”.

ВОПРОС: Процесс проверки при первой авторизации в Play Market происходит слишком долго. В чем может быть причина?
ОТВЕТ: Такое возможно, если система запустила автоматическое обновление приложений при подключении к Wi-fi. Проверить это можно, вытянув верхнюю панель. В случае обновления под ней отобразится диспетчер загрузки обновления. Нужно подождать или отменить обновление вручную.

Подключение смартфона по MirrorLink (Phonelink)

Функция подключения экрана телефона к магнитоле доступна через USB провод и через Wi-fi для смартфонов на Android. И только через Wi-fi для iPhone.
Обратите внимание, что сенсорное управление смартфоном через экран магнитолы возможно только при подключении через USB. Для вывода звука, необходимо параллельно подключить ваш смартфон через Bluetooth. При первом подключении потребуется сделать ряд действитй.

1. Откройте приложение phonelink на магнитоле (меню Приложения -> phonelink (на последнем экране).



2. Выберите Mobile phone QR code


Откроется QR ссылка для скачивания и установки приложения TimaAvn.


3. Подключение Андроид смартфона через USB:

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




  • Подключите смартфон к магнитоле через USB провод, начнется зарядка.
  • Запустите приложение TimaAvn на смартфоне.
  • Откройте phonelink на магнитоле и выберите режим Android USB. Откроется окно, где выполненные пункты будут отмечены желтым ярким маркером:


  • После того, как на смартфоне появится диалоговое окно, нажмите начать.


Дальнейшее подключение делается буквально в несколько кликов. Просто запустите приложения на смартфоне и на магнитоле, выберите режим и нажмите “Начать” на смартфоне.

4. Подключение Андроид смартфона через Wi-fi:

  • Активируйте точку доступа на вашем смартфоне и подключите к ней магнитолу по wi-fi.
  • Запустите приложение TimaAvn на смартфоне.
  • Откройте приложение phonelink на магнитоле и выберите пункт Android WIFI. Откроется окно, где выполненные пункты будут отмечены желтым ярким маркером:


  • На экране смартфона появится диалоговое окно. Нажмите “Начать”. Экран смартфона отобразится на экране магнитолы.

Обратите внимание: Управление смартфоном через экран магнитолы при подключении по WIFI недоступно. Также скорость обмена информацией может быть ниже, чем при подключении через USB – изображение может передаваться с небольшой задержкой.

Мультируль. Подключение нарульных контроллеров. Настройка мультируля на магнитоле.

На моделях автомагнитол A750, A760, А716, A660 доступна функция подключения 2-х комплектов штатных кнопок управления на руле автомобиля. Если у вас нет нарульных контроллеров, то вы можете приобрести дополнительно нарульный пульт управления основными функциями магнитолы.

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

Сделать это можно с помощью схемы распиновки вашего авто. Чаще всего данные провода на схеме могут обозначаться как:

  • Steering_Wheel Remocon – провод питания кнопок и
  • Steering_Wheel Remocon_GND – провод заземления кнопок (смотрите пример схемы распиновки Kia Sportage).


После того, как провода определены, вам нужно:

  1. Подключить провод от автомагнитолы KEY1 к Steering_Wheel Remocon (и KEY2 к аналогичному, если у вас два комплекта нарульных контроллеров).
  2. Провод заземления Steering_Wheel Remocon_GND на массу автомобиля, либо на черный провод (-) магнитолы.

На этом подключение мультируля завершено, теперь останется только провести обучение кнопок на магнитоле.

Обучение кнопок руля на магнитоле с ОС Андроид 10

Зайдите в меню приложений и выберите “Кнопка рулевого колеса”.

Войдите в первый пункт “Кнопка выбора”.


Отметьте функции, к которым хотите привязать рулевые кнопки. Нажмите OK.



Выйдите в главное меню и проверьте работу всех кнопок. При необходимости повторите процедуру.

1 комментарий к “ Инструкция автомагнитолы на Андроид 10 ”

Универсальная автомагнитола 1 din android 10 экран 10″ / A66o
WilkYdin скажите разъёмы дла подключения должны находиться сверху или снизу

Спидометры используются для измерения скорости движения транспортного средства. Ранее на нашем сайте мы уже рассматривали создание аналогового спидометра на основе платы Arduino и цифрового спидометра на Arduino и смартфоне на Android. В аналоговом спидометре для измерения скорости мы использовали инфракрасный датчик, а в цифровом – датчик Холла. В этой же статье для измерения скорости мы будем использовать технологию GPS. В большинстве случаев GPS спидометры более точно измеряют скорость чем обычные спидометры. Также технология GPS в настоящее время широко используется в смартфонах и транспортных средствах для навигации и предупреждения о различных дорожных ситуациях.

Внешний вид GPS спидометр на Arduino и OLED дисплее

В данной статье мы рассмотрим создание GPS спидометра на основе платы Arduino, GPS модуля NEO6M и OLED дисплея.

Необходимые компоненты

  1. Плата Arduino Nano (купить на AliExpress).
  2. GPS-модуль GY-NEO6M (купить на AliExpress).
  3. OLED дисплей с интерфейсом I2C и диагональю экрана 1.3 дюйма (1.3 inch I2C OLED display) (купить на AliExpress - для данного проекта выбирайте вариант дисплея с 4 контактами).
  4. Макетная плата.
  5. Соединительные провода.

GPS модуль NEO6M

NEO-6M является популярным GPS приемником со встроенной керамической антенной, которая обеспечивает хороший прием сигнала с GPS спутников. Данный приемник способен отслеживать до 22 спутников и обеспечивает определение местоположения в любой точке земного шара. Модуль имеет аккумулятор для автономной подпитки (backup battery), что позволяет ему сохранять данные когда основное питание схемы отключено.

Внешний вид GPS модуля NEO6M

Ядром модуля является GPS чип NEO-6M от компании u-blox. Он может отслеживать до 22 спутников по 50 каналам и обладает чрезвычайно хорошей чувствительностью (-161 dBm). Модуль поддерживает скорости передачи данных 4800-230400 бод. По умолчанию он настроен на скорость 9600 бод.

Технические характеристики модуля:

  • рабочее напряжение: 2.7-3.6V DC (постоянного тока);
  • рабочий ток: 67 mA;
  • бодовая скорость передачи: 4800-230400 (9600 по умолчанию);
  • протокол связи: NEMA;
  • интерфейс: UART;
  • внешняя антенна и встроенная энергонезависимая память (EEPROM).

Назначение контактов (распиновка) GPS модуля NEO6M:
• VCC : входное питающее напряжение;
• GND : общий контакт (земля);
• RX, TX : контакты для UART (последовательной) связи с микроконтроллером.

Назначение контактов (распиновка) GPS модуля NEO6M

На нашем сайте мы уже достаточно часто рассматривали проекты с использованием GPS модулей, список данных проектов можно посмотреть по следующей ссылке.

OLED дисплей

Термин OLED расшифровывается как “Organic Light emitting diode” (органический светоизлучающий диод) и в используемом нами OLED дисплее используется та же самая технология, что и в привычных нам современных телевизорах, только разрешение экрана нашего дисплея существенно меньше чем у телевизоров. С подобными дисплеями проекты на Arduino сразу начинают "сверкать новыми красками" поскольку они обеспечивают значительно более презентабельную картинку чем обычные монохромные ЖК дисплеи. В нашем проекте мы будем использовать монохромный OLED дисплей SH1106 1.28” с 4-мя контактами, подключаемый по интерфейсу I2C.

Внешний вид OLED дисплея SH1106 1.28” с 4-мя контактами

Технические характеристики дисплея:

  • микросхема драйвера: SH1106;
  • входное напряжение: 3.3V-5V DC;
  • разрешение: 128x64;
  • интерфейс: I2C;
  • потребление тока: 8 mA;
  • цвет пикселов: синий (Blue);
  • угол обзора: >160 градусов.

Назначение контактов (распиновка) дисплея:
VCC : питающее напряжение 3.3-5V DC;
GND : общий провод (земля);
SCL : контакт синхронизации интерфейса I2C;
SDA : контакт передачи данных интерфейса I2C.

Сообществом Arduino разработано уже достаточно много библиотек для работы с OLED дисплеями, нам среди них понравилась библиотека Adafruit_SH1106.h – она проста в использовании и позволяет работать с графикой.

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

Схема проекта

Схема GPS спидометра на Arduino и OLED дисплее представлена на следующем рисунке.

Схема GPS спидометра на Arduino и OLED дисплее

Внешний вид собранной на макетной плате конструкции проекта выглядит следующим образом:

Внешний вид собранной на макетной плате конструкции проекта

Объяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

Первым делом в программе необходимо подключить все используемые библиотеки. В нашем проекте мы будем использовать библиотеку TinyGPS++.h для считывания GPS координат с GPS модуля и библиотеку Adafruit_SH1106.h для работы с OLED дисплеем.

Спидометры используются для измерения скорости движения транспортного средства. Ранее на нашем сайте мы уже рассматривали создание аналогового спидометра на основе платы Arduino и цифрового спидометра на Arduino и смартфоне на Android. В аналоговом спидометре для измерения скорости мы использовали инфракрасный датчик, а в цифровом – датчик Холла. В этой же статье для измерения скорости мы будем использовать технологию GPS. В большинстве случаев GPS спидометры более точно измеряют скорость чем обычные спидометры. Также технология GPS в настоящее время широко используется в смартфонах и транспортных средствах для навигации и предупреждения о различных дорожных ситуациях.

Внешний вид GPS спидометр на Arduino и OLED дисплее

В данной статье мы рассмотрим создание GPS спидометра на основе платы Arduino, GPS модуля NEO6M и OLED дисплея.

Необходимые компоненты

  1. Плата Arduino Nano (купить на AliExpress).
  2. GPS-модуль GY-NEO6M (купить на AliExpress).
  3. OLED дисплей с интерфейсом I2C и диагональю экрана 1.3 дюйма (1.3 inch I2C OLED display) (купить на AliExpress - для данного проекта выбирайте вариант дисплея с 4 контактами).
  4. Макетная плата.
  5. Соединительные провода.

GPS модуль NEO6M

NEO-6M является популярным GPS приемником со встроенной керамической антенной, которая обеспечивает хороший прием сигнала с GPS спутников. Данный приемник способен отслеживать до 22 спутников и обеспечивает определение местоположения в любой точке земного шара. Модуль имеет аккумулятор для автономной подпитки (backup battery), что позволяет ему сохранять данные когда основное питание схемы отключено.

Внешний вид GPS модуля NEO6M

Ядром модуля является GPS чип NEO-6M от компании u-blox. Он может отслеживать до 22 спутников по 50 каналам и обладает чрезвычайно хорошей чувствительностью (-161 dBm). Модуль поддерживает скорости передачи данных 4800-230400 бод. По умолчанию он настроен на скорость 9600 бод.

Технические характеристики модуля:

  • рабочее напряжение: 2.7-3.6V DC (постоянного тока);
  • рабочий ток: 67 mA;
  • бодовая скорость передачи: 4800-230400 (9600 по умолчанию);
  • протокол связи: NEMA;
  • интерфейс: UART;
  • внешняя антенна и встроенная энергонезависимая память (EEPROM).

Назначение контактов (распиновка) GPS модуля NEO6M:
• VCC : входное питающее напряжение;
• GND : общий контакт (земля);
• RX, TX : контакты для UART (последовательной) связи с микроконтроллером.

Назначение контактов (распиновка) GPS модуля NEO6M

На нашем сайте мы уже достаточно часто рассматривали проекты с использованием GPS модулей, список данных проектов можно посмотреть по следующей ссылке.

OLED дисплей

Термин OLED расшифровывается как “Organic Light emitting diode” (органический светоизлучающий диод) и в используемом нами OLED дисплее используется та же самая технология, что и в привычных нам современных телевизорах, только разрешение экрана нашего дисплея существенно меньше чем у телевизоров. С подобными дисплеями проекты на Arduino сразу начинают "сверкать новыми красками" поскольку они обеспечивают значительно более презентабельную картинку чем обычные монохромные ЖК дисплеи. В нашем проекте мы будем использовать монохромный OLED дисплей SH1106 1.28” с 4-мя контактами, подключаемый по интерфейсу I2C.

Внешний вид OLED дисплея SH1106 1.28” с 4-мя контактами

Технические характеристики дисплея:

  • микросхема драйвера: SH1106;
  • входное напряжение: 3.3V-5V DC;
  • разрешение: 128x64;
  • интерфейс: I2C;
  • потребление тока: 8 mA;
  • цвет пикселов: синий (Blue);
  • угол обзора: >160 градусов.

Назначение контактов (распиновка) дисплея:
VCC : питающее напряжение 3.3-5V DC;
GND : общий провод (земля);
SCL : контакт синхронизации интерфейса I2C;
SDA : контакт передачи данных интерфейса I2C.

Сообществом Arduino разработано уже достаточно много библиотек для работы с OLED дисплеями, нам среди них понравилась библиотека Adafruit_SH1106.h – она проста в использовании и позволяет работать с графикой.

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

Схема проекта

Схема GPS спидометра на Arduino и OLED дисплее представлена на следующем рисунке.

Схема GPS спидометра на Arduino и OLED дисплее

Внешний вид собранной на макетной плате конструкции проекта выглядит следующим образом:

Внешний вид собранной на макетной плате конструкции проекта

Объяснение программы для Arduino

Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.

Первым делом в программе необходимо подключить все используемые библиотеки. В нашем проекте мы будем использовать библиотеку TinyGPS++.h для считывания GPS координат с GPS модуля и библиотеку Adafruit_SH1106.h для работы с OLED дисплеем.

Читайте также: