PoMoCo Moves


#1

Perhaps this can be the thread for any PoMoCo moves we create and maybe they’ll get added to the official repo.

This one I call shutdown. All it does is lower the Hexy down on to it’s belly, move the legs upwards and inwards, rotates the ultrasonic sensor to one side and kills all the servos.
http://db.tt/gQYEz8cL

Created this because at the moment I don’t have the space to display it and need to be able to store it safely with the smallest possible footprint.


Moves Sharing
Android motion controller for Hexy now available for testing
#2

Hi,

there is another thread on this Moves Sharing
I would see a Git repository for sharing moves, maybe Arcbotics could create that ?


#3

Didn’t see that post before. Perhaps this can be merged?

Two more moves - crab left and crab right - for, you guessed it, walking sideways like a crab.

Crab Right
db.tt/imZzgMBg

Crab Left
db.tt/wfH7GMGZ

Not as smooth as I would like but does the job. I’ll fine tune it at some point during the week.


#4

Two more!

Turn around - 180 degre turn
db.tt/bErbtnPU

Spin - 360 degree turn
db.tt/Ynfd4ehr

Not a hundred percent accurate but for that I guess we’ll need Kinematics


#5

Great stuff! I think I’ll end up creating a Github repo and collecting these if there are no objections…


#6

Not at all - got for it.


#7

Couple of dance moves:
http://robcook.eu/hexy/hexy-dance-off/

PoMoCo code is included in that post.

Did the git-hub repo get made for moves?


#8

@rpcook That’s awesome! Now to make it do gangnam style.


#9

Hi,

how can I disable a servo after the move and update the Gui (servo checkbox) ?
I looked into robot.py and try, hexy.RF.knee("sleep"),
but this did not update the Gui.

Regards
Yggdrasil


#10

any new moves that we can try?


#11

I’ll post some modified moves for Hexy soon. You can post yours here in this thread. Thanks


#12

Today I’ve been playing with the codes for Hexy moves and somehow they came out smooth and great.
I modified the TurnAround and Rotation left and right moves from Pomoco 1.2 by Michal. I’m still working on the codes for any errors and adjustments…

Here is the link from my Youtube channel:
http://youtu.be/gNScuDH7Yv4
http://youtu.be/gRoWXWONhnc

Thanks:)
relodan


#13

Here are the modified codes for TurnAround-Rotate Left and right moves:

RotateLeft:

[code]import time

Move: Turn Left

deg = 35

#set neck to where body is turning
hexy.neck.set(deg)

for i in range(1):
#re-plant tripod1 deg degrees forward
for leg in hexy.tripod1:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod2 feet
for leg in hexy.tripod2:
    leg.setFootY(int(floor/3.0))


#swing tripod1 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod1:
    leg.setHipDeg(-deg,stepTime=0.3)

#################################################

for i in range(1):
#re-plant tripod2 deg degrees forward
for leg in hexy.tripod2:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(int(floor/3.0))


#swing tripod2 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod2:
    leg.setHipDeg(-deg,stepTime=0.3)



#lower tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(floor)

#################################################

for i in range(1):
#re-plant tripod1 deg degrees forward
for leg in hexy.tripod1:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod2 feet
for leg in hexy.tripod2:
    leg.setFootY(int(floor/3.0))


#swing tripod1 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod1:
    leg.setHipDeg(-deg,stepTime=0.3)

##################################################

for i in range(1):
#re-plant tripod2 deg degrees forward
for leg in hexy.tripod2:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(int(floor/3.0))


#swing tripod2 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod2:
    leg.setHipDeg(-deg,stepTime=0.3)



#lower tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(floor)

[/code]

RotateRight:

[code]import time

Move: Turn Right

deg = -35

#set neck to where body is turning
hexy.neck.set(deg)

for i in range(1):
#re-plant tripod1 deg degrees forward
for leg in hexy.tripod1:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod2 feet
for leg in hexy.tripod2:
    leg.setFootY(int(floor/3.0))


#swing tripod1 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod1:
    leg.setHipDeg(-deg,stepTime=0.3)

#################################################

