SPEL+编程语言参考手册Ref70_r3.pdf

上传人:紫竹语嫣 文档编号:5529966 上传时间:2020-06-01 格式:PDF 页数:798 大小:3.46MB
返回 下载 相关 举报
SPEL+编程语言参考手册Ref70_r3.pdf_第1页
第1页 / 共798页
SPEL+编程语言参考手册Ref70_r3.pdf_第2页
第2页 / 共798页
SPEL+编程语言参考手册Ref70_r3.pdf_第3页
第3页 / 共798页
SPEL+编程语言参考手册Ref70_r3.pdf_第4页
第4页 / 共798页
SPEL+编程语言参考手册Ref70_r3.pdf_第5页
第5页 / 共798页
点击查看更多>>
资源描述

《SPEL+编程语言参考手册Ref70_r3.pdf》由会员分享,可在线阅读,更多相关《SPEL+编程语言参考手册Ref70_r3.pdf(798页珍藏版)》请在三一文库上搜索。

1、 EPSON RC+ 7.0 SPEL+语言语言 参考参考 Rev.3 C1M13ZS2607B Ver.7.0 EPSON RC+ 7.0 (Ver.7.0) SPEL+语言参考 Rev.3 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 i EPSON RC+ 7.0 (Ver.7.0) SPEL+语言参考 Rev.3 Copyright 2012-2013 SEIKO EPSON CORPORATION. All rights reserved. ii EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 前言 感谢您购买本公

2、司的机器人系统。 本手册记载了正确使用 EPSON RC+7.0 软件所需的事项。 请阅读本手册及相关手册后正确使用系统。 阅读之后,请妥善保管,以便随时取阅。 保修 本机是经过本公司严格测试检查,并在确认性能满足本公司标准之后出厂交付的。 1. 保修期 自本产品向贵公司交付之日起1年以内为保修期。 2. 保修内容 1) 保修对象产品为交付产品。 2) 在交付产品的保修期内,本公司仅对正常使用时发生的故障进行 免费修理。保修期满之后的故障修理全部为收费修理,敬请谅解。 3) 保修仅限于日本国内。 3. 免责事项 即使在上述保修期内,如果符合下述事项,均视为收费修理,敬请 谅解。 1) 因无视说

3、明书内容的错误使用以及使用不当而导致的故障与损伤; 2) 进行了改造或拆卸时; 3) 因不适当的调整修理而导致的故障与损伤; 4) 因天灾、火灾及其它外部因素而导致的故障与损伤。 4. 注意事项 1) 如果超出本手册记载的使用条件或规格使用机器人或相关设备, 本公司不保证机器人的基本性能,敬请谅解。 2) 本公司对因未遵守本手册记载的“警告”与“注意”而导致的人 身事故(死亡或重伤)、损害事故及故障等不承担任何责任, 敬请谅解。 3) 本公司不可能预见发生危险与故障的所有情况,这种可预见性是 有限制的。因此,本手册中的“警告”、“注意”以及其它记载 事项仅是本公司可预见范围内的,敬请谅解。 E

4、PSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 iii 商标 Microsoft、Windows、Windows 标识、Visual Basic、Visual C+ 为美国 Microsoft Corporation 在美国及其它国家的注册商标或商标。 Pentium为美国英特尔公司的商标。 其它公司名称、商标名称、产品名称均为各公司的注册商标或商标。 关于标记 Microsoft Windows XP Operating system 日文版 Microsoft Windowss Vista Operating syste 日文版 Microsoft Wind

5、ows 7 Operating system 日文版 本使用说明书将上述操作系统分别标记为 Windows XP、Windows Vista、Windows 7。 另外,有时可能将 Windows XP、Windows Vista、Windows 7 统一标记为 Windows。 注意事项 禁止擅自复印或转载本使用说明书的部分或全部内容。 本书记载的内容将来可能会发生变更,恕不事先通告。 如您发现本书的内容有误或需要改进之处,请不吝斧正。 垂询方式 有关机器人的修理、检查、调整等事项,请与服务中心联系。 未记载服务中心时,请与当地销售商联系。 联系时,请事先准备好下述各项。 - 控制器名称/序

6、列号 - 机械手名称/序列号 - 软件名称/版本 - 系统出现的问题 服务中心 iv EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 MANUFACTURER Toyoshina Plant Industrial Solutions Division 6925 Toyoshina Tazawa, Azumino-shi, Nagano, 399-8285 JAPAN TEL : +81-(0)263-72-1530 FAX : +81-(0)263-72-1495 SUPPLIERS 北美与南美 EPSON AMERICA, INC. Factory Auto

