Ардуино для автомобиля

Содержание

Ардуино в автомобиль

Возможность применения Arduino в автомобиле для его улучшения

Самый распространенный проект на Ардуино для автомобиля – установка в машине ЖК-дисплея с особыми функциями и показателями.

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

Если Аrduino для автомобиля совместим с IDE Teensy 3.6, то читается анимированный растровый образ машины и резервные датчики. Каждый из четырех датчиков на своем месте, так же, как и анимационная картинка автомобиляоторая меняет цвет, исходя из того, насколько близко объект находится к машине (только зеленый означает 5 футов, зеленый и желтый означает 2,6 фута и зеленый, желтый, а красный означает 1 фут).

Этот Ардуино проект для авто очень сложный, потому что резервные датчики взаимодействуют с приемопередатчиком, а затем отображают информацию на маленький ЖК-дисплей.

Проприетарный протокол связи не является типичным, как например, I2C, UART, CAN, USB и так далее. Свойства протокола могут различаться в каждом случае, в зависимости от поставщика.

Прежде чем отключить ЖК-дисплей, нужно проверить три провода, соединяющие трансивер и ЖК-дисплей. В инструкции указывается, что необходим красный провод + 5В, провод черного цвета и синий провод. После подключения осциллографа к синему проводу и заземлению пользователь увидит характерное изображение.

Биты под номерами 0-5 не несут никакой существенной информации и не кодируются.иты 6-8 соответствуют датчикам с названиями A, B, C или D. Необходимо загрузить эскиз в IDE Arduino, который считывает датчики и выводит данные через последовательную консоль.

Для следующего Ардуино проекта в автомобиле можно использовать бесплатное программное обеспечение для редактирования фотографий под названием GIMP для обрезки и изменения размера изображения машины с верхнего вида. Затем необходимо экспортировать изображение в виде 24-битного растрового изображения с именем car.bmp, которое составляет 110 пикселей на 250 пикселей. После загружаем все на карту microSD и помещаем эту карту в микроконтроллер Teensy 3.6.

Основными причинами, по которым нужно использовать Teensy 3.6 вместо UNO, остается скорость, с которой Teensy может читать SD-карту и отображать изображение с помощью драйвера дисплея RA8875. При использовании UNO процесс займет около 8 секунд, в то время как с Teensy 3.6 займет 1,8 секунды.

Для дальнейшего конструирования проекта с Аrduino для автомобиля потребуется сделать трехмерную печать верхней и нижней крышки ЖК-дисплея для его защиты. В машине необходимо предварительно просверлить отверстия для датчиков.

Подключение, запуск и настройка автоустройств на Ардуино

Для загрузки эскиза проекта Ардуино для авто в виде ЖК-дисплея в Teensy 3.6 вам необходимо установить Teensyduino. Затем вам нужно будет заменить библиотеки Adafruit_RA8875 и Adafruit_GFX в расположении библиотеки Teensy (а не на вашем типичном месте в документах). На Mac операционной системе нужно щелкнуть правой кнопкой мыши по значку приложения Arduino в приложениях, а затем перейти в:

В Windows данная папка находится под основным диском C, в файлах программ x86, Arduino, а затем в папке с аппаратным обеспечением. Как только вы это сделаете, вам нужно будет изменить расположение эскиза в приложении Arduino, отредактировав его в настройках – обычно библиотеки “Тинси” размещаются по следующему адресу:

Из-за проблемы с внутренним температурным датчиком пользователь устанавливает температурный датчик модуля DS18B20.

В zip-файле, который находится по ссылке выше, вы увидите 4 эскиза Аrduino.

  1. Загрузите эскиз display_code, если вы хотите использовать внутренний температурный датчик модуля OB2 I2C OBD-II.
  2. Загрузите эскиз display_code_with_new_temperature_sensor, если вы хотите использовать модуль DS18B20.

Необходимо исправить ошибки, всплывающие при подключении электронного устройства, включая DS18B20, выводя температуру в 185 градусов по Фаренгейту; дисплей не включается вообще в холодную погоду, а пиксели застревают в неправильном цвете, когда дисплей затемнен.

