• 沒有找到結果。

技术参考手册

N/A
N/A
Protected

Academic year: 2022

Share "技术参考手册"

Copied!
1556
0
0

加載中.... (立即查看全文)

全文

(1)

技术参考手册

RAPID指令、函数和数据类型

(2)

Workspace R16-1 version a6 Checked in 2016-03-01 Skribenta version 4.6.209

(3)

技术参考手册 RAPID指令、函数和数据类型

RobotWare 6.03 文档编号: 3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(4)

册中可能出现的错误概不负责。

除本手册中有明确陈述之外,本手册中的任何内容不应解释为 ABB 对个人损失、财产 损坏或具体适用性等做出的任何担保或保证。

ABB 对因使用本手册及其中所述产品而引起的意外或间接伤害概不负责。

未经 ABB 的书面许可,不得再生或复制本手册和其中的任何部件。

可从 ABB 处获取此手册的额外复印件。

本出版物的原始语言为英语。所有其他语言版本均翻译自英语版本。

© 版权所有 2004-2016 ABB。保留所有权利。

ABB AB Robotics Products Se-721 68 Västerås

瑞典

(5)

目表

17 手册概述 ...

19 1 指令:

19 1.1 AccSet-降低加速度 ...

22 1.2 ActEventBuffer - 事件缓冲启用 ...

24 1.3 ActUnit - 启用机械单元 ...

26 1.4 Add-增加数值 ...

28 1.5 AliasIO - 确定I/O信号以及别名 ...

30 1.6 AliasIOReset-重置I/O信号以及别名 ...

32 1.7 ":=" - 分配一个数值 ...

34 1.8 BitClear - 在一个字节或双数值数据中清除一个特定位 ...

37 1.9 BitSet - 在一个字节或者双数值数据中设置一个特定位 ...

40 1.10 BookErrNo - 登记RAPID系统错误编号 ...

42 1.11 Break - 中断程序执行 ...

43 1.12 CallByVar - 通过变量,调用无返回值程序 ...

45 1.13 CamFlush - 从摄像头删除集合数据 ...

46 1.14 CamGetParameter - 获取不同名称的摄像头参数 ...

48 1.15 CamGetResult - 从集合获取摄像头目标 ...

50 1.16 CamLoadJob -加载摄像头任务到摄像头 ...

52 1.17 CamReqImage - 命令摄像头采集图像 ...

54 1.18 CamSetExposure - 设置具体摄像头的数据 ...

56 1.19 CamSetParameter - 设置不同名称的摄像头参数 ...

58 1.20 CamSetProgramMode - 命令摄像头进入编程模式 ...

59 1.21 CamSetRunMode - 命令摄像头进入运行模式 ...

60 1.22 CamStartLoadJob - 开始加载摄像头任务到摄像头 ...

62 1.23 CamWaitLoadJob – 等待摄像头任务加载完毕 ...

63 1.24 CancelLoad - 取消模块加载 ...

65 1.25 CapAPTrSetup - 设置At-Point-Tracker ...

67 1.26 CapC - CAP圆周运动指令 ...

75 1.27 CapCondSetDO - 设置TCP停止时的数字输出信号 ...

77 1.28 CapEquiDist - 产生等距事件 ...

79 1.29 CapL - CAP线性运动指令 ...

86 1.30 CapLATrSetup - 设置Look-Ahead-Tracker ...

91 1.31 CapNoProcess - 无需进程的情况下,运行CAP ...

93 1.32 CapRefresh - 更新CAP数据 ...

95 1.33 CapWeaveSync - 设置摆动同步信号和电平 ...

97 1.34 CheckProgRef - 检查程序参考 ...

98 1.35 CirPathMode - 圆周路径期间的工具方位调整 ...

104 1.36 Clear - 清除数值 ...

105 1.37 ClearIOBuff - 清除串行通道的输入缓存 ...

107 1.38 ClearPath - 清除当前路径 ...

110 1.39 ClearRawBytes - 清除原始数据字节数据的内容 ...

112 1.40 ClkReset - 重置用于定时的时钟 ...

113 1.41 ClkStart - 启动用于定时的时钟 ...

115 1.42 ClkStop - 停止用于定时的时钟 ...

116 1.43 Close - 关闭文件或者串行通道 ...

117 1.44 CloseDir - 关闭路径 ...

118 1.45 Comment - 备注 ...

119 1.46 Compact IF - 如果满足条件,那么...(一个指令) ...

120 1.47 ConfJ - 接头移动期间,控制配置 ...

122 1.48 ConfL - 线性运动期间,监测配置 ...

124 1.49 CONNECT - 将中断与软中断程序相连 ...

126 1.50 CopyFile - 复制文件 ...

128 1.51 CopyRawBytes - 复制原始数据字节数据的内容 ...

130 1.52 CorrClear - 移除所有修正发电机 ...

131 1.53 CorrCon - 与修正发电机相连 ...

136 1.54 CorrDiscon - 与修正发电机断开 ...

技术参考手册 - RAPID指令、函数和数据类型 5

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(6)

137 1.55 CorrWrite - 写入修正发电机 ...

138 1.56 DeactEventBuffer - 事件缓冲启用 ...

140 1.57 DeactUnit - 停用机械单元 ...

142 1.58 Decr - 减量为1 ...

144 1.59 DitherAct - 促使软伺服抖动 ...

146 1.60 DitherDeact - 促使软伺服停止抖动 ...

147 1.61 DropSensor - 使物体落于传感器上 ...

148 1.62 DropWObj - 使工件落于传送带上 ...

149 1.63 EGMActJoint-为一个关节目标点编写一次EGM移动 ...

152 1.64 EGMActMove-编写一次经过路径校正的EGM移动 ...

154 1.65 EGMActPose-为一个姿态目标点编写一次EGM移动 ...

158 1.66 EGMGetId-获取一个EGM标识 ...

159 1.67 EGMMoveC-经过路径校正的圆形EGM移动 ...

162 1.68 EGMMoveL-经过路径校正的直线EGM移动 ...

165 1.69 EGMReset-重置一项EGM进程 ...

166 1.70 EGMRunJoint-执行一次含一个关节目标点的EGM移动 ...

168 1.71 EGMRunPose-执行一次含一个姿态目标点的EGM移动 ...

171 1.72 EGMSetupAI-为EGM设置模拟输入信号 ...

174 1.73 EGMSetupAO-为EGM设施模拟输出信号 ...

177 1.74 EGMSetupGI-为EGM设置编组输入信号 ...

180 1.75 EGMSetupLTAPP-为EGM设置相应的LTAPP协议 ...

182 1.76 EGMSetupUC-为EGM设置UdpUc协议 ...

184 1.77 EGMStop-停止一次EGM移动 ...

186 1.78 EOffsOff - 停用附加轴的偏移量 ...

187 1.79 EOffsOn - 启用附加轴的偏移量 ...

189 1.80 EOffsSet - 启用附加轴(使用已知值)的偏移量 ...

191 1.81 EraseModule - 擦除模块 ...

193 1.82 ErrLog - 写入错误消息 ...

196 1.83 ErrRaise - 写入警告,调用错误处理器 ...

200 1.84 ErrWrite - 写入错误消息 ...

202 1.85 EXIT - 终止程序执行 ...

203 1.86 ExitCycle - 中断当前循环,并开始下一循环 ...

205 1.87 FOR - 重复给定的次数 ...

207 1.88 FricIdInit - 开始摩擦识别 ...

208 1.89 FricIdEvaluate - 评估摩擦识别 ...

211 1.90 FricIdSetFricLevels - 在摩擦识别后设置摩擦等级 ...

213 1.91 GetDataVal - 获得数据对象的值 ...

216 1.92 GetSysData - 获取系统数据 ...

219 1.93 GetTrapData - 获取当前TRAP的中断数据 ...

221 1.94 GOTO - 转到新的指令 ...

223 1.95 GripLoad - 定义机械臂的有效负载 ...

225 1.96 HollowWristReset - 重置IRB5402和IRB5403的中空腕 ...

227 1.97 ICap - 将CAP事件与软中断子程序关联起来 ...

231 1.98 IDelete - 取消中断 ...

232 1.99 IDisable - 禁用中断 ...

233 1.100 IEnable - 启用中断 ...

234 1.101 IError - 调整关于错误的中断 ...

237 1.102 IF - 如果满足条件,那么...;否则... ...

239 1.103 Incr - 增量为1 ...

241 1.104 IndAMove - 独立的绝对位置运动 ...

244 1.105 IndCMove - 独立的连续运动 ...

247 1.106 IndDMove - 独立的德尔塔位置运动 ...

250 1.107 IndReset - 独立重置 ...

254 1.108 IndReset - 独立的相对位置运动 ...

258 1.109 InitSuperv - 重置CAP的所有监控 ...

259 1.110 InvertDO - 转化数字信号输出信号值 ...

261 1.111 IOBusStart - Start of I/O bus ...

