如何将 Pepper 机器人中预装的行为文件 (.xar) 保存到我的 PC 中?

How can I save out pre-installed behavior file (.xar) inside Pepper robot to my PC?

我正在构建一个项目,我希望在我的机器人中触发一些预安装的行为(我从开发人员那里下载的)。了解我可以将行为 (.xar) 格式的内容导入到我当前的项目中。 知道如何将安装的行为从机器人提取到我的 PC 吗?

谢谢

这取决于您想对这些应用程序做什么,只是 运行 它们作为您应用程序的一部分,或者您是否想以某种方式编辑或将这些行为集成到您的应用程序中。

应用切换

如果您将应用下载为 .pkg 文件或安装到机器人的 Choregraphe 项目(即,您可以在 Chorgraphe 的 "Robot applications" 视图中看到它们已安装),您可以使用 Pepper 的 Autonomous Life API 切换到应用程序,运行 它直到完成,然后切换回您的应用程序。 activity 名称是应用程序 ID(在机器人应用程序中右键单击该应用程序 -> 复制应用程序 ID)和行为的名称(默认为 behavior_1)。示例 'danceApp/behavior_1'

# in a python box
def __init__(self):
    # ...
    self.life = ALProxy("ALAutonomousLife")

def onInput_onStart(self):
    # 1 means return to this app when the new app is closed
    self.life.switchFocus('activityName', 1)  

提取行为

如果您不只是想切换到该应用程序,例如,如果您想要编辑它,或者 运行 在做其他事情的同时,您可以将 .xar 文件从机器人复制到像这样编舞

  1. 在终端中使用 SSH 将机器人的应用程序复制到您的 PC(同样,通过在 Choregraphe 的机器人应用程序视图中右键单击该应用程序来获取应用程序 ID)
scp -r nao@<nao-ip>:/home/nao/.local/PackageManager/apps/app-id <path-to-copy-to>
  1. 制作一个新的空白 Choregraphe 应用程序并保存
  2. 将你从机器人那里得到的app文件夹中的内容复制到空白的Choregraphe应用程序中
  3. 打开 Choregraphe 应用程序并单击项目文件下的 behavior.xar。您应该会看到该行为并能够根据需要复制或编辑它。