7、mation/Robotics 18300 Central Avenue Carson, CA90746 USA TEL : +1-562-290-5900 FAX : +1-562-290-5999 E-MAIL : 欧洲 EPSON DEUTSCHLAND GmbH Factory Automation Division Otto-Hahn-Str.4 D-40670 Meerbusch Germany TEL : +49-(0)-2159-538-1391 FAX : +49-(0)-2159-538-3170 E-MAIL : robot.infosepson.de 中国 EPSON

8、 China Co., Ltd Factory Automation Division 7F, Jinbao Building No. 89 Jinbao Street Dongcheng District, Beijing, China, 100005 TEL : +86-(0)-10-8522-1199 FAX : +86-(0)-10-8522-1120 台湾 EPSON Taiwan Technology On 1! Go P2 CP On Jump P1 On 1 Go P2 !.! 并行处理 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 19 J

9、ump 语句与并行处理语句与并行处理 在上升动作结束后开始执行与 Jump 语句一起使用的并行处理语句,并在开始下降移动前结束。 在转移动作结束后开始执行与 Jump3 语句一起使用的并行处理语句,并在开始接近移动前结束。 Here 语句与并行处理语句与并行处理 不能将 Here 语句与并行处理同时放在一个动作命令内。 Go Here :Z(0) !D10; MemOn 1 ! 不能按上述使用方法执行。 P999 = Here Go P999 Here :Z(0) !D10; MemOn 1 ! 请变更为上述程序。 参阅 参阅 Arc, Arc3, Go, Jump, Jump3, Jump3

10、CP, Move, BGo, BMove, TGo, TMove !.! 并行处理使用示例并行处理使用示例 下述为与动作命令一起使用并行处理功能的示例。 与 Jump 命令一起使用并行处理。在第 3 关节结束上升移动、而第 1、第 2、第 4 关节开始移动的阶 段,打开输出位 1。输出位 1 将在 Jump 动作完成 50%的阶段再次关闭。 Function test Jump P1 !D0; On 1; D50; Off 1! Fend 与 Move 命令一起使用并行处理。在完成移至 P1 动作的 10%的阶段,打开输出位 5,并在 0.5 秒后 关闭输出位 5。 Function test

11、2 Move P1 !D10; On 5; Wait 0.5; Off 5! Fend #define 20 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 #define 用于定义将标识符转换为指定字符串。 格式格式 #define 识别符 (参数,参数) 转换字符串 参数参数 识别符 是字符串参数省略的关键字。识别符的规则如下所示。 - 以字母开始,并使用字母数字和下划线 (_) 进行创建。 - 识别符中不能使用空格和制表符。 参数 指定可以在转换字符串中使用的 1 个或多个变量,并提供像宏那样的动态定义机制。 在 #define 命令中最多可以使用 8

12、个参数。请用逗号分隔各参数,并将参数列表放到 括弧中。 转换字符串 是编译程序时被替换为识别符的转换字符串。与转换字符串相关的规则如下所示。 - 在转换字符串中可以使用空格和制表符。 - 与语句一起使用的识别符不能作为转换字符串使用。 - 如果使用描述符号“”,后续字符将被判断为描述字符,不包括在转换字符串中。 - 转换字符串可以省略。此时,指定的识别符可以转换为空或 Null 字符串。由此,将 从程序中删除该识别符。 说明说明 通过#define 命令,指定的识别符将在程序内被置换。每次找到指定的识别符,都将转换为转换字符 串并进行编译。但是,源代码自身不是转换字符串,而是以包括识别符的形式

13、被保留。这是因为, 在读取代码自身时,识别符比转换为字符串的代码更容易读取。 定义的识别符可以作为是否组合 #ifdef 和 #ifndef 命令进行编译的条件来使用。 如果指定参数,识别符可以作为宏使用。 注意注意 如果将如果将 #define 用于变量声明和标签转换,将会出错。用于变量声明和标签转换,将会出错。 如果将 #define 命令用于变量声明,将会出错,敬请注意注意。 参阅参阅 #ifdef, #ifndef #define EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 21 #define 使用示例使用示例 如果是调试模式,将不对以下的行进行