for i in range(1):
#re-plant tripod2 deg degrees forward
for leg in hexy.tripod2:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(int(floor/3.0))


#swing tripod2 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod2:
    leg.setHipDeg(-deg,stepTime=0.3)

#lower tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(floor)

#################################################

for i in range(1):
#re-plant tripod1 deg degrees forward
for leg in hexy.tripod1:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod2 feet
for leg in hexy.tripod2:
    leg.setFootY(int(floor/3.0))


#swing tripod1 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod1:
    leg.setHipDeg(-deg,stepTime=0.3)

##################################################

for i in range(1):
#re-plant tripod2 deg degrees forward
for leg in hexy.tripod2:
leg.replantFoot(deg,stepTime=0.3)
time.sleep(0.4)

#raise tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(int(floor/3.0))


#swing tripod2 feet back 2*deg degrees (to -deg)
for leg in hexy.tripod2:
    leg.setHipDeg(-deg,stepTime=0.3)
    
#lower tripod1 feet
for leg in hexy.tripod1:
    leg.setFootY(floor)

[/code]

TurnAroundLeft:

[code]import time

Move: TurnAroundLeft

move(‘Rotate Left’)

move(‘Rotate Left’)

move(‘Rotate Left’)
[/code]

TurnAroundRight:

[code]import time

Move: TurnAroundRight

move(‘Rotate Right’)

move(‘Rotate Right’)

move(‘Rotate Right’)
[/code]

Enjoy:)


#14

Nice! We might add these to the mainstream PoMoCo soon


#15

Now I’m trying to modify the crab left and right move, but somehow I’m stuck in finding a solution for the middle left and right leg knees and ankles.


#16

Here’s the video link for the modified crab walk and it’s still in progress:
http://youtu.be/jCI9RKzMPjg


#17

Here is the modified code for Crab_Right move.

[code]import time

deg = 30
hipSwing = 0.1
pause = 0.2

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

for timeStop in range(2):

#   relpant tripod 2 forward
hexy.LF.replantFoot(-deg+hipSwing,stepTime=0.1)
hexy.RM.replantFoot(hipSwing,stepTime=0.2)
hexy.LB.replantFoot(deg-hipSwing,stepTime=0.1)

#   tripod1 moves behind
hexy.RF.setHipDeg(deg+hipSwing,stepTime=0.1)
hexy.LM.setHipDeg(hipSwing,stepTime=0.2)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.1)

hexy.LM.ankle(-10)
time.sleep(0.6)

# replant tripod1 forward while tripod2 move behind
#   replant tripod1 forward
hexy.RF.replantFoot(hipSwing,stepTime=0.1)
hexy.LM.replantFoot(-hipSwing,stepTime=0.2)
hexy.RB.replantFoot(hipSwing,stepTime=0.1)

#   tripod2 moves behind
hexy.LF.setHipDeg(hipSwing,stepTime=0.1)
hexy.RM.setHipDeg(-hipSwing,stepTime=0.2)
hexy.LB.setHipDeg(hipSwing,stepTime=0.1)

hexy.RM.ankle(-60)
time.sleep(0.6)[/code]

and the modified code for Crab_Left move:

[code]import time

deg = -30
hipSwing = 0.1
pause = 0.5

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

for timeStop in range(2):

#   relpant tripod 2 forward
hexy.LF.replantFoot(-deg-hipSwing,stepTime=0.1)
hexy.RM.replantFoot(hipSwing,stepTime=0.2)
hexy.LB.replantFoot(deg+hipSwing,stepTime=0.1)

#   tripod1 moves behind
hexy.RF.setHipDeg(deg+hipSwing,stepTime=0.1)
hexy.LM.setHipDeg(hipSwing,stepTime=0.2)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.1)

hexy.LM.ankle(-60)
time.sleep(0.6)

# replant tripod1 forward while tripod2 move behind
#   replant tripod1 forward
hexy.RF.replantFoot(hipSwing,stepTime=0.1)
hexy.LM.replantFoot(-hipSwing,stepTime=0.2)
hexy.RB.replantFoot(hipSwing,stepTime=0.1)

