如何从Choregraphe项目打开/关闭自主生活

时间:2019-01-31 04:04:55

标签: robot pepper

可以通过Choregraphe的UI以及通过在机器人上按两次胸部按钮来控制自主生命,但是,如何通过Choregraphe项目来实现? 浏览Box库中的工具列表后,不清楚可以使用哪个工具。

启用“自治生活”时,为了使存活出现,机器人会用头部,手臂和腿进行小动作。我正在开发的行为很难与“自主生活”运动区分开,因此,我试图在行为运行之前让机器人保持静止。

1 个答案:

答案 0 :(得分:1)

ALAutonomousLife API提供了方法setState

在Choregraph中,您可以创建一个具有以下内容的python框:

class MyClass(GeneratedClass):
    def __init__(self):
        GeneratedClass.__init__(self)
        self.al = ALProxy("ALAutonomousLife")

    def onLoad(self):
        #put initialization code here
        pass

    def onUnload(self):
        #put clean-up code here
        pass

    def onInput_onStart(self):
        self.al.setState("disabled")
        #self.onStopped() #activate the output of the box
        pass

    def onInput_onStop(self):
        self.onUnload() #it is recommended to reuse the clean-up as the box is stopped
        self.onStopped() #activate the output of the box

然后激活此Box以禁用AutonomousLife。

您也可以像这样在python控制台中对其进行测试:

import naoqi
from naoqi import ALProxy
al = ALProxy("ALAutonomousLife", "pepper.local", 9559)
al.setState("diabled")

这与两次按下胸部按钮具有相同的效果。

要仅禁用微妙的自主运动,请查看Autonomous Abilities

方法setEnabled

提供