14、描述说明 #define DEBUG Input #1, A$ #ifdef DEBUG Print “A$ = “, A$ #endif Print “The End“ #define SHOWVAL(x) Print “var = “, x Integer a a = 25 SHOWVAL(a) #ifdef.#else.#endif 22 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 #ifdef.#else.#endif 用于进行条件编译。 格式格式 #ifdef 识别符 .为进行条件编译的源代码 #else .伪条件的源代码 #endif 参数 参

15、数 识别符 是编译 #ifdef 和 #else 或 #endif 之间的源代码、进行用户定义的关键字。这样,此识 别符将作为编译条件而起作用。 说明说明 #ifdef.#else.#endif 用于条件编译已选择的源代码。是否进行了编译的条件将根据识别符来确定。 首先,#ifdef 将检查指定的识别符是否被当前 #define 定义。#else 语句可以省略。 已定义时 如果 #else 语句正在使用, 将编译 #ifdef 和 #else 之间的语句。 如果未使用 #else 语 句,将编译#ifdef 和#endif 之间的语句。 未定义时 如果 #else 语句正在使用, 将编译#el

16、se 和 #endif 之间的语句。 如果未使用 #else 语 句,将跳过该语句而不编译#ifdef 和#endif 之间的语句。 参阅参阅 #define, #ifndef #ifdef 使用示例使用示例 下例为使用 #ifdef 的程序例。在下例中,可以根据有无 #define DEBUG 模拟命令的定义来控制是 否输出变量 A$ 的值。 如果 #define DEBUG 模拟命令是在源码中使用, 以此为例是在记载的部分之 前使用,Print A$ 的行将被编译并且在执行程序时输出。但是,此时将输出字符串 “The End ” 而与 #define DEBUG 模拟命令无关。 如果是调试

17、模式,将不对以下的行进行描述说明 #define DEBUG Input #1, A$ #ifdef DEBUG Print “A$ = “, A$ #endif Print “The End“ #ifndef.#endif EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 23 #ifndef.#endif 用于进行条件编制。 格式格式 #ifndef 识别符 .为进行条件编译的源代码 #else .条件为真时的源代码 #endif 参数参数 识别符 是用户定义的关键字。未定义时,从#ifndef 到 #else 或#endif 的源代码将被编译。此 识别符作

18、为进行编译的条件而起作用。 说明说明 此命令也叫“如果未定义”命令,将检查与 #ifdef 相反的条件。#ifndef.#else.#endif 用于进行已 选择的源代码的条件编译。#else 语句可以省略。 已定义时 如果 #else 语句正在使用,将编译 #else 和 #endif 之间的语句。如果未使用 #else 语句,将不编译 #ifndef 和 #endif 之间的语句。 未定义时 如果 #else 语句正在使用,将不编译 #else 和 #endif 之间的语句。如果未使用 #else 语句,将编译 #ifndef 和 #endif 之间的语句。 注意注意 #ifdef 和和

19、#ifndef 的差异的差异 #ifdef 用于在已定义识别符时编译指定的源代码。而#ifndef 则用于在未定义识别符时编译指定的源 代码。 参阅参阅 #define, #ifdef #ifndef 使用示例使用示例 下例为使用 #ifndef 的程序示例。在下例中,可以根据有无 #define NODELAY 模拟命令的定义来 控制是否输出变量 A$ 的值。如果 #define NODELAY 模拟命令在源码中在这里记载的示例部分之 前就被使用,则在编译时,Wait 1 的行将不会与该程序源码的其他部分一起被编译。如果 #define NODELAY 模拟命令未在记载的部分之前使用(就是说

20、未定义 NODELAY),Wait 1 的行将被编译 并之后会在程序中被执行。此时将输出字符串 “The End”,而与 #define NODELAY 模拟命令无关。 如果要延迟,可对以下的行进行描述 #define NODELAY 1 Input #1, A$ #ifndef NODELAY Wait 1 #endif Print “The End“ #include 24 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 #include 在使用#include 语句的位置中插入指定的 include 文件 格式格式 #include “include 文

21、件名.INC “ 参数 参数 include 文件名 include 文件名请指定在当前项目中有效的 include 文件名。扩展名全部 是.inc。include 文件名指定插入到当前文件中的文件名。 说明 说明 #include 用于将指定的 include 文件的内容插入到使用#include 语句的位置中。 请在 include 文件中插入 #define 语句和全局变量的声明。 请在函数定义外使用 #include 语句。 可以在 include 文件中记述其他 include 文件。 例如, 在 FILE1 中 include FILE2, 并在 FILE2 中 include F

