Библиотека для управления двигателями Feetech с Linux. Разработана специально для робособаки RDS-2P. Проект включает в себя форк репозитория для C++ и Python библиотеку, основанную на C++ библиотеке (для повышенной скорости и минимизации кода).
Основной способ сборки библиотеки (C++ и Python) - использование скрипта ./build.sh.
Перед сборкой убедитесь, что у вас установлены необходимые зависимости:
- Компилятор C++ (например, g++)
- CMake (версии 3.10 или выше)
- Python 3 и
python3-venv libstdc++-dev(для компиляции C++ части)
Скрипт build.sh поддерживает следующие опции:
- Без аргументов: Собрать только C++ библиотеку (
libSCServo.a). --python: Собрать C++ библиотеку и Python пакет.
Примеры использования build.sh:
# Собрать только C++ библиотеку
./build.sh
# Собрать C++ библиотеку и Python пакет
./build.sh --pythonПри сборке с опцией --python, скрипт выполнит дополнительные шаги:
- Настроит и активирует виртуальное окружение Python (
.dev-venv/) в директорииpython/. - Установит необходимые зависимости Python из
requirements.txt. - Соберет Python пакет (
.whl) в директорииpython/dist/. - Сгенерирует заглушки (
.pyi) для Python модуля. - Пересоберет Python пакет, включив сгенерированные заглушки.
Результаты сборки C++ библиотеки будут находиться в директории build/. Результаты сборки Python пакета будут находиться в python/dist/.
После успешной сборки Python пакета с помощью ./build.sh --python, вы можете установить его в ваше окружение (например, в активное виртуальное окружение):
pip install ./python/dist/*.whlПримеры использования библиотеки на C++ находятся в директории examples/. Для сборки и запуска конкретного примера следуйте инструкциям в его поддиректории или общим инструкциям по сборке примеров с использованием CMake.
Пример сборки и запуска WritePos:
cd examples/SCSCL/WritePos
mkdir build && cd build
cmake ..
make
sudo ./WritePos /dev/ttyUSB0 # Укажите правильный портПримеры использования Python пакета находятся в директории python/ftservo/examples/. Для запуска примера sync_write_pos_example.py сначала убедитесь, что Python пакет установлен (см. раздел "Использование Python пакета"), а затем выполните:
python python/ftservo/examples/sync_write_pos_example.py <serial_port>Замените <serial_port> на фактический путь к вашему последовательному порту (например, /dev/ttyUSB0).
Данный проект распространяется под лицензией MIT. Подробнее см. файл LICENSE.