Development for Raspberry Pi
DIY
2 August

Игрушка ГАЗ-66 на пульте управления. Часть 1

From Sandbox
main

Несколько последних лет хотелось заполучить игрушку на пульте управления и обязательно с видео. Но не купить готовую, а сделать самому. И в итоге заказал себе вот такую игрушку, с простенькой системой управления, но большим потенциалом для модернизации. На все работы от старта и до почти завершения ушло ~ 9 месяцев. Большую часть этого времени ждал комплектующие из Китая.
Статью пишу по большей части для себя, что бы в дальнейшем не забыть что делал, как, зачем и почему.
Она будет содержать две основные части: аппаратную и программную и возможно еще одну часть про компоновку железа. Сначала опишу аппаратную часть, из чего собирал, с какими проблемами сталкивался и как их решал.


1. Аппаратная часть


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


1.1 Пульт управления


Компоненты:


  • Raspberry pi 3
  • ADS1115 АЦП
  • Game HAT

Game HAT


Game HAT был выбран т.к. это уже готовое решение совмещающие в себе экран, джойстик и клавиатуру достаточную для управления машинкой.


Game HAT

Джойстиком на этой плате является KY-023. Его решил использовать вместо руля. Но оказалось, что в Raspberry нет АЦП и единственные значения которые можно было получить от него 0 и 1, что явно недостаточно для плавного поворота колес.


KY-023

ADS1115


Эту проблему решил модуль ADS1115.


ADS1115

Модуль был припаян к Game HAT и прикреплен к ней с помощью ленты 3M. Показания снимаются со средних ножек переменных резисторов на джойстике. Выглядит все так:


My Game HAT

Джойстик по аналогии впаян в Game HAT. Провода припаяны к разъемам Game HAT, которые соответствуют разъемам питания и I2C на Raspberry. Схема подключения:


remote

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


1.2 Машинка


Как это все ужасно выглядит под капотом:


car

Начнем разбираться.


Компоненты:


  • Raspberry pi 3
  • Raspberry Pi Camera v2 NoIR
  • PCA9685 ШИМ генератор
  • Mini-360 понижающий преобразователь питания
  • BMS CF-4S30A-A контролер заряда
  • L298N драйвер управления двигателем
  • Моя плата управления светом на основе драйвера L293
  • 3 литий-ионных батареи 18650
  • 370 мотор
  • DI-1181MG сервопривод

Питание


Начнем от питания, его обеспечивают три аккумулятора 18650, соединенных последовательно и дающих ~ 12 вольт.
Аккумуляторы подсоединены через плату BMS CF-4S30A-A, что бы их можно было заряжать и не разрядить в ноль на покатушках.


4S 40A BMS

Но это плата предназначена для 4-х аккумуляторов, поэтому она была переделана для работы с 3-мя аккумуляторами. Почему была взята она, а не 3S 40A BMS. Потому что она была под рукой.


Схема переделки:


4S 40A BMS

Этим напряжением питается 370 мотор через драйвер L298N.


370
L298N

Для питания Raspberry используются напряжение с этих же аккумуляторов, но напряжение понижается модулем Mini-360 до 5 вольт.


mini-360

Raspberry запитал прямо на его ножки.


Движение


Теперь поговорим о том, как машинка ездит. Для управления рулевым механизмом используется сервопривод DI-1181MG, который управляется с помощью PCA9685. Так же PCA9685 отвечает за управление мотором регулируя его скорость и направление вращения через драйвер L298N. Raspberry же управляет PCA9685 по I2C шине. PCA9685 питается от 5 вольт с понижающего преобразователя. Этого вполне хватает для сервы и управления мотором. Мотор подключен к двум выходам L298N для повышения мощности.


DI-1181MG
PCA9685

Видео


Для видео использовал Camera v2 NoIR, она легко подключается к Raspberry. Но без доработок не обошлось. Стандартный шлейф камеры был в длину 15 см. чего не хватило для монтажных работ. Так же этот шлейф нестандартный, он имеет 15 пинов. На aliexpress за один длинный шлейф для этой камеры китайцы хотят больше 1000 рублей. По этому был куплен комплект из 10 стандартных 16 пиновых шлейфов ~ за 300 рублей. И с помощью высокотехнологичной технологии применения канцелярских ножниц переделан в 15 пиновый шлейф для камеры.


camera
string

На момент написания статьи, 2-ой месяц жду крепление для камеры в кабину. Пока что машинка показывает только потолок )


Свет


На машинке уже установлен штатный свет, состоящий из фар с 2-мя желтыми светодиодами. Осталось их только запитать.
Управление светом осуществляется через мою плату, которая сделана на основе драйвера L293. Питание на диоды подается через резистор. Плата сделана по технологии ЛУТ. На ней так же куча дорожек для разводки питания.
Можно было бы для управления светом воспользоваться PCA9685, на том момент когда делал свою не знал про PCA9685 и обходился без нее.


Схема платы:


my driver

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


all

А вот это, что стояло в машинке пока я не влез ))


old

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


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


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


Моим коллегам по работе: Андрею и Николаю за помощь с железом, Антону и Евгению за помощь в работе с видео. Самоделкин-22 за ЛУТ моей платы. И Мурзику.


Ссылки


Часть 2
Часть 3


+33
13.5k 83
Comments 31
Top of the day