22、ILE3。我们称此为文件的嵌套。 参阅参阅 #define, #ifdef, #ifndef #include 使用示例使用示例 Include File (Defs.inc) #define DEBUG 1 #define MAX_PART_COUNT 20 Program File (main.prg) #include “defs.inc“ Function main Integer i Integer Parts(MAX_PART_COUNT) Fend #undef EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 25 #undef 用于清除 #de

23、fine 语句定义的标识符。 格式格式 #undef 识别符名 参数 参数 识别符名 用于指定在 #define 语句中使用的关键字。 参阅 参阅 #define, #ifdef, #ifndef AbortMotion 26 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 AbortMotion 用于将中断动作命令并执行动作的任务设为错误。 本命令用于高级方。请在充分理解命令规格之后使用。 格式格式 AbortMotion机器人编号| All 参数参数 机器人编号 指定进行中断动作的机器人编号。 All 中断所有机器人的动作。 说明说明 执行 AbortMo

24、tion 后机器人的状态如下所示。 如果无论什么情况都要继续处理,需要用 OnErr 捕获错误并记述错误处理。 错误 2999 可以使用常数 ERROR_DOINGMOTION。 错误 2998 可以使用常数 ERROR_NOMOTION。 机器人正在执行动作命令时 机器人正在执行动作命令时 机器人将立即暂停(快速暂停)机械臂动作,并撤销剩余动作。 在已执行的机器人动作命令的任务中,将产生错误 2999(ERROR_DOINGMOTION)。 以下的动作命令将从暂停位置直接移至目标位置。 机器人正在暂停(快速暂停)时 机器人正在暂停(快速暂停)时 在执行 AbortMotion 时未发生任何问

25、题,但是将在内部撤销剩余动作。 在指示继续执行 (Cont) 时,在已执行的机器人动作命令的任务中,将产生错误 2999(ERROR_DOINGMOTION)。 以下的动作命令将从暂停位置直接移至目标位置。 机器人处于机器人处于 WaitReacover 状态(打开安全门的状态)时 状态(打开安全门的状态)时 在执行 AbortMotion 时未发生任何问题,但是将在内部撤销剩余动作。 可以通过 Recover 命令的标志选择上一个动作。 如果执行 “WithMove” 动作,将恢复机器人的励磁并执行恢复动作。 在指示继续执行 (Cont) 时,在已执行的机器人动作命令的任务中,将产生错误 2

26、999(ERROR_DOINGMOTION)。 以下的动作命令将从完成恢复动作的位置直接移至目标位置。 如果执行 “WithoutMove” 将恢复机器人的励磁。 在 指 示 继续 执 行 (Cont) 时 , 在已 执 行 的机 器 人 动作 命 令 的任 务 中 ,将 产 生 错 误 2999(ERROR_DOINGMOTION)。 以下的动作命令将从恢复励磁的位置直接移至目标位置。(没有恢复动作。) 机器人正在执行动作命令以外的命令时 机器人正在执行动作命令以外的命令时 在之前已执行的机器人动作命令的任务中,将产生错误 2998 (ERROR_NOMOTION)。如果任务因为 Wait

27、和 Input 命令而处于待机状态,将立即中断任务并发生错误 2998。 如果按照 CP On 的设置执行动作命令并且程序从动作命令中退出,即使机器人正在动作,也会发生 错误 2998。 AbortMotion EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 27 指定的机器人未按照程序(任务)动作时 指定的机器人未按照程序(任务)动作时 将产生错误。 参阅 参阅 OnErr, Recover, Till AbortMotion 使用示例使用示例 如果打开存储器 I/O 的 0 号,将执行 AbortMotion,并且机器人移至 Home 位置。 Functi

28、on main Motor On Xqt sub, NoEmgAbort OnErr GoTo errhandle Go P0 Wait Sw(1) Go P1 Quit sub Exit Function errstart: Home Quit sub Exit Function errhandle: Print Err If Err = ERROR_DOINGMOTION Then Print “机器人正在动作“ 正在执行 Go P0 和 Go P1 EResume errstart ElseIf Err = ERROR_NOMOTION Then Print “机器人未动作“ 正在执行

