Phoenix Hexapod Build: Avoiding Mistakes & Building a Better Bot

Think of this as a Supplement to the Phoenix Hexapod Tutorial on the Lynxmotion website to assist you in your build. Sorry, no pictures as these are reflections of what I learned (sometimes the hard way) after the build was completed.


This is a companion discussion topic for the original entry at https://community.robotshop.com/tutorials/show/phoenix-hexapod-build-avoiding-mistakes-building-a-better-bot-1

Phoenix 3DOF Hexapod Build Observations and Tips

Background:

I have many years of hobby building (RC, models, electronics, robots, simple Arduino code and projects, etc.) and have also built my own compound telescopes (12.5” f6 Classic Newtonian and 8” Classic Cassegrain and equatorial mounts). This experience probably influenced my build approach of my Phoenix 3DOF Hexapod project (all Lynxmotion and RobotShop parts and over 400 individual parts!) and my intentions here with this post is to share my experience to assist you with your build and possibly avoid some pitfalls and hopefully benefit from my approach. Apparently, many of these may be applied to other Hexapod Kits as well.

Must First Must Thank Others:

I would like to thank Coleman at RobotShop Customer Service and the Forum Community (special thanks to Scharette) who guided me through some of the more challenging aspects and problem diagnostics of the software and electronics. And, I should not forget to thank the genius who wrote the hexapod code! My Phoenix can do so much more than Bots costing more and do common functions so much more elegantly due to this code.

Mechanical Build:

  • Straighten the Multi-Purpose Brackets! These may need to be bent slightly to adjust the servo mounts at 90 degrees which will have a payoff when calibrating and aid final walking performance. It may seem trivial during the build but the payoff is tremendous and if you need to bend one after the build it will not be easy.
  • Consider Using Aluminum Servo Hubs: I would strongly suggest upgrading to the aluminum servo hubs as the recommended servos have great torque and the plastic ones are flimsy in comparison. Just thinking about what is going on with all 18 servos while the Bot is walking and the forces being applied should be cause enough to make the minor investment (vs. the total build cost it’s a no-brainer). Also, tightening machine screws into tapped aluminum hubs is far superior to self-tapping screws into plastic hubs for long term stability and reliability.
  • Center Servos before installing ! The Servo Calibration program can only adjust up to 5 degrees of error which is not much. You can avoid a lot of difficult Servo Hub repositioning during your Servo Calibration process by simply centering the Servo Horns as you build. This can be done 2 ways:
    • Manually: You can attach a Servo Horn (without screwing it on) and rotate it to the maximum distance clockwise and then counterclockwise (where the mechanism hits a stop) making note of what seems to be the center position (let’s call this 12:00) and then remove and install the Servo Hub so that one of the screw holes lines up at the 12:00 mark.
    • Actively: This is the easier and more accurate method but requires you to have access to a Servo Driver/Power Source (RC equipment with the Tx trim set to zero or a robotic servo driver). You would just need to power the servo and then attach a Servo Horn as explained above.
  • Threading Servo Leads Properly: Although not mentioned in the instructions and barely visible in the build illustrations, the leads from Horizontal Hip Servos 00, 04, 08, 16, 20 & 24 are actually threaded in between the paired Universal Servo Brackets. When this is done you have a better grouping and path of the 3 Servo Leads from each leg assembly which is preferable.
  • Use Zip Ties for Esthetics and Safety: Make sure that you use small Zip Ties to loosely bundle the groups of 3 Servo Leads during the build to keep groups of 3 together for SSC-32/U installation as well and managing the required lengths and paths that the leads take to allow for non-restricted movement of the legs (in all directions) and prevent binding which will cause issues later on. One Zip Tie to secure each “Knee” Servo’s lead onto their adjacent Femurs is a must (no sag on the lead and avoidance of 6 potential areas to “snag”). When you are finished with your build and the Bot walks unencumbered you can tighten these Zip Ties more snug and cut the excess tie off (careful not to cut a Servo Lead in the process) but DO NOT OVERTIGHTEN! Note: You can “hide” and protect the colorful servo leads by using Black Braided Split Sleeve Self Closing Wire Wrap (more to come in Finishing Touches)
  • Clarification on “Reverse” Leg Builds: When building the 3 “reversed” legs for the opposite side of the bot the reversing of the legs build orientation is quite intuitive on the Tibias but the pairs of Universal Servo Brackets also must be reversed and this is not as intuitive or simple to visualize. I recommend building an entire Left and Right Leg Assembly first, reviewing the differences, making the necessary adjustments and then proceeding to build 2 more of each.
  • Simpler Way to Assemble Top & Bottom Body Frame Plates: There is no real instructions for attaching the 6 Legs in between the Top and Bottom Body Plates. I found that starting with the top plate and securing all of the Hip Servo Horns first then allowed the bottom plate to be more easily added by aligning the 6 Bearings into their corresponding holes before screwing the bottom plate into place. Trying to do this without anchoring them first is like “herding cats”.
  • Stop the ON/OFF Switch from Turning: If you are using the RobotShop Battery Harness with Toggle Switch (or a standard Toggle ON/OFF Switch) there are 2 holes already cut into the Top Body Plate for this purpose, you may want to drill a small auxiliary hole at the 12:00 position of your “ON” setting (on the hole you choose to use) to allow the Toggle Switches’ mounting plate’s tab to sit within which prevents the switch body from rotating. At first I did not do this and the Toggle Switch kept moving regardless of how tight I torqued down the retaining nut. After I drilled the hole, using a small drill bit and a Dremel, this was corrected.

