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

Thread: A new PhantomX Hexapod MK-II online

  1. A new PhantomX Hexapod MK-II online

    So I pulled the trigger and Got a new PhantomX Hexapod MK-II.

    Got the kit last week and it nicely included everything I needed and more.
    For people who have not seen the kit. The kit included all the tools I needed (not necessary but a nice value add) the newer ArbotiX, different lock-tight, and a extra number of small items that could get lost or miscounted.
    The only downside during shipping the top and bottom body parts where broken. Trossen robotics immediately responded and sent replacements (though because of snow I got it later then I would have liked, ie after the weekend)
    The instructions where quite good but may need updating for the ArbotiX-M (I had to rotate the ArbotiX-M because the barrel power plug was interfering with the battery this in turn moved the servo connector just out of reach (with installed battery) for the cable from the controller to the breakout block - lucky I have a few longer cables from another kit. You may want to look into that?
    Also there was some web site problems with bad links and and where to find the software/fw. Nothing big, but for a beginner that may really confuse them.

    So now it is all assembled and functional. The build was rather simple and some might find it quite tedious with all of the 100s of m2 nuts and bolts. (I had fun though - kinda relaxing) . . everything worked first go with test program (great idea btw)

    Flashed the NUKE fw . . . interesting, and ran ok, though kept getting its feet confused when making a big change in direction (I assume this is normal)
    Then Flashed the Phoenix fw which I am much more acquainted with and everything is moving much smoother and as expected. (though I have to get used to the commander)

    Now after the inital build. I am planning on changes upgrades and add ons.

    • First I have my sensor mast/turret with a sonar and IR range finder and all the code needed, Will probably just add this in the short run on the robot temporarily. To work with autonomous modes. I expect to stream commands like the commander remote from the sensor Arduino to the ArbotiX so I can be as lavish as I want with the sensor navigation code and not compete with the Phoenix code execution. this may be expanded later.
    • I have a streaming IP camera who's output can be processed by Roborealm or prossesing /w the openCV library. And have code in both that will recognize various objects. commands/data from this code could be sent over xbee from a PC and supply it the sensor Arduino. (a laser line is a nice and simple way to look at enviromental topography that is infrom of the camera)
    • I was surprised with how nicely balanced? the neutral default stance of the bot. (It did not seem to be taking the bot allot of effort to stand still - at lease in its default configuration) I was planing on adding a few springs/elastic's between the last two joints to decrease this even more - though making sure this is the same for each leg could be fun) this should allow a bit more payload and less energy used when just standing. (ie counter the weight of the sensor mast plus a bit more)
    • Also since this bot is effectually just a framework I was thinking of 3D printing some body panels. Snap on and off ideally. ( may be another challenge to keep it light but strong for the legs and stay in place when moving fast)
    • I was looking into modifying the Phoenix code to allow for more commands and even poses and know others have been looking into this.

    My goal is it be able to have it walk around autonomously. Simply at first then with some purpose with more sensors.

    That's a bit of a list for now. Some of these steps I have well on there way others just starting. If anyone has advice, information or suggestions feel free to say something.

  2. Re: A new PhantomX Hexapod MK-II online

    Currently working on making a few snap on 3d printed parts for .. well looks mainly.. reproduced a copy of one of the legs to work on in the app I am making the parts and made a few fitting prints to make sure everything is calibrated. Every thing find so far. I think I will make a few simple parts for the lower leg for now to see how it all pans out.. Will upload a photo is any are interested. .

    Have more sensors in the mail and realized I need to split off the power to my sensors (been working with them separately on my bench - it is the little things that show progress)

    One question, With the Phoenix fw (or even the nuke fw) how do you go about fine tuning the position/movement assuming you can? On the older bot you did this my fine tuning the angle of the servos at rest since "center" or rest position for them is relative and not the same for each servo. On the AX-12/18s etc they know where center is so no real need - or am I missing something ?

  3. #3
    Join Date
    Sep 2010
    Rep Power

    Re: A new PhantomX Hexapod MK-II online

    Not sure the pheonix firmware implements it, but it is really easy to add an int[] of offset values that is then added to the goal positions in the ''writePose()" equivalent function just before sending the values to the servos. It would be up to you to find good values for the offsets on each bot, although most AX-12/18 should be within 5 'ticks' of the correct goal position.

    From the CM9 modified BioloidController:
    /// Write the next pose out to servos using sync write.
    void BioloidController::writePose()
        // Were we paused or killed?
        if (bcState_ != RUNNING)
        int temp;
        int numParams = 2 + (poseSize_ * 3);   // 3 = id + GOAL_L + GOAL_H
        Dxl.setTxPacketId( BROADCAST_ID );
        Dxl.setTxPacketInstruction( INST_SYNC_WRITE );
        Dxl.setTxPacketLength( numParams );
        Dxl.setTxPacketParameter( 0, P_GOAL_POSITION_L );
        Dxl.setTxPacketParameter( 1, 2 );    // writing two bytes
        int iter;
        for(iter=0; iter<poseSize_; iter++)
            temp = (pose_[iter] >> BIOLOID_SHIFT) + offsets_[iter];
            if (temp < 0)
                temp = 0;
            else if (temp > resolutions_[iter])
                temp = resolutions_[iter];
            Dxl.setTxPacketParameter( 2 + 3*iter + 0, id_[iter] );
            Dxl.setTxPacketParameter( 2 + 3*iter + 1, (temp)&0xff );
            Dxl.setTxPacketParameter( 2 + 3*iter + 2, (temp>>8)&0xff );
    Please pardon the pedantry... and the profanity... and the convoluted speech pattern...
    "You have failed me, Brain!"
    gives free advice only on public threads

  4. #4

    Re: A new PhantomX Hexapod MK-II online

    For other types of servos, I have supported having offsets for the servos. Depending on which Servo Driver you use, may be done differently. Example for the SSC-32, I have a debug terminal command, that allow me to use the keyboard to modify the center point, and when you are happy with it I save the offsets back to the appropriate registers on the SSC-32. For the AX-12 servos, I don't think I implemented this as none of my servos appeared to need any offseting. If it did, I would keep an array in the AX-12 servo driver, that I would try to load the offsets from the EEPROM of the processor at startup time and then use them during the commit of each move. This is done in the output driver that uses the Arduino Servo Library.


  5. #5

    Re: A new PhantomX Hexapod MK-II online

    Thanks for your patience with us! I know there were some bumps along the way, and I'm still ironing some kinks out with the assembly guide and links, but your feedback is really helpful.

    I'm really looking forward to seeing what kind of 3d pieces you come up with (and what you end up making in general). If you put them up on shapeways, I'll be sure to order some

  6. Re: A new PhantomX Hexapod MK-II online

    Thanks for responding.
    @KurtEck I have used the SSC-32 and set the offsets on my original Phoenix that is why I was asking. I was not sure I was missing something with the change in hardware. I am still exploring your version of the code. Though the bot seems to be running fine and does not nessasarally NEED fine tuneing but always interested in how if I need to. One thin the single leg movement seems to be not working as expected (it does not lift - just moves along the ground). . . but I am more interested in getting the posing to work at this time .

    @Kgranat construction all went well, but as I pointed out some minor hiccups. Some cleanup to a otherwise very well written guide may help fend off some questions from people that are newer to this (like the confusing navigation). Though the change in controller instructions for the hex build and possibly a longer cable may be in order. But I am quite happy.

    Here is a early draft of the parts, just playing so far . . These slide over the m3 bolts on the lower leg as a guide and fit snugly so much so that I did not need to add any clips/attachments to hold it on. I think I overbuild it a bit so I am going to be cleaning some lines up and reducing fill (still rather light as it should be) Also I may use a variations of these to add attachment points. (got to try red also) . . the problem is always time.

    Click image for larger version. 

Name:	20140224_221831338_iOS.jpg 
Views:	353 
Size:	104.6 KB 
ID:	5397
    Click image for larger version. 

Name:	20140224_222033560_iOS.jpg 
Views:	383 
Size:	105.3 KB 
ID:	5398

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

    Re: A new PhantomX Hexapod MK-II online

    Really nice looking!

  8. Re: A new PhantomX Hexapod MK-II online

    I have no problem sharing these, Just ask and I will upload.

  9. Re: A new PhantomX Hexapod MK-II online

    New update, Things have been going slow. Life intrudes. But I was able to fix up the 3D printed shell a bit.
    Added slits for looks and reduction on weight. Also I put a inset and cable hole for a sensor.
    Click image for larger version. 

Name:	IMG_2883.jpg 
Views:	390 
Size:	113.4 KB 
ID:	5512

    Click image for larger version. 

Name:	IMG_2899.jpg 
Views:	350 
Size:	83.2 KB 
ID:	5513

    I got 6 short ranged IR proximity switches. I am going to use them as "whiskers" for each leg. With a 10 cm range I can have each leg feel something close and can act on it (easy to use and low overhead).

    Click image for larger version. 

Name:	IMG_2886.jpg 
Views:	338 
Size:	126.8 KB 
ID:	5514

    I also now have a handful of sonar sensors to put on a "head" for object detection and navigation.
    I am going to add all of these and the control program to a Arduino that will in turn give commands (like the commander) to the Bot. This should allow me to go crazy on the sensors and programing without effecting or being constrained by what is already on the ArbotiX. Working on a pass through for the commander also.

  10. #10

    Re: A new PhantomX Hexapod MK-II online

    Looks neat! I, too, like slits for both looks and weight :-)

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. News/Announcement PhantomX AX Hexapod Mark II Kit
    By etwx in forum Garage Sale
    Replies: 2
    Last Post: 04-08-2014, 09:31 PM
  2. PhantomX Hexapod Kit
    By SuperMiguel in forum Projects For Request and/or Sale
    Replies: 12
    Last Post: 12-29-2013, 10:36 PM
  3. Question(s) PhantomX Hexapod with AX-18
    By Jim Cheong in forum Humanoids, Walkers & Crawlers
    Replies: 0
    Last Post: 06-19-2013, 08:57 PM
  4. For learning: PhantomX Hexapod vs PhantomX Quadruped
    By Leugim in forum Humanoids, Walkers & Crawlers
    Replies: 4
    Last Post: 10-26-2012, 09:50 AM
  5. My PhantomX Hexapod
    By Gilrock in forum Humanoids, Walkers & Crawlers
    Replies: 0
    Last Post: 09-26-2012, 03:23 PM

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