Обратите внимание, что разгон teensy до 240 МГц не позволяет адаптеру I2C OBD-II взаимодействовать с teensy. Наконец, просто нажмите кнопку Загрузить. В представленном скетче находятся обширные комментарии, которые помогут пользователю адаптироваться при конструировании ЖК-дисплея для авто.

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

Заглянув в разводку OBD-II, электронщик обнаружит, что линия питания 12 В к разъему OBD-II всегда подключается непосредственно к батарее. Чтобы обойти это, необходимо купить разветвитель OBD-II и отрезать провод, идущий на контакт 16 на одном из двух разъемов на сплиттере, а затем подключить этот разрезаемый провод к добавлению проводки.

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

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

Кроме того, пользователь может добавить кнопку “стоп-старт” на Ардуино для своего дисплея с параметрами для автомобиля.

04.07.2018 | Публикации |

Такую приборную панель можно собрать на любой автомобиль, это универсальное устройство. Мы собирали приборную панель на базе уже существующей под названием Venator.

Для ее создания потребуются следующие комплектующие:

  • Контроллер Arduino MEGA
  • Планшет с операционной систем Androir
  • Модуль Wi-Fi esp8266
  • Преобразователь питания с 12 до 5 вольт (можно использовать любое автомобильное зарядное устройство для мобильных телефонов).

К контроллеру Arduino подключаются все датчики автомобиля. В нашем случае потребовалось еще установить датчик скорости в коробку передач вместо тросика привода спидометра. А так же завести провод в салон автомобиля от коммутатора зажигания, чтобы контроллер смог отображать обороты двигателя (это нужно было сделать, так как в ОКЕ не был установлен тахометр).

Скетч (прошивка) для контроллера Arduino Mega

Скачать готовый скетч в файле можете по .

unsigned long micros_sp = 0, micros_th = 0;
volatile int tz;
volatile int sz;
volatile int sp; //импульсы спидометра
volatile int th; //импульсы тахометра
int analogInput ; //массив аналоговых значений
int digitalInput; //массив цифровых значений
String resultString = ; //строка
int i; //счетчик циклов
//********************************************************************
void setup()<
for(i=0; i=14; i++)< //обнуление массива аналоговых значений
digitalInput=0;
>
for(i=0; i=28; i++)< //обнуление массива цифровых значений
analogInput=0;
>
Serial.begin(115200);
Serial2.begin(115200); //инициализация ком порта
attachInterrupt(0, speedometr, RISING); //прерывание спидометра по фронтам импульса
attachInterrupt(1, tahometr, RISING); //прерывание тахометра по фронтам импульса
>
//********************************************************************
void loop()<
analogInput = analogRead(0); // B13 напряжение
analogInput = analogRead(1); // B24 топливо
analogInput = analogRead(2); // B21 температура охлаждения
analogInput = analogRead(8); //
analogInput = analogRead(7); //
analogInput = analogRead(3); //
analogInput = analogRead(4); //
analogInput = analogRead(9); //
analogInput = analogRead(10); //
analogInput = analogRead(11); //
analogInput = analogRead(12); //
analogInput = analogRead(13); //
analogInput = analogRead(14); //
analogInput = analogRead(15); //
analogInput = analogRead(6); //

Настройка ESP-8266

Перед тем как подключать Модуль ESP8266 к схеме его нужно прошить и настроить в режиме прозрачного моста Tcp2uart (tcp to uart), чтобы полученные данные с ком-порта он передавал планшету по Wi-Fi.

Прошивать лучше через USB-UART преобразователь, который должен иметь выход источника 3.3V для питания ESP8266. Так же этот источник должен обеспечить необходимый ток не менее 200мА.


