PoMoCo Moves

I would like to share this video of Hexy with the “polished” version of pomoco moves that I’ve modified so far. There is lots of new and modified moves like the series of twists, get down and some short dance combinations.

Check it out:
http://youtu.be/tm–60XvVxo
http://youtu.be/ZhQ8T1BGMB4

I’ll post the codes soon.
Any feedbacks, please let me know.

Thanks,

  • relodan

I had Hexy for almost 3 months now and I must say Arcbotics really did a great job on this project. Hexy was my first robot buddy and I really learned a lot and even played almost everyday after work. So in return I decided to contribute a little of my work - some new pomoco moves that I mentioned earlier in this thread.

You might need to make some minor adjustments in the robot.py to make it work right.

https://www.dropbox.com/s/90t1b5elydr0o93/Moves.zip

Thank you Arcbotics and to those who share their knowledge in robotic programming!

  • relodan

Here are the codes for the new moves:

Belly_Flop Move

[code]import time

for timeStop in range(3):

going down

for angle in range(0,50,10):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
    time.sleep(0.1)

going up

for angle in range(0,60,10):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
    time.sleep(0.1)[/code]

Belly_Twist Move

[code]import time

deg = 35
midFloor = 30
hipSwing = 0
pause = 0.3
time.sleep(0.1)

for timeStop in range(3):

going down

for angle in range(0,50,10):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
        
    time.sleep(0.1)
    
time.sleep(0.3)
#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.3)

going up

for angle in range(0,60,10):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
        
    time.sleep(0.1)
    
time.sleep(0.3)
#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.8)[/code]

Body_Twist Move

[code]import time

deg = 40
midFloor = 30
hipSwing = 0
pause = 0.3
time.sleep(0.1)

for timeStop in range(3):

going down

for angle in range(0,40,10):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
        
    time.sleep(0.1)        

#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

going up

for angle in range(0,60,10):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
        
    time.sleep(0.1)

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.3)

going down

for angle in range(0,40,10):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
        
    time.sleep(0.1)        

#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

going up

for angle in range(0,60,10):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
        
    time.sleep(0.1)

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.3)[/code]

Down_Twist Move

[code]import time

deg = 35
midFloor = 30
hipSwing = 0
move(“Reset”)

get down

for angle in range(0,120,10):
for leg in hexy.legs:
leg.knee(45-angle)
leg.ankle(-45-angle)
time.sleep(0.1)

time.sleep(0.5)

legs fold inward

for angle in range(0,50,10):
for leg in hexy.legs:
leg.knee(-50-angle)
leg.ankle(30+angle)
time.sleep(0.1)

time.sleep(0.5)

set legs to zero

for angle in range(0,110,10):
for leg in hexy.legs:
leg.knee(-150+angle)
leg.ankle(-150+angle)
time.sleep(0.1)

time.sleep(0.5)

for timeStop in range(3):

#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.3)[/code]

Twist_Up_Down Move

[code]import time

deg = 35
midFloor = 30
hipSwing = 0

for timeStop in range(3):

#   twist right
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.3)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.3)

time.sleep(0.3)

#   going down
for angle in range(0,40,9):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
        
    time.sleep(0.1)

#   going up
for angle in range(0,60,9):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
        
    time.sleep(0.1)
    

#   twist left
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.3)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.3)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.3)

time.sleep(0.3)

#   going down
for angle in range(0,40,9):
    for leg in hexy.legs:
        leg.knee(45-angle)
        leg.ankle(-45-angle)
        
    time.sleep(0.1)

#   going up
for angle in range(0,50,9):
    for leg in hexy.legs:
        leg.knee(angle)
        leg.ankle(-90+angle)
        
    time.sleep(0.1)[/code]

Twist_Left_Right Move

[code]import time

deg = 35
midFloor = 30
hipSwing = 0

#tripod1 = RF,LM,RB
#tripod2 = LF,RM,LB

for timeStop in range(3):

twist left

hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.5)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.5)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.5)
hexy.neck.set(35)
hexy.LF.setHipDeg(-deg-hipSwing,stepTime=0.5)
hexy.RM.setHipDeg(-deg-hipSwing,stepTime=0.5)
hexy.LB.setHipDeg(-deg-hipSwing,stepTime=0.5)

time.sleep(0.5)

twist right

hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.5)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.5)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.5)
hexy.neck.set(-35)
hexy.LF.setHipDeg(deg+hipSwing,stepTime=0.5)
hexy.RM.setHipDeg(deg+hipSwing,stepTime=0.5)
hexy.LB.setHipDeg(deg+hipSwing,stepTime=0.5)

time.sleep(0.5)[/code]

Use the codes at your own risk.

Thanks,

  • relodan

After the new updated version been posted, I’m going to post some more new moves for hexy:)