262 1.112 IOBusState - 获取I/O总线的当前状态 ...

265 1.113 IODisable - 停用I/O单元 ...

(7)

268 1.114 IOEnable - 启用I/O单元 ...

270 1.115 IPathPos - 获取摆动时的中心线机器人位置。 ...

272 1.116 IPers - 在永久变量数值改变时中断 ...

274 1.117 IRMQMessage - 下达数据类型的RMQ中断指令 ...

278 1.118 ISignalAI - 模拟信号输入信号的中断 ...

287 1.119 ISignalAO - 模拟信号输出信号的中断 ...

290 1.120 ISignalDI - 下达数字信号输入信号中断指令 ...

293 1.121 ISignalDO - 数字信号输出信号的中断 ...

296 1.122 ISignalGI - 下达一组数字信号输入信号中断的指令 ...

299 1.123 ISignalGO - 下达一组数字信号输出信号中断的指令 ...

302 1.124 ISleep - 停用一个中断 ...

304 1.125 ITimer - 下达定时中断的指令 ...

306 1.126 IVarValue - 下达变量值中断指令 ...

309 1.127 IWatch - 启用中断 ...

311 1.128 Label - 线程名称 ...

312 1.129 Load - 执行期间,加载普通程序模块 ...

316 1.130 LoadId - 工具或有效负载的负载识别 ...

322 1.131 MakeDir - 创建新路径 ...

323 1.132 ManLoadIdProc - IRBP机械臂的负载识别 ...

327 1.133 MechUnitLoad - 确定机械单元的有效负载 ...

331 1.134 MotionProcessModeSet - 设置运动过程模式 ...

333 1.135 MotionSup - 禁用/启用运动监控 ...

335 1.136 MoveAbsJ - 移动机械臂至绝对接头位置 ...

341 1.137 MoveC - 使机械臂沿圆周移动 ...

348 1.138 MoveCAO - 使机械臂沿圆周运动,设置拐角处的模拟信号输出 ...

352 1.139 MoveCDO - 使机械臂沿圆周运动,设置拐角处的数字信号输出 ...

356 1.140 MoveCGO - 机械臂沿圆周运动,设置拐角处的组输出信号 ...

360 1.141 MoveCSync - 机械臂沿圆周运动,执行RAPID无返回值程序。 ...

364 1.142 MoveExtJ - 在没有TCP的情况下,移动一个或数个机械单元 ...

367 1.143 MoveJ - 通过接头移动,移动机械臂 ...

372 1.144 MoveJAO - 通过接头移动来移动机械臂,设置拐角处的模拟信号输出 ...

376 1.145 MoveJDO - 通过接头移动来移动机械臂,设置拐角处的数字信号输出 ...

380 1.146 MoveJGO - 通过接头移动来移动机械臂,设置拐角处的组输出信号 ...

384 1.147 MoveJSync - 通过接头移动来移动机械臂,执行RAPID无返回值程序。 ...

388 1.148 MoveL - 使机械臂沿直线移动 ...

393 1.149 MoveLAO - 使机械臂沿直线运动,设置拐角处的模拟信号输出 ...

397 1.150 MoveLDO - 使机械臂沿直线运动,设置拐角处的数字信号输出 ...

401 1.151 MoveLGO - 使机械臂沿直线运动,设置拐角处的组输出信号 ...

405 1.152 MoveLSync - 机械臂沿直线运动,执行RAPID无返回值程序 ...

409 1.153 MToolRotCalib - 移动工具旋转校准 ...

412 1.154 MToolTCPCalib - 关于移动工具的TCP的校准 ...

415 1.155 Open - 打开文件或串行通道 ...

419 1.156 OpenDir - 打开路径 ...

421 1.157 PackDNHeader - 将DeviceNet标题装入原始数据字节数据中。 ...

424 1.158 PackRawBytes - 将数据装入原始数据字节数据 ...

428 1.159 PathAccLim - 降低路径沿线的TCP加速度 ...

431 1.160 PathRecMoveBwd - 将路径记录器向后移动 ...

437 1.161 PathRecMoveFwd - 向前移动路径记录器 ...

440 1.162 PathRecStart - 起动路径记录器 ...

442 1.163 PathRecStop - 停止路径记录器 ...

445 1.164 PathResol - 覆盖路径分辨率 ...

447 1.165 PDispOff - 停用程序位移 ...

448 1.166 PDispOn - 启用程序位移 ...

452 1.167 PDispSet - 启用使用已知坐标系的程序位移 ...

454 1.168 ProcCall - 调用新无返回值程序 ...

456 1.169 ProcerrRecovery - 由过程运动错误产生和恢复 ...

461 1.170 PrxActivAndStoreRecord - 启用和储存已记录的配置文件数据 ...

463 1.171 PrxActivRecord - 启用已记录的配置文件数据 ...

465 1.172 PrxDbgStoreRecord - 储存和调试已记录的配置文件数据 ...

技术参考手册 - RAPID指令、函数和数据类型 7

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(8)

466 1.173 PrxDeactRecord - 停用记录 ...

467 1.174 PrxResetPos - 重置传感器零位置 ...

468 1.175 PrxResetRecords - 重置和停用所有记录 ...

469 1.176 PrxSetPosOffset - 设置传感器的参考位置 ...

470 1.177 PrxSetRecordSampleTime - 设置有关记录配置文件的样本时间 ...

471 1.178 PrxSetSyncalarm - 设置同步报警行为 ...

472 1.179 PrxStartRecord - 记录新的配置文件 ...

474 1.180 PrxStopRecord - 停止记录配置文件 ...

475 1.181 PrxStoreRecord - 储存已记录的配置文件数据 ...

477 1.182 PrxUseFileRecord - 使用已记录的配置文件数据 ...

478 1.183 PulseDO - 产生关于数字信号输出信号的脉冲 ...

481 1.184 RAISE - 调用错误处理器 ...

484 1.185 RaiseToUser - 将错误传播至用户等级 ...

487 1.186 ReadAnyBin - 读取二进制串行通道或文件的数据 ...

490 1.187 ReadBlock - 读取设备的数据块 ...

492 1.188 ReadCfgData - 读取系统参数的属性 ...

496 1.189 ReadErrData - 获取关于错误的信息 ...

499 1.190 ReadRawBytes - 读取原始数据字节数据 ...

501 1.191 RemoveAllCyclicBool - 撤除所有进行循环求值的逻辑条件 ...

502 1.192 RemoveCyclicBool - 撤销进行循环求值的逻辑条件 ...

503 1.193 RemoveDir - 删除路径 ...

504 1.194 RemoveFile - 删除文件 ...

505 1.195 RemoveSuperv - 撤除一个信号的条件 ...

507 1.196 RenameFile - 重命名文件 ...

509 1.197 Reset - 重置数字信号输出信号 ...

510 1.198 ResetPPMoved - 重置以手动模式移动的程序指针的状态 ...

511 1.199 ResetRetryCount - 重置重试次数 ...

512 1.200 RestoPath - 中断之后,恢复路径 ...

514 1.201 RETRY - 在错误后恢复执行 ...

515 1.202 RETURN - 完成程序的执行 ...

517 1.203 Rewind - 重绕文件位置 ...

519 1.204 RMQEmptyQueue - 空白RAPID消息队列 ...

520 1.205 RMQFindSlot - 从槽名中寻找槽识别号 ...

522 1.206 RMQGetMessage - 获取RMQ消息 ...

525 1.207 RMQGetMsgData - 从RMQ消息获取数据部分 ...

528 1.208 RMQGetMsgHeader - 从RMQ消息获取标题信息 ...

531 1.209 RMQReadWait - 从RMQ返回消息 ...

534 1.210 RMQSendMessage - 发送RMQ数据消息 ...

537 1.211 RMQSendWait - 发送RMQ数据消息,并等待响应 ...

541 1.212 SafetyControllerSyncRequest - 硬件同步程序的初始化 ...

542 1.213 Save - 保存普通程序模块 ...

545 1.214 SaveCfgData - 将系统参数保存至文件 ...

547 1.215 SCWrite - 将变量数据发送到客户端应用 ...

549 1.216 SearchC - 使用机械臂沿圆周进行搜索 ...

557 1.217 SearchExtJ - 在没有TCP的情况下,搜索一个或多个机械单元 ...

564 1.218 SearchL - 使用机械臂沿直线进行搜索 ...

574 1.219 SenDevice - 与传感器设备相连 ...

576 1.220 Set - 设置数字信号输出信号 ...

578 1.221 SetAllDataVal - 在定义设置下,设置所有数据对象的值 ...

580 1.222 SetAO - 改变模拟信号输出信号的值 ...

582 1.223 SetDataSearch - 定义在搜索序列中设置的符号 ...

586 1.224 SetDataVal - 设置数据对象的值 ...

589 1.225 SetDO - 改变数字信号输出信号值 ...

