RobotMovement 机器人运动控制工具
RobotMovement 算子为机器人运动控制工具,用于控制机器人移动。
type | 功能 |
---|---|
MoveJoint | 通过 joint 移动机器人。 |
MoveJointList | 通过 joint_list 移动机器人。 |
MoveTCP | 通过 TCP 移动机器人。 |
MoveTCPList | 通过 TCP_List 移动机器人。 |
StopMotion | 停止机器人。 |
SetRobotIO | 设置机器人 IO 端口信号。 |
WaitRobotIO | 在设置时间内,等待机器人 IO 端口信号进行判断输出。 |
MoveJoint
将 RobotMovement 算子的 类型
属性选择 MoveJoint ,通过 joint 移动机器人。
算子参数
-
机器人资源名称/robot_resource_name
:机器人资源名。选择在Resource Group 中添加的机器人资源。 -
关节/joint
:机器人移动的关节值。 -
显示目标机器人/show_targe_trobot
:目标机器人的可视化。-
是/Ture:显示目标机器人。
-
否/Flase:不显示目标机器人。
-
-
速度/velocity
:机器人移动的速度。默认值:1。单位:m/s。 -
加速/acceleration
:机器人移动的加速度。默认值:1。单位:m/s²。 -
线性运动/move_linear
:机器人移动方式。-
是/True:机器人直线移动。
-
否/False:机器人正常移动。
-
数据信号输入输出
输入:
-
joint
-
数据类型:JointArray
-
输出内容:机器人关节弧度值数据
-
输出:
-
joint
-
数据类型:JointArray
-
输入内容:机器人关节弧度值数据 joint 数据
-
功能演示
使用 RobotMovement 中 MoveJoint ,通过 joint 的方式将机器人轴1 移动至 90°。
步骤1:算子准备
-
添加 SimulatedRobotResource 资源算子至 Resource Group 。
-
添加 Trigger 、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 SimulatedRobotResource 算子参数:
-
自动启动 → 是
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/UR5/UR5.rob )
-
机器人 → 可视
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → MoveJoint
-
关节 → 1.5708 0 0 0 0 0
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
结果如下图所示,左侧为 SimulatedRobotResource 算子 robot 可视化初始状态。右侧为 joint1 旋转 1.5708 后的结果。
-
鼠标左键双击 3D 视图中的机器人,弹出机器人面板,将机器人基坐标和机器人 TCP 勾选 True 。
-
在机器人面板中查看此时机器人关节轴 1 为 90° 。
MoveJointList
将 RobotMovement 算子的 类型
属性选择 MoveJointList ,通过 joint_list 的方式移动机器人。
算子参数
-
机器人资源名称/robot_resource_name
:机器人资源名。选择在Resource Group 中添加的机器人资源。 -
显示目标机器人/show_targe_trobot
:目标机器人的可视化。-
是/Ture:显示目标机器人。
-
否/Flase:不显示目标机器人。
-
-
速度/velocity
:机器人移动的速度。默认值:1。单位:m/s。 -
加速/acceleration
:机器人移动的加速度。默认值:2。单位:m/s²。 -
线性运行/move_linear
:机器人移动方式。-
是/True:机器人直线移动。
-
是/False:机器人正常移动。
-
数据信号输入输出
输入:
-
joint_list
-
数据类型:JointArrayList
-
输出内容:机器人关节弧度值列表数据
-
功能演示
使用 RobotMovement 中 MoveJointList ,通过 joint_list 的方式移动机器人。
步骤1:算子准备
-
添加 SimulatedRobotResource 资源算子至 Resource Group 。
-
添加 Trigger 、RobotOperator ( 3 个)、Concatenate、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 SimulatedRobotResource 算子参数:
-
自动启动 → 是
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/UR5/UR5.rob )
-
机器人 → 可视
-
-
设置 RobotOperator 算子参数:
-
算子名称 → RobotOperator1
-
类型 → EmitJoint
-
关节 → 1.5708 0 0 0 0 0
-
-
设置 RobotOperator_1 算子参数:
-
算子名称 → RobotOperator2
-
类型 → EmitJoint
-
关节 → 1.5708 -1.5708 0 0 0 0
-
-
设置 RobotOperator_2 算子参数:
-
算子名称 → RobotOperator3
-
类型 → EmitJoint
-
关节 → 1.5708 -1.5708 1.5708 0 0 0
-
-
设置 Concatenate 算子参数:
-
类型 → JointArray
-
输入数量 → 3
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → MoveJointList
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
在机器人运动过程中,会根据 Concatenate 算子的输出结果 joints_list 的索引分别移动。
-
最终结果如下图所示,左侧为 SimulatedRobotResource 算子 robot 可视化初始状态。右侧为移动最后一组 RobotOperator3 机器人关节弧度值结果。
-
鼠标左键双击 3D 视图中的机器人,弹出机器人面板,将机器人基坐标和机器人 TCP 勾选 True 。
-
在机器人面板中查看此时机器人关节轴 1 : 90°,轴2:-90°,轴3:90° 。该值为最后 RobotOperator3 算子中生成的关节值弧度值。
MoveTCP
将 RobotMovement 算子的 类型
属性选择 MoveTCP ,通过 TCP 移动机器人。
算子参数
-
机器人资源名称/robot_resource_name
:机器人资源名。选择在 Resource Group 中添加的机器人资源。 -
tcp
:机器人末端坐标。 -
显示目标机器人/show_targe_trobot
:目标机器人的可视化。-
是/Ture:显示目标机器人。
-
否/Flase:不显示目标机器人。
-
-
速度/velocity
:机器人移动的速度。默认值:1。单位:m/s。 -
加速/acceleration
:机器人移动的加速度。默认值:1。单位:m/s²。 -
线性运动/move_linear
:机器人移动方式。-
是/True:机器人直线移动。
-
否/False:机器人正常移动。
-
数据信号输入输出
输入:
-
goal_pose
-
数据类型:Pose
-
输出内容:pose 数据
-
-
ref_joint
-
数据类型:JointArray
-
输出内容:机器人关节弧度值数据
-
输出:
-
ik_solution_joint
-
数据类型:JointArray
-
输出内容:机器人关节弧度值数据
-
功能演示
使用 RobotMovement 中 MoveTCP ,通过 TCP 的方式移动机器人。
步骤1:算子准备
-
添加 SimulatedRobotResource 资源算子至 Resource Group
-
添加 Trigger 、Emit、RobotOperator、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 SimulatedRobotResource 算子参数:
-
自动启动 → 是
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/UR5/UR5.rob )
-
机器人 → 可视
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → MoveTCP
-
-
设置 Emit 算子参数:
-
类型 → Pose
-
坐标 → 0.10158 -0.5167 0.39675 -3.11585 0.02054 3.00946
-
-
设置 RobotOperator 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → EmitJoint
-
关节 → 1.57 -1.57 0 0 0 0
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
如下图所示,在 3D 视图中显示当前加载机器人 RobotMovement 后的结果 。
-
鼠标左键双击3D视图中的机器人,弹出机器人面板,将机器人基坐标和机器人 TCP 设为 True 。
-
SimulatedRobot 面板中显示机器人当前机器人 TCP 值 和 关节轴值。
MoveTCPList
将 RobotMovement 算子的 类型
属性选择 MoveTCPList ,通过 TCP_List 移动机器人。
算子参数
-
机器人资源名称/robot_resource_name
:机器人资源名。选择在Resource Group 中添加的机器人资源。 -
显示目标机器人/show_targe_trobot
:目标机器人的可视化。-
是/Ture:显示目标机器人。
-
否/Flase:不显示目标机器人。
-
-
速度/velocity
:机器人移动的速度。默认值:1。单位:m/s。 -
加速/acceleration
:机器人移动的加速度。默认值:2。单位:m/s²。 -
线性运行/move_linear
:机器人移动方式。-
是/True:机器人直线移动。
-
是/False:机器人正常移动。
-
数据信号输入输出
输入:
-
goal_pose_list
-
数据类型:PoseList
-
输出内容:pose 列表数据
-
ref_joint
-
数据类型:JointArray
-
输出内容:机器人关节弧度值数据
-
-
输出:
-
ik_solution_joint_list
-
数据类型:JointArrayLlist
-
输出内容:机器人关节弧度值列表数据
-
功能演示
使用 RobotMovement 中 MoveJointList ,通过 TCP_List 的方式移动机器人。
步骤1:算子准备
-
添加 SimulatedRobotResource 资源算子至 Resource Group 。
-
添加 Trigger 、Emit ( 3 个)、Concatenate、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 SimulatedRobotResource 算子参数:
-
自动启动 → 是
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/UR5/UR5.rob )
-
机器人 → 可视
-
-
设置 Emit 算子参数:
-
算子名称 → Emit1
-
类型 → Pose
-
坐标 → 0.490600 -0.109290 0.438640 0.055850 -3.139850 1.570700
-
-
设置 Emit_1 算子参数:
-
算子名称 → Emit2
-
类型 → Pose
-
坐标 → 0.490600 -0.286290 0.438640 0.055850 -3.139850 1.570700
-
-
设置 Emit_2 算子参数:
-
算子名称 → Emit3
-
类型 → Pose
-
坐标 → 0.490600 -0.286290 0.196640 0.055850 -3.139850 1.570700
-
-
设置 Concatenate 算子参数:
-
类型 → Pose
-
输入数量 → 3
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → MoveTCPList
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
在机器人运动过程中,会根据 Concatenate 算子的输出结果POSE_list 的结果分别进行机器人移动。
-
鼠标左键双击 3D 视图中的机器人,弹出机器人面板,将机器人基坐标和机器人 TCP 勾选 True 。
StopMotion
将 RobotMovement 算子的 类型
属性选择 StopMotion ,用于停止机器人。
算子参数
机器人资源名称/robot_resource_name
:机器人资源名。选择在
Resource Group 中添加的机器人资源。
功能演示
使用 RobotMovement 中 StopMotion ,控制机器人停止。
步骤1:算子准备
-
添加 SimulatedRobotResource 资源算子至 Resource Group 。
-
添加 Trigger 、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 SimulatedRobotResource 算子参数:
-
自动启动 → 是
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/UR5/UR5.rob )
-
机器人 → 可视
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → SimulatedRobotResource
-
类型 → StopMotion
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
如下图所示,触发该算子后,机器人停止运动。
-
如下图所示,3D 视图中机器人处于停止状态。
SetRobotIO
将 RobotMovement 算子的 类型
属性选择 SetRobotIO ,设置 RVS 主动控制机器人的 IO 端口信号。
算子参数
机器人资源名称/robot_resource_name
:机器人资源名。选择在
Resource Group 中添加的机器人资源。
功能演示
使用 RobotMovement 中 SetRobotIO ,设置 RVS 主动控制机器人(elite 机器人)的 IO 端口信号。
步骤1:算子准备
-
添加 EliteRobotsResource 资源算子至 Resource Group 。
-
添加 Trigger 、RobotMovement 算子至算子图。
步骤2:设置算子参数
-
设置 EliteRobotsResource 算子参数:
-
机器人模型文件 → → 选择 robot 文件名 ( example_data/EC66/EC66.rob )
-
机器人 → 可视
-
-
设置 RobotMovement 算子参数:
-
机器人资源名称 → EliteRobotsResource
-
类型 → SetRobotIO
-
IO值 → 是
-
步骤3:连接算子
步骤4:运行
点击 RVS 运行按钮,触发 Trigger 算子。
运行结果
-
如下图所示,触发该算子后, elite 机器人 IO 信号的数字输出端口 0 置为 1 。