康复理疗
按摩
元操作描述与用法示例
描述: 此元操作控制机器人以力位混合运动的模式沿直线移动 TCP 经过每个路点,并在力控方向上施加力。可以设置最大接触力、力控速度极限等安全策略在机器人与人体接触时保护人体免受伤害。
用法示例: 使用此元操作控制机器人对人体进行按摩理疗动作。
元操作输入参数
输入参数 |
描述 |
类型 |
单位 |
默认值和范围 |
---|---|---|---|---|
目标点* (target) |
目标点 TCP 位姿 |
COORD |
m-deg |
[traj_start* world*] |
目标点力/力矩* (targetWrench) |
施加在目标点上的力和力矩 |
VEC_6d |
N |
0.0 0.0 -5.0 0.0 0.0 0.0 |
路点 (waypoint) |
路点位姿 |
ARRAY_COORD |
m-deg |
[traj_start* traj_goal* traj_prev* world*] |
力/力矩 (wrench) |
在力控坐标系上对路点施加的力和扭矩 |
ARRAY_VEC_6d |
N |
|
速度 (vel) |
TCP 线速度 |
DOUBLE |
m/s |
0.25 ∈ [0.001 … 2.2] |
加速度 (acc) |
TCP 线加速度 |
DOUBLE |
m/s^2 |
1.5 ∈ [0.1 … 3.0] |
区域半径 (zoneRadius) |
TCP 接近路点时的过渡区域半径 |
TYPE |
mm |
Z50 ∈ [ZFine Z1 Z5 Z10 Z15 Z20 Z30 Z40 Z50 Z60 Z80 Z100 Z150 Z200] |
目标点容差等级 (targetTolerLevel) |
判断机器人是否已到达目标点的容差等级。1 表示用最小的容差检查,0 表示不检查容差。 |
INT |
none |
0 ∈ [0 … 10] |
力控坐标系 (forceCoord) |
力控方向的参考坐标系 |
COORD |
m-deg |
0 0 0 0 0 0 TCP ONLINE ∈ [world* tcp_start* tcp*] |
力控轴* (forceAxis) |
施加力或力矩的力控坐标轴 |
VEC_6i |
none |
0 0 1 0 0 0 ∈ [0 0 0 0 0 0 … 1 1 1 1 1 1] |
加加速度 (jerk) |
TCP 线加加速度 |
DOUBLE |
m/s^3 |
200.0 ∈ [50.0 … 1500.0] |
角速度 (angVel) |
TCP 角速度 |
DOUBLE |
deg/s |
150.0 ∈ [10.0 … 500.0] |
构型优化目标 (configOptObj) |
三种机器人在运动过程中的构型优化目标的权重,分别是使机器人在笛卡尔坐标空间中更容易平移,在笛卡尔坐标空间中更容易旋转,以及更接近关节参考位置。 |
VEC_3d |
none |
0.0 0.0 0.5 ∈ [0.0 0.0 0.1 … 1.0 1.0 1.0] |
刚度等级 (stiffScale) |
机器人运动时的刚度等级。刚度等级越低,机器人运动越柔顺。 |
VEC_6d |
none |
1.0 1.0 1.0 1.0 1.0 1.0 ∈ [0.01 0.01 0.01 0.01 0.01 0.01 … 1.0 1.0 1.0 1.0 1.0 1.0] |
启用接触力/力矩极限 (enableMaxWrench) |
在各笛卡尔方向(X, Y, Z, Rx, Ry, Rz) 上是否启用最大接触力/力矩的标志 |
VEC_6i |
none |
0 0 0 0 0 0 ∈ [0 0 0 0 0 0 … 1 1 1 1 1 1] |
最大接触力/力矩 (maxContactWrench) |
沿着 Fx, Fy, Fz, Mx, My, Mz 静态碰撞时允许的最大接触力和力矩 |
VEC_6d |
N |
270.0 270.0 270.0 100.0 100.0 100.0 ∈ [5.0 5.0 5.0 1.0 1.0 1.0 … 270.0 270.0 270.0 100.0 100.0 100.0] |
启用切入点 (enableEntryPoint) |
将第一个路点作为切入点,机器人将从自由空间沿着力控轴方向前进至第一个路点,随后执行力位混合运动。 |
BOOL |
none |
0 ∈ [0 / 1] |
最大接触力/力矩暂停 (maxWrenchPause) |
机器人在达到最大接触力/力矩后暂停,解除最大接触力/力矩后机器人继续执行后面的轨迹。 |
BOOL |
none |
0 ∈ [0 / 1] |
力位控制解耦 (motionForceDecouple) |
用于指示力控和位置控制是否解耦的标志。在工具较长、摩擦力较大的情况下,建议启用此参数以使工具更稳定地贴合人体。 |
BOOL |
none |
0 ∈ [0 / 1] |
力控方向最大速度 (maxVelForceDir) |
沿力控方向的最大移动速度 |
VEC_3d |
m/s |
2.0 2.0 2.0 ∈ [0.005 0.005 0.005 … 2.0 2.0 2.0] |
指令力/力矩滤波频率 (wrenchFilterCutoff) |
指令力/力矩的滤波频率。频率越低,指令力/力矩的变化越平缓。 |
DOUBLE |
Hz |
1.0 ∈ [0.1 … 10.0] |
线间距 (lineSpace) |
叠加的正弦波轨迹的波长或等距螺旋波轨迹中两个螺旋线之间的距离 |
DOUBLE |
m |
0.005 ∈ [0.005 … 1.0] |
振幅 (amplitude) |
叠加的正弦波轨迹或等距螺旋波轨迹的振幅 |
DOUBLE |
m |
0.0 ∈ [-1.0 … 1.0] |
螺距 (pitch) |
等距螺旋波轨迹的螺距 |
DOUBLE |
m |
0.0 ∈ [-1.0 … 1.0] |
*注意:在执行元操作前,必须为标星号的参数赋值。
*坐标系定义
坐标系 |
定义 |
输入格式 |
---|---|---|
world |
世界坐标系,即位于机器人基座中心的固定笛卡尔坐标系 |
X Y Z Rx Ry Rz WORLD WORLD_ORIGIN |
work |
工件坐标系,相对于世界坐标系的用于定义工件位置的坐标系 |
X Y Z Rx Ry Rz WORK WorkCoordName |
tcp |
TCP坐标系,相对于机器人法兰盘中心的定义工具控制点的坐标系 |
X Y Z Rx Ry Rz TCP ONLINE |
tcp_start |
固定在元操作初始TCP位置上的坐标系 |
X Y Z Rx Ry Rz TCP START |
traj_start |
工具坐标系方向上,相对于初始 TCP 位置的偏移 |
X Y Z Rx Ry Rz TRAJ START |
traj_goal |
工具坐标系方向上,相对于目标 TCP 位置的偏移 |
X Y Z Rx Ry Rz TRAJ GOAL |
traj_prev |
工具坐标系方向上,相对于前一路点的偏移 |
X Y Z Rx Ry Rz TRAJ PREVIOUSWAYPOINT |
您可以使用上表中简化的输入格式来描述一个笛卡尔路点,其完整的表示为:X Y Z Rx Ry Rz ReferenceCoordinate A1 A2 A3 A4 A5 A6 A7 E1 E2 E3 E4 E5 E6. A1 至 A7 表示机器人关节参考位置,X1 至 X6 表示外部轴的目标位置。您可根据需求增加相应的数据。
在路点之间使用冒号(:)隔开。例:0.2 0 0.3 0 180 0 WORLD WORLD_ORIGIN : 0.2 0.1 0.3 0 180 0 WORLD WORLD_ORIGIN.
元操作状态参数
状态参数 |
描述 |
类型 |
单位 |
---|---|---|---|
终止 (terminated) |
元操作终止的标志。如果元操作终止,则将其设置为 True。 |
BOOL |
none |
时间周期 (timePeriod) |
运行当前元操作所用的时间 |
DOUBLE |
s |
到达目标点 (reachedTarget) |
用于指示机器人是否已到达目标点的标志 |
BOOL |
none |
路点编号 (waypointIndex) |
机器人当前刚经过的路点编号。编号 0 代表初始位置。 |
INT |
none |
元操作输出参数
输出参数 |
描述 |
类型 |
单位 |
---|---|---|---|
终止位姿 (tcpPoseOut) |
在世界坐标系下元操作终止时的 TCP 位姿 |
COORD |
m-deg |
默认跳转条件
状态参数 |
跳转条件 |
数值 |
---|---|---|
reachedTarget |
= |
1 |