What I am experianceing is very weird but I will try to explane it as best as I can.

I have a simple robot arm with 4 Degrees Of Freedom (DOF). This is not a robotics problem but thought it would be better to write what I am doing. I am using a Turnigy TGY-S901D servo motor at each DOF. Each motor has an encoder that you send a command (via RS-485).

So look what happened a few days ago. I plugged it in my computer and send a command to the base motor (first DOF) one time and it worked find. Then did the same thing to the second DOF, again everything was fine. I did this for all the motors (all the DOF).

Then tried to move the first DOF again but it moved slower and not to the correct position, it needed a few degrees more. Send the same command (after I put the motor to its origin position) and it moved even slower and was even more far from the end goal. After 3-4 commands, it ended up not being able to move at all. I can hear it trying to move but with no success.

The same thing happened, after, with all the other motors. With each new command they moved slower and with a bigger error.

After that, I left the robot arm for a few days. Today I tried again to use and the first DOF does not work at all but all the others acted they way I discribed above. The first time everything worked fine and every new command made them slower.

Important NOTE: In the past I was able to use it just fine. Never had this problem. This problem appeared last week for the first time.

It is like it gets tired. Does anybody know why this is happening?

  • 1
    \$\begingroup\$ Power supply failure or increased friction. \$\endgroup\$ – Andy aka Sep 14 '15 at 14:29
  • \$\begingroup\$ Do you have a diagram? Are you extending the devices out, increasing the torque requirements on each joint? What if you return everything to your initial conditions? \$\endgroup\$ – R Drast Sep 14 '15 at 15:19
  • \$\begingroup\$ I've seen this happen with power MOSFETs stressed above their current rating, but not to the point of total failure. They start to die and have a higher and higher internal resistance. Perhaps your servos are lifting too heavy of a load? \$\endgroup\$ – Los Frijoles Sep 14 '15 at 15:23
  • \$\begingroup\$ Are you using a battery to power the servos? \$\endgroup\$ – WhatRoughBeast Sep 14 '15 at 16:58
  • \$\begingroup\$ @Andyaka , Power supply works like fine, just as it always does. What can have increased the friction? An internal problem in the servo? But to all at the same time? \$\endgroup\$ – Jim Sep 16 '15 at 13:18

So I found the solution. There where 2 problems I found:

  • The encoders that where in the servo use a PID that is in the firmware. I accidentally changed the P, I and D values in a way that all movement of the motors where very inefficient and trembled internally the motor
  • Also the DOF 3 motor burned out... maybe because of the PID changes.

In any case, the PID are programmed correctly now and that one motor has been replaced. It is as good as new now.

  • \$\begingroup\$ I wonder, hoe would anybody guess :) \$\endgroup\$ – Gregory Kornblum Sep 24 '15 at 13:37
  • \$\begingroup\$ By the way, my guess was slipping encoders :) \$\endgroup\$ – Gregory Kornblum Sep 24 '15 at 13:44
  • 1
    \$\begingroup\$ So from the original question, "In the past I was able to use it just fine. Never had this problem. This problem appeared last week for the first time." - didn't think to mention the fact that you have altered the control gains in the servo firmware?? \$\endgroup\$ – Chuck Sep 24 '15 at 14:01
  • 1
    \$\begingroup\$ @Chuck the encoders have some functionality. Some are "move to absolute position" " move with velocity" "get relative position" and so on. Among these functionalities is to change the PID. It is not wrong to change the PID as long as you know what you are doing. I did not know that because most of my work with PID where in simulation environments. So I was experimenting. This is what the manufacture told me. Unfortunately I don't know everything about PID, I am still learning stuff. Next time, I will know. This is why I did not think of mentioning the PID change. \$\endgroup\$ – Jim Sep 24 '15 at 17:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.