591 1.226 SetGO - 改变一组数字信号输出信号的值 ...

594 1.227 SetSysData - 设置系统数据 ...

596 1.228 SetupCyclicBool - 设置进行循环求值的逻辑条件 ...

599 1.229 SetupSuperv - 设置CAP信号监控条件 ...

602 1.230 SiConnect - 传感器接口连接 ...

605 1.231 SiClose - 传感器接口关闭 ...

(9)

606 1.232 SiGetCyclic - 传感器接口获得循环 ...

608 1.233 SingArea - 确定奇点周围的插补 ...

610 1.234 SiSetCyclic - 传感器接口设置循环 ...

612 1.235 SkipWarn - 跳过最近的警告 ...

613 1.236 SocketAccept - 接受输入连接 ...

616 1.237 SocketBind - 将套接字与我的IP地址和端口绑定 ...

618 1.238 SocketClose - 关闭套接字 ...

620 1.239 SocketConnect - 连接远程计算机 ...

623 1.240 SocketCreate - 创建新套接字 ...

625 1.241 SocketListen - 监听输入连接 ...

627 1.242 SocketReceive - 接收来自远程计算机的数据 ...

631 1.243 SocketReceiveFrom - 接收来自远程计算机的数据 ...

635 1.244 SocketSend - 向远程计算机发送数据 ...

639 1.245 SocketSendTo - 向远程计算机发送数据 ...

643 1.246 SoftAct - 启用软伺服 ...

645 1.247 SoftDeact - 停用软伺服 ...

646 1.248 SpeedLimAxis - 设置轴的速度限制 ...

650 1.249 SpeedLimCheckPoint - 设置检查点的速度限制 ...

655 1.250 SpeedRefresh - 更新持续运动速度覆盖 ...

657 1.251 SpyStart - 开始记录执行时间数据 ...

659 1.252 SpyStop - 停止记录时间执行数据 ...

660 1.253 StartLoad - 执行期间,加载普通程序模块 ...

663 1.254 StartMove - 重启机械臂移动 ...

665 1.255 StartMoveRetry - 重启机械臂移动和执行 ...

667 1.256 STCalib - 校准伺服工具 ...

671 1.257 STClose - 关闭伺服工具 ...

674 1.258 StepBwdPath - 在路径上向后移动一步 ...

676 1.259 STIndGun - 以独立模式设置焊枪 ...

678 1.260 STIndGunReset - 以独立模式重置焊枪 ...

679 1.261 SToolRotCalib - 关于固定工具的TCP和旋转的校准 ...

682 1.262 SToolTCPCalib - 关于固定工具的TCP的校准 ...

685 1.263 Stop - 停止程序执行 ...

688 1.264 STOpen - 打开伺服工具 ...

690 1.265 StopMove - 停止机械臂的移动 ...

693 1.266 StopMoveReset - 重置系统停止移动状态 ...

695 1.267 StorePath - 发生中断时,存储路径 ...

697 1.268 STTune - 调节伺服工具 ...

700 1.269 STTuneReset - 重置伺服工具调节 ...

701 1.270 SupSyncSensorOff - 停止同步传感器监督 ...

702 1.271 SupSyncSensorOn - 起动同步传感器监督 ...

704 1.272 SyncMoveOff - 结束协调同步移动 ...

709 1.273 SyncMoveOn - 起动协调同步移动 ...

715 1.274 SyncMoveResume - 设置同步协调移动 ...

717 1.275 SyncMoveSuspend - 设置独立-半协调移动 ...

719 1.276 SyncMoveUndo - 设置独立移动 ...

721 1.277 SyncToSensor - 同步至传感器 ...

723 1.278 SystemStopAction - 停止机器人系统 ...

725 1.279 TEST - 根据表达式的值... ...

727 1.280 TestSignDefine - 定义测试信号 ...

729 1.281 TestSignReset - 重置所有测试信号定义 ...

730 1.282 TextTabInstall - 安装文本表格 ...

732 1.283 TPErase - 擦除在FlexPendant示教器上印刷的文本 ...

733 1.284 TPReadDnum - 从FlexPendant示教器读取编号 ...

736 1.285 TPReadFK - 读取功能键 ...

740 1.286 TPReadNum - 从FlexPendant示教器读取编号 ...

743 1.287 TPShow - 位于FlexPendant示教器上的开关窗口 ...

744 1.288 TPWrite - 写入FlexPendant示教器 ...

747 1.289 TriggC - 关于事件的机械臂圆周移动 ...

754 1.290 TriggCheckIO - 定义位于固定位置的IO检查 ...

技术参考手册 - RAPID指令、函数和数据类型 9

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(10)

759 1.291 TriggDataCopy - 复制触发数据变量中的内容 ...

761 1.292 TriggDataReset - 重置触发数据变量中的内容 ...

763 1.293 TriggEquip - 定义路径上的固定位置和时间I/O事件 ...

769 1.294 TriggInt - 定义与位置相关的中断 ...

773 1.295 TriggIO - 定义停止点附近的固定位置或时间I/O事件 ...

778 1.296 TriggJ - 关于事件的轴式机械臂运动 ...

785 1.297 TriggL - 关于事件的机械臂线性运动 ...

792 1.298 TriggJIOs - 接头机械臂移动以及I/O事件 ...

798 1.299 TriggLIOs - 机械臂线性移动以及I/O事件 ...

804 1.300 TriggRampAO - 定义路径上的固定位置斜坡AO事件 ...

810 1.301 TriggSpeed - 定义与固定位置-时间尺度事件成比例的TCP速度模拟信号输出 ...

817 1.302 TriggStopProc - 产生关于停止时触发信号的重启数据 ...

822 1.303 TryInt - 测试数据对象是否为有效整数 ...

824 1.304 TRYNEXT - 跳转至引起错误的指令 ...

825 1.305 TuneReset - 重置伺服调节 ...

826 1.306 TuneServo - 调节伺服 ...

832 1.307 UIMsgBox - 用户消息对话框,基本类型 ...

839 1.308 UIShow - 用户界面显示 ...

843 1.309 UnLoad - 执行期间,卸载普通程序模块 ...

845 1.310 UnpackRawBytes - 打开来自原始数据字节数据的数据 ...

849 1.311 VelSet - 改变编程速率 ...

851 1.312 WaitAI - 等待直至已设置模拟信号输入信号值 ...

856 1.313 WaitAO - 等待直至已设置模拟信号输出信号值 ...

861 1.314 WaitDI - 等待直至已设置数字信号输入信号 ...

865 1.315 WaitDO - 等待直至已设置数字信号输出信号 ...

869 1.316 WaitGI - 等待直至已设置一组数字信号输入信号 ...

875 1.317 WaitGO - 等待直至已设置一组数字信号输出信号 ...

881 1.318 WaitLoad - 将加载的模块与任务相连 ...

885 1.319 WaitRob - 等待直至达到停止点或零速度 ...

887 1.320 WaitSensor - 等待传感器连接 ...

890 1.321 WaitSyncTask - 在同步点等待其他程序任务 ...

893 1.322 WaitTestAndSet - 等待,直至变量FALSE,随后设置 ...

895 1.323 WaitTime - 等待给定的时间 ...

897 1.324 WaitUntil - 等待直至满足条件 ...

903 1.325 WaitWObj - 等待传送带上的工件 ...

906 1.326 WarmStart - 重启控制器 ...

907 1.327 WHILE - 只要...便重复 ...

908 1.328 WorldAccLim - 控制世界坐标系中的加速度 ...

910 1.329 Write - 写入到基于字符的文件或串行通道 ...

913 1.330 WriteAnyBin - 将数据写入二进制串行通道或文件 ...

915 1.331 WriteBin - 写入至一个二进制串行通道 ...

917 1.332 WriteBlock - 将数据块写入设备 ...

919 1.333 WriteCfgData - 写入系统参数的属性 ...

923 1.334 WriteRawBytes - 写入原始数据字节数据 ...

925 1.335 WriteStrBin - 将字符串写入一个二进制串行通道 ...

927 1.336 WriteVar - 写入变量 ...

929 1.337 WZBoxDef - 定义一个箱形全局区域 ...

931 1.338 WZCylDef - 定义圆柱形全局区域 ...

933 1.339 WZDisable - 停用临时全局区域监控 ...

935 1.340 WZDOSet - 启用全局区域,设置数字信号输出 ...

939 1.341 WZEnable - 启用临时全局区域监控 ...

941 1.342 WZFree - 擦除临时全局区域监控 ...

943 1.343 WZHomeJointDef - 定义内部接头的全局区域 ...

946 1.344 WZLimJointDef - 定义有关接头内限制的全局区域 ...

949 1.345 WZLimSup - 启用全局区域限制监控 ...

952 1.346 WZSphDef - 定义球形全局区域 ...

955 2 函数

955 2.1 Abs - 获得绝对值 ...

(11)

956 2.2 AbsDnum - 获取一个双数值的绝对值 ...

