Оглавление:

HackerBoxes 0013: Автоспорт: 12 шагов
HackerBoxes 0013: Автоспорт: 12 шагов

Видео: HackerBoxes 0013: Автоспорт: 12 шагов

Видео: HackerBoxes 0013: Автоспорт: 12 шагов
Видео: Hackerboxes 0013: AUTOSPORT 2024, Июль
Anonim
HackerBoxes 0013: Автоспорт
HackerBoxes 0013: Автоспорт

АВТОСПОРТ: В этом месяце хакеры HackerBox исследуют автомобильную электронику. Это руководство содержит информацию по работе с HackerBoxes # 0013. Если вы хотите получать такой ящик прямо на свой почтовый ящик каждый месяц, сейчас самое время подписаться на HackerBoxes.com и присоединиться к революции!

Темы и цели обучения для этого HackerBox:

  • Адаптация NodeMCU для Arduino
  • Сборка автомобильного комплекта 2WD
  • Подключение NodeMCU для управления автомобильным комплектом 2WD
  • Управление NodeMCU через Wi-Fi с помощью Blynk
  • Использование датчиков для автономной навигации
  • Работа с автомобильной бортовой диагностикой (OBD)

HackerBoxes - это ежемесячный абонентский ящик для электроники и компьютерной техники своими руками. Мы любители, творцы и экспериментаторы. Взломайте планету!

Шаг 1: HackerBoxes 0013: Содержимое коробки

HackerBoxes 0013: Содержимое коробки
HackerBoxes 0013: Содержимое коробки
HackerBoxes 0013: Содержимое коробки
HackerBoxes 0013: Содержимое коробки
HackerBoxes 0013: Содержимое коробки
HackerBoxes 0013: Содержимое коробки
  • Коллекционная справочная карточка HackerBoxes # 0013
  • Комплект шасси автомобиля 2WD
  • Модуль процессора WiFi NodeMCU
  • Моторный щит для NodeMCU
  • Блок перемычек для моторного щита
  • Батарейный блок (4 x AA)
  • Ультразвуковой датчик дальности HC-SR04
  • ИК-датчики отражения TCRT5000
  • Джемперы женские-женские DuPont 10см
  • Два красных лазерных модуля
  • Mini-ELM327 бортовая диагностика (OBD)
  • Эксклюзивная наклейка HackerBoxes Racing

Еще кое-что, что будет полезно:

  • Четыре батарейки типа АА
  • Двусторонняя лента из пеноматериала или полоски на липучке
  • кабель microUSB
  • Смартфон или планшет
  • Компьютер с Arduino IDE

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

Шаг 2: автомобильная электроника и беспилотные автомобили

Автомобильная электроника и беспилотные автомобили
Автомобильная электроника и беспилотные автомобили
Автомобильная электроника и беспилотные автомобили
Автомобильная электроника и беспилотные автомобили

Автомобильная электроника - это любые электронные системы, используемые в дорожных транспортных средствах. К ним относятся автомобильные компьютеры, телематика, автомобильные развлекательные системы и т. Д. Автомобильная электроника возникла из-за необходимости управлять двигателями. Первые использовались для управления функциями двигателя и назывались блоками управления двигателем (ЭБУ). По мере того, как электронные элементы управления начали использоваться для большего количества автомобильных приложений, аббревиатура ECU приобрела более общее значение «электронный блок управления», а затем были разработаны специальные электронные блоки управления. Теперь ЭБУ имеют модульную конструкцию. Два типа включают модули управления двигателем (ECM) или модули управления трансмиссией (TCM). В современном автомобиле может быть до 100 ЭБУ.

Радиоуправляемые автомобили (автомобили с радиоуправлением) - это автомобили или грузовики, которыми можно управлять на расстоянии с помощью специального передатчика или пульта дистанционного управления. Термин «R / C» использовался для обозначения как «дистанционно управляемый», так и «радиоуправляемый», но обычное использование «R / C» сегодня обычно относится к транспортным средствам, управляемым радиочастотной связью.

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

Шаг 3: Arduino для NodeMCU

Arduino для NodeMCU
Arduino для NodeMCU
Arduino для NodeMCU
Arduino для NodeMCU

NodeMCU - это платформа IoT с открытым исходным кодом. Он включает в себя прошивку, которая работает на ESP8266 Wi-Fi SoC от Espressif Systems, и оборудование на основе модуля ESP-12.

IDE Arduino теперь можно легко расширить для поддержки программирования модулей NodeMCU, как если бы они были любой другой платформой разработки Arduino.

