I don't know where to post this. So maybe here. Sorry if it's not the right place, and please point me to where I can ask this kind of question. So, anyway, I'm trying to learn to control dynamixel motr. And I know we can use velocity and acceleration profile to create trapezoidal profile.
1. Which value should I set for velocity profile? For example I read in the datasheet that at 12V the velocity is 30 rev/min. As I understand that I should set the value of velocity profile to 132 (30 divided to 0.229 rev/min = 132). Is that correct? What about the acceleration profile? I see nothing mention in the datasheet so I don't know what is the max acceleration for the motor. The datasheet say that, acceleration profile value will not exceed 50% of velocity. Does that mean I should set the acceleration value to 61 (50% of 132)?
2. Time calculation for trapezoidal profile is t1 = 64 * (Velocity profile/Acceleration profile), t2 = 64 * delta_position / Velocity profile. What is the units and values using in here? Is that the real velocity value (30 rev/min) or the integer value set before(132). If so, wouldn't t1 value would be in minute? same with acceleration? What about delta_position is that in integer value or rev value? Thank you for your help.
First of all, if you want to use Profiles, you need to set Profile Velocity(112) to a non-zero value because setting Profile Velocity to 0 mean Profile not used.
I'll assume that you have XH430-W350(30 RPM @ 12V).
Please note that 30RPM is no load speed where the DYNAMIXEL gives the maximum RPM, therefore, even if you enter any Velocity value that exceeds this no load speed will not effective due to the hardware limitation.
Below is what I would do to make a Trapezoidal Profile with XH430-W350.
1. Set Profile Velocity(112) to 130 (which is almost max RPM)
2. Set Profile Acceleration(108) to 30
3. Adjust Profile Acceleration by step of 10 to create desired speed.
In each Profile Acceleration(108) and Profile Velocity(112), there are tables for Time-based Profile.
This table is intended to help creating time based motion.
For example, if you want to create a motion that goes from position 0 to 4095 in 5.5 seconds, you have to set the Drive Mode(10) Bit 2 to 1, so that DYNAMIXEL uses Time-based Profile control.
Then, set Profile Velocity(112) to 5500 so that the whole motion takes 5.5 seconds to complete.
If you need to adjust accelerating / decelerating time, you can set Profile Acceleration(108) to any value you want, but the value cannot exceed 50% of the Profile Velocity(112) or else it'll create a triangle profile.
t1 = 64 * (Velocity profile/Acceleration profile), t2 = 64 * delta_position / Velocity profile is only applied in Velocity-based time calculation.
In case of Time-based profile, t1(Acceleration time) = Profile Acceleration(108) and t3(Total time) = Profile Velocity(112) are applied.