Контакт CPIO0 определяет режим работы модуля. При не подключенном контакте модуль работает в штатном режиме и выполняет AT команды. При замыкании контакта на землю, модуль переводится в режим обновления встроенной прошивки. Перевод модуля в режим прошивки требует, что бы контакт CPIO0 был подключен к земле в момент подачи питания на модуль. Если замыкать контакт при работающем модуле, перевод модуля в режим обновления прошивки не произойдет.Теперь нужно запустить esp8266_flasher.exeПропишите КОМ порт вашего конвертера и выбирете саму прошивку fullflash_tcp2uart.bin ().
Нажимайте Download и дождитесь пока процесс выполнения дойдет до 99%. На этом он остановится и можно отключать модуль.Далее на ESP8266 нужно подать питание, либо сразу подключить к контроллеру Arduino по схеме. После появления на модуле питания запустите поиск wifi сетей на своем компьютере. Должна появиться сеть ESP8266. Подключитесь к ней. После этого нужно в браузере перейти по адресу http://192.168.4.1/fsupload (Ввести данные Name: ESP8266 Password: 0123456789) и загрузить в устройство файл WEBFiles.bin (он в архиве с прошивками).Осталось настроить Tcp-Uart мост. Для этого в браузере зайдите на http://192.168.4.1. Перейдите во вкладку TCP-UART Settings и установите настройки как на скриншоте снизу:

Готово! Теперь при подключении модуля ESP-8266 к ардуино он работает в режиме прозрачного моста и по Wi-Fi передает необходимые данные.

Приложение Приборная панель для планшета

Приложение можете скачать .

Благодарим пользователя Frud портала Drive2 за опубликованную версию приложения и описание метода установки приложения:

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

После установки необходимо зайти в настройки Андроид, в раздел Домашний экран, выбрать приложение приборной панели VenatorLite2. Очень важный момент! Выйти в настройки Андроида из приложения приборной панели для возврата стандартного Launcher-a нельзя. Перед тем как установить приложение вместо Launcher-a необходимо убедиться что в настройки можно зайти из статусбара. Иначе вернуть стандартный лаунчер будет проблематично.

ПРИМЕЧАНИЕ! Перед установкой автозагрузки желательно настроить и отладить работу приложения.

После запуска приложения нужно зайти в настройки (нажать на значок шестеренки справа вверху). Тут надо указать ip-адрес и порт (В нашем примере этими значениями являются: адрес 192.168.4.1 и порт 3333).

Осталось все подключить и протестировать. Если все сделали правильно, то при вкючении устройства и подаче на 4-ый пин ардуино плюса приборная панель включится.

А вот как выглядит приборная панель, установленная в ОКУ:

Желаем успеха в реализации данного проекта

Робот – машинка на Ардуино становятся одним из самым популярных инженерных проектов в школьной робототехнике. Именно с таких устройств, автономных или управляемых со смартфона и bluetooth, начинается путь в робототехнику “после Lego”. К счастью, сегодня можно без труда купить все необходимые компоненты и достаточно быстро создать своего первого робота для езды по линии или объезда препятствий. В этой статье вы найдете подробную видео инструкцию как сделать продвинутый автомобиль Arduino Car своими руками, с питанием, датчиками линии, расстояния и управлении через bluetooth.

Робот на ардуино своими руками

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

Робот машина на Ардуино

Вот список ключевых компонентов, которые обязательно встретятся в проекте.

Контроллер Ардуино

Куда уж без него, если мы говорим о проектах на этой платформе. Как правило, роботы машины делают на базе плат Arduino Uno и Nano. Mega будут слишком большие, Pro Mini сложнее подключать к компьютеру и соединять с остальными компонентами, а Leonardo требуют дополнительных навыков в программировании, они дороже и их основное преимущество (тесная интеграция с компьютером в качестве периферийного устройства) в данном случае не слишком востребована.

Есть еще вариант использования плат ESP8266 или ESP32, тогда в проекте появляется возможность управления машиной через WiFi. Но и сами платы и их программирование требует определенных навыков, в этой статье мы будем говорить преимущественно об Uno или Nano.

Конструкция, шасси и двигатели робота на Ардуино

Для того, чтобы что-то поехало или стало перемещаться, надо снабдить “это” колесами, гусеницами или манипуляторами-ногами. Вот тут выбор совершенно не ограничен, можно использовать совершенно любые комбинации и сочетания платформ. Как правило, в качестве начального варианта берутся уже готовые наборы платформ с Алиэкспресс.

