PressMove对象
PressMove对象用于沿指定的轨迹移动机器人,同时使用指定的力朝指定的方向按压。
此外,与FollowMove对象一样,可以同时沿另一个指定方向跟随。
在不接触的状态下执行PressMove对象时,除了沿指定的路径移动之外,机器人还会朝具有指定的力的方向移动。对于贴合任务或组装任务,此对象用于执行压装, 拧螺丝, 抛光操作。即使工件的尺寸或抓取位置存在误差范围,机器人也可以保持以特定的力移动。
上图是PressMove对象的动作图像。在非接触状态下执行时,机器人将沿轨迹(蓝色箭头)朝按压方向(白色箭头)移动。机器人与物体接触后,它将沿指定的轨迹移动并保持施加特定的力(红色箭头)。
如果在沿指定的轨迹移动时满足结束条件,PressMove对象将成功。它可以使用与位置、I/O和力相关的结束条件。
每个结束条件都设置了是否在ForceCheckEnabled、PosCheckEnabled和IOCheckEnabled情况下使用。如果未设定结束条件,则对象将总是成功。当设定了多个结束条件时,可以使用EndCheckOperator中的AND或OR选择如何对结束条件进行组合。
每个条件如下:
结束条件 | 成功条件 |
---|---|
有关力的结束条件 | 机器人沿指定的轨迹移动时,在HoldTimeThresh指定的时间内持续满足以下所有项目的要求 |
ForceCheckPolarity为Inside时: 在Fx、Fy和Fz,由ControlMode指定为Press-或Press+的轴在PressForce-PressCheckTolF到PressForce+PressCheckTolF的范围内 | |
ForceCheckPolarity为Outside时: 在Fx、Fy和Fz,由ControlMode指定为Press-或Press+的轴在PressForce-PressCheckTolF到PressForce+PressCheckTolF的范围外 | |
ForceCheckPolarity为Inside时: 在Tx、Ty和Tz,由ControlMode指定为Press-或Press+的轴在PressForce-PressCheckTolT到PressForce+PressCheckTolT的范围内 | |
ForceCheckPolarity为Outside时: 在Tx、Ty和Tz,由ControlMode指定为Press-或Press+的轴在PressForce-PressCheckTolT到PressForce+PressCheckTolT的范围外 | |
ForceCheckMode为PressFollow且ForceCheckPolarity为Inside时: 在Fx、Fy和Fz,由ControlMode指定为Follow的轴在-FollowCheckTolF到+FollowCheckTolF的范围内 | |
ForceCheckMode为PressFollow且ForceCheckPolarity为Outside时: 在Fx、Fy和Fz,由ControlMode指定为Follow的轴在-FollowCheckTolF到+FollowCheckTolF的范围外 | |
ForceCheckMode为PressFollow且ForceCheckPolarity为Inside时: Tx、Ty或Tz方向由ControlMode指定为Follow的轴应该在-FollowCheckTolT至+FollowCheckTolT范围内 | |
ForceCheckMode为PressFollow且ForceCheckPolarity为Outside时: Tx、Ty或Tz方向由ControlMode指定为Follow的轴不应在-FollowCheckTolT至+FollowCheckTolT范围内 | |
有关位置的结束条件 | 机器人沿指定的轨迹移动时,满足以下任一条件 |
PosCheckType是RobotPlane时: 对于PlaneNumber设定的Plane,满足PlaneEndCondition设定的状态。 | |
PosCheckType是RelativePlane时: 对于PlaneEndCondition为PlaneRelativeX, PlaneRelativeY, PlaneRelativeZ, PlaneRelativeOrg, PlaneRelativeOrient, PlaneAxes, PlaneRelativeRobotLocal设定的相对平面,满足PlaneEndCondition设定的状态。 | |
与I/O相关的结束条件 | 机器人沿指定的轨迹移动时,IOCheckInputBit指定的输入位应该处于IOCheckInputStatus指定的状态。 |