Results 1 to 3 of 3

Thread: Request WidowX Arm Position?

  1. #1
    LukeM Guest

    Request WidowX Arm Position?

    Hi there,

    I am using a WidowX arm with the provided InterbotixArmLinkSerial Arbotix code. I have written a MATLAB GUI that lets me control the arm (woohoo!), but I am curious if there is someway I can request the arm position using the existing serial communication protocol. Essentially, I want to put the arm to sleep, physically move the arm myself, grab all of the servo positions, and then program the position in. This would also be super useful for just general debugging. It would be fantastic to grab all of those servo positions within the existing armLink code.

    I am hoping to write my own kinematic solver using the arm in Backhoe mode.

    Thanks!
    Luke

  2. #2

    Re: Request WidowX Arm Position?

    We currently don’t have currently have a command to get back data from each servo. This is something we would like to implement, but haven’t gotten to it.


    If you wanted to implement it, I would try something like this:


    https://github.com/Interbotix/ArmLin...trol.h#L75-L78
    These lines look for the commands for returning analog data from the ArbotiX. So you could do something like




    else if(armlink.ext == 0x80){ //128
    //IK value response
    }
    //NEW CODE
    else if(armlink.ext == 0x81){ //129
    int gripperPosition = GetPosition(8);//this line gets the current position of the gripper(servo ID# 8)
    ReportAnalog(armlink.ext, gripperPosition); //report data with current extended value header
    }
    //END NEW CODE
    else if(armlink.ext >= 0xC8){ //200 and above
    // read analogs
    ReportAnalog(armlink.ext, analogRead(armlink.ext - 0xC8));
    }




    So basically the idea is that you’ll send 0x81 (129 in decimal) as your extended instruction, then look for the 5-byte packet, just like with the analog data. You’ll need to put the high byte and low byte together to get the actual position of the servo.

    You'll either need a different instruction for each joint, or you can one instruction, then read one of the data bytes to determine which servo to get data about.




    Please note that I haven’t tested this code, but if you have problems with it, let me know and I can look at it .

  3. Re: Request WidowX Arm Position?

    Has there been any progress on this? I'd like to be able to query arm positions as well.

    Ideally, commands could also stream arm positions between move instructions. Has anyone looked into this?

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Servo reading position and lock position CW
    By mkanon in forum DYNAMIXEL & Robot Actuators
    Replies: 5
    Last Post: 03-30-2013, 04:10 PM
  2. Question(s) Just Received WidowX Arm
    By mcintosh in forum Interbotix Robotic Arms
    Replies: 12
    Last Post: 12-19-2012, 11:46 PM
  3. Bluetooth IO solution request
    By mSparks in forum Arbotix, Microcontrollers, Arduino
    Replies: 14
    Last Post: 03-23-2011, 12:09 PM
  4. Off-Topic: Webcam recommendation request
    By Stobs in forum Mech Warfare
    Replies: 4
    Last Post: 09-10-2010, 11:14 PM
  5. A different kind of request for help on a cm-5
    By trey3670 in forum Humanoids, Walkers & Crawlers
    Replies: 23
    Last Post: 03-24-2008, 07:42 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
  •