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

Thread: Kurt's PhantomX Reactor Robot Arm

  1. #1

    Kurt's PhantomX Reactor Robot Arm

    A box arrived yesterday at my Mailbox and my new PhantomX Reactor Robot Arm arrived

    So today I decided I should do a little playing around! As the product page mentioned, there is not any software for me to download, so I decided, I better come up with something
    The first thing I did was to modify my AX12 servo test program I used for the PhantomX Hex robot, such that I could confirm some of my assumptions before I burned up a servos. Things like that I needed to handle the dual servos for the Shoulders and Elbows where one servo was set to (1024-other servo). I also used the program to get an idea for the minimum and maximum values for each of the joints.

    (Side Note)Since today I was playing with my real Tractor and removing the Backhoe and installing the 3 point hitch and wood splitter, I thought it would be fun to make the Arm work like a Backhoe and use the Arbotix Commander 2 to control the Arm.

    With the left joystick controlling the base and dipper (elbow), and the right joystick controlling the boom(shoulder) and bucket curl (wrist). Currently I am using the RT/LT buttons to open and close the gripper. I have not installed the Wrist rotate yet. Once I do, I will probably use L1 and R6 buttons for this... After I finish getting this working well enough, I will probably then start playing around and add some IK code to allow you to simply move the joysticks and it moves the arm out/in UP/Down...

    This is a WIP, but in case anyone wishes to see it in the raw state, I have included the source file here. Once it gets a little farther along, will probably add it to my Github.

    Kurt
    Attached Files Attached Files

  2. #2

    Re: Kurt's PhantomX Reactor Robot Arm

    Quick Update: I believe I have the Backhoe code working a lot better now, still need to confirm that I am going the right directions with each of the joints and adjust.

    Since the first posting, I installed the Wrist Rotate option. Took me a little longer than I expected as I did not have a longer cable to wire up the rotate, so I soldered 2 80mms to each other and I think that is plenty long.

    I also changed how I am controlling the gripper as well as the wrist rotate. I use the L6 button in combination with the right joystick to control those two joints.

    Also to keep from cluttering up the posts with Zip files, I did go ahead and added this code to my Github account (github\kurte).

    Kurt

  3. Re: Kurt's PhantomX Reactor Robot Arm

    Hello Kirt

    First off thank you for the info.
    I also just got me PhantomX Reactor Robot Arm,ArbotiX Commander v2.0 and 2-XBee 1mW Communication Module.
    Trossen robotics has help me some.But there Arduino Code Example is a work in progress software.

    I have been able to load the LED test software in Arduim software.
    Can you please help we with info.
    1.What software you use?
    2. Step bye step loading of your software files on PhantomX Reactor Robot Arm.

    From one PhantomX Reactor Robot Arm owner to anothere It would be a great if you could help me.

    Thank you for what you do.
    Paul Boubel sr.
    youtube- kahn1701
    Emai-[email protected]

  4. #4

    Re: Kurt's PhantomX Reactor Robot Arm

    I am using Arduino 1.0.1 for all of my work.

    To work on Arduino 1.0.x you need to use their latest Arbotix stuff, which you can get a copy of off of:
    https://code.google.com/p/arbotix/source/checkout

    You need to follow the Arbotix Instructions on how to install this stuff for a build... Been awhile, so it would take me awhile to figure out how to do this again...

    But it involves copying some of the stuff you got from above into your Arduino Sketchbook directory. Some goes into:
    <your sketchbook>\hardware
    Other parts go into
    <your sketchbook>\Libraries

    Then if you copy my sketch into the appropriate folder: On mine I have it under:
    <Your Sketchbook>\Github\Phantom_Arm
    Then you simply open up the Arduino application, go to the Sketchbook menu item and then follow the menu items to the directory you put it in...

    I personally use an AVR ISP 2 Programmer to program my board, so I have that configured under Tools\Programmer and then I use the Upload using Programmer command to program my board. I do this for two reasons, 1) My board did not come with the bootloader on it and 2) You can not use FTDI and XBee at same time, so makes life easier...

    Also can I assume that the two XBees came paired and configured for 38400 baud rate? If not more steps involved. Also if not do you have an USB XBee adapter that you can plug into your PC?

    Hope this gets you going.

    Kurt

  5. Re: Kurt's PhantomX Reactor Robot Arm

    Kurt

    Thank you..Got it working .Look forware to more of your work..

  6. #6

    Re: Kurt's PhantomX Reactor Robot Arm

    Will hopefully have some more up soon. Currently in the process of integrating in some Arm IK code, which I probably introduced a lot of bugs into. In the end I hope to have at three ways to control it.
    1) My Backhoe method.
    2) IK mode using 3D Cartesian coordinates.
    3) Like 2, but 2D where you take the Base rotate out of it...

    Got most code in for 1) and 2) and (3 should simply be an update to 2...), but now I need to debug. I ran into the issue yesterday of how to debug this code as the Serial port on the Arm was taken up by the XBee who is talking to the XBee on the Remote which has no debug capabilities...

    I then came up with a method that is working for me. I hacked up one of my VB terminal programs, that I am using to debug other the PhantomX with the DIY remote and changed it to allow me to select 2 Serial ports. I then moved the XBee from the Arm to my USB XBee adapter and plugged in the FTDI cable to the Arm. The VB app is real simple:
    It takes whatever comes in from the first comm port (com1) and forwards it to the 2nd comm port (com2). It also takes whatever comes in from Com2 and displays it on the screen (adds it to my listbox that I am using to display).

    Edit: Note, this is only one way I could have connected this up. Could have instead moved XBee from Commander to PC USB and then plug the commander in to the USB, and left the robot wireless... or...

    So I now simply added Serial.print(...) lines to the Arm program which show up ... Now I just need to debug this stuff :lol:

    I can upload or add this VB app to my github if anyone else would find this useful.

    Kurt
    Last edited by KurtEck; 09-30-2012 at 10:01 AM.

  7. #7
    Join Date
    Jun 2011
    Location
    USA
    Posts
    547
    Images
    107
    Rep Power
    43

    Re: Kurt's PhantomX Reactor Robot Arm

    You have all the toys, clearly :P
    It takes whatever comes in from the first comm port (com1) and forwards it to the 2nd comm port (com2). It also takes whatever comes in from Com2 and displays it on the screen (adds it to my listbox that I am using to display).
    I did this for Numa with Python so I could use the Arbotix Commander and get back IR rangefinder info and overlay it on the camera feed... very satisfying trickery to implement

  8. #8

    Re: Kurt's PhantomX Reactor Robot Arm

    Quote Originally Posted by Gertlex View Post
    You have all the toys, clearly :P
    I do have a few :lol:

    Quote Originally Posted by Gertlex View Post
    I did this for Numa with Python so I could use the Arbotix Commander and get back IR rangefinder info and overlay it on the camera feed... very satisfying trickery to implement
    Yep - I do think somone should post something about doing this as it sure does make debugging the code a lot easier, as there is no obvious stuff to use to debug on these boards. There is only 1 LED, no buttons, the USARTs are used by the XBee and Servos and no sound... I now have little speakers, plugged into both of my Arbotix boards, which provide me some sound (would be safer with additional circuitry but I have not run into an issue yet), this trick provides for debug output...

    But now back to the topic at hand (or arm)...

    This evening I think I have the 3D (Cartesian) IK code working a lot better. I now can use the 2 Joysticks to directly update an X, Y, Z and Desired gripper angle, can open and close the gripper and rotate the wrist holding the L6 button and the right joystick. I added some code to detect obvious error conditions, like after you subtract the wrist off, if the coordinate we are after is more than the length of the Shoulder section plus the length of the elbow section, we can not succeed. I also have a warning condition that if I am within N logical units of this. The UI code then detects this and does not allow you to move the arm logically farther away. I may also need to extend this to maybe handle not allowing it to get too close to base.

    But next up I think I will do a variation of this that uses more of a cylindrical coordinate system, that is one Joystick axis will rotate the arm, another will choose the distance in what was the X/Z planes and the third will still choose Y. I am thinking I should be able to use most of the same code...

    If anyone is interested, I did update my github sources with my current stuff.

    KUrt

  9. #9

    Re: Kurt's PhantomX Reactor Robot Arm

    Quick update: I updated the code to now have the cylindrical coordinate system as well... Code updated on Github. Also uploaded VB debug app there as well.

    Kurt

  10. Re: Kurt's PhantomX Reactor Robot Arm

    Kurt

    First I want to say thanks for great work. The thread here is a fantastic resource for anybody like me who just received a phantomX, played a bit with NUKE, but now wants to start digging into programming custom behaviors.

    I am having problems getting the code to work on the phantomx, however. It compiles fine, but basically does nothing after I upload. I am trying to use the Commander2 to control the bot, but with no luck.

    My biggest issue so far is the one you mentioned, the lack of ability to get debug feedback during runtime. Are there any tools you have created besides the solution mentioned above that I could look into? Otherwise, are there any "scripted" leg motions I could run just to ensure that much at least works as it should? Currently, I get no leg movement whatsoever, even on startup. Thanks again

    -Phil
    Last edited by phil0stine; 10-05-2012 at 03:11 PM.

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. Question(s) PhantomX won't move
    By traxs in forum Robotics General Discussion
    Replies: 70
    Last Post: 05-21-2017, 07:33 AM
  2. Question(s) PhantomX with TurtleBot Arm
    By dyrge in forum Robotics General Discussion
    Replies: 3
    Last Post: 09-03-2012, 09:34 PM
  3. Question(s) Programming the PhantomX Robot Turret
    By dandbd in forum Arbotix, Microcontrollers, Arduino
    Replies: 53
    Last Post: 06-02-2012, 09:46 PM
  4. PhantomX AX-12 Quadruped Comprehensive Kit
    By bloftin in forum Humanoids, Walkers & Crawlers
    Replies: 1
    Last Post: 05-11-2012, 12:22 PM
  5. Project Anansi - a PhantomX hexapod
    By RobotAtlas in forum Project Showcase
    Replies: 11
    Last Post: 12-29-2010, 03:09 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
  •