Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- encoding: UTF-8 -*-
- ''' setFootStep: Small example to make Nao execute '''
- ''' The Cha Cha Basic Steps for Men '''
- ''' Using setFootStep API '''
- ''' http://www.dancing4beginners.com/cha-cha-steps.htm '''
- ''' This example is only compatible with NAO '''
- import argparse
- from naoqi import ALProxy
- def main(robotIP, PORT=9559):
- motionProxy = ALProxy("ALMotion", robotIP, PORT)
- postureProxy = ALProxy("ALRobotPosture", robotIP, PORT)
- # Wake up robot
- motionProxy.wakeUp()
- # Send robot to Stand Init
- postureProxy.goToPosture("StandInit", 0.5)
- ###############################
- # First we defined each step
- ###############################
- footStepsList = []
- # 1) Step forward with your left foot
- footStepsList.append([["LLeg"], [[0.06, 0.1, 0.0]]])
- # 2) Sidestep to the left with your left foot
- footStepsList.append([["LLeg"], [[0.00, 0.16, 0.0]]])
- # 3) Move your right foot to your left foot
- footStepsList.append([["RLeg"], [[0.00, -0.1, 0.0]]])
- # 4) Sidestep to the left with your left foot
- footStepsList.append([["LLeg"], [[0.00, 0.16, 0.0]]])
- # 5) Step backward & left with your right foot
- footStepsList.append([["RLeg"], [[-0.04, -0.1, 0.0]]])
- # 6)Step forward & right with your right foot
- footStepsList.append([["RLeg"], [[0.00, -0.16, 0.0]]])
- # 7) Move your left foot to your right foot
- footStepsList.append([["LLeg"], [[0.00, 0.1, 0.0]]])
- # 8) Sidestep to the right with your right foot
- footStepsList.append([["RLeg"], [[0.00, -0.16, 0.0]]])
- ###############################
- # Send Foot step
- ###############################
- stepFrequency = 0.8
- clearExisting = False
- nbStepDance = 2 # defined the number of cycle to make
- for j in range( nbStepDance ):
- for i in range( len(footStepsList) ):
- try:
- motionProxy.setFootStepsWithSpeed(
- footStepsList[i][0],
- footStepsList[i][1],
- [stepFrequency],
- clearExisting)
- except Exception, errorMsg:
- print str(errorMsg)
- print "This example is not allowed on this robot."
- exit()
- motionProxy.waitUntilMoveIsFinished()
- # Go to rest position
- motionProxy.rest()
- if __name__ == "__main__":
- parser = argparse.ArgumentParser()
- parser.add_argument("--ip", type=str, default="127.0.0.1",
- help="Robot ip address")
- parser.add_argument("--port", type=int, default=9559,
- help="Robot port number")
- args = parser.parse_args()
- main(args.ip, args.port)
Add Comment
Please, Sign In to add comment