Для начала убедитесь, что у вас установлена IDE Arduino (www.arduino.cc), а также драйверы для соответствующего чипа Serial-USB на используемом вами модуле NodeMCU. В настоящее время большинство модулей NodeMCU включают в себя микросхему последовательного USB-порта CH340. Производитель микросхем CH340 (WCH.cn) предлагает драйверы для всех популярных операционных систем. Посетите страницу перевода Google для их сайта.

Запустите Ardino IDE, перейдите в настройки и найдите поле для ввода «Дополнительные URL-адреса Board Manager».

Вставьте этот URL:

arduino.esp8266.com/stable/package_esp8266com_index.json

Чтобы установить Board Manager для ESP8266.

После установки закройте среду IDE, а затем запустите ее.

Теперь подключите модуль NodeMCU к компьютеру с помощью кабеля microUSB (который используется в большинстве мобильных телефонов и планшетов).

Выберите тип платы в среде Arduino IDE как NodeMCU 1.0.

Нам всегда нравится загружать и тестировать демоверсию Blink на новой плате Arduino, чтобы убедиться, что все работает правильно. NodeMCU не является исключением, но вы должны изменить вывод светодиода с вывода 13 на вывод 16 перед компиляцией и загрузкой. Убедитесь, что этот быстрый тест работает правильно, прежде чем переходить к чему-либо более сложному с Arduino NodeMCU.

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

Шаг 4: Комплект шасси автомобиля 2WD

Комплект шасси автомобиля 2WD
Комплект шасси автомобиля 2WD
Комплект шасси автомобиля 2WD
Комплект шасси автомобиля 2WD
Комплект шасси автомобиля 2WD
Комплект шасси автомобиля 2WD

Состав комплекта шасси автомобиля 2WD:

  • Алюминиевый корпус (цвета различаются)
  • Два двигателя постоянного тока FM90
  • Два колеса с резиновыми шинами
  • Колдун свободного хода
  • Монтажное оборудование
  • Монтажное оборудование

Двигатели постоянного тока FM90 выглядят как микросервоприводы, потому что они построены в том же пластиковом корпусе, что и обычные микросервоприводы, такие как FS90, FS90R или SG92R. Однако FM90 не сервопривод. FM90 - это двигатель постоянного тока с пластмассовой зубчатой передачей.

Скорость двигателя FM90 регулируется с помощью широтно-импульсной модуляции (ШИМ) силовых проводов. Направление контролируется переключением полярности питания, как и в любом щеточном двигателе постоянного тока. FM90 может работать от 4-6 вольт постоянного тока. Несмотря на небольшой размер, он потребляет достаточно тока, поэтому его нельзя запускать напрямую с вывода микроконтроллера. Следует использовать привод двигателя или H-образный мост.

Характеристики двигателя постоянного тока FM90:

  • Размеры: 32,3 мм x 12,3 мм x 29,9 мм / 1,3 дюйма x 0,49 дюйма x 1,2 дюйма
  • Количество сплайнов: 21
  • Вес: 8,4 г
  • Скорость без нагрузки: 110 об / мин (4,8 В) / 130 об / мин (6 В)
  • Рабочий ток (без нагрузки): 100 мА (4,8 В) / 120 мА (6 В)
  • Пиковый крутящий момент (4,8 В): 1,3 кг / см / 18,09 унций / дюйм
  • Пиковый крутящий момент (6 В): 1,5 кг / см / 20,86 унций / дюйм
  • Ток останова: 550 мА (4,8 В) / 650 мА (6 В)

Шаг 5: Шасси автомобиля: механическая сборка

Шасси автомобиля: Механическая сборка
Шасси автомобиля: Механическая сборка
Шасси автомобиля: Механическая сборка
Шасси автомобиля: Механическая сборка
Шасси автомобиля: Механическая сборка
Шасси автомобиля: Механическая сборка

Шасси автомобиля легко собрать по этой схеме.

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

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

  • Четыре тонких болта M2x8 и небольшие подходящие гайки для крепления двигателей
  • Четыре более толстых болта M3x10 и соответствующие гайки большего размера для крепления роликового колеса
  • Два винта PB2.0x8 с крупной резьбой для крепления колес к моторам.

Обратите внимание, что двигатели FM90 ориентированы таким образом, что провода выходят из задней части собранного шасси.

Шаг 6: Шасси автомобиля: добавьте блок питания и контроллер

Шасси автомобиля: добавить блок питания и контроллер
Шасси автомобиля: добавить блок питания и контроллер
Шасси автомобиля: добавить блок питания и контроллер
Шасси автомобиля: добавить блок питания и контроллер
Шасси автомобиля: добавить блок питания и контроллер
Шасси автомобиля: добавить блок питания и контроллер