29、Wait Sw(1) EResume errstart EndIf Print “Error Stop“ 发生其他错误 Quit All Fend Function sub MemOff 0 Wait MemSw(0) AbortMotion 1 MemOff 0 Fend Abs 函数 28 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 Abs 函数函数 是返回绝对值的函数。 格式格式 Abs(数值) 参数参数 数值 以表达式或直接以数值进行指定。 返回值 返回值 返回已指定数值的绝对值。 说明说明 绝对值是指无符号的数值。例如,Abs (1) 和 Abs

30、 (1),两者都将返回 1。 参阅参阅 Atan, Atan2, Cos, Int, Mod, Not, Sgn, Sin, Sqr, Str$, Tan, Val Abs 函数使用示例函数使用示例 下例通过命令窗口使用 Print 命令执行函数。 print abs(1) 1 print abs(-1) 1 print abs(-3.54) 3.54 Accel EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 29 Accel 用于设置和显示利用 Go、Jump、Pulse 等的 PTP 动作的加减速度。 格式格式 (1) Accel 速设定值,减速设定值,

31、转移加速设定值,转移减速设定值,接近加速设定值,接近减速 设定值 (2) Accel 参数参数 加速设定值 以大于 1 的整数指定相对于最大加速度的比例。(单位:%) 减速设定值 以大于 1 的整数指定相对于最大减速度的比例。(单位:%) 转移加速设定值 以大于 1 的整数指定 Jump 时的转移加速度。 可省略。仅 Jump 命令时可设置。 转移减速设定值 以大于 1 的整数指定 Jump 时的转移减速度。 可省略。仅 Jump 命令时可设置。 接近加速设定值 以大于 1 的整数指定 Jump 时的接近加速度。 可省略。仅 Jump 命令时可设置。 接近减速设定值 以大于 1 的整数指定 J

32、ump 时的接近减速度。 可省略。仅 Jump 命令时可设置。 结果结果 如果省略参数,将返回当前的 Accel 参数。 说明说明 Accel 用于设置所有 PTP 动作(利用 Go、Jump、Pulse 等命令发生的动作)的加减速度。 以大于 1 的整数值设置 Accel 设置的加减速度参数。此数值显示出相对于最大加速度(或减速度) 的比例。通常 100 是最大值,但是有的机器人可能有超过 100 的设置。AccelMax 函数用于返回可以 进行 Accel 设置的最大值。 Accel 用于重新设置加减速度、以及单纯输出当前设定值时。如要重新设置加速度和减速度后使用 Accel,将需要最初的

33、 2 个参数(加速设定值和减速设定值)。 转移加速设定值、转移减速设定值、接近加速设定值、接近减速设定值等 4 个参数仅在 Jump 命令时 有效, 可以省略。 这些参数用于指定 Jump 动作开始时的转移动作和 Jump 动作结束时的接近动作的、 各自的加速设定值和减速设定值。 下述某种情况时,Accel 值会被初始化。 控制器电源 ON 执行 Motor On 执行 SFree、SLock、Brake 执行 Reset、Reset Error 利用停止按钮或执行 Quit All 等结束任务 Accel 30 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3

34、 注意注意 在低功率模式在低功率模式 (Power Low) 执行执行 Accel 命令命令 在低功率模式 (Power Low) 时执行 Accel,将会保存新值,而当前值将被限制在较低水平。TEACH 模式为 OFF、功率设为 High 时,Accel 将变为有效。 Accel 与与 AccelS 的差异的差异 Accel 命令不是设置直线和圆弧动作的加减速度的命令。而 AccelS 命令则用于设置直线和圆弧动作 的加减速度。 超过超过 100 的的 Accel 设置设置 Accel 设置一般以 100 为最大值,但是有的机型可以设置到 100 以上。在正常使用中,Accel 设定值 为

35、“100” 时,是加减速度与定位时的振动达到平衡状态的最佳设定值。但有时会根据动作条件,以 缩短循环时间为优先条件,此时可通过减小定位时的振动来提高加减速度。此时,请将 Accel 设定 值设为 100 以上的值。但是,根据动作条件,即使设置了 100 以上的值,也可能出现循环时间不变 化的情况。 参阅参阅 AccelR, AccelS, Go, Jump, Jump3, Power, Pulse, Speed, TGo AccelS 使用示例使用示例 下例为使用 Accel 和 Speed 的简单的动作程序例。Accel 和 Speed 中使用预先定义的变量。 Function acctes

