I see the tuning procedure here: https://docs.odriverobotics.com/control
On the first part where I keep increasing the vel_gain do I keep needing to send a vel_setpoint to it and test or is just motionless okay for this?
Do I need to have my robot on the floor for this to get full resistance of moving it, or can I have wheels up in the air, while tuning?
Use step and/or ramp commands.
You need accurate loads, so put the robot on the ground.
thank you! What are the step or ramp commands, just me sending increasing/decreasing velocity? or position? or current? I wish they would spell it out a little better in the tuning instructions, any chance we could also update the instructions on the website?
I did a search through the git code and I see there is a ramp command
Velocity setpoint ramping. Use velocity control mode, and set
controller.vel_ramp_enable
to true. This will rampcontroller.vel_setpoint
towardscontroller.vel_ramp_target
at a ramp rate ofcontroller.config.vel_ramp_rate
.
Okay I also see in the “getting started” page:
Ramped velocity control
Set
axis.controller.config.control_mode = CTRL_MODE_VELOCITY_CONTROL
.
Set the velocity ramp rate (acceleration):axis.controller.config.vel_ramp_rate = 2000
[counts/s^2]
Activate the ramped velocity mode:axis.controller.vel_ramp_enable = True
.
You can now control the velocity withaxis.controller.vel_ramp_target = 5000
[count/s].
It would be nice if someone could update the tuning and have it all in one spot
Yes, you just sending steps and ramps. Start in current mode, then do velocity mode, then position mode. Ramped velocity mode is something completely different.