Shop OBEX P1 Docs P2 Docs Learn Events
Hexapod driven propeller — Parallax Forums

Hexapod driven propeller

RambomanRamboman Posts: 101
edited 2009-11-03 11:19 in Robotics
A new challenge for me...
I decided to try an hexapod driven propeller.
Hardware is coming from MicroMagic (UK) equiped with 20 servos (legs and head).
Brain is a PropStick USB propeller with 4K7 resistances on all the 28 used I/O pins
Control with a Spektrum DX5e radio, 4 channels to propeller and switched channel for emergency.
Power comes from a LiFe pack.
I try to use available propeller code as much as possible:
-· servo driver with ramp function is a dream;
-· radio pulses decoding works very well;
-· floating point computation is fast enough;
Inverse Kinematics and Gait generation needs more personal work.
Basically, according to radio commands, for each leg:
-· decide where I want to put my foot;
-· compute the pulse lenght to send to the 3 servos to do it...
Something like that:
· r := f.fsqr(f.fadd(f.fmul(x, x), f.fmul(y, y)))······ 'foot radius
· ac := f.degrees(f.atan2(x, y))······················· 'coxa angle
· v := f.fsqr(f.fadd(f.fmul(r, r), f.fmul(z, z)))······ 'virtual vector
· av := f.degrees(f.atan2(r, z))······················· 'virtual angle
· v2 := f.fmul(v, v)
· ab := f.fmul(v, f1)
· tmp := f.fdiv(f.fsub(f.fadd(v2, f2), t2),f.fadd(ab, ab))
· af := f.degrees(f.acos(tmp))························· 'femur angle
· ab := f.fmul(f1, t1)
· tmp := f.fdiv(f.fsub(f.fadd(f2, t2), v2),f.fadd(ab, ab))
· at := f.degrees(f.acos(tmp))························· 'tibia angle

·

Comments

  • kwinnkwinn Posts: 8,697
    edited 2009-10-31 18:20
    Wouldn't that be a propeller driven hexapod?
  • RambomanRamboman Posts: 101
    edited 2009-11-01 16:29
    If I am successfull wink.gif
  • Harrison H JonesHarrison H Jones Posts: 22
    edited 2009-11-02 05:30
    @Ramboman

    I revamp very interested in your project. I've been in the process of revamping a hexapod I have that was controlled with a servo controller over serial. I'd like to control it with the propeller. If you would like to collaborate on the project in any way I'm open the idea. I'd like to tackle the Inverse kinetics via some kind of software on a pc before we attempt to port it to spin.

    If you would like to work together let me know!
  • RambomanRamboman Posts: 101
    edited 2009-11-02 06:51
    Working together is one approach, exchanging ideas is another...
    IK simulation on PC is probably a good approach to generate gaits, but I prefer the propeller computing motion by himself.
    Computing speed is a key issue.· I ran key code using integer (spin trig pack)·and floating point with results varying from 68 to 3 msec per leg.
    I still have to evaluate "true" integer and fp in "asm".
    Presently, I am defining some constants:
    -· geometry op the hexapod;
    -· trim the servos to center position at 1500 µsec;
    -· relation between pulsewidth and angle for each servo...
    First code will not be proportional:
    -· "sit" with THR down;
    -· "stand up" with THR up (enable movement);
    -· "forward", "backwards", "turn left", "turn right" with right stick.
    *** If somebody has a full integer algorithm for IK or for ATAN2, his help is welcome ***
  • samissamis Posts: 1
    edited 2009-11-03 09:53
    Hexapod Robot Kits. Micromagic Systems Hexapods. Phoenix Hexapods. Beginner Robot Kits ... as a continuously turning motor to drive wheels, gears, pulleys, etc.


    Formation
  • RambomanRamboman Posts: 101
    edited 2009-11-03 11:19
    Je ne vois pas le rapport...
Sign In or Register to comment.