Задача
Необходимо доработать существующий фрагмент кода на C++ для управления серводвигателем. Сейчас двигатель работает лишь на 10% своей мощности. Нужно на основе документации настроить битность и ключевые параметры, чтобы добиться полной отдачи.
Конкретные требования
- Проверить и откорректировать функции: motor_controller_init, motor_set_target_position, motor_set_velocity, motor_set_acceleration, motor_set_deceleration, motor_set_positive_torque_limit, motor_set_negative_torque_limit, motor_quick_stop, motor_cancel_move, motor_check_max_torque, motor_wait_target_reached, motor_set_current_as_home, motor_enable, motor_disable, motor_execute_move, а также motor_profile_homing.
- Реализовать рабочий алгоритм хоуминга (motor_perform_homing / motor_profile_homing), которого сейчас нет.
- Устранить любые очевидные ошибки в коде, делающие управление неполноценным.
- Управление через C++ (не через кодсис и контроллер).
- Для тестирования готов предоставить удалённый доступ через AnyDesk.
Формат сдачи
На выходе - исправленный, закомментированный код на C++ с рабочими функциями управления и хоумингом. Также, при необходимости, краткое описание внесённых изменений.
Дополнительно
Имеется простая тестовая программа для проверки базового движения, её также можно использовать как основу.