servo/README.md

62 lines
5 KiB
Markdown
Raw Normal View History

2024-02-01 17:52:15 +03:00
# Сервопривод Робосборщика
2021-06-18 17:41:50 +00:00
2024-11-16 11:34:21 +03:00
![servo printed images](img/robossembler-servo-reducer-exploding-view-01.jpg)
![servo printed images](img/robossembler-servo-reducer-exploding-view-02.jpg)
2021-06-21 17:59:12 +00:00
2024-11-16 11:34:21 +03:00
Сервопривод на базе бесщёточного двигателя постоянного тока, адаптированный для производства с помощью 3D-печати. Разработан для управления 6-осевым роботом-манипулятором [Robossembler Arm](https://gitlab.com/robossembler/roboarm-diy-version), но может использоваться и как самостоятельное изделие в составе других систем. Предусматривается две конструкции статора двигателя: один для изготовления с помощью 3D-печати, другой с помощью листовой электротехнеской стали, нарезаемой на лазерном станке.
2021-06-21 17:59:12 +00:00
2024-05-03 19:23:08 +03:00
Ключевые особенности:
2021-06-21 17:59:12 +00:00
- Высокая мощность (допустимость редуктора)
- Высокая скорость (компенсация наличия редуктора)
- Хорошая динамика (разгон-торможение)
- Возможность электрического тормоза
2024-11-16 11:34:21 +03:00
В состав репозитория включены модели редукторов двух типов для использования в составе сервопривода. Исходные файлы редукторов представлены в директории `src/REDUCTOR`. В настоящее время основным является прециссирующий редуктор с соотношением 1:43.
2024-02-01 17:52:15 +03:00
Для управления используется универсальная плата-контроллер, которая может быть использована в вариантах исполнения двигателей разных диаметров (на данный момент 50 мм и 70 мм) со сходными характеристиками обмоток. Контроллер управляется через CAN-интерфейс.
2021-06-21 17:59:12 +00:00
2024-11-16 11:34:21 +03:00
## Внешний вид
![](img/servo-reducer-assembled.jpg)
2024-02-01 17:52:15 +03:00
## Описание директорий
2024-02-01 13:20:22 +00:00
2024-05-03 19:23:08 +03:00
- `brd` - KiCAD проект печатной платы контроллера
- `firmware` - исходный код программы для микроконтроллера, инструкция по сборке и загрузке прошивки в `firmware/embed`, тесты для проверки встроенного ПО в `firmware/test`
- `ros2_environment` - пакеты для управления мотором из ROS 2 с помощью ros2_control
- `src` - 3D-модели вариантов исполнения мотора: 50 мм, 70 мм, металлическая версия двигателя (не интегрирована с контроллером), также присутствуют две модели редукторов
2024-05-03 19:23:08 +03:00
- `tools` - вспомогательное оборудование для тестирования, испытаний
2024-02-01 13:20:22 +00:00
## Краткая инструкция по изготовлению
### Статор
2024-11-16 11:34:21 +03:00
Для удобства изготовления статоров разработан станок для намотки катушек индуктивности. Исходные файлы для производства станка и инструкции размещены в репозитории [gitlab.com/robossembler/cnc/motor-wire-winder](https://gitlab.com/robossembler/cnc/motor-wire-winder).
### Сборка
1. Вставить 28 магнитов в ротор
2. Установить подшипник в статор
3. Установить проставку в статор между подшипником и платой
4. Припаять плату к обмоткам (схема обмоток приведена ниже) и установить ее в статор
5. Накрыть плату крышкой
6. Установить фиксирующий шплинт
7. Надеть на сборку статора ротор
8. Подключить разъем программирования XP3 и прошить с помощью ST-Link-совместимого программатора
2024-02-01 17:52:15 +03:00
## Фото прототипов
2024-02-01 13:20:22 +00:00
2024-02-01 17:52:15 +03:00
Первый прототип изготовленного печатного мотора диаметром 50мм.
2024-02-01 13:20:22 +00:00
2024-05-03 19:23:08 +03:00
![servo printed](img/first-prototype-rbs-servo-50mm.png)
2024-11-16 11:34:21 +03:00
Современная версия привода диаметром 70мм.
2024-11-16 11:34:21 +03:00
![](img/70mm-prototype-02-inside.jpg)
2024-11-16 11:34:21 +03:00
## Схемы намотки
2024-11-16 11:34:21 +03:00
| Двигатель 70мм | Двигатель 50мм |
| ----------- | ----------- |
| ![coil winder schema](img/coil_winder_schema.jpg) | ![coil winder schema](img/coil_winder_schema_50mm.jpg) |