Плата защиты двигателя ESP-12E поддерживает прямое подключение модуля NodeMCU. Щит двигателя включает в себя микросхему двухтактного драйвера двигателя L293DD (техническое описание). Провода электродвигателя должны быть подключены к винтовым клеммам A + / A- и B + / B- на щите электродвигателя (после снятия разъемов). Выводы батареи должны быть подключены к входным винтовым клеммам батареи.

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

На моторном щите есть пластиковая кнопка включения для включения питания от аккумуляторной батареи. Блок перемычек может использоваться для подачи питания на NodeMCU от моторного щита. Без установленной перемычки NodeMCU может питаться от USB-кабеля. При установленном блоке перемычек (как показано) аккумулятор питает двигатели, а также подключается к модулю NodeMCU.

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

Шаг 7: Шасси автомобиля: программирование и управление Wi-Fi

Шасси автомобиля: программирование и управление Wi-Fi
Шасси автомобиля: программирование и управление Wi-Fi

Blynk - это платформа с приложениями iOS и Android для управления Arduino, Raspberry Pi и другим оборудованием через Интернет. Это цифровая панель инструментов, на которой вы можете создать графический интерфейс для своего проекта, просто перетаскивая виджеты. Настроить все очень просто, и вы сразу начнете возиться. Blynk предоставит вам возможность подключиться к Интернету и подготовит вас к Интернету ваших вещей.

Скрипт HBcar.ino Arduino, включенный здесь, показывает, как взаимодействовать с четырьмя кнопками (вперед, назад, вправо и влево) в проекте Blynk для управления двигателями на шасси автомобиля 2WD.

Перед компиляцией в программе нужно изменить три строки:

  • Wi-Fi SSID (для вашей точки доступа Wi-Fi)
  • Пароль Wi-Fi (для вашей точки доступа Wi-Fi)
  • Токен авторизации Blynk (из вашего проекта Blynk)

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

  • Контакт 5 GPIO для скорости двигателя А
  • GPIO контакт 0 для двигателя A направление
  • GPIO контакт 4 для скорости двигателя B
  • GPIO контакт 2 для двигателя B направления

Шаг 8: Датчики для автономной навигации: ультразвуковой дальномер

Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер
Датчики для автономной навигации: ультразвуковой дальномер

Ультразвуковой дальномер HC-SR04 (техническое описание) может обеспечивать измерения от 2 до 400 см с точностью до 3 мм. Модуль HC-SR04 включает в себя ультразвуковой передатчик, приемник и схему управления.

После присоединения четырех перемычек типа «мама-мама» к контактам HC-SR04, обмотка разъемов лентой может помочь как изолировать соединения от короткого замыкания на алюминиевый корпус, так и обеспечить податливую массу для вклинивания в слот на передней панели. шасси, как показано.

В этом примере четыре контакта HC-SR04 могут быть подключены к моторному щиту:

  • VCC (на HC-SR04) на VIN (на моторном щите)
  • Триггер (на HC-SR04) на D6 (на моторном щите)
  • Эхо (на HC-SR04) на D7 (на моторном щите)
  • GND (на HC-SR04) на GND (на моторном щите)

VIN подает около 6 В постоянного тока на HC-SR04, которому требуется только 5 В. Однако, похоже, это нормально работает. Другой доступной шины питания (3,3 В) иногда достаточно для питания модуля HC-SR04 (обязательно попробуйте), но иногда этого недостаточно.

После того, как он будет подключен, попробуйте пример кода NodeMCUping.ino для проверки работы HC-SR04. Расстояние от датчика до любого объекта печатается на серийном мониторе (плата 9600) в сантиметрах. Получите нашу линейку и проверьте точность. Впечатляет, не правда ли?

Теперь, когда у вас есть этот совет, попробуйте что-нибудь подобное для автономного транспортного средства, избегающего столкновений:

  1. вперед до расстояния <10 см
  2. остановка
  3. перевернуть небольшое расстояние (по желанию)
  4. повернуть на случайный угол (время)
  5. перейти к шагу 1

Для получения общей справочной информации, вот обучающее видео, полное деталей по использованию модуля HC-SR04.

Шаг 9: Датчики для автономной навигации: инфракрасная (ИК) отражательная способность

Датчики для автономной навигации: инфракрасная (ИК) отражательная способность
Датчики для автономной навигации: инфракрасная (ИК) отражательная способность