958 2.3 ACos - 计算反余弦值 ...

959 2.4 ACosDnum - 计算反余弦值 ...

960 2.5 AInput - 读取模拟信号输入信号值 ...

962 2.6 AND - 评估一个逻辑值 ...

963 2.7 AOutput - 读取模拟信号输出信号值 ...

965 2.8 ArgName - 获取参数名 ...

968 2.9 ASin - 计算反正弦值 ...

969 2.10 ASinDnum - 计算反正弦值 ...

970 2.11 ATan - 计算反正切值 ...

971 2.12 ATanDnum - 计算反正切值 ...

972 2.13 ATan2 - 计算反正切2的值 ...

973 2.14 ATan2Dnum - 计算反正切2的值 ...

974 2.15 BitAnd - 字节数据上的逻辑逐位AND运算 ...

976 2.16 BitAndDnum - 双数值数据上的逻辑逐位AND运算 ...

978 2.17 BitCheck - 检查字节数据中的特定位是否设置完毕 ...

980 2.18 BitCheckDnum - 检查双数值数据中的特定位是否设置完毕 ...

982 2.19 BitLSh - 字节上的逻辑逐位LEFT SHIFT运算 ...

984 2.20 BitLShDnum - 双数值上的逻辑逐位LEFT SHIFT运算 ...

986 2.21 BitNeg - 字节数据上的逻辑逐位NEGATION运算 ...

988 2.22 BitNegDnum - 双数值数据上的逻辑逐位NEGATION运算 ...

990 2.23 BitOr - 字节数据上的逻辑逐位OR运算 ...

992 2.24 BitOrDnum - 双数值数据上的逻辑逐位OR运算 ...

994 2.25 BitRSh - 字节上的逻辑逐位RIGHT SHIFT运算 ...

996 2.26 BitRShDnum - 双数值上的逻辑逐位RIGHT SHIFT运算 ...

998 2.27 BitXOr - 字节数据上的逻辑逐位XOR运算 ...

1000 2.28 BitXOrDnum - 双数值数据上的逻辑逐位XOR运算 ...

1002 2.29 ByteToStr - 将字节转换为字符串数据 ...

1004 2.30 CalcJointT - 计算机器人位置的接头角 ...

1008 2.31 CalcRobT - 根据接头位置,计算机器人位置 ...

1010 2.32 CalcRotAxFrameZ - 计算一个旋转轴坐标系 ...

1014 2.33 CalcRotAxisFrame - 计算一个旋转轴坐标系 ...

1018 2.34 CamGetExposure - 获取具体摄像头的数据 ...

1020 2.35 CamGetLoadedJob - 获取所加载摄像头任务的名称 ...

1021 2.36 CamGetName - 获取所使用摄像头的名称 ...

1022 2.37 CamNumberOfResults - 获取可用结果的数量 ...

1024 2.38 CapGetFailSigs - 获取失败的I/O信号 ...

1025 2.39 CDate - 将当前日期作为字符串来读取 ...

1026 2.40 CJointT - 读取当前接头的角度 ...

1028 2.41 ClkRead - 读取用于定时的时钟 ...

1030 2.42 CorrRead - 读取当前的总偏移量 ...

1031 2.43 Cos - 计算余弦值 ...

1032 2.44 CosDnum - 计算余弦值 ...

1033 2.45 CPos - 读取当前位置(pos)数据 ...

1035 2.46 CRobT - 读取当前位置(机器人位置)数据 ...

1038 2.47 CSpeedOverride - 读取当前的覆盖速度 ...

1039 2.48 CTime - 将当前时间作为字符串来读取 ...

1040 2.49 CTool - 读取当前的工具数据 ...

1042 2.50 CWObj - 读取当前工件数据 ...

1044 2.51 DecToHex - 从十进制转换为十六进制 ...

1045 2.52 DefAccFrame - 定义一个准确的坐标系 ...

1048 2.53 DefDFrame - 定义一个位移坐标系 ...

1051 2.54 DefFrame - 定义一个坐标系 ...

1054 2.55 Dim - 获取数组的规模 ...

1056 2.56 DInput - 读取数字信号输入信号值 ...

1058 2.57 Distance - 两点之间的距离 ...

1060 2.58 DIV - 评估一个整数除法 ...

1061 2.59 DnumToNum - 将双数值转换为数值 ...

1063 2.60 DnumToStr - 将数值转换为字符串 ...

技术参考手册 - RAPID指令、函数和数据类型 11

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(12)

1065 2.61 DotProd - 两个位置矢量的点积 ...

1067 2.62 DOutput - 读取数字信号输出信号值 ...

1069 2.63 EGMGetState-获取当前的EGM状态 ...

1070 2.64 EulerZYX - 根据定向,获取欧拉角 ...

1072 2.65 EventType - 获取任意事件程序内的当前事件类型 ...

1074 2.66 ExecHandler - 获取执行处理器的类型 ...

1075 2.67 ExecLevel - 获取执行等级 ...

1076 2.68 Exp - 计算指数值 ...

1077 2.69 FileSize - 检索文件的大小 ...

1079 2.70 FileTimeDnum - 检索有关文件的时间信息 ...

1082 2.71 FSSize - 检索文件系统的大小 ...

1085 2.72 GetMaxNumberOfCyclicBool - 获取进行循环求值的逻辑条件的最大数 ...

1086 2.73 GetMecUnitName - 获取机械单元的名称 ...

1087 2.74 GetModalPayLoadMode - 获取ModalPayLoadMode值。 ...

1088 2.75 GetMotorTorque - 读取当前的电机扭矩 ...

1090 2.76 GetNextCyclicBool - 获取进行循环求值的逻辑条件的名称 ...

1092 2.77 GetNextMechUnit - 获取有关机械单元的名称和数据 ...

1095 2.78 GetNextSym - 获取下一个匹配的符号 ...

1097 2.79 GetNumberOfCyclicBool - 获取进行循环求值的逻辑条件的编号 ...

1098 2.80 GetServiceInfo - 从系统获取服务信息 ...

1100 2.81 GetSignalOrigin - 获得有关I/O信号来源的信息 ...

1102 2.82 GetSysInfo - 获取系统相关信息 ...

1105 2.83 GetTaskName - 获取当前任务的名称和编号 ...

1107 2.84 GetTime - 将当前时间作为一个数值来读取 ...

1109 2.85 GInput - 读取组输入信号的值 ...

1111 2.86 GInputDnum - 读取组输入信号的值 ...

1113 2.87 GOutput - 读取一组数字信号输出信号的值 ...

1115 2.88 GOutputDnum - 读取组输出信号的值 ...

1118 2.89 HexToDec - 从十六进制转换为十进制 ...

1119 2.90 IndInpos - 在位置状态中的独立轴 ...

1121 2.91 IndSpeed - 独立的速度状态 ...

1123 2.92 IOUnitState - 获取I/O单元的当前状态 ...

1126 2.93 IsFile - 检查文件的类型 ...

1130 2.94 IsMechUnitActive - 机械单元是否有效 ...

1131 2.95 IsPers - 是永久数据对象 ...

1132 2.96 IsStopMoveAct - 停止移动表示是否启用 ...

1134 2.97 IsStopStateEvent - 测试是否移动程序指针 ...

1136 2.98 IsSyncMoveOn - 测试是否处于同步移动模式 ...

1138 2.99 IsSysId - 测试系统识别号 ...

1139 2.100 IsVar - 是变量 ...

1140 2.101 MaxRobSpeed - 最大机械臂速度 ...

1141 2.102 MirPos - 一处位置的镜像 ...

1143 2.103 MOD - 评估一个整数模数 ...

1144 2.104 ModExist - 检查普通程序模块是否存在 ...

1145 2.105 ModTimeDnum - 获取加载模块的文件修改时间 ...

1147 2.106 MotionPlannerNo - 获取相连运动规划器编号 ...

1149 2.107 NonMotionMode - 读取非运动执行模式 ...

1150 2.108 NOT - 转化一个逻辑值 ...

1151 2.109 NOrient - 规范化方位 ...

1153 2.110 NumToDnum - 将数值转换为双数值 ...

1154 2.111 NumToStr - 将数值转换为字符串 ...

1156 2.112 Offs - 取代一个机械臂位置 ...

1158 2.113 OpMode - 读取运行模式 ...

1159 2.114 OR - 评估一个逻辑值 ...

1160 2.115 OrientZYX - 建立欧拉角的定向 ...

1162 2.116 ORobT - 从一个位置清除程序位移 ...

1164 2.117 ParIdPosValid - 用于参数识别的有效机械臂位置 ...

1167 2.118 ParIdRobValid - 用于参数识别的有效机械臂类型 ...

1170 2.119 PathLevel - 获取当前的路径等级。 ...

(13)

1172 2.120 PathRecValidBwd - 是否记录了有效的后退路径 ...

