Page 1 of 2 12 LastLast
Results 1 to 10 of 15

Thread: Dynamixel MX-12W with Arbotix-m dead zones

  1. Exclamation Dynamixel MX-12W with Arbotix-m dead zones

    I have done a lot of research but I have not been able to find any solutions to my problem. I have a new mx-12w dynamixel actuator and I am controlling it with the Arbotix-m Robocontroller. I am using the ax12.cpp and ax12.h provided by Arbotix in the Arduino IDE to control my mx-12w. I am also powering the Arbotix-m board with a 12V 1A SMPS. I believe this to be fine since the MX-12W stall current is .6 A.

    Now to the problem. I am unable to achieve certain positions with my MX-12W actuator. I spoke to a robotis tech and they said that the mx-12w should be able to achieve all positions 0~4095. For example there is a dead zone from positions 1~5. I can read the goal position and present position registers without a problem and everything looks right. Using a while loop to try to reach the desired positions with just result in an endless loop. Any suggestions would be awesome.

    Also I cannot use a USB2dynamixel and roboplus because I do not have a windows computer.

  2. #2
    Join Date
    Mar 2015
    Location
    Texas
    Posts
    342
    Images
    15
    Rep Power
    34

    Re: Dynamixel MX-12W with Arbotix-m dead zones

    What I'm gathering is you are running a loop that sets the goal position, reads the current position until it reaches the goal, then increment and set the next goal position? I've not used an MX-12W before but looking at the online manual I see it lists a resolution of 0.088 degrees and if you divide 360 degrees you'll get about 4090.9091 positions. I would suspect when reading the current position there may be a small margin of error that you might need to take into consideration.
    01001001001000000100110001101111011101100110010100 10000001010010011011110110001001101111011101000111 0011

    My Instagram
    My YouTube

  3. #3

    Re: Dynamixel MX-12W with Arbotix-m dead zones

    Might help if you posted a sample program that shows what you are trying to do.

  4. Re: Dynamixel MX-12W with Arbotix-m dead zones

    r3n33, there are actually positions 0-4095 so 360º/4096 is approximately .08789º per step. Im actually just checking to see if the motor is achieving every step, which it is not (the Dynamixel tech said that the mx-12w should be able to achieve every step between 0 and 4095).

  5. Re: Dynamixel MX-12W with Arbotix-m dead zones

    Kurt Eck.

    while(ax12GetRegister(1, 36, 2) != 1) // servo ID = 1; current position = register 36; 2 = read two bytes (low and high byte)
    SetPosition(1, 1); // servo ID = 1; goal position = 1

    Since the motor cannot achieve position 1 this will cause an infinite loop.
    Last edited by jacob.stone56; 10-26-2015 at 05:30 PM.

  6. #6

    Re: Dynamixel MX-12W with Arbotix-m dead zones

    If I get a chance I will try to play a little with my 1 MX-12W servo. Earlier I was trying it out to maybe move a Lidar Lite around, but the servo died within one day. Luckily Robotis repaired it and returned it to me after a month or was that two...
    But I have not done anything with it since then.

    If I were doing it, I would only set the servo position once as the SetPosition is setting the goal position.

    More like:
    Code:
    SetPosition(1, 1);
    while (GetPositon(1) != 1)
        ;
    I would also probably build in some escape mechanism...

    But assuming that does not make any differences, I would defer to someone else who has MX experience. All of my sstuff has been done with AX servo. If these were AX registers, I would say something like check the compliance margins... But with MX this is done with the PID ( with the different values...) and again hopefully someone else with MX servos can answer far better than I can.

  7. #7
    Join Date
    Sep 2010
    Location
    ಠ_ಠ
    Posts
    2,313
    Images
    27
    Rep Power
    278

    Re: Dynamixel MX-12W with Arbotix-m dead zones

    There will probably be some difficulty in reaching 0 and 4095 because of sensor error, gear train backlash, and possibly the servo control algorithm when not in continuous rotation or multi-turn modes. When it is in standard servo mode, 0 and 4095 are on opposite ends of the servo's range even though they are essentially the same position. If the horn travels clockwise from ~20 to 0 and overshoots 0 to <=4095, then the algorithm may freak out and do another full clockwise rotation to get back to 0. Not entirely sure the MX servo algorithm is this dumb, but a possible explanation for its hesitance to reach that goal position. Thinking the AX could be forced to go the long way around to reach the goal position if the torque is sufficiently low to manually turn the horn from one end of the deadzone to the other (0 to 1023, and vice-versa).
    Please pardon the pedantry... and the profanity... and the convoluted speech pattern...
    "You have failed me, Brain!"
    [git][mech][hack]
    gives free advice only on public threads

  8. Re: Dynamixel MX-12W with Arbotix-m dead zones

    KurtEck
    I will try out your recommendation to write to the register only once. If you would not mind testing out your MX-12W I would be more than grateful. Also what setup do you have when running your Dynamixel MX-12W (board, SMPS)?

  9. Re: Dynamixel MX-12W with Arbotix-m dead zones

    tician
    I have small dead zones located all throughout the 0-4095 range.

  10. #10
    Join Date
    Sep 2010
    Location
    ಠ_ಠ
    Posts
    2,313
    Images
    27
    Rep Power
    278

    Re: Dynamixel MX-12W with Arbotix-m dead zones

    Quote Originally Posted by jacob.stone56 View Post
    tician
    I have small dead zones located all throughout the 0-4095 range.
    Do the inaccessible positions appear only when trying to move fewer than ~5 ticks between positions, or do they always occur no matter how many ticks traversed to reach the goal position? e.g moving from 11 to 10 versus moving from 100 to 10.
    Please pardon the pedantry... and the profanity... and the convoluted speech pattern...
    "You have failed me, Brain!"
    [git][mech][hack]
    gives free advice only on public threads

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. PID Control for Dynamixel servos using Arbotix-M
    By navidahmeduom in forum Arbotix, Microcontrollers, Arduino
    Replies: 6
    Last Post: 05-20-2015, 10:15 AM
  2. Project Biped Robot with Arbotix + Dynamixel AX-12A
    By kanuto in forum Humanoids, Walkers & Crawlers
    Replies: 1
    Last Post: 11-09-2014, 04:58 PM
  3. troubleshooting a dynamixel.. Possible dead MX-28?
    By wthierry in forum DYNAMIXEL & Robot Actuators
    Replies: 10
    Last Post: 08-28-2014, 11:33 AM
  4. Question(s) Arbotix-M sketch for dynamixel AX-12A's
    By ABB in forum Software and Programming
    Replies: 2
    Last Post: 03-03-2014, 05:33 AM
  5. 18 Dynamixel Ax-12A with ArbotiX/Arduino - How to connect the dynamixel?
    By Snuuq in forum Arbotix, Microcontrollers, Arduino
    Replies: 20
    Last Post: 02-14-2014, 11:29 AM

Tags for this Thread

Posting Permissions

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