Results 1 to 3 of 3

Thread: Diagnosing a Dynamixel powered robot

  1. #1
    Join Date
    Sep 2010
    Rep Power

    Diagnosing a Dynamixel powered robot

    From 'Diagnosing a DARwIn-OP' for UGA Theatre students and 'RX-64 shutting down...'

    Do the servos work?
    • Yes.
      • Is the damage cosmetic or structural?
        • Cosmetic
          • Touch up? Replace?

        • Structural
          • Try mending/repairing if metal. Replace if plastic.

    • Kinda.
      • Is the LED flashing?
        • May be 'over-temperature' or 'overload' error.
          • Over-temperature error is usually caused by pushing the servo too hard and/or too long. Why? See 'basics of servos' below...
          • Overload error is caused by exceeding the internal time limit where the servo's microcontroller will attempt to continue driving the motor even though the horn is not moving to its goal position. You may be driving the servo to self-interference or the frames may have snagged on something (e.g. cables, its 'shell', clothing, etc.). If the horn never moves, or briefly moves only after a 'kick-start', before throwing an overload error then the motor may have been damaged.

      • Does the servo horn rotate by hand when it should not (especially in one direction)?
        • You may have sheared off the output spline. If so, you will need to order a replacement gear/bearing kit, but may be able to replace only the large output gear and its bearings (if any... AX have re-usable bushings; RX/EX/MX have replaceable ball bearings).

      • Does the entire bot suddenly go limp?
        • There may be a power issue.
          • Are you on battery power?
            • Is the battery charged?
            • How old is the battery (how badly abused)?
            • Is the battery connector snug?

          • Are you on external power?
            • Is the power supply adequate (12V/5A minimum)?
            • Is the power connector snug?

      • Do any servos suddenly stop responding and/or go limp, but not the entire bot?
        • Probably a damaged wire or loose connector.
          • Cable protection wraps can sometimes pull connectors out of servos.
          • Cables can easily snag on frames and/or get torn/sliced apart if not well routed.
          • Sometimes older cables can develop intermittent shorts, and sometimes connectors need to be reseated a few times to ensure a good electrical connection.

      • Still not responding?
        • Is servo 1 flaking out a bit, too?
          • The servo may have had its ID reset to '1' during a low voltage reset. See 'ID Reset' section below.

        • Does the servo flash its LED when first powered on?
          • Check if it is found by RoboPlus Dynamixel Manager when connected alone to a properly configured USB2Dynamixel and power supply.

        • Does it show up on the dynamixel buss (alone or with others)?
          • If not found by RoboPlus Dynamixel Manager during an exhaustive search when connected and powered alone, then it is probable that the communications ICs of the servo's control board have been damaged. Contact Reseller/Robotis for RMA; PCB replacement should be covered under warranty.

    • No.
      • Can the joint/servo be moved/rotated by hand when not powered?
        • Yes.
          • Does the servo click/crunch when moving?
            • Likely a gouged or broken tooth on one of the gears.

          • Did you check for damaged wires and/or loose connectors?
          • Does it show up on the dynamixel buss at all?

        • Kinda ('sticky') / No ('frozen').
          • Likely a borked motor (damaged brushes and/or shorted commutator).
            • Remove from service immediately to prevent further damage to the servo and/or damage to other servos on buss. Contact Reseller/Robotis for RMA; motor replacement rarely/never covered under warranty.

    Basics of Servos
    Pick up a heavy book or weight and hold it straight out from your body level with your shoulders. How long can you hold it there? The servos are the same way.

    The process of producing torque generates heat in the servo's motor, and if the heat is generated faster than it escapes the servo then the motor can become dangerously hot. To prevent damage to the motor and electronics, the controller within the servo will cut power to the motor if it experiences an over-temperature condition (also if there is an overload condition). When a servo overheats, simply leaving the torque disabled will not be enough to clear the over-temperature fault unless you force cool it (fans, CO2 dusters, etc.). If you do not use forced cooling, then you have to completely turn off power to the servos/buss and wait for the internals of the servo to cool off on their own.

    The usable/working torque of dynamixel servos is ~1/5 of the stall torque. If the loading is greater than that, then it will produce more heat. If the servo is stuffed in an insulating structure, then it will retain more heat. 1/5th is not guaranteed to not eventually cause an over-temperature shutdown, but it should be some time before the shutdown occurs.

    ID Reset
    When the servo experiences a brown-out/under-voltage event and reboots, it will briefly enter its bootloader mode and listen for special commands at a fixed baudrate to update its firmware. When firmware update is successfully completed, all servo register values are reset to the defaults of the firmware (ID is always reset to 1). Have not sniffed the dynamixel buss traffic during the firmware update process or poked around the AX-12 firmware to confirm the exact process by which the ID is reset or baudrate used. I can think of two plausible processes for the ID reset: 1) when the bootloader receives any traffic (even garbage) it resets its ID to 1 and awaits further data, if it is not valid firmware update data then the bootloader exits with ID still set at 1; and 2) when the bootloader receives any traffic it looks for valid firmware update data, if not valid then it considers it an aborted update and resets certain settings like ID to firmware defaults before exiting.
    Last edited by tician; 07-19-2015 at 10:33 AM.
    Please pardon the pedantry... and the profanity... and the convoluted speech pattern...
    "You have failed me, Brain!"
    gives free advice only on public threads

  2. #2

    Re: Diagnosing a Dynamixel powered robot

    I'm just saying:
    Why isn't this printed out and included in every box/order of Dynamixel servos?
    It should be.

  3. #3
    Join Date
    Dec 2012
    Los Angeles, CA
    Rep Power

    Re: Diagnosing a Dynamixel powered robot

    This is perfect. This is now a sticky thread and will forever be at the top of the forum.

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. [Urgent] Dynamixel AX-12A LED blinking only once when powered up
    By ishag in forum DYNAMIXEL & Robot Actuators
    Replies: 14
    Last Post: 01-25-2015, 12:01 AM
  2. 18 Servo High Speed Snake Robot Powered by Arduino Mega
    By jk_hop in forum Project Showcase
    Replies: 3
    Last Post: 08-04-2013, 01:19 PM
  3. Giskard: a low cost ROS powered robot
    By richardw347 in forum ROS - Robot Operating System
    Replies: 10
    Last Post: 07-13-2013, 08:10 AM
  4. Replies: 2
    Last Post: 10-25-2012, 04:25 PM
  5. Project Arduino powered humanoid robot
    By nostronus in forum Project Showcase
    Replies: 2
    Last Post: 02-16-2012, 04:52 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts