The A2 robot provides basic preset action playback capabilities, with some preset actions included out of the box (additional actions can be recorded using remote control devices to meet more personalized needs; for more information, please refer to the relevant documentation on remote control). The list of built-in preset actions is as follows:
右手比耶/右手比耶.mcap
向左欢迎/向左欢迎.mcap
播报随机动作_09/播报随机动作_09.mcap
数字手势“9”/数字手势“9”.mcap
方向_指向左边/方向_指向左边.mcap
右手拍照pose2-短/右手拍照pose2-短.mcap
播报随机动作_11/播报随机动作_11.mcap
简述6个要点_12s/简述6个要点_12s.mcap
左转头/左转头.mcap
右手挥手/右手挥手.mcap
右手拍照pose3-短/右手拍照pose3-短.mcap
数字手势“8”/数字手势“8”.mcap
点点头/点点头.mcap
做“自上而下”的示意_10s/做“自上而下”的示意_10s.mcap
强调2大要点_12s/强调2大要点_12s.mcap
右手握手_长/右手握手_长.mcap
快速强调5大要点_8s/快速强调5大要点_8s.mcap
左手加油/左手加油.mcap
摆拍_右手胸前点赞/摆拍_右手胸前点赞.mcap
播报随机动作_06/播报随机动作_06.mcap
右手碰拳_长/右手碰拳_长.mcap
方向_左手指后方/方向_左手指后方.mcap
数字手势“5”/数字手势“5”.mcap
个人介绍_7s/个人介绍_7s.mcap
双手比耶/双手比耶.mcap
播报随机动作_19/播报随机动作_19.mcap
方向_左边示意/方向_左边示意.mcap
数字手势“1”/数字手势“1”.mcap
右手NO/右手NO.mcap
对3个要点展开阐述_15s/对3个要点展开阐述_15s.mcap
强调3大要点_11s/强调3大要点_11s.mcap
右手比心/右手比心.mcap
灵动环顾1/灵动环顾1.mcap
方向_向右下方指引/方向_向右下方指引.mcap
右手握手收回/右手握手收回.mcap
方向_向右上方指引/方向_向右上方指引.mcap
右手拍照pose4-短/右手拍照pose4-短.mcap
结尾致谢_7s/结尾致谢_7s.mcap
右手拍照pose1-短/右手拍照pose1-短.mcap
方向_右手指后方/方向_右手指后方.mcap
方向_右边示意/方向_右边示意.mcap
播报随机动作_08/播报随机动作_08.mcap
演讲27s/演讲27s.mcap
播报随机动作_18/播报随机动作_18.mcap
左手比耶/左手比耶.mcap
播报随机动作_10/播报随机动作_10.mcap
击掌_长/击掌_长.mcap
摆拍_右手胸前比耶/摆拍_右手胸前比耶.mcap
播报随机动作_01/播报随机动作_01.mcap
播报随机动作_16/播报随机动作_16.mcap
左手挥手/左手挥手.mcap
播报随机动作_17/播报随机动作_17.mcap
跳舞/跳舞.mcap
左手握手_长/左手握手_长.mcap
数字手势“2”/数字手势“2”.mcap
双手点赞/双手点赞.mcap
演讲10s/演讲10s.mcap
播报随机动作_02/播报随机动作_02.mcap
双手向下比心/双手向下比心.mcap
双手挥手/双手挥手.mcap
数字手势“6”/数字手势“6”.mcap
灵动环顾2/灵动环顾2.mcap
方向_指向当前位置/方向_指向当前位置.mcap
摆拍_双手咏春/摆拍_双手咏春.mcap
灵动环顾3/灵动环顾3.mcap
向右欢迎/向右欢迎.mcap
讲解结束总结_9s/讲解结束总结_9s.mcap
右手握手/右手握手.mcap
用手指强调信息_09s/用手指强调信息_09s.mcap
播报随机动作_12/播报随机动作_12.mcap
播报随机动作_15/播报随机动作_15.mcap
摆拍_抬起右手/摆拍_抬起右手.mcap
右手加油/右手加油.mcap
右手点赞_长/右手点赞_长.mcap
演讲15s/演讲15s.mcap
播报随机动作_05/播报随机动作_05.mcap
方向_向左下方指引/方向_向左下方指引.mcap
右手碰拳/右手碰拳.mcap
方向_向左上方指引/方向_向左上方指引.mcap
左手点赞/左手点赞.mcap
开篇打招呼_12s/开篇打招呼_12s.mcap
敬礼/敬礼.mcap
播报随机动作_14/播报随机动作_14.mcap
摇摇头/摇摇头.mcap
双手加油/双手加油.mcap
左手碰拳/左手碰拳.mcap
数字手势“3”/数字手势“3”.mcap
演讲20s/演讲20s.mcap
播报随机动作_04/播报随机动作_04.mcap
左手点赞_长/左手点赞_长.mcap
演讲5s/演讲5s.mcap
播报随机动作_13/播报随机动作_13.mcap
左手握手/左手握手.mcap
播报随机动作_07/播报随机动作_07.mcap
强调4大要点_16s/强调4大要点_16s.mcap
摆拍_左手胸前比耶/摆拍_左手胸前比耶.mcap
对2个要点展开阐述_18s/对2个要点展开阐述_18s.mcap
双手擦眼泪/双手擦眼泪.mcap
打太极拳/打太极拳.mcap
数字手势“4”/数字手势“4”.mcap
灵动环顾4/灵动环顾4.mcap
右转头/右转头.mcap
用握拳强调2组信息_12s/用握拳强调2组信息_12s.mcap
数字手势“7”/数字手势“7”.mcap
右手强调“核心”_10s/右手强调“核心”_10s.mcap
方向_指向右边/方向_指向右边.mcap
右手OK/右手OK.mcap
方向_左手指前方/方向_左手指前方.mcap
左手碰拳_长/左手碰拳_长.mcap
对1个要点展开阐述_14s/对1个要点展开阐述_14s.mcap
方向_右手指前方/方向_右手指前方.mcap
右手点赞/右手点赞.mcap
数字手势“10”/数字手势“10”.mcap
双手强调“全局”_08s/双手强调“全局”_08s.mcap
摆拍_我是大力士/摆拍_我是大力士.mcap
播报随机动作_03/播报随机动作_03.mcap
右手拍照pose5-短/右手拍照pose5-短.mcap
比心/比心.mcap
快速端东西/快速端东西.mcap
端东西/端东西.mcap
端盘子/端盘子.mcap
单手发红包/单手发红包.mcap
拿话筒演讲/拿话筒演讲.mcap
握话筒/握话筒.mcap
下蹲感谢示意/下蹲感谢示意.mcap
右手拿话筒大幅扭腰/右手拿话筒大幅扭腰.mcap
右手拿话筒轻微扭腰/右手拿话筒轻微扭腰.mcap
右手拿话筒双侧扭腰/右手拿话筒双侧扭腰.mcap
右手拿话筒双侧扭腰2/右手拿话筒双侧扭腰2.mcap
右手拿话筒左手讲解1/右手拿话筒左手讲解1.mcap
右手拿话筒左手讲解2/右手拿话筒左手讲解2.mcap
右手拿话筒左手讲解3/右手拿话筒左手讲解3.mcap
These action files are located in the x86 directory at /agibot/data/resources/default/motion. Custom recorded actions should be placed in the /agibot/data/resources/custom/motion directory. The above list can be obtained by running the following command in the corresponding directory:
Terminal window
find.-typef-name"*.mcap"-printf"%P\n"
You can view the specific action effects using the motion control simulation provided in subsequent chapters, or directly on the real robot.
Action playback on the robot is handled by the motion_player module, which controls the arm and neck joints in JOINT_SERVO mode. The basic control principle involves reading and parsing the specified action file, playing it at 100 Hz, and sending /motion/control/arm_joint_command and /motion/control/neck_joint_command to the motion control module, which then performs the corresponding actions.
Due to historical reasons and architectural design factors, we provide two sets of RPC interfaces for calling action playback: SendMotionCommand and PlayerMotion. SendMotionCommand is a lower-level interface provided directly by the motion_player module, offering more comprehensive and robust functionality, and is recommended for use. The PlayerMotion interface, on the other hand, is an upper-level action playback module encapsulated by the rc remote control module, supporting only playback and not features like interruption, pausing, or status queries. It is not recommended for use in new versions and is retained only for compatibility.
cmd_end: Whether to automatically return to the initial posture after the action is executed, true indicates automatic reset, false indicates no automatic reset
cmd_pause: Action pause flag, true indicates pause, which will stop sending control signals to the robot, generally not used
cmd_reset: Reset flag, true indicates reset, false indicates no reset. The reset operation will reset the current action state to the initial state
The motion playback module continuously sends control commands to the motion control module for /motion/control/arm_joint_command and /motion/control/neck_joint_command in JOINT_SREVO mode. If a secondary program also sends commands, it can cause conflicts. You can use the following interfaces to disable and enable the motion playback module.
In some cases, it is necessary to disable the neck’s motion playback function separately, thus transferring control of the neck to a secondary program for head tracking, etc. You can use the following interfaces to disable and enable the neck’s motion playback control.
Disables the motion playback module from controlling the neck motor. The process does not exit and does not send neck commands to the motion control module.