#   tripod2 moves behind
hexy.LF.setHipDeg(hipSwing,stepTime=0.1)
hexy.RM.setHipDeg(-hipSwing,stepTime=0.2)
hexy.LB.setHipDeg(hipSwing,stepTime=0.1)

hexy.RM.ankle(-10)
time.sleep(0.6)[/code]

You can modify the codes to improve it.

Thanks
-relodan


#18

I have a new version of the modified Rotate Left and Right moves. This one is much smoother and better than the previous modification I posted before:

http://youtu.be/WXAuzN5h_bE

“NEW” Rotate Right Code:

[code]import time

deg = 0
midFloor = 30
hipSwing = 35
pause = 0.3
hexy.neck.set(-35)

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

for timeStop in range(2):
#time.sleep(0.1)
# replant tripod2 forward while tripod1 move behind
# relpant tripod 2 forward
hexy.LF.replantFoot(deg-hipSwing,stepTime=0.5)
hexy.RM.replantFoot(deg-hipSwing,stepTime=0.5)
hexy.LB.replantFoot(deg-hipSwing,stepTime=0.5)

#   tripod1 moves behind
hexy.RF.setHipDeg(-deg+hipSwing,stepTime=0.5)
hexy.LM.setHipDeg(-deg+hipSwing,stepTime=0.5)
hexy.RB.setHipDeg(-deg+hipSwing,stepTime=0.5)
time.sleep(0.6)

# replant tripod1 forward while tripod2 move behind
#   replant tripod1 forward
hexy.RF.replantFoot(deg-hipSwing,stepTime=0.5)
hexy.LM.replantFoot(deg-hipSwing,stepTime=0.5)
hexy.RB.replantFoot(deg-hipSwing,stepTime=0.5)

#   tripod2 moves behind
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.6)

[/code]

“NEW” Rotate Left Code:

[code]import time

deg = 0
midFloor = 30
hipSwing = 35
pause = 0.3
hexy.neck.set(35)

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

for timeStop in range(2):
#time.sleep(0.1)
# replant tripod2 forward while tripod1 move behind
# relpant tripod 2 forward
hexy.LF.replantFoot(deg+hipSwing,stepTime=0.5)
hexy.RM.replantFoot(deg+hipSwing,stepTime=0.5)
hexy.LB.replantFoot(deg+hipSwing,stepTime=0.5)

#   tripod1 moves behind
hexy.RF.setHipDeg(deg-hipSwing,stepTime=0.5)
hexy.LM.setHipDeg(deg-hipSwing,stepTime=0.5)
hexy.RB.setHipDeg(deg-hipSwing,stepTime=0.5)
time.sleep(0.6)

# replant tripod1 forward while tripod2 move behind
#   replant tripod1 forward
hexy.RF.replantFoot(-deg+hipSwing,stepTime=0.5)
hexy.LM.replantFoot(-deg+hipSwing,stepTime=0.5)
hexy.RB.replantFoot(-deg+hipSwing,stepTime=0.5)

#   tripod2 moves behind
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.6)

[/code]

Have fun!

-relodan


#19

Check out the modified version of shutdown and the new get down move.

In this video, the get down move was initialized after selecting the get up move.
http://youtu.be/6aH-Qm4Zt_w

New move “Get_Down”:

[code]import time

move ‘Get_Down’

move(“Reset”)
time.sleep(0.5)

for angle in range(0,100,8):
for leg in hexy.legs:
leg.knee(45-angle)
leg.ankle(-45-angle)
time.sleep(0.1)[/code]

http://youtu.be/b3L1D81PVUU

Modified Shut_down move:

[code]import time

move: ‘Shut_Down’

move(“Reset”)
time.sleep(0.5)

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

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

This can be a great addition to your Pomoco moves. Enjoy!

  • relodan

#20

In this video are some series of new moves for Hexy : Belly_Twist, Twist Up and Down, Twist Left and Right moves. Also Get down and new modified belly flop.

http://youtu.be/iNjYh2ZKCXY
http://youtu.be/QBXp63K6oHo

They are great addition to pomoco moves also and its still in progress for some adjustments and code modifications.

Thanks,
relodan