1175 2.121 PathRecValidFwd - 是否记录了有效的前进路径 ...

1179 2.122 PFRestart - 在电源故障后,检查中断的路径 ...

1180 2.123 PoseInv - 转化姿态数据 ...

1182 2.124 PoseMult - 倍增姿态数据 ...

1184 2.125 PoseVect - 将一次转换应用于一个矢量 ...

1186 2.126 Pow - 计算一个值的幂 ...

1187 2.127 PowDnum - 计算一个值的幂 ...

1188 2.128 PPMovedInManMode - 测试是否以手动模式移动程序指针。 ...

1189 2.129 Present - 测试是否使用一个可选参数 ...

1191 2.130 ProgMemFree - 获得闲置程序内存的容量 ...

1192 2.131 PrxGetMaxRecordpos - 获得最大传感器位置 ...

1193 2.132 RawBytesLen - 获取原始数据字节数据的长度 ...

1195 2.133 ReadBin - 从一个文件或串行通道读取一个字节 ...

1197 2.134 ReadDir - 读取路径中的下个条目 ...

1200 2.135 ReadMotor - 读取当前电机的角度 ...

1202 2.136 ReadNum - 从一个文件或串行通道读取一个数字 ...

1205 2.137 ReadStr - 从一个文件或串行通道读取一个字符串 ...

1208 2.138 ReadStrBin - 从一条二进制串行通道或一份文件读取一段字符串 ...

1210 2.139 ReadVar - 从设备读取变量 ...

1212 2.140 RelTool - 实施与工具相关的取代 ...

1214 2.141 RemainingRetries - 剩余的重试 ...

1215 2.142 RMQGetSlotName - 获取RMQ客户端的名称 ...

1217 2.143 RobName - 获取TCP机械臂名称 ...

1219 2.144 RobOS - 检查是否在RC或VC上执行 ...

1220 2.145 Round - 按四舍五入计算数值 ...

1222 2.146 RoundDnum - 按四舍五入计算数值 ...

1224 2.147 RunMode - 读取运行模式 ...

1225 2.148 SafetyControllerGetChecksum - 获取用户配置文件的检查和。 ...

1226 2.149 SafetyControllerGetSWVersion - 获取安全控制柜固件版本 ...

1227 2.150 SafetyControllerGetUserChecksum - 获取受保护参数的检查和 ...

1228 2.151 Sin - 计算正弦值 ...

1229 2.152 SinDnum - 计算正弦 (sine) 值 ...

1230 2.153 SocketGetStatus - 获得当前套接字的状态 ...

1232 2.154 SocketPeek - 测试套接字上数据的存在 ...

1234 2.155 Sqrt - 计算平方根值 ...

1235 2.156 SqrtDnum - 计算平方根值 ...

1236 2.157 STCalcForce - 计算一个伺服工具的焊枪头压力 ...

1237 2.158 STCalcTorque - 计算一个伺服工具的电机扭矩 ...

1238 2.159 STIsCalib - 测试是否计算出一个伺服工具 ...

1240 2.160 STIsClosed - 测试是否已关闭一个伺服工具 ...

1242 2.161 STIsIndGun - 测试一个伺服工具是否处于独立模式 ...

1243 2.162 STIsOpen - 测试是否已打开一个伺服工具 ...

1245 2.163 StrDigCalc - 有关数据类型数字字符串的算术运算 ...

1247 2.164 StrDigCmp - 将仅含数字的两个字符串进行比较 ...

1249 2.165 StrFind - 搜索一个字符串中的一个字符 ...

1251 2.166 StrLen - 获取字符串长度 ...

1252 2.167 StrMap - 在地图上绘制一个字符串 ...

1254 2.168 StrMatch - 在字符串中搜索模板 ...

1256 2.169 StrMemb - 检查字符是否属于一组 ...

1258 2.170 StrOrder - 检查是否已下达字符串指令 ...

1260 2.171 StrPart - 寻找一部分字符串 ...

1262 2.172 StrToByte - 将一段字符串转换为一个字节数据 ...

1264 2.173 StrToVal - 将一段字符串转换为一个值 ...

1266 2.174 Tan - 计算正切值 ...

1267 2.175 TanDnum - 计算正切值 ...

1268 2.176 TaskRunMec - 检查任务是否控制所有机械单元 ...

1269 2.177 TaskRunRob - 检查任务是否控制一些机械臂 ...

1270 2.178 TasksInSync - 返回同步任务量 ...

技术参考手册 - RAPID指令、函数和数据类型 13

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(14)

1272 2.179 TestAndSet - 未设置时,测试变量并予以设置 ...

1274 2.180 TestDI - 测试有没有设置数字信号输入 ...

1276 2.181 TestSignRead - 读取测试信号值 ...

1278 2.182 TextGet - 从系统文本表格中获取文本 ...

1280 2.183 TextTabFreeToUse - 测试文本表格是否已解除 ...

1282 2.184 TextTabGet - 获取文本表格编号 ...

1284 2.185 TriggDataValid - 检查触发数据变量中的内容是否有效 ...

1286 2.186 Trunc - 截断一个数值 ...

1288 2.187 TruncDnum - 截断一个数值 ...

1290 2.188 Type - 获取有关一个变量的数据类型名称 ...

1292 2.189 UIAlphaEntry - 用户α条目 ...

1297 2.190 UIClientExist - 现有客户端 ...

1298 2.191 UIDnumEntry - 用户数字条目 ...

1304 2.192 UIDnumTune - 用户数字调节 ...

1310 2.193 UIListView - 用户列表视图 ...

1317 2.194 UIMessageBox - 先进型用户消息框 ...

1324 2.195 UINumEntry - 用户数字条目 ...

1330 2.196 UINumTune - 用户数字调节 ...

1336 2.197 ValidIO - 有待访问的有效I/O信号 ...

1337 2.198 ValToStr - 将一个值转换为一段字符串 ...

1339 2.199 VectMagn - 位置矢量的大小 ...

1341 2.200 XOR - 评估一个逻辑值 ...

1343 3 数据类型

1343 3.1 aiotrigg - 模拟I/O触发条件 ...

1344 3.2 ALIAS - 分配一种别名数据类型 ...

1345 3.3 bool - 逻辑值 ...

1346 3.4 btnres - 按钮结果数据 ...

1348 3.5 busstate - I/O总线的状态 ...

1349 3.6 buttondata - 按钮数据 ...

1351 3.7 字节-整数值0 - 255 ...

1352 3.8 cameradev - 摄像头设备 ...

1353 3.9 cameratarget - 摄像头数据 ...

1355 3.10 capdata - CAP数据 ...

1358 3.11 caplatrackdata - CAP Look-Ahead-Tracker跟踪数据 ...

1361 3.12 capspeeddata - CAP的速度数据 ...

1363 3.13 captrackdata - CAP跟踪数据 ...

1366 3.14 capweavedata - CAP摆动数据 ...

1373 3.15 cfgdomain - 配置域 ...

1374 3.16 时钟 - 时间测量 ...

1375 3.17 confdata - 机械臂配置数据 ...

1381 3.18 corrdescr - 修正发电机描述符 ...

1382 3.19 datapos - 数据类型的封闭块 ...

1383 3.20 dionum - 数字值(0 - 1) ...

1384 3.21 dir - 路径结构 ...

1385 3.22 dnum - 双数值 ...

1387 3.23 egmframetype-定义EGM所需的框架类型 ...

1388 3.24 egmident-识别一项特定的EGM进程 ...

1390 3.25 egm_minmax-EGM的收敛标准 ...

1391 3.26 egmstate-定义EGM所需的状态 ...

1392 3.27 egmstopmode-定义EGM所需的停止模式 ...

1393 3.28 errdomain - 错误域 ...

1395 3.29 errnum - 错误编号 ...

1401 3.30 errstr - 错误字符串 ...

1402 3.31 errtype - 错误类型 ...

1403 3.32 event_type - 事件程序类型 ...

1404 3.33 exec_level - 执行等级 ...

1405 3.34 extjoint - 外接头的位置 ...

1407 3.35 flypointdata - 飞焊开始/结束数据 ...

(15)

1410 3.36 handler_type - 执行处理器的类型 ...

1411 3.37 icondata - 图标显示数据 ...

1413 3.38 identno - 移动指令的识别号 ...

1414 3.39 intnum - 中断识别号 ...

1416 3.40 iodev - 串行通道和文件 ...

1417 3.41 iounit_state - I/O单元的状态 ...

1418 3.42 jointtarget - 接头位置数据 ...

1420 3.43 listitem - 列表项数据结构 ...

1421 3.44 loaddata - 加载数据 ...

1426 3.45 loadidnum - 负载识别的类型 ...

1427 3.46 loadsession - 程序加载会话 ...

1428 3.47 mecunit - 机械单元 ...

1430 3.48 motsetdata - 运动设置数据 ...

1435 3.49 num - 数值 ...

