Mx-64 position mode PID(KP) controller

Use the following template to help create your post:

  1. State the model of servo you are using.

  2. Add (or create) Tags to your post with the specific model of your product.

  3. Describe your control environment. This includes the controller or interface, computer and OS, and any power source you are using
    I am using Labview

  4. Specify the operating mode you are using, for applicable models.
    pwm mode

  5. Specify and link any manuals or resources you have used related to your inquiry.

  6. Include pictures if possible. This can help our members see how wires are connected, how hardware is installed, or to identify other possible issues.

My question,
I read the control algrithm of Mx-64 from emanual, and use wizard2.0 to test it in position mode

  1. I check the position KP gain is 850, but I dont know what is the delta (target-current) if delta*kp= pwm. the delta is target pos-current pos or target degree- current degree
  2. I using PWM mode and create my own KP controller, I compare my controller and dynamxiel position mode KP controller, dynamixel KP controller is more precisive and stable no vibration.
    in my understand, there are should be the same, so what is the differnece between my own KP controller and dynamxiel KP controller.
1 Like


The internal Process of P controller might be somewhat different from what you expect. It has its own specialized algorithm to process the PWM in the controller (The algorithm is not sharable in public.) That is why it acts differently from your controller.

It would be great to feedback other factors as well such as Present Position / Velocity using P controller.


thanks a lot!!

it is clear right now.

so your advice is if I using my own controller, it is better not only using KP, is it right?

1 Like

Make the P gain refer to multiple factors that DYNAMIXEL feedbacks.

Reference the folowing loop of DYNAMIXEL and see what it refers to in the loop, and then control the Goal PWM.

As menstioned, the behind of DYNAMIXEL PID controller has its own computing algorithm which is not in public as far as I know. Therefore, you have to make your own algorithm to neatly tune the Kp outside of your system.

Thanks, Yogurt_Man

just check in Labview,

  • each time I read the velocity from mx-64 using Labview function privided by dynamixel, it takes ~200 ms.

  • each time I send PWM, also takes ~200ms.

1. 200ms is too long for using outside controller?
2. why it takes so long? i only suppose it could take below 50ms?

  1. It will be nice to have users get more details on your setup(H/W, S/W)

    • e.g) I am using DYNAMIXEL SDK version *** for Labview library import. My hardware setup / wiring is as follows: something.image
  2. The speed of packet exchange rely on baudrates. Make sure to increase Baudrates(8) at data field (Control Table)

  3. Check the latency of your USB port. See USB Latency Setting


1 Like