Introducing myself - another Hexapoder

Hi All,
I would like to introduce me self.
My name is Raviv and i am a hexapodoholic.
i have been fascinated by hexapods for as long as i can remember and always wanted to build one.
I’ve been flying RC planes (mainly jets) for more than 10 years so i am quite familiar with servo connections, plugs, wires etc.
As for my electronics abilities - i am an RF engineer that can be found , for most of his time, in front of a computer designing boards and running simulations, or in the lab trying to understand why real life doesn’t correspond with his simulation results.
i am capable of programing mainly in C but as this is not my everyday occupation, i mainly learn as i go.
Have some experience with solid-works and used it to design some of my … well… more ambitious project.

so… back to hexapods - i decided to build one and started learning the subject, but although barely scratched the surface, i found myself puzzling with more questions than i originally started.

I hope i would be able to present some difficult and challenging questions to all of you that might get your attention, or at least to satisfy your need/will to help a fellow Hexapoder.

Would gladly have any advice and recommendations and hope this would turn out to be an open discussion on the how-to’s and the where-about’s of this intriguing subject.

And now, as it was bound to happen, some questions -
As i said, although willing to learn new program language, i feel most comfortable with C.
briefing through the forum, i saw that the main code (which called PEP, if i am not mistaken) is written in a language i am unfamiliar with.
is this PEP code open? can i download it and study it?
is there any tutorial on the how-to’s (coding, registers etc.) for this code?

what are your recommendations for a beginner’s platform?
should i go with the phoenix platform or should i build my DIY platform?

as i understand, there is an extensive use of the SSC-32, should i go with this one or is there anything else better suited for the a commoner hexapoder like me?

my final goal is to be able to run this hexapod as an autonomous system running on a high speed processor (what?? linux on intel ATOM??), can you share your thought about this one?

well… i have a lot more questions, but in order not to be of a burden, ill leave it to it and hopefully this would turn into an open discussion with many opinions and ideas .

Thanks a lot.
Raviv.

Wellcome !
The SSC-32 is good, and TONs of examples here on the forum

… and i am a noob allso !
nice to not be allone here in this guruforum…

Hi PappaNiklas,
thats for the reply.
reading though the various forums, i guess ill go with the SSC-32.

just wondering, is there some kind of a hexapod software that can link (through serial) with the SSC-32 to give a visual or interactive approach with the hexapod?
this way, one can truly understand the gait’s dynamic and will be able to develop a true fluent gait with some sort of a dynamic control.

can i ran the guru’s code on my laptop connected to the SSC-32 to simulate the code?
if so, with what SW?

well, as i said, more questions as i go, some would be pretty trivial and (maybe) some wont.

Thanks for the help.

Raviv.

You could also go with the ARC-32 robotics servo controller which will replace the SSC-32,botboard and AtomPro28 module all in one board. It will save you about $25 bucks and is more powerfull than a standard AtomPro28 module. If you are going with the Phoenix chassis you are good to go. The BasicMicro Studio includes a library project with the entire Phoenix code for the ARC-32 all ready to go and there are several users here that have done projects for the Phoenix on the Arc-32. You can buy the ARC-32 direct from Lynxmotion as well so you don’t have to buy parts from two different places.

lynxmotion.com/p-740-arc-32- … oller.aspx

Hi Acidtech
Thanks for the advice.

The ARC-32 sounds like the easy way to go that will enable one to go ahead and start programming its own code or use one of the available (great) codes for the IK.

what kind of a processor does the ARC-32 have?

Raviv.

Reading through the forum, i have some more clarification questions that i hope will get me on the right path -