Electronics & Servo Calibration:

  • Better Servo ID Method: Ignore the letter identification references (i.e. RRH, RMH, LRK, LMV, etc.) and opt for only the 00 – 26 numbered terminals on the SSC-32/U Servo Controller Board. This is much simpler to follow.
  • Number the Servos: Physically number the servos with blue tape or stickers following the Build Directions (see Step 12, Figure 12 for proper number assignments). I also strongly suggest labeling the front of the Bot “FRONT” as it is very symmetrical and will keep you oriented.
  • Bundle Servo Leads in Threes: Bundle the 3 Servo Leads from each leg assembly in advance of attaching them to the SSC-32/U Board making the process of attaching 18 Servos simpler with less chance of connection errors.
  • Add Leads to SSC-32U Prior to Servo Plugs: Attach the power and jumper leads that will be attached later to the BotBoarduino before adding the Servos as it will be more difficult to do this after the 18 Servos are attached as the board becomes crowded.
  • Verify Servo ID as You Populate SSC-32U: As you populate each SSC-32/U Terminal with the corresponding Numbered Servo’s Plug you can verify you have the correct Servo Plug by testing the Servo with a power source or any spare RC or Robotic equipment you have handy. It is much simpler to identify an error now than when all 18 Servos are attached and you are looking at a jumble of 54 wires (not to mention the difficulty of removing and then switching Lead positions).
  • The Correct Calibration Program Makes All the Difference: Apparently, there are 3 Calibration Programs which have been referred to in the Build Instructions through time. These are: “Hexapod Calibration”, “SSC-32 Servo Sequencer” and “LynxTerm”. This is kind of a Goldilocks thing: Hexapod Calibration is too weak (apparently no longer supported but can be found), the SSC-32 Servo Sequencer is great but way too powerful for Calibration and LynxTerm is just right.
  • Steps for Servo Calibration: Make sure you follow these steps after attaching the SSC-32/U to your PC (with Baud set at 38400 and the VL Jumper is set on USB). NOTE when the Bot is completed the VL Jumper must be set from USB to EXT and you will see more LEDs light up). Then follow this procedure for Calibration:
  • Download, open and install LynxTerm.
  • Connect your SSC-32/U Board (when recognized, select correct COM Port and Baud)
  • Click “All 1500” to move all the Servos to their respective origin points. You can adjust individual Servos using the Offset Sliders should any not be in alignment.
  • Click ”Reg” to get you to the window with the list of the individual Servos (numbers correspond to those numbers on the SSC-32/U Terminals and your Servo ID Labels). Note: Any adjustment greater than +/- 5 degrees will require a mechanical adjustment of the Servo Horn for that Servo and usually only requires the one Servo Horn Attachment Screw be Removed (all except the Horizontal Leg Servos).
  • Adjust each Servo Offset one at a time and take your time making the adjustments as accurate as possible. You should only need to do this once. Your time invested here will be rewarded in Bot performance later.
  • Click “Read” and you will the columns “Offset” and “Width” auto-populate
  • Once you are finished you MUST: Check “Global” and “Initial Pulse Offset” and then Click “Write”.
  • To confirm that you have saved your Offset Adjustments just Click “Read”
  • NOTE: DO NOT EXIT if you have not confirmed that your Offset Adjustments have been Written/Saved or you will lose your work.
  • Achieving the Best Mechanical Vantage While Calibrating: If you have already attached a Battery, PS2 Receiver or anything else to the bottom of the Bot remove it for the Calibration Process (which is only required once). Rather than a 100 CD-ROM or DVD Disc Spindle use the actual case so that you have a flat surface which is parallel to your working/table surface. This will impact the accuracy of the Vertical Hip Servos (Nos. 01, 05, 09, 17, 21, & 25) which need to have their corresponding Femurs adjusted parallel to the Ground (or your working surface) which is the goal of these Offset Adjustments…
  • Use a Straightedge When Calibrating Hip Servos: When Calibrating the Horizontal Hip Servos (Nos. 00, 04, 08, 16, 20 & 24) you are using the line created by the Servo Horn Screws on the Bot’s Top Frame Plate as a reference. Using a straight edge (ruler, carpenter’s square blade, etc.) lined up above the screw heads allows for a great visual reference to determine that the Femurs are parallel (as opposed to in line) with the screw heads which is the goal of these specific Offset Adjustments.
  • Use a Carpenter’s Square When Calibrating Knee Servos: Calibration of “Knee” Servo Adjustments (Nos. 02, 06, 10, 18, 22 & 26) the legs need to be perpendicular to the ground. These adjustments are much more easily made when you use a carpenter’s square sitting on a table (or your work space). Lining up the blade portion of the Square with the center of the “Knee” Servo Hubs allows for a much more visible, easier and accurate adjustment reference point for moving the tips of each leg at the 6:00 position under each Knee Servo Hub Center which is the goal of these Offset Adjustments.
2 Likes