View unanswered posts | View active topics It is currently Sun Nov 23, 2014 12:26 pm






Reply to topic  [ 4 posts ] 
Programming a Hexapod - NXT-Ant 
Author Message
Rookie
User avatar

Joined: Tue Aug 11, 2009 11:49 pm
Posts: 38
Location: Tasmania, the Land Down Under, the Land Downunder!
Post Programming a Hexapod - NXT-Ant
I built an NXT Hexapod six months or so ago which used NXT motors, one each for forward/reverse placement of legs on each side of the body and a third drove a network of cams to lift the legs. It worked in principle but was very slow due to the cam load. Some of this was contributed by the Technic shock absorbers which tried to keep the the foot on the ground resulting in a complex gear arrangement need to supply a large amount of axle twisting torque.

Now that I own the Mindsensor 8 Channel Servo Controller I decided last night to go back to the basic Hexapod design I developed previously but replace the cams by giving each leg a Servo Motor to lift it from the ground and back again. The overall design is pretty close to my original accepting the drive train is now simplified, with no heavy loading on motors and the complex cam system was no longer needed.

Image

The third NXT motor 'C' opens and closes the jaws, with a seventh Servo to lower and lift the jaws. The eighth Servo just moves the tail from left-to-right for aesthetics only.

So far I have NXT-Ant shaking it's hips, but not walking. My query is is they a simple efficient method to program a Hexapods gate.

LEGS:

1 - 2
3 - 4
5 - 6


As a starting point to move FORWARD, I lift legs 1, 4, 5 and move them forward using NXT motor 'A', and then I lower them. Next I lift legs 2, 3 6 and move them forward using NXT motor 'B', and then I lower them. This series of movements propels the Bot forward. Likewise to REVERSE, I follow the same series, accepting the legs are moved backwards instead. And to TURN, I move one side FORWARD and then the other side BACKWARDS.

To enable proper walking, is there a programming algorithm/guide that I should use to ensure speed and efficiency of movement?

_________________
regards

Sparra Mc


Image


Thu Aug 20, 2009 11:11 am
Profile WWW
Expert
User avatar

Joined: Tue Oct 14, 2008 7:16 pm
Posts: 171
Location: Investigating an unidentified ship sighted in Sector 31428
Post Re: Programming a Hexapod - NXT-Ant
Very cool; remindes me of the Replicators from Stargate SG1. :D

Perhaps you should begin by studying the motion of a real ant. Observe it's leg sequence and then try to replicate it. It seems to me that just moving the legs up, forward, and down one set at a time won't get it very far. While one set, that is the "back" set, is lifting, the other set must move backwards so that the bot is pushed forwards. If it helps, think about how people walk on two legs and then scale it up to six. Remeber, when walking, friction is your friend.

_________________
Captain, Head programmer, School of the Arts, Silverbots Robtics Team #2890
Code:
using namespace System;
using namespace Genius;
using namespace Personality;
public ref class Nerd : Geek, IAnserable
{
    Geek::Type brainMode = Geek::Type::Programmer;
}


Thu Aug 20, 2009 2:10 pm
Profile
Rookie
User avatar

Joined: Tue Aug 11, 2009 11:49 pm
Posts: 38
Location: Tasmania, the Land Down Under, the Land Downunder!
Post Re: Programming a Hexapod - NXT-Ant
I came across this Hexapod Ant on Youtube which if I could achieve 10% of it's movement I would be extremely pleased. I suggest if you are interested or intend building a hexapod take a look at this video clip: http://www.youtube.com/watch?v=0jyBiECoS3Q.

It's that good it's actually discouraging!

_________________
regards

Sparra Mc


Image


Fri Aug 21, 2009 1:16 am
Profile WWW
Expert
User avatar

Joined: Tue Oct 14, 2008 7:16 pm
Posts: 171
Location: Investigating an unidentified ship sighted in Sector 31428
Post Re: Programming a Hexapod - NXT-Ant
I have to say, that is beyond impressive. It looks like the key to getting it to walk is to have each leg powered independently with a servo, NXT motors probably aren't going to be responsive enough to get it walking efficiently. Then, rather than a simple 1-4-5 -> 2-3-6 motion, you sequence legs 1 and 2 and 3 and 4 while 5 and 6 are aimed more towards the back and create something of a pushing motion. Regardless, you will have to move one set of legs backwards while the other set are lifting and moving forwards.

_________________
Captain, Head programmer, School of the Arts, Silverbots Robtics Team #2890
Code:
using namespace System;
using namespace Genius;
using namespace Personality;
public ref class Nerd : Geek, IAnserable
{
    Geek::Type brainMode = Geek::Type::Programmer;
}


Fri Aug 21, 2009 2:18 pm
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 4 posts ] 

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  



Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software for PTF.