1437 3.50 opcalc - Arithmetic Operator ...

1438 3.51 opnum - 比较运算符 ...

1439 3.52 orient-姿态 ...

1444 3.53 paridnum - 参数识别的类型 ...

1446 3.54 paridvalidnum - ParIdRobValid的结果 ...

1448 3.55 pathrecid - 路径记录器标识符 ...

1450 3.56 pos - 位置(仅X、Y和Z) ...

1451 3.57 pose - 坐标变换 ...

1452 3.58 processtimes - 进程时间 ...

1453 3.59 progdisp - 程序位移 ...

1455 3.60 原始数据字节 - 原始数据 ...

1457 3.61 restartblkdata - 重启用块数据 ...

1459 3.62 restartdata - 重启关于触发信号的数据 ...

1462 3.63 rmqheader - RAPID消息序列消息标题 ...

1464 3.64 rmqmessage - RAPID消息序列消息 ...

1465 3.65 rmqslot - RMQ客户端的识别号 ...

1466 3.66 robjoint - 机械臂轴的接头位置 ...

1467 3.67 robtarget - 位置数据 ...

1470 3.68 sensor - 外部设备描述符 ...

1472 3.69 sensorstate - 设备的通信状况 ...

1473 3.70 shapedata - 全局区域形状数据 ...

1475 3.71 signalorigin - 介绍I/O信号来源 ...

1476 3.72 signalxx - 数字信号和模拟信号 ...

1478 3.73 socketdev - 套接字设备 ...

1479 3.74 socketstatus - 套接字通信状态 ...

1480 3.75 speeddata - 速度数据 ...

1483 3.76 stoppointdata - 停止点数据 ...

1489 3.77 string - 字符串 ...

1491 3.78 stringdig - 只含数字的字符串 ...

1492 3.79 supervtimeouts - 摇手监控超时 ...

1494 3.80 switch - Optional parameters ...

1495 3.81 symnum - 符号数 ...

1496 3.82 syncident - 同步点的识别号 ...

1497 3.83 系统数据-当前RAPID系统数据设置 ...

1499 3.84 taskid - 任务标识 ...

1500 3.85 tasks - RAPID程序任务 ...

1501 3.86 testsignal - 测试信号 ...

1502 3.87 tooldata - 工具数据 ...

1508 3.88 tpnum - FlexPendant示教器窗口编号 ...

1509 3.89 trapdata - 当前TRAP的中断数据 ...

1510 3.90 触发数据 - 定位事件,触发 ...

1511 3.91 triggios - Positioning events, trigg ...

1513 3.92 triggiosdnum - Positioning events, trigg ...

1515 3.93 triggmode - 触发行动模式 ...

1517 3.94 triggstrgo - Positioning events, trigg ...

技术参考手册 - RAPID指令、函数和数据类型 15

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(16)

1520 3.95 tunetype - 伺服调节类型 ...

1521 3.96 uishownum - UIShow的实例标识符 ...

1522 3.97 weavestartdata - 摆动启动数据 ...

1523 3.98 wobjdata - 工件数据 ...

1527 3.99 wzstationary - 固定式全局区域数据 ...

1529 3.100 wztemporary - 临时全局区域数据 ...

1531 3.101 zonedata - 区域数据 ...

1537 4 编程类型实例

1537 4.1 关于运动的错误处理器 ...

1540 4.2 包含运动或不包含运动的服务程序 ...

1543 4.3 包含运动或不包含运动的系统I/O中断 ...

1546 4.4 关于运动的软中断程序 ...

1549 索引

(17)

手册概述

关于本手册

本文是供RAPID程序员使用的技术参考手册。本手册详细描述了RAPID基本指令、函 数和数据类型。

手册用法

编程期间以及需要有关RAPID指令、函数或者数据类型的特定信息时,应阅读本手册。

本手册的阅读对象

本手册适用于有一些编程经验的人员,例如,机械臂程序员。

操作前提

阅读本手册的人员应具备一些编程经验,并且已经研究了

• 操作员手册 - Introduction to RAPID

• 技术参考手册 - RAPID语言概览 各章结构

本手册由以下各章组成:

目录 章节

所有RAPID基本指令的详细说明,包括如何使用 此类指令的实例。

1指令

所有RAPID基本函数的详细说明,包括如何使用 此类功能的实例。

2函数

所有RAPID基本数据类型的详细说明,包括如何 使用此类数据类型的实例。

3数据类型

概述如何编写包含不同指令/函数/数据类型的程 序代码。本章同时包含编程技巧和解释。

4编程类型实例

参考信息

文档编号 参考文档

3HAC16581-001 技术参考手册-RAPID指令、函数和数据类型

带RobotWare 5的IRC5。

3HAC029364-010 操作员手册 - Introduction to RAPID

3HAC050947-010 技术参考手册 - RAPID语言概览

3HAC050946-010 技术参考手册 - RAPID语言内核

3HAC050798-010 应用手册 - 控制器软件IRC5

修订版

描述 版本号

随 RobotWare 6.0 发布。

注意

关于带RobotWare 5的IRC5,请参见手册3HAC16581-001。

-

下一页继续

技术参考手册 - RAPID指令、函数和数据类型 17

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

(18)

描述 版本号

随 RobotWare 6.01 发布。

增加了以下指令、函数和数据类型:

第30页的AliasIOReset-重置I/O信号以及别名, 第792页的TriggJIOs - 接头机械臂移动以及I/O事件

将关于7轴机械臂的信息增加到数据类型第1375页的confdata - 机械臂配

置数据。

A

随 RobotWare 6.02 发布。

增加了以下普通指令、函数和数据类型:

第545页的SaveCfgData - 将系统参数保存至文件,第1373页的cfgdomain - 配置域,第759页的TriggDataCopy - 复制触发数据变量中的内容,第 761页的TriggDataReset - 重置触发数据变量中的内容, 第1284页的 TriggDataValid - 检查触发数据变量中的内容是否有效

第960页的AInput - 读取模拟信号输入信号值,第1056页的DInput - 读取 数字信号输入信号值, 第1109页的GInput - 读取组输入信号的值

针对RobotWare选项Integrated Vision,增加了所有指令、函数和数据 类型。

将关于制动距离的警告,增加至第643页的SoftAct - 启用软伺服。

为数据类型dnum增加了三角函数:

ACosDnum, ASinDnum, ATanDnum, ATan2Dnum, CosDnum, TanDnum, SinDnum

增加了EGM Path Correction功能的RAPID指令:

第149页的EGMActJoint-为一个关节目标点编写一次EGM移动, 第159 页的EGMMoveC-经过路径校正的圆形EGM移动,第162页的EGMMoveL

-经过路径校正的直线EGM移动,第180页的EGMSetupLTAPP-为EGM 设置相应的LTAPP协议

细微纠正。

B

随 RobotWare 6.03 发布。

在指令中加入新功能第331页的MotionProcessModeSet - 设置运动过程

模式。

添加CAP指令、函数和数据类型。

添加Cyclic bool指令和函数

添加与Functional Safety相关的指令和函数。

signalxx此刻为能够进行数值运算的半值数据类型,请参见第1476页的

signalxx - 数字信号和模拟信号。

细微纠正。

C 续前页

(19)

1 指令:

1.1 AccSet-降低加速度

手册用法

处理脆弱负载时,使用了AccSet,可允许更低的加速度和减速度,使得机械臂的移动 更加顺畅。

本指令仅可用于主任务T_ROB1,或者如果在MultiMove系统中,则可用于运动任务 中。

基本示例

以下实例介绍了指令AccSet:

例 1

AccSet 50, 100;

将加速度限制在正常值的50%。

例 2

AccSet 100, 50;

将加速斜面限制在正常值的50%。

例 3

AccSet 100, 100 \FinePointRamp:=50;

当朝精点减速时,将减速斜面限制在正常值的50%。

变元

AccSet Acc Ramp [\FinePointRamp]

Acc

数据类型:num

加速度和减速度占正常值的百分比。100%相当于最大加速度。最大值:100%。输入 值<20%,得出最大加速度的20%。

Ramp

数据类型:num

加速度和减速度增加的速率占正常值的百分比。通过降低该值,可限制顿挫。100%相 当于最大速率。最大值:100%。输入值<10%,得出最大速率的10%。

下一页继续

技术参考手册 - RAPID指令、函数和数据类型 19

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.1 AccSet-降低加速度 RobotWare - OS

(20)

数字表明,降低加速度会使移动更加顺畅。

Ti

xx0500002146

[\FinePointRamp]

数据类型:num

减速度降低的速率占正常值的百分比。当机械臂朝精点减速时,本参数仅会对斜面造 成影响。在精点处,减速斜面值是本参数与Ramp值的组合,Ramp*FinePointRamp。

本参数必须大于0,且介于0到100%之间。

如果未使用此可选参数,则将FinePointRamp值设置为默认值,100%。

程序执行