Двигатель, шасси и колеса машинки на ардуино

Если работать со стандартными наборами вам не интересно, можно создать платформу своими руками. Например, разобрать игрушечные радиоуправляемые машинки или любые двигатели на 5-12 вольт, с редукторами или без. Колеса можно создать и самим, что тоже является интересной задачей.

Драйвер двигателей

Драйвер двигателя L298N

Ардуино – достаточно ранимое устройство, не терпящее больших нагрузок по току. Соединяя его с “брутальными” мощными двигателями, не избежать беды. Поэтому для нормальной совместной работы нам нужно будет включить в схему робота компонент, отвечающий за управление двигателями – подающий и отключающий ток на их обмотки. Речь идет о микросхеме или готовом модуле, которые называют драйвером двигателя. На нашем сайте есть статьи, посвященные драйверам, построенным на схеме H-моста. Если вы покупаете готовые шасси, то обязательно предусмотрите возможность размещения на них подходящего драйвера.

Красивый корпус

Как правило, вся конструкция автомобиля строится вокруг его шасси. Если посмотреть примеры готовых проектов, то они часто выглядят как “провода на колесиках” – внешний вид их изобилует пучками соединительных проводов, ведущих от восседающего на троне контроллера Ардуино к драйверам, моторам и датчикам. Между тем, красивый и функциональный корпус не только вызывает правильные эстетические чувства и помогает выделить вашу модель от остальных. Хороший корпус может превратить игрушку в реальное устройство, помогает привить навыки конструирования и промышленного дизайна, что важно для инженеров любого возраста.

Питание робота

Обеспечение правильной схемы питания – это то, что очень часто оказывается на последнем месте в списке приоритетов начинающих ардуинщиков. Между тем, именно ошибки в схеме электропитания становятся основными причинами проблем, возникающих в процессе работы умных устройств на Ардуино. Создавая ардуино-машинку нужно предусмотреть питание контроллера, двигателей, драйвера и датчиков. У всех них есть свои ограничения и особенности работы, требуется создать оптимальное по весу и сложности решение, позволяющее учесть все эти ограничения.

Питание робота на Ардуино

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

  • Обычные батарейки AA. Тут нужно понимать, что платы Arduino Uno, Nano и большинство двигателей, используемых в Ардуино-робототехнике, требуют напряжения в диапазоне 6-9 вольт. Поэтому придется собрать вместе последовательно не менее 4 батареек на 1,5 В, причем сами батарейки должны быть хорошего качества и обеспечивать работу с достаточно большим током. Например, большинство солевых батареек этим критериям не удовлетворяют. Батарейки AAA при создании ардуино-машинок практически не используются из-за своей пониженной емкости (хотя могут использоваться в миниатюрных моделях, где размер имеет первостепенное значение).
  • Аккумулятор AA. Здесь возникает еще большее ограничение по напряжению и току. Большинство аккумуляторов выдают напряжение 1,2 вольт, поэтому их требуется больше для “собирания” нужных нам 6-9 вольт. Несомненным плюсом является возможность перезарядки.
  • Литиевые аккумуляторы 18650. Это уже “серьезная артиллерия”, позволяющая получить большое время автономной работы, возможность подзарядки и приемлемые характеристики по току и напряжению. Рабочее напряжение для таких элементов питания – 3,7 В, что позволяет собирать готовую схему питания всего из двух элементов.
  • Другие источники питания. Сюда можно включить как более мощные и габаритные никель-металлгидридные, кадмиевые аккумуляторы, так и многочисленные литий-ионные “плоские” варианты, используемые в дронах, смартфонах или другой портативной цифровой технике.

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

Инструкция по сборке робота-автомобиля на колесной или гусеничной платформе

В этой статье расскажем вам о том, как по шагам собрать универсального робота на колесной или гусеничной платформе. Управлять им будет микроконтроллер Ардуино нано. Если вам не нравится долго читать, посмотрите в конце статьи на видео, подготовленное нашими партнерами – каналом ArduMast Club:

Пример платформы робота машины на Ардуино

Предлагаем инструкцию по созданию универсальной платформы, которая потом пригодится для создания самых разных проектов, независимо от выбранного контролера или типа шасси. Вы можете использовать стандартные варианты из Алиэкспресса, как на видео, можете снабдить машину гусеницами и создать вездеход, можете придумать вообще ни на что не похожий вариант. Главное, чтобы число двигателей не превышало 4 и сами ни не были слишком мощными (тогда придется менять тип управления моторами – другой драйвер двигателя).

Робот на Ардуино

Для реализации проекта нам понадобится:

  • Контроллер Ардуино (в нашем случае, Arduino Nano).
  • Драйвер двигателя L298N.
  • Двигатели с редукторами.
  • Корпус и шасси для крепления колес и оборудования
  • Корпус для аккумуляторов 18650 с выключателем.
  • Коммутационные провода.

Дополнительное оборудование, которое потребуется для создания полноценного проекта:

  • Датчик расстояния и серво-мотор, на который он установлен.
  • Инфракрасные датчики линии.
  • Светодиоды для индикации и “красоты”.
  • Пьезодинамик – пищалка.
  • Bluetooth модуль (если собираетесь управлять машинкой дистанционно).
  • Sensor shield (упрощает коммутацию).
  • Модуль контроля заряда и подзарядки аккумуляторов.
  • Сами аккумуляторы.

Общая схема машинки на Ардуино

Схема электропитания робота автомобиля

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

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

Схема питания и подключения двигателей в ардуино автомобиле

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

Машинка на Ардуино

Для добавления контроллера разряда придется внести следующие изменения в схему:

Схема питания с контролем разряда аккумулятора

Теперь аккумуляторы будут защищены, но здесь нет возможности заряжать их.

Питание робота Ардуино

Для зарядки можно использовать модуль повышения напряжения с 5v до необходимого уровня зарядки, который зависит от количества серий используемых аккумуляторов. Он имеет гнездо типа микро USB и при частом использовании оно может сломаться, поэтому мы рекомендуем установить дополнительное гнездо для последующей подзарядки пяти вольтовым блоком питания. Для зарядки двух литий-ионных аккумуляторов необходимо настроить выходное напряжение на 8,4 Вольта.

Схема питания с модулем зарядки для ардуино робота машинки

Подключаем двигатели и плату

С питанием платформы мы разобрались, теперь подключим остальные компоненты. Для начала припаиваем провода к моторам, затем обматываем их изолентой, чтобы случайно в дальнейшем не оторвать контакты. Можно сделать так, что в итоге на 2 двигателя будут идти всего два провода вместо 4х. Это немного упростит монтаж и сэкономит место на платформе.

Монтируем драйвер двигателей на платформу так, чтобы его радиатор был спереди. ЭТО ВАЖНО! В противном случае, вам придется переписывать программу для микроконтроллера. Драйвер двигателя для Ардуино робота

Затем размещаем холдер и плату БМС. Не забываем оставлять место спереди для последующего монтажа каких-либо сенсоров. Ардуиио нужно разместить так, чтобы была в дальнейшем возможность подключить его к ПК для прошивки. Это же правило относится и к модулю для зарядки аккумуляторов.

Питание для ардуино и других электронных компонентов мы возьмем от драйвера двигателей.

Подключаем Bluetooth к машинке

Мы собираемся использовать модуль Bluetooth через SoftwareSerial (библиотеку SoftwareSerial.h), поэтому подключаем модуль блютуз к 3 и 4 цифровым пинам ардуино. RX к D3, TX к D4

Схема подключения Bluetooth к ардуино машинкеПодключаем BluetoothСхема подключения драйвера двигателя к роботу Схема подключения компонентов к Arduino Датчик расстояния машины

Платформа робота готова! Теперь осталось загрузить прошивку для контроллера Ардуино и программу для смартфона RC CAR. Вы можете посмотреть на нашем сайте обзор Android приложений для работы с Arduino.


Источник: t-31.ru