Esempio n. 1
0
def play(args):
    global broker, nao_motion, nao_video
    nao_strategies = {'basic': Basic,
                      'human': Human}
    other_strategies = {'vision': NAOVision,
                        'human': Human}

    nao_strat = nao_strategies.get(args['--nao-strategy'], None)
    other_strat = other_strategies.get(args['--other-strategy'], None)
    if nao_strat is None:
        exit("{0} is not a valid strategy. The valid strategies for NAO are basic and "
             "human".format(args['--nao-strategy']))
    if other_strat is None:
        exit("{0} is not a valid strategy. The valid strategies for the other player are "
             "vision and human".format(args['--other-strategy']))
    basic.ALPHA_BETA_MAX_DEPTH = int(args['--max-depth'])
    data.IP = args['--ip']
    data.PORT = int(args['--port'])
    broker = ALBroker("myBroker", "0.0.0.0", 0, data.IP, data.PORT)
    nao_motion = MotionController()
    nao_video = VideoController()
    nao_tts = ALProxy("ALTextToSpeech", data.IP, data.PORT)
    try:
        loop = LogicalLoop(nao_motion=nao_motion, nao_video=nao_video, nao_tts=nao_tts,
                           ppA=float(args['--ppA']), cA=float(args['--cA']), rA=float(args['--rA']),
                           min_detections=int(args['--min-detections']), sloped=args['--sloped'],
                           dist=float(args['--dist']), nao_strategy=nao_strat, other_strategy=other_strat,
                           wait_disc_func=wait_for_disc, )
        loop.loop()
    except KeyboardInterrupt:
        print "Keyboard interrupt"
    finally:
        broker.shutdown()
    return 0
Esempio n. 2
0
def ik(args):
    global broker, nao_motion, nao_video
    data.IP = args['--ip']
    data.PORT = int(args['--port'])
    broker = ALBroker("myBroker", "0.0.0.0", 0, data.IP, data.PORT)
    nao_motion = MotionController()
    nao_video = VideoController()
    nao_motion.stand()
    nao_tts = ALProxy("ALTextToSpeech", data.IP, data.PORT)
    try:
        loop = LogicalLoop(nao_motion=nao_motion, nao_video=nao_video, nao_tts=nao_tts,
                           ppA=float(args['--ppA']), cA=float(args['--cA']), rA=float(args['--rA']),
                           min_detections=1, wait_disc_func=lambda: None)
        if not args['--no-grab']:
            wait_for_disc()
        else:
            nao_motion.motion_proxy.closeHand("LHand")
            nao_motion.setLeftArmRaised(secure=True)
        loop.inverseKinematicsConvergence(int(args['--hole']))
        nao_motion.crouch()
    except KeyboardInterrupt:
        print "Keyboard interrupt"
        broker.shutdown()
    return 0