加速度适用于机械臂和外轴,直至执行一个新的AccSet指令。

默认值(100%)是自动设置的

当使用重启模式重置RAPID时

• 当加载一则新程序或一个新模块时

• 当从起点开始执行程序时

• 当将程序指针移动到main时

• 当将程序指针移动到子程序时

• 移动程序指针造成执行顺序丢失时 语法

AccSet

[ Acc ':=' ] < expression (IN) of num > ',' [ Ramp ':=' ] < expression (IN) of num >

[ '\'FinePointRamp ':=' < expression (IN) of num > ] ';'

相关信息

请参阅 信息,关于

第908页的WorldAccLim - 控制世界坐标系中的加速 度

控制世界坐标系中的加速度。

1.1 AccSet-降低加速度 RobotWare - OS

续前页

(21)

请参阅 信息,关于

第428页的PathAccLim - 降低路径沿线的TCP加速度

降低路径沿线的工具中心接触点(TCP)

加速度

技术参考手册 - RAPID语言概览 定位器指令

第1430页的motsetdata - 运动设置数据

运动设置数据

技术参考手册 - RAPID指令、函数和数据类型 21

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.1 AccSet-降低加速度 RobotWare - OS 续前页

(22)

1.2 ActEventBuffer - 事件缓冲启用

描述

ActEventBuffer用于在当前运动程序任务中启用事件缓冲。

当结合使用精点的应用以及持续应用(因缓慢的工艺设备而需要提前设置信号)时,

应当使用指令ActEventBuffer和DeactEventBuffer。

本指令仅可用于主任务T_ROB1,或者如果在MultiMove系统中,则可用于运动任务 中。

基本示例

以下实例介绍了指令ActEventBuffer:

例 1

...

DeactEventBuffer;

! Use an application that uses finepoints, such as SpotWelding ...

! Activate the event buffer again ActEventBuffer;

! Now it is possible to use an application that needs

! to set signals in advance, such as Dispense ...

DeactEventBuffer停用配置的事件缓冲。当使用有精点的应用时,机械臂将以更快 的速度从精点启动。当通过ActEventBuffer来启用事件缓冲时,针对采用缓慢工艺 设备的应用而提前设置信号是可能的。

程序执行

事件缓冲的使用适用于下一步执行的机械臂的任一类型运动,并始终有效,直至执行 DeactEventBuffer指令。

在启用事件缓冲之前,本指令将等待,直至机械臂和外轴已经达到停止点(当前运动 指令的ToPoint)。因此,建议将运动指令编程在ActEventBuffer以及精点之前。

自动设置默认值(使用事件缓冲=TRUE)

当使用重启模式重置RAPID时

• 当加载一则新程序或一个新模块时

• 当从起点开始执行程序时

• 当将程序指针移动到main时

• 当将程序指针移动到子程序时

• 移动程序指针造成执行顺序丢失时 限制

无法在与任意下列特殊系统事件关联的RAPID程序中执行ActEventBuffer:

PowerOn、Stop、QStop、Restart或者Step。

语法

ActEventBuffer ';' 1.2 ActEventBuffer - 事件缓冲启用

(23)

相关信息

请参阅 信息,关于

第138页的DeactEventBuffer - 事件缓冲启用

事件缓冲停用

技术参考手册 - 系统参数 Event preset time的配置

第1430页的motsetdata - 运动设置数据

运动设置数据

技术参考手册 - RAPID指令、函数和数据类型 23

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.2 ActEventBuffer - 事件缓冲启用 续前页

(24)

1.3 ActUnit - 启用机械单元

手册用法

ActUnit用于启用机械单元。

其可以用于确定,例如,当使用公共驱动单元时,应启用哪一个单元。

本指令仅可用于主任务T_ROB1,或者如果在MultiMove系统中,则可用于运动任务 中。

基本示例

以下实例介绍了指令ActUnit:

例 1

ActUnit orbit_a;

orbit_a机械单元启用。

变元

ActUnit MechUnit

MechUnit

Mechanical Unit 数据类型:mecunit 待启用机械单元的名称。

程序执行

当机械臂与外轴实际路径就绪时,清除当前路径等级上的路径,并启用指定机械单元。

这意味着通过机械臂进行控制和监测。

如果若干机械单元共享一个公共驱动单元,则启用其中一个机械单元,亦将把该单元 同公共驱动单元相连。

限制

如果该指令位于移动指令之后,则必须使用停止点(zonedatafine)而非飞越点来编 程移动指令,否则,将无法在电源故障后重启。

无法在与任意下列特殊系统事件关联的RAPID程序中执行ActUnit:PowerOn、

Stop、QStop、Restart、Reset或者Step。

有可能将ActUnit-DeactUnit用于StorePath等级,但是,当正在进行RestoPath 且已经完成StorePath时,必须启用相同的机械单元。关于路径记录器的操作以及基 准等级的路径均将十分完整,但是,将清除StorePath等级的路径。

语法

ActUnit

[ MechUnit ':=' ] < variable (VAR) of mecunit> ';'

相关信息

请参阅 信息,关于

第140页的DeactUnit - 停用机械单元

停用机械单元

第1428页的mecunit - 机械单元

机械单元

1.3 ActUnit - 启用机械单元 RobotWare - OS

(25)

请参阅 信息,关于

第140页的DeactUnit - 停用机械单元

更多示例

第1130页的IsMechUnitActive - 机械单元是否有效

检查机械单元是否启用。

第431页的PathRecMoveBwd - 将路径记录器向后移动

路径记录器

技术参考手册 - RAPID指令、函数和数据类型 25

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.3 ActUnit - 启用机械单元 RobotWare - OS 续前页

(26)

1.4 Add-增加数值

手册用法

Add用于从数值变量或者永久数据对象增减一个数值。

基本示例

以下实例介绍了指令Add:

例 1

Add reg1, 3;

将3增加到reg1,即reg1:=reg1+3。

例 2

Add reg1, -reg2;

reg2的值得以从reg1中减去,即,reg1:=reg1-reg2。

例 3

VAR dnum mydnum:=5;

Add mydnum, 500000000;

将500000000增加到mydnum,即,mynum:=mynum+500000000。

例 4

VAR dnum mydnum:=5000;

VAR num mynum:=6000;

Add mynum, DnumToNum(mydnum \Integer);

将5000增加到mynum,即,mynum:=mynum+5000。必须使用DnumToNum以获得num 数值,该数值可以同num变量mynum一同使用。

变元

Add Name | Dname AddValue | AddDvalue

Name

数据类型:num

待改变变量或者永久数据对象的名称。

Dname

数据类型:dnum

待改变变量或者永久数据对象的名称。

AddValue

数据类型:num 有待增加的值。

AddDvalue

数据类型:dnum 有待增加的值。

1.4 Add-增加数值 RobotWare - OS

(27)

限制

如果有待增加的值是dnum型,且应当更改的变量/永久数据对象是num,则将产生一个 运行时错误。不可能结合参数(关于如何解决此问题,请参见上文实例4)。

语法

Add

[ Name ':=' ] < var or pers (INOUT) of num >

| [ Dname ':=' ] < var or pers (INOUT) of dnum > ',' [ AddValue ':=' ] < expression (IN) of num >

| [ AddDvalue ':=' ] < expression (IN) of dnum > ';'

相关信息

请参阅 信息,关于

第239页的Incr - 增量为1

将变量增加1

第142页的Decr - 减量为1

将变量减少1

第32页的":=" - 分配一个数值

运用任意表达式(例如,乘法)来更改数据

技术参考手册 - RAPID指令、函数和数据类型 27

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.4 Add-增加数值 RobotWare - OS 续前页

(28)

1.5 AliasIO - 确定I/O信号以及别名

手册用法

AliasIO用于确定任意类型的信号以及别名,或者使用内置任务模块中的信号。

信号以及别名可用于预先确定通用程序,在不同的机械臂装置中运行前,不会对程序 进行任何修改。

在使用实际信号之前,必须运行指令AliasIO 。关于已加载模块,请参见第28页的

基本示例,关于已安装模块,第29页的更多示例。

基本示例

以下实例介绍了指令AliasIO:

另请参阅第29页的更多示例 例 1

VAR signaldo alias_do;

PROC prog_start()

AliasIO config_do, alias_do;

ENDPROC

程序prog_start与系统参数中的START事件相关联。确定数字信号输出信号alias_do 的程序与程序启动时的配置数字信号输出信号config_do相关联。

变元

AliasIO FromSignal ToSignal

FromSignal

数据类型:signalxx 或string 已加载的模块:

根据配置(数据类型signalxx)命名信号标识符,由此复制信号描述符。必须在I/O 配置中确定信号。

已安装的模块或者已加载的模块

参考(CONST,VAR或者其中的参数)包含信号名称(数据类型string),由此在搜 索后复制系统中的信号描述符。必须在I/O配置中确定信号。

ToSignal

数据类型:signalxx

信号标识符符合程序(数据类型signalxx),由此复制信号描述符。必须在RAPID 程序中声明信号。

必须针对参数FromSignal和ToSignal 使用(或发现)相同的数据类型,且必须为 一类signalxx(signalai、signalao、signaldi、signaldo、signalgi或 signalgo)。

程序执行

从参数FromSignal中给出的信号到参数ToSignal中给出的信号,复制信号描述符 的值。

1.5 AliasIO - 确定I/O信号以及别名 RobotWare - OS

(29)

错误处理

系统会生成下列可恢复错误,并在错误处理器中处理这些错误。系统变量ERRNO将被 设置成:

错误原因 名称

未在I/O配置中确定FromSignal,或未在RAPID程序中声明 ToSignal,或未在I/O配置中确定ToSignal。

ERR_ALIASIO_DEF

自变量FromSignal和ToSignal的数据类型并不相同。

ERR_ALIASIO_TYPE

该信号变量是在RAPID中声明的一个变量,与用指令AliasIO 在I/O配置中定义的I/O信号无关。

ERR_NO_ALIASIO_DEF

更多示例

有关于指令AliasIO的更多例子阐述如下。

例 1

VAR signaldi alias_di;

PROC prog_start()

CONST string config_string := "config_di";

AliasIO config_string, alias_di;

ENDPROC

程序prog_start 与系统参数中的START事件相关联。本程序确定的数字信号输入信 号alias_di与程序启动时的配置数字信号输入信号config_di(通过常量

config_string)相关联。

限制

当启动本程序时,无法使用别名信号,直至执行AliasIO指令。

指令AliasIO必须得以发出。

• 或者以程序启动(事件START)时执行的事件程序

• 或者以每次程序启动后(使用信号之前)执行的程序部分

为防止出现错误,建议使用动态重新连接,将AliasIO信号与不同的物理信号相连。

语法

AliasIO

[ FromSignal ':=' ] < reference (REF) of anytype > ',' [ ToSignal ':=' ] < variable (VAR) of anytype > ';'

相关信息

请参阅 信息,关于

技术参考手册 - RAPID语言概览 输入/输出指令

技术参考手册 - RAPID语言概览 输入/输出功能性概述

技术参考手册 - 系统参数 I/O配置

技术参考手册 - 系统参数 确定事件程序

技术参考手册 - 系统参数 已加载/已安装的任务模块

应用手册 - 控制器软件IRC5 Advanced RAPID

技术参考手册 - RAPID指令、函数和数据类型 29

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.5 AliasIO - 确定I/O信号以及别名 RobotWare - OS 续前页

(30)

1.6 AliasIOReset-重置I/O信号以及别名

手册用法

AliasIOReset用于重置信号,该信号已经在先前的要求中用于AliasIO。

基本示例

以下实例介绍了指令AliasIOReset:

例 1

VAR signaldo alias_do;

PROC myproc()

AliasIO config_do, alias_do;

SetDO alias_do, 1;

..

AliasIOReset alias_do;

ENDPROC

程序确定的数字信号输出信号alias_do与配置的数字信号输出信号config_do在无 返回值程序myproc开始时相连。在I/O配置中确定信号config_do。随后,当不得再 使用alias_do时,去除别名耦合。

变元

AliasIOReset Signal

Signal

数据类型:signalxx

信号标识符符合应当予以重置的程序(数据类型signalxx)。必须在RAPID程序中 声明该信号。

程序执行

去除整个别名耦合。无法使用信号,直至完成与AliasIO的新别名耦合。

限制

无法重置I/O配置中确定的信号。仅可使用AliasIO指令中用到以及RAPID程序中声 明的信号。

语法

AliasIOReset

[ Signal ':=' ] < variable (VAR) of anytype > ';'

相关信息

请参阅 信息,关于

第28页的AliasIO - 确定I/O信号以及别名

确定I/O信号以及别名

技术参考手册 - RAPID语言概览 输入/输出指令

技术参考手册 - RAPID语言概览 输入/输出功能性概述

技术参考手册 - 系统参数 I/O配置

技术参考手册 - 系统参数 确定事件程序

1.6 AliasIOReset-重置I/O信号以及别名 RobotWare - OS

(31)

请参阅 信息,关于

技术参考手册 - 系统参数 已加载/已安装的任务模块

应用手册 - 控制器软件IRC5 Advanced RAPID

技术参考手册 - RAPID指令、函数和数据类型 31

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.6 AliasIOReset-重置I/O信号以及别名 RobotWare - OS 续前页

(32)

1.7 ":=" - 分配一个数值

手册用法

“:=”指令用于向数据分配新值。该值可以是一个恒定值,亦可以是一个算术表达式,

例如,reg1+5*reg3。

基本示例

以下实例介绍了指令“:=”:

另请参阅第32页的更多示例 例 1

reg1 := 5;

将reg1指定为值5。

例 2

reg1 := reg2 - reg3;

将reg1的值指定为reg2-reg3的计算结果。

例 3

counter := counter + 1;

将counter增加一。

变元

Data := Value

Data

数据类型:All 将被分配新值的数据。

Value

数据类型:Same as Data 期望值。

更多示例

有关于指令“:=”的更多例子阐述如下。

例 1

tool1.tframe.trans.x := tool1.tframe.trans.x + 20;

将tool1的TCP在X方向移动20mm。

例 2

pallet{5,8} := Abs(value);

向pallet矩阵中的元素分配等于value变量绝对值的值。

限制

数值有待改变的数据不得为

• 常量

• 非值数据类型。

数据和数值必须具有类似(相同或者别名)的数据类型。

1.7 ":=" - 分配一个数值 RobotWare - OS

(33)

语法

<assignment target> ':=' <expression> ';'

相关信息

请参阅 信息,关于

技术参考手册 - RAPID语言概览 表达式

技术参考手册 - RAPID语言概览 非值数据类型

操作员手册 - 带 FlexPendant 的 IRC5 向数据分配一个初始值

技术参考手册 - RAPID指令、函数和数据类型 33

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.7 ":=" - 分配一个数值 RobotWare - OS 续前页

(34)

1.8 BitClear - 在一个字节或双数值数据中清除一个特定位

手册用法

BitClear用于在确定的byte数据或者dnum数据中清除(设置为0)一个特定位。

基本示例

以下实例介绍了指令BitClear:

例 1

CONST num parity_bit := 8;

VAR byte data1 := 130;

BitClear data1, parity_bit;

将变量data1中的比特编号8(parity_bit)设置为0,例如,将变量data1的容量从 130改变为2(整数表示)。使用BitClear时,下图阐明了数据类型byte的位操作。

xx0500002147

例 2

CONST num parity_bit := 52;

VAR dnum data2 := 2251799813685378;

BitClear data2, parity_bit;

1.8 BitClear - 在一个字节或双数值数据中清除一个特定位 RobotWare - OS

(35)

将变量data2中的比特编号52(parity_bit)设置为0,例如,将变量data2的容量从 2251799813685378改变为130(整数表示)。使用BitClear时,下文阐明了数据类 型dnum的位操作。

BitPos 52 BitPos 1

data2 : 2251799813685378

data2 : 130 Clear bit 52

xx1200000014

变元

BitClear BitData | DnumData BitPos

BitData

数据类型:byte

以整数表示且有待改变的位数据。

DnumData

数据类型:dnum

以整数表示有待改变的双数值位数据。

BitPos

Bit Position 数据类型:num

将BitData中的数位位置(1-8),或者DnumData中的数位位置(1-52)设置为0。

限制

数据类型byte的范围为0 - 255位小数。

数据类型byte的数位位置1-8有效。

数据类型dnum的范围为0 - 4503599627370495位小数。

数据类型dnum的数位位置1-52有效。

语法

BitClear

[ BitData ':=' ] < var or pers (INOUT) of byte >

| [ DnumData ':=' ] < var or pers (INOUT) of dnum > ',' [ BitPos ':=' ] < expression (IN) of num > ';'

下一页继续

技术参考手册 - RAPID指令、函数和数据类型 35

3HAC050917-010 修订: C

© 版权所有 2004-2016 ABB。保留所有权利。

1.8 BitClear - 在一个字节或双数值数据中清除一个特定位 RobotWare - OS 续前页

(36)

相关信息

请参阅 信息,关于

第37页的BitSet - 在一个字节或者双数值数据中设 置一个特定位

在一个字节或双数值数据中设置一个特定位

第978页的BitCheck - 检查字节数据中的特定位是 否设置完毕

检查字节数据中的特定位是否设置完毕

第980页的BitCheckDnum - 检查双数值数据中的 特定位是否设置完毕

检查双数值数据中的特定位是否设置完毕

技术参考手册 - RAPID语言概览 其他位函数

应用手册 - 控制器软件IRC5 Advanced RAPID

1.8 BitClear - 在一个字节或双数值数据中清除一个特定位 RobotWare - OS

续前页

參考文獻