Первые успехи
На этой неделе мне почти удалось правильно обработать поток данных о положении от симулятора.
Я решил полностью отказаться от ROS по нескольким причинам:
- ROS работает только на Linux.
- ROS требует запуска мастер-ноды, а с учетом времени на запуск симулятора всё вместе запускается довольно долго.
- ROS не поддерживает Java.
- ROS добавляет задержку на обработку сообщения, требует дополнительных вычислительных мощностей.
- В рамках текущей задачи (разработка контроллера для бипеда) ROS - лишняя зависимость.
Также было решено уйти от С++ и разрабатывать ПО на Java :
В C++ нет :
- встроенного управления памятью, что усложняет архитектуру ПО
- нет системы импорта модулей, что приводит к сложностям в сборке
- длительная компиляция
- для Windows только одна нормальная IDE - Visual Studio
- отсутвие поддержки рефакторинга для C++ в Visual Studio
- зависимость от платформы, зависимость библиотек от платформы
- и так далее
Для связи с симулятором Gazebo нашел небольшую библиотеку JavaGazebo из состава allwpilib.
Пока разбираюсь почему в визуализаторе руки робота направлены вверх, когда в симуяторе робот просто висит подвешенный за голову.
Признаю, разрабатываьть всё с нуля, создавать велосипеды не лучшее решение, но так интересней.
В ближайших планах :
- реализовать обратное обновление состояния от модели в симулятор (моменты сил в сочленениях)
- затем наконец приступить к разработке собственно контроллера управления движением
Комментариев нет:
Отправить комментарий