Trossen Force Sensor  Top Banner
Page 1 of 2 12 LastLast
Results 1 to 10 of 13

Thread: Mini Custom Octapod Project

  1. #1
    Join Date
    Feb 2008
    Location
    California
    Posts
    421
    Images
    33
    Rep Power
    33

    Mini Custom Octapod Project

    Hello All,

    I've been off the map for a while, but I've returned with a vengeance. Before I took a short break from my activities in robotics, I was starting to get really interested in 8-legged walking robots. I've designed two custom chassis that uses standard servos that I've dubbed OCTCHASSV000 (it's more of a part number ).

    But before I got into the whole 8-legged thing, I was really into the whole 6-legged walkers (hexapods). I've always wanted a miniature hexapod that can sit on my desk without taking up half the space of my desktop during software development.

    I also wanted something lightweight, something that possibly fit on top of my full size octapod, so maybe, with some more software development, the full-size can one day carry the mini size like spiders in nature...

    Since my departure, I've invested and bought myself a 3D printer. The main objective of the printer was to force me to learn mechanical CAD programs (any CAD, Solidworks, NX, AC Inventor, etc.) as well as giving me an opportunity to be able to print my own robot parts.

    I present to you guys, a custom mini octapod, based on micro servos, driven by ARC-32 (I've had this board for the longest time, and I finally found a use for it since I've always been a huge fan of the SSC-32, the ARC-32 never saw a day of use since SSC-32 + BB BAP28 was an awesome combo), powered by a 4S LiPo (the power density over volume and mass ratio was the best with 4S I found).

    Attached are some pics. Will be porting my TCIK9 engine into the mini octapod soon, which *should* be a breeze since the TCIK9 code was based off another Basic Micro chip, the BAP28.

    More pics and video soon, after the TCIK9 has been fully ported...

    Oh yeah, this thing has a 2-axis accelerometer attached, I've also added more "C" into the loop filter to slow it down. I've found that LM's accelerometer's default loop filter (I believe it's 500Hz) is too wide to be of any practical use for hexapods that require a clean tilt reading. I've tightened the loop filter up to 10Hz. Practically speaking, 1Hz loop bandwidth would work just as well...

    Click image for larger version. 

Name:	IMG_0470.jpg 
Views:	151 
Size:	102.9 KB 
ID:	4762Click image for larger version. 

Name:	IMG_0468.jpg 
Views:	128 
Size:	108.0 KB 
ID:	4761Click image for larger version. 

Name:	IMG_0467.jpg 
Views:	155 
Size:	113.9 KB 
ID:	4760Click image for larger version. 

Name:	IMG_0472.jpg 
Views:	108 
Size:	106.5 KB 
ID:	4763Click image for larger version. 

Name:	IMG_0474.jpg 
Views:	127 
Size:	106.8 KB 
ID:	4764
    ---
    Sleep? You don't need sleep...

    ---

  2. #2

    Re: Mini Custom Octapod Project

    Looks great,

    Should be easy to port over your Bap28/SSC-32 to Arc32. My assumption is that you will be using the SSC-32 to directly drive the servos. The code change was pretty straight forward when I did it for the Phoenix. Will be fun to watch this progress.

    Kurt

  3. #3
    Join Date
    Apr 2012
    Posts
    1,787
    Images
    25
    Rep Power
    58

    Re: Mini Custom Octapod Project

    The micro servos don't accept direct 4S voltage, right?
    Is the power density superior even after losses from the BEC?

  4. Trossen XBee  Thread  Banner
  5. #4
    Join Date
    Feb 2008
    Location
    California
    Posts
    421
    Images
    33
    Rep Power
    33

    Re: Mini Custom Octapod Project

    did you mean arc 32 and nit ssc 32? Yeah, there were some software porting that I have to do, mainly just pwm conversion to hservo's -30000 to 30000 rescaling...


    regarding the density, I'm hoping that the bec's efficiency will be somewhat be in the sane ballpark as if driven from a 2S source, so I can reduce the capacity of the cells and still mauntain the run time...

    When I get it up and running fully, I'm gonna attach my LiPo monitor to it and see when the undervolt alarm is triggered... It's currently strapped with a 1300mAH Capacity...


    The zip ties in the battery is very kludge, I have slotting to accomodate velcro loop straps but I ran out if the straps :P
    ---
    Sleep? You don't need sleep...

    ---

  6. #5

    Re: Mini Custom Octapod Project

    Yep mainly the conversion of the servo stuff, but also any assembly language stuff you may have. For example if you were using TimerA on BAP28 for timing code, this won't work as Arc32 does not have Timer A. You could either convert to use it's equivalent Timer B1. Or you could convert to using HSERVOTIME which is only documented in the Arc32 data sheet.

    Or you could program the whole thing in C/C++ on the Arc32. I did this earlier and built some libraries that give it Arduino(ish) support.

    Kurt

  7. #6
    Join Date
    Feb 2008
    Location
    California
    Posts
    421
    Images
    33
    Rep Power
    33

    Re: Mini Custom Octapod Project

    Hi Kurt,

    I finally got my port coded and added some conditional flags (ARC32_flag con 1) so I can branch my code, so that the code still can be backwardly compatible with the SSC-32.

    After fiddling with HSERVO, I finally figured it out. I wish Acidtech would do a formal update on the manual, since I was very confused between when to declare ENABLEHSERVO, ENABLEHSERVO2, HSERVO, or HSERVO2 (the HSERVO2 doesn't seem to work, the Basic Micro Studio's compiler complains about that syntax saying it's a duplicate)...

    here's a video of it running half speed (full speed was insane), I do miss the SSC-32 (it made servo control so much easier), but I do welcome the powerhouse of the ARC-32, it is so much faster...



    EDIT:

    I don't know if you can see, but if you look real close, the two front femur (far side in the video) are thicker than the rest. I found that the original femurs are too thin and it made the bot wiggle. So I test printed a pair of new femurs twice as thick as the original, twice the amount of fill (25% original to 50% latest), and it was super solid. I'm in the process of printing six more to complete the set, so the bot still may be a bit wiggly...

    I think next is using the on-board accelerometer to do some slope compensation. I just need to modify the code to now do the body tilt while spitting out (and capturing) the accelerometer data, and do a quick accelerometer v-out vs. angle and find a function. Then use the inverse of that function to compensate if the body of the bot ever senses tilt.

    Last edited by tom_chang79; 05-29-2013 at 03:08 AM.
    ---
    Sleep? You don't need sleep...

    ---

  8. #7
    Join Date
    Dec 2007
    Location
    Trossen Robotics
    Posts
    3,117
    Images
    933
    Rep Power
    109

    Re: Mini Custom Octapod Project

    Great project Tom! Good to see you back and around again.
    Andrew Alter
    Trossen Robotics
    Join the Robotic Combat Revolution @ Mech Warfare!

  9. #8

    Re: Mini Custom Octapod Project

    Looks good. Like the idea of simply printing up a new one!

    Yes the HServo documentation is a bit lacking... Also personally I wish that the values you passed in it were some real coordinate system (either us or angle...), instead of in clock ticks, such that the same values work on both a BAP28 and Arc32, but...

    If memory serves correctly, the Enablehservo... commands are not needed any more, it used to be used to tell the compiler to include the servo library when it linked, now it triggers off of the hservo command.

    As for missing the SSC-32. I agree nice board. But not hard to emulate it's functionality on the Arc32. Plus the Arc32 does have an added benifits, like not having the delays associated with having to output your commands over a serial link and pottentially have the data corrupted. Also if you use it with their (Basic Micro -> Orion Robotics) new servos, you have feedback capabilities and can query the servos for their actual position.

    Kurt

  10. #9
    Join Date
    Dec 2012
    Location
    Los Angeles, CA
    Posts
    611
    Images
    16
    Rep Power
    27

    Re: Mini Custom Octapod Project

    Looks great!

  11. #10
    Join Date
    Feb 2008
    Location
    California
    Posts
    421
    Images
    33
    Rep Power
    33

    Re: Mini Custom Octapod Project

    Thanks guys, I'm glad to be back!

    I've updated the femurs, thing runs like a champ now!

    I still need to clean up the code a bit, it's still calling out FACOS function and such and I might have to also check the servo's range too. My code spits out pulse value in mSec, so currently, I'm multiplying it by 20 to give me the 'step' value for HSERVO, with the assumption that -30000 is -90 degrees or 0 mSec and 30000 is 90 degrees or 3mSec...


    So with the latest Basic Studio, I no longer have to call out ENABLEHSERVO or ENABLEHSERVO2?

    Also need to build some custom bracket/mount for some IR sensors I have laying around for autonomous mode...

    And I still have 92 superbright LEDs too

    I hate my battery strap, so need to draw me up a custom battery tray as well, haven't timed the run time yet, but this 4S battery seem to do the trick...
    ---
    Sleep? You don't need sleep...

    ---

Thread Information

Users Browsing this Thread

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

Similar Threads

  1. make the OctaPod and take my money
    By hannemaster in forum Humanoids, Walkers & Crawlers
    Replies: 4
    Last Post: 07-31-2013, 03:53 AM
  2. Custom CNC Parts
    By MaltiK in forum Projects For Request and/or Sale
    Replies: 6
    Last Post: 02-12-2012, 10:36 AM
  3. custom airsoft gun design
    By iamscottym in forum Mech Warfare
    Replies: 11
    Last Post: 02-10-2011, 05:18 PM
  4. Custom RX-64 Brackets
    By Tyberius in forum Mechanics / Construction
    Replies: 6
    Last Post: 05-26-2010, 10:27 PM
  5. SRV-1 Custom USB Interface
    By middleton.s.a in forum Arbotix, Microcontrollers, Arduino
    Replies: 0
    Last Post: 03-01-2010, 02:22 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
  •