36、t Integer slow, accslow, decslow, fast, accfast, decfast slow = 20 低速的设置 fast = 100 高速的设置 accslow = 20 低加速度的设置 decslow = 20 低减速度的设置 accfast = 100 高加速度的设置 decfast = 100 高减速度的设置 Accel accslow, decslow Speed slow Jump pick On gripper Accel accfast, decfast Speed fast Jump place . . . Fend 此例所示为 Jump 命令

37、时减慢第 3 关节的下降减速度,以谨慎地处理部件。在此例中,需要在设置 Accel 时将第 3 关节下降减速设定值参数设得低一些。 Accel 100,100,100,100,100,35 Accel 100 100 100 100 100 35 Accel 函数 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 31 Accel 函数函数 是用作返回当前的加减速度设定值的函数。 格式格式 Accel(设定值编号) 参数参数 设定值编号 以整数值指定下述各值。 1:加速设定值 2:减速设定值 3:Jump 动作时的转移加速设定值 4:Jump 动作时的转移减速设

38、定值 5:Jump 动作时的接近加速设定值 6:Jump 动作时的接近减速设定值 返回值返回值 返回大于 1 的整数(%)。 参阅参阅 Accel Accel 函数使用示例函数使用示例 如下所示为程序中使用 Accel 函数的示例。 Integer currAccel, currDecel 获取当前的加减速度 currAccel = Accel(1) currDecel = Accel(2) Accel 50, 50 SRVJump pick 恢复以前的设置 Accel currAccel, currDecel AccelMax 函数 32 EPSON RC+ 7.0 (Ver.7.0) SP

39、EL+ 语言参考 Rev.3 AccelMax 函数函数 是用于返回 Accel 可以设置的加减速度的最大值的函数。 格式格式 AccelMax(最大值编号) 参数参数 最大值编号 以整数值指定下述各值。 1:加速度最大值 2:减速度最大值 3:Jump 动作时的转移加速度最大值 4:Jump 动作时的转移减速度最大值 5:Jump 动作时的接近加速度最大值 6:Jump 动作时的接近减速度最大值 返回值返回值 返回大于 1 的整数(%)。 参阅参阅 Accel AccelMax 函数使用示例函数使用示例 如下所示为程序中使用 AccelMax 函数的示例。 显示最大加减速度 Print Ac

40、celMax(1), AccelMax(2) AccelR EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 33 AccelR 用于设置和显示有关 CP 动作时工具姿势变化的加减速度。 格式格式 (1) AccelR 加速设定值, 减速设定值 (2) AccelR 参数参数 加速设定值 以实值 (0.1 - 5000) 指定加速设定值。(单位:deg/sec2) 减速设定值 以实值 (0.1 - 5000) 指定减速设定值。(单位:deg/sec2) 结果结果 如果省略参数,则显示当前的 AccelR 设定值。 说明说明 AccelR 仅在 Move、Arc、

41、Arc3、BMove、TMove、Jump3CP 中使用 ROT 修饰参数时有效。 在下述任何一种情况下,AccelR 值将被初始化。 控制器电源 ON 执行 Motor On 执行 SFree、SLock、Brake 执行 Reset、Reset Error 利用停止按钮或执行 Quit All 等结束任务 参阅参阅 Arc, Arc3, BMove, Jump3CP, Power, SpeedR, TMove AccelR 使用示例使用示例 AccelR 360, 200 AccelR 函数 34 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 Accel

42、R 函数函数 返回指定工具姿势变化的加减速度的设定值。 格式格式 AccelR(设定值编号) 参数参数 设定值编号 以表达式或数值指定下述各值。 1:加速度设定值 2:减速度设定值 返回值返回值 以实值(单位:deg/sec2)返回加速或减速设定值。 参阅参阅 AccelR AccelR 函数使用示例函数使用示例 Real currAccelR, currDecelR 获取当前的加减速度 currAccelR = AccelR(1) currDecelR = AccelR(2) AccelS EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 35 AccelS

