Factor-Robotics / odrive_ros2_control

ODrive driver for ros2_control
Apache License 2.0
250 stars 82 forks source link

The difference in close loop control #10

Open robo-land opened 2 years ago

robo-land commented 2 years ago

When I try to use this repo to control the odrive motor, when I run the launch file, it will automatically enter in close loop control. However, the close loop control is different with directly setting the odrive to close loop control in terminal. The close loop control of this repo allows the motor to be rotated and will not turn back automatically. While the terminal close loop control does not allow the rotation of motor and have a huge resistance force. I am wondering why? How can I get the mode in terminal set with this repo?

borongyuan commented 2 years ago

Hi,

This may be a duplicate of #7 . The default configs use velocity controller, this may change odrive's control mode setting. You may need to set up a positon controller for position lock.

Another note is this driver will automatically read the motor's current state (pos, vel, torque) as the initial command when start or switch controllers. This is for safety reasons to avoid state jumps.

Thanks.