В модуле ИК-датчика отражения используется TCRT5000 (таблица данных) для определения цвета и расстояния. Модуль излучает инфракрасный свет, а затем определяет, получает ли он отражение. Благодаря способности определять, является ли поверхность белой или черной, этот датчик часто используется для отслеживания роботов и автоматической регистрации данных на счетчиках коммунальных услуг.

Диапазон расстояний измерения составляет от 1 мм до 8 мм, а центральная точка - около 2,5 мм. Также имеется встроенный потенциометр для регулировки чувствительности. ИК-диод будет постоянно излучать ИК-свет, когда модуль подключен к источнику питания. Когда излучаемый инфракрасный свет не отражается, триод будет в выключенном состоянии, в результате чего на цифровом выходе (D0) будет отображаться логический НИЗКИЙ уровень.

Шаг 10: лазерные лучи

Лазерные лучи
Лазерные лучи
Лазерные лучи
Лазерные лучи

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

Обратите внимание, что эти модули можно легко повредить, поэтому в HackerBox # 0013 есть пара для резервного копирования. Будьте осторожны со своими лазерными модулями!

Шаг 11: Автомобильная бортовая диагностика (OBD)

Автомобильная бортовая диагностика (OBD)
Автомобильная бортовая диагностика (OBD)
Автомобильная бортовая диагностика (OBD)
Автомобильная бортовая диагностика (OBD)

Бортовая диагностика (OBD) - это автомобильный термин, обозначающий способность автомобиля к самодиагностике и составлению отчетов. Системы OBD предоставляют владельцу автомобиля или специалисту по ремонту доступ к состоянию различных подсистем автомобиля. Объем диагностической информации, доступной через OBD, сильно варьировался с момента появления в начале 1980-х версий бортовых компьютеров транспортных средств. Ранние версии OBD просто включали световой индикатор неисправности при обнаружении проблемы, но не предоставляли никакой информации о характере проблемы. Современные реализации OBD используют стандартизированный порт цифровой связи для предоставления данных в реальном времени в дополнение к стандартизированной серии диагностических кодов неисправностей или DTC, которые позволяют быстро выявлять и устранять неисправности в автомобиле.

OBD-II - это улучшение как возможностей, так и стандартизации. Стандарт OBD-II определяет тип диагностического разъема и его распиновку, доступные протоколы электрической сигнализации и формат сообщений. Он также предоставляет список кандидатов параметров транспортного средства для мониторинга, а также способы кодирования данных для каждого из них. В разъеме есть штырь, который обеспечивает питание диагностического прибора от аккумуляторной батареи автомобиля, что устраняет необходимость в отдельном подключении диагностического прибора к источнику питания. Диагностические коды неисправностей OBD-II состоят из 4 цифр, которым предшествует буква: P для двигателя и трансмиссии (трансмиссии), B для кузова, C для шасси и U для сети. Производители также могут добавлять параметры пользовательских данных в свою конкретную реализацию OBD-II, включая запросы данных в реальном времени, а также коды неисправностей.

ELM327 - это программируемый микроконтроллер для взаимодействия с интерфейсом бортовой диагностики (OBD), который есть в большинстве современных автомобилей. Командный протокол ELM327 - один из самых популярных стандартов интерфейса ПК-OBD, который также реализуется другими поставщиками. Оригинальный ELM327 реализован на микроконтроллере PIC18F2480 от Microchip Technology. ELM327 абстрагируется от низкоуровневого протокола и представляет собой простой интерфейс, который можно вызывать через UART, обычно с помощью портативного диагностического прибора или компьютерной программы, подключенной через USB, RS-232, Bluetooth или Wi-Fi. Функция такого программного обеспечения может включать в себя дополнительные контрольно-измерительные приборы транспортного средства, сообщение кодов ошибок и очистку кодов ошибок.

Хотя Torque, вероятно, самый известный, есть много приложений, которые можно использовать с ELM327.

Шаг 12: взломайте планету

Взломать планету
Взломать планету

Спасибо, что поделились нашим приключением в автомобильной электронике. Если вам понравился этот Instrucable и вы хотите, чтобы ящик с подобными проектами электроники доставлялся прямо на ваш почтовый ящик каждый месяц, присоединяйтесь к нам, ПОДПИСавшись ЗДЕСЬ.

Сообщите о своем успехе в комментариях ниже и / или на странице HackerBoxes в Facebook. Обязательно дайте нам знать, если у вас возникнут какие-либо вопросы или вам понадобится помощь. Спасибо за то, что вы являетесь частью HackerBoxes. Пожалуйста, продолжайте присылать ваши предложения и отзывы. HackerBoxes - это ВАШИ коробки. Сделаем что-нибудь отличное!

Рекомендуемые: