[Из песочницы] Как из детского квадроцикла сделать вседорожный гоночный болид
Ничто в этом мире не вечно, но некоторые китайские изделия просто удивляют своей «долговечностью». Я расскажу о своем опыте модернизации детского квадроцикла.
Что имеем: детский квадроцикл KL-789 с незначительными неисправностями, немного свободного времени и желание воткнуть туда завалявшуюся ардуину.
Что хотим получить: что-то рабочее дольше, чем один месяц, желательно с улучшенными ходовыми характеристиками.
Квадроцикл имеет два коллекторных мотора RS550 на 12V, с частотой вращения вала 19300 rpm на холостом ходу, подключенные к задним колесам диаметром ~30 см через редукторы с передаточным числом ~131. Простая математика говорит о том, что максимальная скорость данного ТС должна быть 19300/131/60×3.14×0,3 = 2,31 м/с или 8,3 км/ч. На практике, он едет примерно 7 км/ч. Во время выбора новых комплектующих во мне боролись желание сделать максимальную скорость, и опасение, что это будет слишком опасным транспортом для детей. Поэтому было решено, что он должен ехать в 1,5–2 раза быстрее. Кроме двигателей, меня в нем неустраивало:
- Аккумулятор. Гелевый 12V 10Ah, теряющий бОльшую часть емкости при большом разрядном токе
- Система управления. Первая скорость — педаль, двигатели подключаются последовательно. Вторая скорость-ручка на руле, двигатели подключаются параллельно. Тормоз — автоматический при отпускании педали, обмотки двигателей замыкаются. Данная схема приводит к слишком резкому старту, полному отсутствию свободного качения, такому же резкому тормозу, все это приводит к большим токовым нагрузкам (кнопка педали расплавилась в течении месяца эксплуатации), и механическим нагрузкам на редукторы и колеса, не говоря уже о банальной не комфортности езды
- Силовые провода. Сечением 0,75–1 кв. мм, которые с номинальными токами в 20А нагреваются до значительной температуры
Т.е. меня не устраивала абсолютно вся электрика. Немного поразмыслив, было решено использовать:
- Две литиевые батареи на 11.1V с максимальным (обещанным) током 240А каждая (да, ими можно заводить автомобиль, проверено)
- Два сенсорных БК мотора на 36000 rpm при номинальных 11.1V, и ~40000 rpm при полностью заряженных батареях
- Два сенсорных БК регулятора на 120А (люблю все с запасом)
- Пропорциональная ручка газа на основе датчика Холла
- Пяти-позиционный переключатель передач, у нас будет три скорости вперед, одна назад и нейтраль
- Датчик тока на 100А
- Bluetooth модуль, для телеметрии на телефоне
- Фары передние
- Стоп сигнал/задний габарит, красный, красный
- Звуковой сигнал, куда же без него
- FET модуль, 4 канальный, для управления фарами
- Teensy 2.0, в качестве контроллера всего этого
- Двух-секционный выключатель для света
- Ну и немного всякой мелочевки -донгл для настройки и прошивки регуляторов, коннекторы, провода, термоусадка, инструмент для снятия пиньена со стокового мотора
Кроме этого, для уменьшения грохота пластиковых колес и улучшения плавности хода были куплены 4 покрышки 12,5» для детских колясок, после чего они подверглись небольшой доработке канцелярским ножом, а затем были натянуты на колеса квадроцикла, и закреплены саморезами:
Когда все приехало, был собран прототип на коленках, выяснилось, что двигатели даже без нагрузки нагреваются до 70 градусов за 3–5 минут работы, пришлось докупить два кулера к ним, а регуляторы наоборот, даже с отключенными вентиляторами не греются (забегая вперед, на квадроцикле под нагрузкой они тоже не греются). Т.к. у нас два двигателя с двух разных сторон, необходимо было решить еще одну проблему — сенсорные моторы крутятся только в одну сторону. Первоначально планировалось разобрать один мотор, и перевернуть в нем сенсор на 180 градусов…, но реальность показала, что это невозможно сделать малой кровью. Более того, во время экспериментов с сенсором и таймингами частично сгорел один из регуляторов, в итоге я отказался от сенсора, и подключил их как обычные БК. Сам сенсор состоит из трех датчиков Холла, отслеживающих положение ротора, и датчика температуры. Было решено не оставлять все это хозяйство, а подключить к МК и использовать как датчик температуры двигателя, датчик скорости вращения двигателя, а в последствии, зная передаточное число — и как датчик скорости.
Несколько озадачила библиотека pwmservo, она предназначена для управления сервомашинками (в моем случае регулаторами) через аппаратный ШИМ, с точностью в 1 градус, всего 180 состояний, а направление «вперед» это только половина диапазона, т.е. 90 состояний. Мне показалось что это маловато, пришлось отредактировать библиотеку в ущерб кросс-платформенности ардуин (получилось только для контроллеров с 16 МГц), результат — 1000 состояний в каждую сторону (единица равна 0,5 мкс длительности ШИМ, ШИМ от 1 до 2 мс).
После того, как работа «на коленке» была более менее отлажена, все это хозяйство было установлено на квадроцикл:
Двигатель + редуктор:
Внутри небольшой творческий беспорядок из проводов (просто побросал все провода внутрь, хотелось протестировать быстрее, позже приведено в человеческий вид):
Т.к. мощность получилась больше 500 Вт, пришлось ограничить скорость нарастания газа, если с места резко повернуть газ в максимум, мощность будет увеличиваться плавно, и своего максимума достигнет примерно через 3 секунды. Уверен, без этого происходил бы эффект моментального опрокидывания.
В общем, вот запись видео телеметрии с экрана телефона, там все видно, только из-за слегка заглючившего датчика оборотов в левом двигателе (левый зеленый столбик) данные скорости слегка занижены, максимально достигнутая скорость на свежих батареях — 18 км/ч
Значения столбиков: синие — температура двигателей в градусах, зеленые — обороты двигателей в rpm, оранжевые — мощность подаваемая на двигатели в условных числах от 0 до 1000, серый — положение ручки газа.
А вот как это едет:
Меня не утащил… буксует, но на самом квадроцикле я ездил, и судя по телеметрии, ему абсолютно все равно кто там сверху
На первом видео на старте слышен хруст. В первый же вечер, полностью вышли из строя редукторы. Проблема оказалась в том, что редукторы состоят из нейлоновых шестерен, вращающихся на 9 мм стальной оси без подшипников, таким образом, сила трения шестерен оказалась настолько большой, что в одном редукторе в шестернях просто выплавилась середина, и потерялась соосность. В другом редукторе шестерня приварилась к оси, а ось начала вращаться в корпусе и плавить его, в результате чего шестерня так же потеряла соосность.
Для решения этой проблемы понадобились:
Новые оси 5 мм, поэтом пришлось распечатать на 3D принтере втулки с внешним диаметром 9 мм (как у старых осей), а внутренним 5 мм, для того чтобы можно было новые оси установить в старый корпус редуктора, в шестернях были высверлены 11 мм отверстия глубиной 5 мм с обоих сторон (посадочные места под подшипник). Шестерни теперь установлены на подшипники, а также обильно смазаны литолом, и вот уже больше полугода все прекрасно ездит в любых условиях:
Но на этом я не останавливаюсь, следующий шаг — кастомные шестерни редуктора, для того чтобы увеличить скорость до 25–30 км/ч.
Дети очень быстро учатся, и уже прекрасно справляются с вхождением в 90-градусный поворот с небольшим притормаживанием, а затем резким газом на выходе из поворота.
Скетч, доработанная библиотека pwmservo, pinount можно скачать тут, все это в черновом виде, в коде очень много недоделанного и отладочного кода, за что заранее извиняюсь.