starting with some coding questions:

  1. As i understand, the SSC-32 is pretty “dumb” module that gets the angle of each servo by serial communication (from a higher level processor) and translate it to an adequate PWM signal for each servo.
    so, in theory, it would be possible to connect the SSC-32 to the serial port of a computer and use it as the “brains” that calculates the IK and sequenced gait. true?

  2. if so, and looking further into the (probably far) future, for starters - there is no need for on-board processor, just connect your SSC-32 to your serial port and fire up those bits, true?

  3. if no.1 and 2 are correct, what kind of calculation code can i use?
    would zenta’s (magnificent) code would work?
    how can i ran the code, or any other calculating SW on my comp and have it send the information to the SSC-32.
    can you please recommend a way to power the hexapod with a comp instead of an onboard processor?
    in the future, the plan is to have an on board Intel ATOM and its MB to run the calculation, and some other SW (more to come).

some mechanical questions:

  1. is there an ideal length (or ratio between) for each part of the leg (tibia, femur est)?
  2. as i am quite familiar with servo power and moment calculation, what is the recommended margin for each part ? is there any redundancy or is it just “connect and observe” ?

as time progress, more questions comes to mind…

Thank you very much, for your help, imagination, and inspiration.

Raviv.

The SSC32 is as smart as the ARC32 but without the built-in servocontroller (it uses the BB2) … but it isn’t “smart”, it’s up to you to be smart
And both of them lack raw brainpower
You can of curse connect them to something more brained, but it is no need for your first projects … I think. I am going to do it to, not for the need of more brain, but for the need of more threads, I’ll put the “controllthread” in my ARMmite and let it control the ARC32 over a serial line, where I’ll have my “walkthread”
If you are going to use The Guru Code there is no need for more brainpower, both of them have enough
If you are calculating somewhere else just invent your own controllset and send over the data, you are in control over both sides !
This forum is quite dedicated to forums.basicmicro.net/ and they use Hitachi processors … and Intel atom is very bulky and powerhungry, at least compared to Hitachi
The Ideal length depends very much on your servos, as long legs certainly gives you speed and move ability, but it demands strong, fast and durable servos

EDIT
Improved my spelling :blush:

It sounds like you have a pretty good idea of how this works. I will go into some details as to why the SSC-32 is far from a dumb module.

The average run of the mill servo controller is a dumb module. You tell it to generate the pulses to make the servo move to a certain position and it does so. There is no speed control. It just moves as fast as it can. For example you would send #0 P1500, to position channel 0 to position 1500. If you wanted to move a servo slowly, you would have to send commands like this…
#0 P1500 pause 30mS
#0 P1510 pause 30mS
#0 P1520 pause 30mS
etc.
#0 P2000 pause 30mS

The result is the servo now moves slowly. But think about doing this for 18 or more channels. Now what if one servo needs to move faster than another. All of this overhead is on the computer sending data to the dumb module.

Now enter the SSC-32. You can group the moves so as many channels as you want to begin and end the move at the same time.
#0 P1500 #1 P1600 #2 P1450 T2000

The T2000 means the move will take 2 seconds. All servos will move simultaneously. It can still be very complex to make a hexapod walk, but without the advanced functionality of the SSC-32 it would be practically impossible.

There are more aspects of this control method that I have not gone into, but suffice it to say, the SSC-32 is far from a dumb module. :wink:

First things first - sorry if it came out wrong, i was surly didn’t mean to imply that the SSC-32 is dumb.
just that, on its own, it wouldn’t be able to produce a walk sequence and would need some sort of sequencer for it.

furthermore, i am unaware of the SSC-32 full capabilities and i am quite sure it is a great module that would probably find its way to my project.
although thought about try building my own servo controller, it would be a true “dumb” module without any timing aspects and many other useful things that can be found in the SSC-32.

guess that does it, i will order the SSC-32 that will mark the beginning of this amazing journey.
but first, i have to understand how to run the code on my comp while connected to the SSC-32.

Had a nice chat with a close friend of mine that earn his living from programing multithred systems in .NET and CSHARP.
his recommendations were as frustrating as they were eye opening at once.
would sure love to have any advice possible to continue arranging all the puzzle’s bits and pieces that starting to take shape but not as close to anything feasible just yet.

Raviv.