Сборка высокопроизводительного 3D-печатаемого RC-танка с двухступенчатой коробкой передач
В этом руководстве покажу, как построил мощный 3D-печатаемый RC-танк (гусеничный робот) с чистым чёрным дизайном, крутой LED-подсветкой и двухступенчатой коробкой передач. Коробку передач проектировал специально: можно переключаться между низкой и высокой передачей в зависимости от ландшафта, получая либо больший крутящий момент, либо большую скорость.
Смотрите видео или читайте текстовый туториал ниже.
Обзор
Если следите за мной, знаете: ранее я уже делал 3D-печатаемый RC-танк — он был крут, но слабоват. Теперь ставлю по двигателю DC 200 Вт на каждую гусеницу, и в связке с коробкой передач танк получает мощь для любого рельефа — и для веселья в виде «бурноутов» и «донатов».
Для веселья установил адресную LED-ленту — бесконечные варианты эффектов. В видео сделал стробоскопический «полицейский» режим — очень круто ездить ночью.
Подвеска: по три пружинно-амортизаторные стойки с каждой стороны, по две опорные ролика на каждой. Это даёт плавный ход по неровностям и хороший контакт гусениц с грунтом при преодолении препятствий.
Всё 3D-печатается, файлы доступны для скачивания — можно повторить самостоятельно.
Управление — дешёвым коммерческим RC-передатчиком. На танке приёмник, передающий команды на микроконтроллер Atmega2560. Для чистой разводки сделал кастомную PCB, надеваемую на плату микроконтроллера.
Теперь по порядку: проектирование, печать, сборка, электроника, прошивка.
Проектирование RC-танка
Проектировал в Onshape — профессиональной облачной CAD/PDM-системе, которую использую для проектов. Рекомендую инженерам и дизайнерам: Onshape Professional бесплатно до 6 месяцев по ссылке https://Onshape.pro/HowtoMechatronics.
Входные параметры — габариты и RPM DC-двигателей. Двигатели крупные, 3000 RPM — слишком много для танка, поэтому спроектировал коробку передач, снижающую скорость до двух значений.
Коробка работает как механическая КПП в автомобиле. Переключение передач — сервоприводом (вместо ручного рычага). Переключатель выбирает, какой из двух выходных наборов шестерён зацепляется.
Начальное передаточное число 1.88:1 (фиксированное). Низкая передача — дополнительное 2.76:1 (итого ~5.2, ~570 RPM). Высокая — 1:1 (итого 1.88, ~1600 RPM). Подробнее при сборке.
Следующий параметр — RC-амортизаторы (длина 70 мм в вытянутом виде, ход 15 мм). Хотел больший вертикальный ход роликов — разместил их так, чтобы получить 22 мм. Плюс боogie-схема: пара колёс на подвижном рычаге может вращаться вокруг оси, добавляя вертикальный ход — плавнее езда и лучший контакт гусеницы.
Передний опорный ролик соединён с передним натяжным колесом (айдлером) для динамического натяжения гусеницы. Когда ролик поднимается, длина гусеницы уменьшается, натяжение ослабевает — айдлер под давится вперёд, натягивая гусеницу. Статическое натяжение регулируется болтом и дистанционной гайкой.
Сзади — ведущая звёздочка из трёх частей: втулка вала и левая/правая секции звёздочки на трёх болтах M3. Ключевой параметр — шаг (pitch), должен совпадать с шагом гусеницы. Шаг 11 мм, 20 зубьев — делительный диаметр ~69 мм. Размер звёздочки выбран так, чтобы гусеница не залезала на корпус.
Шаг 11 мм задан дизайном звена гусеницы. Цель — максимально компактное звено, соединяемое с соседним одним штифтом, достаточно прочное для 3D-печати. Избежал саппортов при печати.
Штифты связи звеньев — 2 мм. Одна сторона отверстия 2.1 мм (натяжка), другая — 2.4 мм (зазор для свободного вращения).
Зубья звёздочки вступают во внешние цилиндрические поверхности звена: радиус цилиндра звена 4.4 мм, звёздочки — 4.9 мм (зазор).
Корпус должен вмещать две коробки передач, электронику, аккумулятор. Итоговые габариты 547×397 мм — больше стола обычного принтера, поэтому крупные детали разделены на две секции (для стола 300 мм; для 220 мм — на 4 секции, также предоставлю).
Для сборки нужны болты/гайки M3, M4, резьбовые вставки, подшипники. Полный список ниже. 3D-модель и STL — на Cults3D и в браузере Onshape.
3D-печать
Печатал на Creality Ender-3 V3 Plus. Важно использовать Horizontal Expansion (в Creality Print — X-Y contour compensation). По умолчанию габариты и отверстия получаются меньше модели — проблемы при сборке.
Использовал –0.07 для X-Y contour compensation и +0.07 для X-Y hole compensation. Подбирайте тестовыми печатями под свой принтер.
Звенья гусеницы печатал с рафтом — малое контактное пятно с столом. Ender-3 V3 Plus (300×300 мм) справился с корпусом в две части — детали крупные, принтер на пределе, но качество отличное. Рекомендую для крупногабаритной и быстрой печати: CoreXZ, до 600 мм/с, жёсткий корпус. Спасибо Creality за предоставленный принтер. Магазины: USA | EU | Amazon.
Сборка RC-танка
Все детали напечатаны. Честно: печати очень много — несколько дней и несколько катушек филамента. Только звенья гусеницы: 214 шт., ~500 г, 30 часов. Корпус ~1 кг филамента (по 500 г на секцию, 12–18 ч каждая). Многие детали с саппортами — время на очистку.
Спецификация (механика)
| Компонент | Кол-во | Ссылки |
|---|---|---|
| RC-амортизаторы | 8 | Amazon | AliExpress |
| Подшипник 686 (6×13×5 мм) | 18 | Amazon | AliExpress |
| Подшипники 624 (4×13×5 мм) | 44 | Amazon | AliExpress |
| Подшипник 684 (4×9×4 мм) | 6 | Amazon | AliExpress |
| Резьбовой стержень M6 | 300 мм | Amazon | AliExpress |
| Гайки-прижимы M6 | 4 | Amazon | AliExpress |
| Резьбовые вставки M3 | ~20 | Amazon | AliExpress |
| Прижимные винты M3 | ~30 | Amazon | AliExpress |
| Болты/гайки M3, M4 | см. список | Amazon | AliExpress |
| Сварочный стержень 2 мм | ~12 м | Amazon | AliExpress |
Детальный список болтов/гаек в оригинале. Партнёрские ссылки.
Электроника — схема RC-танка
Мозг — ATmega2560.
| Компонент | Кол-во | Ссылки |
|---|---|---|
| DC-двигатель 895 — 12V 200W 3000RPM | 2 | Amazon | AliExpress |
| Драйвер BTS7960 | 2 | Amazon | AliExpress |
| Сервопривод | 1 | Amazon | AliExpress |
| ATmega2560 (Arduino Mega) | 1 | Amazon | AliExpress |
| 3S LiPo ≥3000 mAh | 1 | Amazon | AliExpress |
| Разъёмы LiPo (XT60) | 1 | Amazon | AliExpress |
| FlySky FS-i6X (передатчик + приёмник FS-iA6B) | 1 | Amazon | AliExpress |
| WS2812b адресная LED-лента | 1 м | Amazon | AliExpress |
| Стабилизатор LM350 | 1 | Amazon | AliExpress |
| Подстроечный резистор 5 кОм | 1 | Amazon | AliExpress |
| Клеммники | 4 | Amazon | AliExpress |
| Провода ~20 AWG | ~3 м | Amazon | AliExpress |
| Рocker switch | 1 | Amazon | AliExpress |
| Резисторы 1к, 2к, 240 Ом | по 1 | Amazon | AliExpress |
| Конденсаторы 0.1 мкФ, 1 мкФ, 400 мкФ | по 1 | Amazon | AliExpress |
Партнёрские ссылки.
Кастомная PCB
Для порядка спроектировал PCB, совместимую с ATmega2560 (надевается сверху). Заказал у PCBWay — загрузка Gerber, выбор параметров, разумная цена. Оставил дефолты, только цвет — синий. Gerber в сообществе проектов PCBWay (там же можно заказать).
Финальная сборка танка
Раздел в разработке.
Программирование — Arduino код
Код доступен для скачивания.
Обзор кода
Чтение IBus от передатчика:
IBus.loop();
ch0 = IBus.readChannel(0); // лево/право
ch1 = IBus.readChannel(1); // вперёд/назад
ch6 = IBus.readChannel(6); // переключение передач (серво)
ch7 = IBus.readChannel(7); // полицейский стробоскоп
ch8 = IBus.readChannel(8); // все белые LED
ch9 = IBus.readChannel(9); // левые/правые белые LED
Правый джойстик (ch0, ch1) — движение. Левый рокер (ch6) — серво переключения передач. Остальные рокеры — управление LED.
Преобразование в PWM 0–255:
steeringValue = map(ch0, 1000, 2000, -205, 205);
motorSpeed = map(ch1, 1000, 2000, -205, 205);
motorSpeed = abs(motorSpeed);
leftMotorSpeed = 50 + motorSpeed + steeringValue; // 50–255
rightMotorSpeed = 50 + motorSpeed - steeringValue;
leftMotorSpeed = constrain(leftMotorSpeed, 0, 255);
rightMotorSpeed = constrain(rightMotorSpeed, 0, 255);
if (leftMotorSpeed < 52) leftMotorSpeed = 0;
if (rightMotorSpeed < 52) rightMotorSpeed = 0;
Подача PWM на драйверы через analogWrite(). Логика движения (вперёд/назад/поворот на месте) — в коде ниже.
if (ch1 > 1510 && ch1 < 2000) { // вперёд
digitalWrite(M1_RPWM, 0); analogWrite(M1_LPWM, leftMotorSpeed);
digitalWrite(M2_RPWM, 0); analogWrite(M2_LPWM, rightMotorSpeed);
}
if (ch1 > 1000 && ch1 < 1490) { // назад
analogWrite(M1_RPWM, leftMotorSpeed); digitalWrite(M1_LPWM, 0);
analogWrite(M2_RPWM, rightMotorSpeed); digitalWrite(M2_LPWM, 0);
}
if (ch1 > 1490 && ch1 < 1510) { // мёртвая зона
if (leftMotorSpeed < 50 && rightMotorSpeed < 50) {
digitalWrite(M1_LPWM, 0); digitalWrite(M1_RPWM, 0);
digitalWrite(M2_LPWM, 0); digitalWrite(M2_RPWM, 0);
} else if (ch0 < 1490 || ch0 > 1510) { // поворот на месте
analogWrite(M1_RPWM, rightMotorSpeed); analogWrite(M1_LPWM, leftMotorSpeed);
analogWrite(M2_RPWM, leftMotorSpeed); analogWrite(M2_LPWM, rightMotorSpeed);
}
}
Серво переключения передач (подстройте углы под свой серво):
if (ch6 == 2000) myservo.write(140);
if (ch6 == 1000) myservo.write(40);
Управление светом: проверяем положение рокеров, зажигаем нужные LED индивидуально. Полицейский стробоскоп занял время, но получилось круто.
Тестирование 3D-печатаемого танка
После прошивки включаем. На дисплее пульта — напряжение LiPo, приёмника, передатчика.
Переключение передач в движении левым рокером работает плавно. 4 режима света: 5 белых LED с каждой стороны, все белые, все белые мигающие, полицейский стробоскоп. Танк ездит в любом режиме.
Примечание: LED питание от 5V LM350. Белый LED ~50–60 мА, суммарно ~1 А. LM350 тянет до 3 А, но нужен большой радиатор. На PCB разместил неудачно — не поставил нормальный радиатор, только мелкие от драйверов шаговых. Помогает немного, но при долгом «все белые» перегревается. На других режимах — нормально. Исправление: отдельный buck converter 8A от 12V на 5/6V для LED.
Надеюсь, понравилось. Буду апгрейдить танк: манипулятор, снегоуборщик и т.д. — следите за обновлениями.
Производственный процесс
- Механическая обработка: процессы, инструменты и применение
- Word Clock на Android Things — часы, говорящие на вашем языке в реальном времени
- Основные типы пружин автомобильной подвески: подробный обзор
- Сверлильно-фрезерные станки: принцип работы, виды и применение
- Мастерство управления датчиками и исполнительными механизмами на Raspberry Pi: акселерометр, сервопривод и потоко…
- Умный USB-коммутатор с Alexa: голосовое управление питанием USB-устройств
- Конвейерные системы: принцип работы, виды и ключевые преимущества
- Ключевые факторы стоимости ЧПУ‑обработки: что нужно знать
- Флюс-’артная сварка (FCAW): определение, применение, оборудование, плюсы и минусы
- Дуговая сварка: виды, принципы и области применения