43、用于设置机器人的直线动作和 CP 动作的加减速度。 (请参阅 Move、Arc、Arc3、Jump3。) 格式格式 (1) AccelS 加速设定值, 减速设定值, 转移加速设定值, 转移减速设定值, 接近加速设定值, 接近减速设定值 (2) AccelS 参数参数 加速设定值 以实值指定直线动作或 CP 动作时的加速度(单位:mm/sec2)。如果省略减 速设定值,在加速时和减速时都将应用加速设定值。 减速设定值 以实值指定直线动作或 CP 动作时的减速度(单位:mm/sec2)。可省略。 转移加速设定值 以实值指定 Jump3 时和 Jump3CP 时的转移动作的转移加速度(单位:mm/s

44、ec2)。 可省略。 转移减速设定值 以实值指定 Jump3 时和 Jump3CP 时的转移动作的转移减速度(单位:mm/sec2)。 可省略。 接近加速设定值 以实值指定 Jump3 时和 Jump3CP 时的接近动作的接近加速度(单位:mm/sec2)。 可省略。 接近减速设定值 以实值指定 Jump3 时和 Jump3CP 时的接近动作的接近减速度(单位:mm/sec2)。 可省略。 参数的有效设定值 加速设定值/减速设定值 转移加速设定值/转移减速设定值 接近加速设定值/接近减速设定值 0.1 - 25000 0.1 - 25000 (单位:mm/sec2) 结果结果 如果省略参数,则

45、显示加速值和减速值。 说明说明 AccelS 用于实值包括直线和圆弧插补的所有圆弧插补动作的加速和减速。包括基于 Move 和 Arc 命 令的动作。 在下述任何一种情况下,AccelS 值会被初始化,加减速度会变慢。 控制器电源 ON 执行 Motor On 执行 SFree、SLock、Brake 执行 Reset、Reset Error 利用停止按钮或执行 Quit All 等结束任务 AccelS 36 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 注意注意 在低功率模式在低功率模式 (Power Low) 执行执行 AccelS 命令命令 在低功率

46、模式 (Power Low) 时使用 AccelS,将会保存新值,而当前值将被限制在较低水平。 TEACH 模式为 OFF、功率设为 High 时,AccelS 将变为有效。 Accel 与与 AccelS 的差异的差异 AccelS 命令并非是设置 PTP 动作(Go 和 Jump 命令的动作)的加减速度。而 Accel 命令则用于设置 PTP 动作的加减速度。 参阅 参阅 Accel, Arc, Arc3, Jump3, Jump3CP, Power, Move, TMove, SpeedS AccelS 使用示例使用示例 下述为使用预先定义的变量设置 Move 命令的 AccelS 和

47、SpeedS 的简单的动作程序例。 Function acctest Integer slow, accslow, fast, accfast slow = 20 低速的设置 fast = 100 高速的设置 accslow = 200 低加速度的设置 accfast = 5000 高加速度的设置 AccelS accslow SpeedS slow Move P1 On 1 AccelS accfast SpeedS fast Jump P2 . . . Fend AccelS 函数 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 37 AccelS 函数函

48、数 是用作返回 CP 动作的加减速度设定值的函数。 格式格式 AccelS(设定值编号) 参数参数 设定值编号 以整数值或表达式指定下述各值。 1:加速设定值 2:减速设定值 3:Jump3 时和 Jump3CP 时的转移加速设定值 4:Jump3 时和 Jump3CP 时的转移减速设定值 5:Jump3 时和 Jump3CP 时的接近加速设定值 6:Jump3 时和 Jump3CP 时的接近减速设定值 返回值返回值 返回加速设定值或减速设定值(0 - 5000 的实值、单位:deg/s2)。 参阅参阅 AccelS, Arc3, SpeedS, Jump3, Jump3CP AccelS 函

49、数使用示例函数使用示例 Real savAccelS savAccelS = AccelS(1) Acos 函数 38 EPSON RC+ 7.0 (Ver.7.0) SPEL+ 语言参考 Rev.3 Acos 函数函数 用于返回指定数值的反余弦。 格式格式 Acos(数值数值) 参数参数 数值 以实值指定角度的余弦。 返回值返回值 用于以实值(单位:弧度)返回指定数值的反余弦。 说明 说明 Acos 用于返回指定数值的反余弦。指定的数值在-1 - 1 的范围内。返回值的范围为 0 - 。如果数 值小于-1 或大于 1,将会出错。 要将弧度转换为角度时,需要使用 RadToDeg 函数。 参阅参阅 Abs, Asin, Atan, Atan2, Cos, DegToRad, RadToDeg, Sgn, Sin, Tan, Val Acos 函数使用示例函数使用示例 Function acostest Double x x = Cos(DegToRad(30) Print “Acos of “, x, “ is “,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/环境 > 建筑资料


经营许可证编号:宁ICP备18001539号-1