Results 1 to 5 of 5

Thread: Multiple issues, Arbotix-M, pinxher/widowx + ROS

  1. #1
    noreng Guest

    Multiple issues, Arbotix-M, pinxher/widowx + ROS

    Hello,

    Having discovered the world of ROS only a month before, and the arduino half a year before that, I received my "Pincher" in February. My goal is (and was) to use it with ROS-enabled planning through "Moveit!".

    First I would like to go over what I've done, trying to find out if my first Arbotix-M is destroyed or just full of messed up programming.

    My first issues was with the Arbotix-M, as I was under the impression that a direct "plug & play" would be available. I worked a lot with the board, using wrong Arduino-versions, not understanding the ArmLink-concept and as time went by even starting to doubt that Arbotix-M would be compatible with ROS.

    Due to this, I bought a "Dynamixel2USB" - the large ones without power-supply. Once I got it, I again started to struggle with connections. Among the things I did was utilizing the Arbotix-M for power alone, connecting ground / power in every possible way to the servo-pins on the opposite end of the chain (with the Dynamixel2USB on the other). I achieved the red initial blink, but never anything more.

    Recently I received a WidowX arm, which came with another Arbotix-M. I tried a lot of different code and swapped the boards, but due to the that nothing happened in any case, I had no point of reference. Just today I realized that uploading to Arbotix-M not only was for standalone programs or manual-control, but also had to be done to enable it to bridge between ROS and servos.

    I know it seems retarded, but having absolutely no relevant experience, there is no intuitive thing to know that I would have to upload the correct programs to communicate with ROS.

    It was while doing this that I realized how easy communication could be verified through the blinks from the led, and it was watching these blinks that made me realize that I had a non-responsive Arbotix-M.

    Now I was pretty close to throwing it out the window, so you can imagine the relief when I actually made it move through command-line publishing to the respective joints.

    Strange thing is, that despite being responsive to publications through ROS, no response is give other than "-1" when querying the arbotix_terminal. "ls" returns only dots, and joint_state_publisher receives nothing from the arbotix_driver.

    So despite having received a little boost, I'm still nowhere near motion planning in "Moveit!". Rather than going on about the problems I encounter there, I'll wrap it up now and come back to it when the most basic stuff is covered:
    - What can I do to troubleshoot the issue of not being able to read from the servos?
    - I've pressed the reset-button on the non-responsive Arbotix-M, but I do not get a response trying to program it from arduino 1.0.6 (it works on the other board). Is there any way to troubleshoot this?
    - Connecting only to the regulated voltage output from the servo-pins on the Arbotix-M board, is it likely that the A-12 dynamixel-servos are fried?
    - Isn't it strange that neither of my machines have managed to get in "dialogue" with any single servo, running either dynamixel2USB or Arbotix-M terminal?
    - What is the correct upload for ROS-integration with Arbotix-M? (Which skteches)

  2. #2

    Re: Multiple issues, Arbotix-M, pinxher/widowx + ROS

    connecting ground / power in every possible way to the servo-pins on the opposite end of the chain
    The signal input is not tolerant to 12V input, and similarly, reverse polarity may very well fry a servo control board.
    If you didn't get it right, you may very well have damaged servos.

    there is no intuitive thing to know that I would have to upload the correct programs to communicate with ROS
    Anything new you do, you will have to learn. This is totally normal! (Don't ask me how I know that putting power on the signal line destroys servos :-)

    What can I do to troubleshoot the issue of not being able to read from the servos?
    Slim everything down to the simplest possible test.
    Use a single servo. Make sure you can talk to that servo through the USB2Dynamixel, and that it moves when you tell it to, and that you can read data back.
    Then, write a very small sketch, that just blinks the LED of the one servo. Upload this to the Arbotix board and make sure it works right.
    Then write a small sketch that reads the servo position this one servo, and prints it to the serial window in the Arduino IDE, then delays 500 ms and does it again. Upload it to the Arbotix board, and run it and connect with terminal.
    Run this sketch, and move the horn of the servo manually, and verify that values come back to the serial terminal.

    After this, you know that you have a system that works end-to-end. You can now add additional complexity, try the ROS interface or whatever. Just take it one minimal step at a time.

  3. #3

    Re: Multiple issues, Arbotix-M, pinxher/widowx + ROS

    If you are learning ROS and don't wish to do anything fancy with a servo controller, than I would suggest you get a USB2AX controller.

    It is more or less Plug and Play. You may need to do minor update to library to use it with Linux as it will create an object with the name like /dev/ttyACM0 whereas I believe the USB2Dynamixel (other probably simple) plug and play device, creates a device /dev/ttyUSB0
    Note: the 0 and the end may be different depending on other hardware...

    I am more setup to use a Teensy as my servo controller and have my own sketches to download my Teensy to emulate the servo controller. In particular it semi emulates the Arbotix-Pro which emulates the CM-730 controller...

    I second everything jwatte mentioned. so far I have been lucky and have not blue smoked one of these servos. But as mentioned want to be careful on what voltages you pass on signal pins.

    What I did a few years ago as I was learning to use my first Linux board (RPI), was to port some of my Arduino stuff there. I then ported the Bioloid library to linux and then started off with simple sketch to do what Jwatte mentioned. First can I talk to the logical controller? Can I tell servo to move. Then finally can I query stuff from the servo.

    And again I personally find it very useful to have some hardware debugging support. In particular I use a Saleae Logic Analyzer, which I use to see what messages I am receiving. Also check to see if I am generating proper packets.

    But again I started simple. That is I started off using the USB2AX.

  4. #4
    Join Date
    Dec 2012
    Location
    Los Angeles, CA
    Posts
    858
    Images
    25
    Rep Power
    88

    Re: Multiple issues, Arbotix-M, pinxher/widowx + ROS

    So just to get a base line clarification and to help:

    What is your experience level with coding?

    Arduino style micro controllers?

    ROS?

  5. #5

    Re: Multiple issues, Arbotix-M, pinxher/widowx + ROS

    In particular I use a Saleae Logic Analyzer
    Seconded! The Logic software is easy to use, and the devices are reasonably robust. Seeing what's actually on the serial lines is super helpful when debugging things.

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Question(s) ArbotiX-M robocontroller can communicate multiple robots using API zigbee protocol?
    By ddugi79 in forum Arbotix, Microcontrollers, Arduino
    Replies: 1
    Last Post: 10-01-2014, 09:39 AM
  2. Replies: 1
    Last Post: 08-15-2014, 07:03 PM
  3. Quick question on Arbotix Commander Version 2 - if anyone else had any issues
    By cdraptor in forum Humanoids, Walkers & Crawlers
    Replies: 8
    Last Post: 08-01-2013, 10:16 PM
  4. Question(s) Just Received WidowX Arm
    By mcintosh in forum Interbotix Robotic Arms
    Replies: 12
    Last Post: 12-19-2012, 11:46 PM
  5. Issues with Arbotix Programming- avrdude: stk500_getsync() error
    By Nitro in forum Software and Programming
    Replies: 4
    Last Post: 12-11-2012, 01:41 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
  •