配色: 字号:
IAI-SEL語言編程
2017-12-30 | 阅:  转:  |  分享 
  
SEL语言所使用的数值与符号

SEL所使用的数值一览表

功能 SA控制器 备注 总体领域 局部领域 输入埠 001~015(15点) 输出埠 300~307(8点) 辅助埠 600~887(288点) 900~999(100点) 变量(整数) 200~299(100点) 1~99(99点) 99使用于INB,OUTB 变量(实数) 300~399(100点) 100~199(100点) 199使用于PPUT,PGET 字符串 搜寻NO. 1~64(64点) 子程序NO. 1~64(64点) 轴NO. 1 轴的模式 位置NO. 1~500 程序NO. 1~32 程序容量NO. 1~2000 任务级数 1~5 资源NO. 1~9 路线NO. 定时器 1 不管从哪一个程序均可共通使用。 请个别参照每个程序。



激活程序时,即被删除。 变量99及199是使用本系统演算功能时的特别变量。



请避免泛用这两种变量。

批注)变量99及199为使用本系统演算功能时的特别寄存器(Register)。





关于备用电池领域

当控制器再度打开电源时,其内部状态除了备用电池领域以外,均被删除(紧急停止时的状态也相同)。



。程序 (停止)

。输出埠 (删除)

。局部辅助埠(FLAG) (删除)

。局部变量 (删除)

。原点位置 (删除)

。总体辅助埠(FLAG) (保持原状)

。全局变量 (保持原状)





关于SEL语言所使用的数值范围

使用的数值为整数及实数。但是请充分注意有以下几点限制事项。

关于控制器内部处理(计算机)

整数以±2,147,483,648或者实数以单精度浮动小数点±3.4×1038做为理论性的处理。



现实制约

开发初期的基本程序工具为LCD(液晶显示)的教导器,其结果针对输入或输出程序上有下列限制:



整数-9,999,999~99,999,999

实数-999,999~9999,999

或者-.999999~.9999999

总之包含符号小数点8位数值,为程序处理数值的限度。另外,用浮动小数点演算之后,其有效数值只能保证到7位数为止,因为其中含括了浮动小数点的特有误差,再此请多予以谅解。



关于位置数据

位置数据处理以内部的整数数据为主,但是在演算过程里都是取实数。如果以±9999,999处理的话是不会有问题的,然而将位置数据视为一般数据进行内部演算的结果之下(反复乘除算),最后位数的精度就会产生问题。



在使用时请充分斟酌以上几点。特别是在使用实数的比较演算上,如果采用CPEQ命令的话几乎不会一致。此时必须并用大小关系的CPLE/CPGE命令。



2 SEL语言所使用的符号

SEL语言所使用的符号内容说明如下。



记号 意义 说明 ZR

EQ

NE

GT

GE

LT

LE

PE





CP

TU

XX



---- 0

等于

不等于

大于

大于等于

小于

小于等于

位置结束



完整

时间经过

没有位置值



演算结果为0时,则输出ON

操作1=操作2时,则输出ON

操作1≠操作2时,则输出ON

操作1>操作2时,则输出ON

操作1≧操作2时,则输出ON

操作1<操作2时,则输出ON

操作1≦操作2时,则输出ON

动作结束时,则输出ON(线,圆,圆弧之连续移动时,在2POINT面输出ON)

结束命令时,则输出ON

时间经过时,则输出ON

当位置无有效值时,则输出ON

在以上记号上画下线,则需出输出。 ON

OF

NT

FN

FF

BN

BF ON

OFF

NOT

FORWARDON

FORWARDOFF

BACKWARDON

BACKWARDOFF ON

OFF

逆转

在指定的输出/输入式辅助埠,ON/OFF时,传动装置前进/后退。







输入埠与输出埠

2.1输入埠

使用于限位开关(LimitSwitch)与检测开关(SensorSwitch)等之输入埠。



设定输入编号 SA控制器 001~015 标准





























2.2输出埠

使用于各种输出埠。



设定输入编号 SA控制器 001~015 标准

SA控制器输出入埠一览表





程序模式

埠NO. 功能 说明 PRGNO.01 100以BCDCODE指定激活程序No。



当输入埠000(输入外部激活)变

为ON的瞬间,即执行被指定的程

101式。

PRGNO.02 PRGNO.04 PRGNO.08 PRGNO.10 PRGNO.20 预备 输入CPURESET 再度激活控制器。 000 输入外部激活 在变成ON的瞬间,执行被指定的程序。 000~015 泛用输入 可让USER自由使用的输入埠。 300 紧急停止/警鸣输出 发生紧急停止与错误时,即变成ON。 301 输出READY 控制器已完成准备状态时,即变成ON。 302~307 泛用输出 可让USER自由使用的输出埠。



定位装置模式

埠NO. 功能 说明 PRGNO.01



使用定位装置模式时,请将程序NO.输入为「O」(OFF)状态。 PRGNO.02 PRGNO.04 PRGNO.08 PRGNO.10 PRGNO.20 预备 输入CPURESET 再度激活控制器。 000 输入外部激活 在变成ON的瞬间,移动到被指定的位置上。 001 输入HOLDER 一旦变成ON,伺服传动装置即减速停止。 002~003 NC 002~003表示为定位装置模式时会成为NC。 004 输入位置NO.1



100 004~014表示BCDCODE

作为指定激活程序No。



当输入埠000(输入外部启

101 动)变为ON的瞬间,即移动

到被指定的位置上。

当没有指定位置NO.时,则执

行回归原点。

102

005 输入位置NO.2 006 输入位置NO.4 007 输入位置NO.8 008 输入位置NO.10 009 输入位置NO.20 010 输入位置NO.40 011 输入位置NO.80 012 输入位置NO.100 013 输入位置NO.200 014 输入位置NO.400 015 NC 015表示为定位装置模式时会成为NC。 300 紧急停止/警鸣输出 发生紧急停止与错误时,即变成ON。 301 输出READY 控制器已完成准备状态时,即变成ON。 302 输出位置决定完毕 位置移动完毕时,即变成ON。 300~307 NC 303~307表示为定位装置模式时会成为NC。

3.FLAG

所谓FLAG就是旗子的意思,然而意义的内容就是指利用“内存”执行数据的SET与RESET功能。以程序装置来解释,就是指“辅助继电器(Relay)”而言。

FLAG的种类如下,所有程序均可使用的泛用型FLAG(GlobalFlag)600~887号,以及仅可使用于个别程序的专用型FLAG(LocalFlag)900~999号。

泛用型FLAG(GlobalFlag),就算关闭电源也能储存资料(备用电池)。

专用型FLAG(LocalFlag),一旦关闭电源资料就会流失。



FLAG编号 600~887 适用于所有程序“泛用型FLAG(GlobalFlag)” FLAG编号 900~999 适用于个别程序“专用型FLAG(LocalFlag)”



程序1

程序n

执行FLAG600ON

BTON600

WTON600

等待FLAG600ON



(使用这种泛用型的FLAG,即可做到两程序间的通讯)



BTON900

BTON900 (此为专用FLAG,不同的程序均有期独立的FLAG

4.变量

4.1变量的意义

所谓变量是软件的专门用语。以容易解释的方法来表现的话,就是“放入数值的箱子”。可用来放入数值或取出数值及加减计算等。











命令 操作1 操作2 ADD 1 1 如图所示,在变量1的箱子里已经放入2,经过+1的结果即变成3。





+1















(已经放入2)











4.2变量的种类

变量有下列2个种类。



(1).整数型变量

不取小数点以下的变量。

〔例〕1234





















整数型变量编号 200~299 适用于所有程序“泛用型整数变量” 整数型变量编号 1~99 适用于个别程序“专用型整数变量” (备注)变量99为本装置所使用的演算整数用的特别寄存器。

在程序上可输入的数值,从-9,999,999到99,999,999为止。



(2).实数型变量

为实际数值,可取小数点以下之变量。

〔例〕1234.567



(小数点)

















实数型变量编号 300~399 适用于所有程序“泛用型实数变量” 实数型变量编号 100~199 适用于个别程序“专用型实数变量” (备注)实数199为本装置所使用的演算实数用的特别寄存器。

在程序上可输入的数值,从-99,999.9到999,999.9(付带符号8位数)为止。



附带“”(星号)的变量

“”(星号)使用于指定变量时。

如同下例所示。将变量1的内容放入变量箱2。假使在变量箱1里放入“1234”,那么1234也会进入变量箱2。



命令 操作1 操作2 LET 1 1234







命令 操作1 操作2 LET 2 1



5.搜寻TAG



所谓“TAG”就是指搜寻而言。

就好比在经常阅读的书本上贴上卷标以利于查询的意义是相同的。

利用JUMP命令的“GOTO”,就会跳到所指定的“TAG”上。





























命令 操作1 TAG TAGNO.(1~64的整数值)

每个程序可个别使用。



TAG1













GOTO1





6.子程序

将程序里反复使用的部份划分出来,只要以“子程序”作为登录的话,即可处理少段阶数。(最大套用可到15为止)

每个程序可个别使用。



命令 操作1 EXSR 子程序NO.(1~64的整数值,变量) 子程序执行命令





命令 操作1 BGSR 子程序NO.(1~64的整数值) 子程序开始宣言





命令 操作1 EDSR ----------- 子程序完毕宣言









SEL语言的构造



SEL语言分别有,位置部位(位置数据=坐标值,其它)与命令部位(应用程序)。



7-1位置(Position)

位置部位收纳了坐标值.速度.加速度。





1,2 2

1~800mm/s 标准0.3G

(9999.999mm

位置NO. 速度 加速度 1轴 1 2 3 4 . . . . 497 498 499 500



1根据传动装置的机种,会有所不同。

2在位置数据上设定速度.加速度时,该数据优先于应用程序上所设定的数据。

想让应用的数据有效时,则设定为×,××或0。

命令部位

SEL语言的最大特征就是拥有极为简单的命令构造。为了让构造变得简单,不需要编译程序(翻译计算机语言),而是利用翻译程序(一边翻译一边动作)以执行高速动作。

SEL语言的构造

第一阶段的构造如下:

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 用指针图表现如下:





命令

操作1

操作2

输出

(1)命令前的条件相当于,在巧妙装置里的BASIC语言”IF~THEN….”。





命令

操作1

操作2

输出



IF~THEN...................ELSE



当输入条件成立时即执行命令,如果有输出指定的话将则会打开(ON)输出埠,当输入条件不成立时,不论其后的命令为何(ex.WTON,WTOF)都会进入下一个阶段。

当没有设定条件时,会无条件执行命令。

想要使用反条件(一般而言就是指b触点)时,请在条件处加上”N”(NOT)。

在条件上,可使用输入埠.输出支持FLAG。



(2)在命令.操作1.操作2输出时的动作如下:





命令

操作1

操作2

输出



当传动装置动作控制命令等,开始执行命令的同时会变成OFF状态,执行完毕后即变成ON状态。演算命令方面,当结果为特定值则为ON状态,除此之外均为OFF状态。

在输出部位上,可使用输出端口与FLAG(信号旗)。

7-2-2扩张条件

也可组合复杂的条件。



AND扩张(指针图的表现)(SEL语言)







条件1AND





条件2AND





条件3 扩张条件 输出条件 命令

输出点 命令 操作1 操作2 条件1 AND 条件2 AND 条件3 命令 操作1 操作2



OR扩张



条件1OR





条件2 扩张条件 输出条件 命令

输出点 命令 操作1 操作2 条件1 OR 条件2 命令 操作1 操作2



AND扩张与OR扩张



条件1AND





条件2OR





条件3 扩张条件 输出条件 命令

输出点 命令 操作1 操作2 条件1 AND 条件2 OR 条件3 命令 操作1 操作2

8.参数一览表(表示参考值。出货时每种机种的设定不同。)

8.1共通参数



伺服参数

NO. 参数名称 设定值 内容 1 AxisSize 1 轴数 2 Numerator 1 分子 3 Denominator 1 分母 4 Override(%) 100 过载 5 Acceler(G) 0.30 加速度系数(G) 6 AccelerMax(G) 1.00 最大加速度系数(G) 7 DriveVel(mm/s) 100 运转速度(mm/s) 8 DriveVelMax(mm/s) 1000 最大速度(mm/s)





程序参数

NO. 参数名称 设定值 内容 1 AutoStartProgram 0 自动激活程序NO. 2 EmargencyProgram 0 紧急停止程序NO. 3 ProgramSize 32 程序数 4 TaskSize 8 任务数 5 StepSize 1000 程序容量 6 TimeSlice 0.01 时间限幅值







POINT参数

NO. 参数名称 设定值 内容 1 PointSize 500 PointData数





轴别参数







轴别伺服参数



No. 参数名称 设定值 内容 1 AxisName 1 轴名 2 ServoService 400 伺服使用次数(次数/s) 3 Numerator 1 分子 4 Denominator 1 分母 5 Overrade(%) 100 过载(%) 6 Acceler(G) 0.30 加速系数(G) 7 JogVel(mm/s) 30 指定速度(mm/s) 8 PendBand 10 决定位置宽幅(脉冲) 9 SoftLimitOffset 2.00 SoftLimitOffset 10 SoftLimit(+) 9999 SoftLimit(+) 11 SoftLimit(-) 0 SoftLimit(-)







轴别回归原点参数



No. 参数名称 设定值 内容 1 HomeDir 0 回归原点方向 2 HomeType 0 回归原点方法 3 HomeSequence 1 顺序 4 HomeSwPol 1 输入限制极性 5 HomeZEdge 1 检出Z相界限 6 HomeCreepVel 100 频率速度 7 HomeBackVel 10 接排速度 8 HomeZVel 5 Z相搜索速度 9 HomeOffset 0 偏移移动量 10 HomeDeviation 667 推压偏差(脉冲) 11 HomeCurrent 60 电流限制









(3)轴别马达参数(MotorParameter)

NO. 参数名称 设定值 内容 1 MotorPRMMax 4000 马达最大回转率 2 EncoderPulse 400 编码器脉冲数 3 ScrewLead 8 螺旋导线(mm) 4 Multiple 4 倍增率 5 BrakeTime 0.1 制动时间 6 PositionGain 60 位置增益窜渡 7 SpeedGain 80 速度增益窜渡 8 F/FGain 0 输送/前进增益窜渡 9 IntegralGain 30 积分增益窜渡 10 TotalGain 1150 总计增益窜渡 11 Int.Volt.Lmt 60 积分电压极限 12 OverSpeed 410 超速定数 13 ErrorRange 2666 累积误差 14 MotorMaxCur 90 马达最大回转数 15 MotorOverLoad 16300 马达过负荷下限值

功能别SEL语言命令码一览表



区分 条件 命令 操作1 操作2 输出 功能 参照页数 数值

演算 任意 LET 代入变量 代入数 ZR 代入 23 任意 TRAN 复制前变量 复制原始变量 ZR 复制 23 任意 CLR 开始删除变量 删除结束变量 ZR 删除变量 24 算





算 任意 ADD 被加变量 加数 ZR 加算 25 任意 SUB 被减变量 减数 ZR 减算 25 任意 MULT 被乘变量 乘数 ZR 乘算 26 任意 DIV 被除变量 除数 ZR 除算 26 任意 MOD 剩余代入变量 除数 ZR 剩余算 27 涵





算 任意 SIN 正弧代入变量 演算数(弧度) ZR 正弧 28 任意 COS 余弧代入变量 演算数(弧度) ZR 余弧 28 任意 TAN 正接代入变量 演算数(弧度) ZR 正接 29 任意 ATN 逆正接代入变量 演算数(弧度) ZR 逆正接 29 任意 SQR 平方根代入变量 演算数 ZR 平方根 30 论理

演算 任意 AND 被论理积变量 演算数 ZR 常数间And 31 任意 OR 被论理和变量 演算数 ZR 常数间Or 32 任意 EOR 被排他性论理和变量 演算数 ZR 常数间Eor 33 比较 任意 CPXX 比较变量 比较数 EQNEGTGELTLE 比较 34 时间 任意 TIMW 等待时间(秒) TU 等待时间 35 任意 TIMC 程序NO. 解除等待时间 35 任意 GTTM 时间代入变量 取得时间 36 输出

入.



操作

Flag 任意 BTXX 开始输出.flag 输出完毕.FLAG 输出.flag(ONOFNT) 37 任意 WTXX 输出入.flag 等待时间 TU 等待输出入.fag(ONOF) 38 任意 IN 最前面输出入.flag 输出完毕.FLAG 输入2进位数(Max31bit) 39 任意 INB 最前面输出入.flag 变换位数 输入BCD(Max8位数) 40 任意 OUT 最前面输出入.flag 输出完毕.FLAG 输出2进位数(Max31bit) 41 任意 OUTB 最前面输出入.flag 变换位数 输出BCD(Max8位数) 42 程序

控制 任意 GOTO JumptagNO. JUMP 43 TAG 宣言tagNO. JUMP宣言 43 任意 EXSR 执行子程序NO. 执行子程序 44 BGSR 执行子程序NO. 子程序开始 44 EDSR 子程序结束 45 职务

管理 任意 EXIT 结束程序 46 任意 EXPG 执行程序NO. CP 激活程序 46 任意 ABPG 停止程序NO. CP 停止其它程序 47



区分 条件 命令 操作1 操作2 输出 功能 参照页数







位置

操作

任意 PGET 轴NO. 位置NO. 在位置上代入变量199 48 任意 PPUT 轴NO. 位置NO. 代入变量199的值 48 任意 PCLR 开始位置NO. 位置完毕NO. 删除位置数据 49 任意 PCPY 复制位置NO. 复制对象位置NO. 复制位置数据 49 任意 PRED 读取轴模式 收纳对象位置NO. 读取轴的现在位置 50 任意 PTST 确认轴模式 确认位置NO. XX 确认位置数据 50 任意 PVEL 速度(mm/sec) 代入对象位置NO. 代入位置速度 51 任意 PACC 加速度(G) 代入对象位置NO 代入位置加速度 51 任意 PSIZ 尺寸代入变量NO. 确认位置尺寸 52



传动

装置

控制

宣言 任意 VEL 速度(mm/sec) 设定速度 53 任意 OVRD 速度比(%) 设定速度系数 53 任意 ACC 加速度(G) 设定加速度 54 任意 SCRV 比率(%) 设定S字运行比率 55 任意 OFST 设定轴模式 OFFSET值(mm) 设定OFFSET 56 任意 HOLD 暂时停止输入埠 暂时停止埠宣言 57 任意 CANC 终止完毕输入埠 终止完毕埠宣言 58 任意 AXST 状况收纳变量 取得轴NO. 取得轴的状况 59





传动

装置

控制

命令





构造

化IF



构造化DO

任意 SVXX 操作轴模式 伺服〔ONOFF〕 60 任意 HOME 回归原点轴模式 PE 回归原点 60 任意 MOVP 移动对象位置NO. PE 移动指定位置 61 任意 MOVD 移动位置 PE 移动指定Direct 62 任意 MVPI 移动量位置NO. PE 移动相对位置 63 任意 MVDI 移动量 PE 移动增量 64 任意 JXWX 动作轴模式 输出入激活.FLAG PE Jog[FNFFBNBF] 65 任意 STOP 停止轴模式 PE 停止减速轴 65 任意 IFXX 比较变量 比较数 比较[EQNEGTGELTLE] 66 ELSE 执行IF命令条件不成立宣言 67 EDIF IF终了宣言 67 任意 DWXX 比较变量 比较数 循环[EQNEGTGELTLE] 68 任意 LEAV 离开DO 68 任意 ITER 反复执行DO 69 EDDO DO终了宣言 69

多分歧 任意 SLCT 开始多分歧宣言 70 WHXX 比较变量 比较数 值分歧[EQNEGTGELTLE] 71 OTHE 条件不成立时的分歧宣言 72 EDSL SLCT终了宣言 72

10.字母顺序SEL语言命令代码一览表



条件 命令 操作1 操作2 输出 功能 参照页数 任意 ABPG 停止程序NO. CP 停止其它程序 47 任意 ACC 加速度 设定加速度 54 任意 ADD 被加变量 加数 ZR 加算 25 任意 AND 被论理积变量 演算数 ZR 论理积 31 任意 ATN 逆正接代入变量 演算数(弧度) ZR 逆正接 29 任意 AXST 任意收纳变量 取得轴NO. 任意取得轴 59 BGSR 宣言子程序NO. 子程序开始 44 任意 BTXX 开始输出.flag 输出完毕.FLAG 输出.flag(ONOFNT) 37 任意 CANC 输入终止结束埠 终止结束埠宣言 58 任意 CLR 删除开始变量 结束删除变量 ZR 删除变量 24 任意 COS 代入余弧变量 演算数(弧度) ZR 余弧 28 任意 CPXX 比较变量 比较数 比较 34 任意 DIV 被除变量 除数 ZR 除算 26 任意 DWXX 比较变量 比较数 循环[EQ,NE,GT,GE,LT,LE] 68 EDDO DO结束宣言 69 EDIF IF结束宣言 67 EDSL SLCT结束宣言 72 EDSR EQNEGTGELTLE 结束子程序 45 ELSE IF命令条件埠成立执行宣言 67 任意 EOR 被排他性论理和变量 演算数 ZR 排他性论理和 33 任意 EXIT 结束程序 46 任意 EXPG 执行程序NO. CP 激活程序 46 任意 EXSR 执行子程序NO. 执行子程序 44 任意 GOTO JumptagNO. JUMP 43 任意 GTTM 代入时间变量 取得时间 36 任意 HOLD 输入暂时停止埠 暂时停止埠宣言 57 任意 HOME 回归原点模式 PE 回归原点 60 IFXX 比较变量 比较数 比较[EQ,NE,GT,GE,LT,LE] 66 任意 IN 最前面输出入.flag 输出完毕.FLAG 输入2进位数(Max31bit) 39 INB 最前面输出入.flag 变换位数 输入BCD(Max8位数) 40 ITER 反复执行DO 69 任意 JXWX 动作轴模式 激活输出入.flag PE JOG[FN,FF,BN,BF] 65 任意 LEAV 离开DO 68 任意 LET 代入变量 代入数 ZR 代入 23



条件 命令 操作1 操作2 输出 功能 参照页数 任意 MOD 代入剩余变量 除数 ZR 剩余算 27 任意 MOVD 移动位置 PE 移动指定Direct 62 任意 MOVP 移动对象位置NO. PE 移动指定位置 61 任意 MULT 被乘变量 乘数 ZR 乘算 26 任意 MVDI 移动量 PE 移动增量 64 任意 MVPI 移动量位置NO. PE 移动相对位置 63 任意 OFST 设定轴模式 OFFSET值(mm) 设定OFFSET 56 任意 OR 被论理和变量 演算数 ZR 论理和 32 OTHE 条件不成立时的分歧宣言 7272 任意 OUT 最前方输出入.FLAG 输出入.FLAG完毕 输出2进位(Max3bit) 41 任意 OUTB 最前方输出入.FLAG 变换位数 输出BCD(Max8位数) 42 任意 OVRD 速度比(%) 设定速度系数 53 任意 PACC 加速度(G) 代入对象位置NO. 代入位置加速度 51 任意 PCLR 开始位置NO. 完毕位置NO. 删除位置数据 49 任意 PCPY 复制位置NO. 复制对象位置NO. 复制位置数据 49 任意 PGET 轴NO. 位置NO. 在位置上代入变量199 48 任意 PPUT 轴NO. 位置NO. 代入变量199的值 48 任意 PRED 读取轴模式 收纳对象位置NO. 读取轴的现在位置 50 任意 PSIZ 代入尺寸变量NO. 确认位置尺寸 52 任意 PTST 确认轴模式 确认位置NO. XX 确认位置数据 50 任意 PVEL 速度(mm/sec) 代入对象位置NO. 代入位置速度 51 任意 SCRV 比率(%) 设定S字运行比率 55 任意 SIN 代入正弧变量 演算数(弧度) ZR 正弧 28 任意 SLCT 多分歧开始宣言 70 任意 SQR 代入平方根变量 演算数 ZR 平方根 30 任意 STOP 停止轴模式 PE 停止减速轴 65 任意 SUB 被减变量 减数 ZR 减算 25 任意 SVXX 操作轴模式 伺服[ONOFF] 60 TAG 宣言TAGNO. 跳跃对象宣言 43 任意 TAN 代入正接变量 演算数(弧度) ZR 正接 29 任意 TIMC 程序NO. 解除等待时间 35 任意 TIMW 等待时间(秒) TU 等待时间 35 任意 TRAN 复制对象变量 复制对象变量 ZR 复制 23 任意 VEL 速度(mm/sec) 设定速度 53 WHXX 比较变量 比较数 分歧值[EQNEGTGELTLE] 71 任意 WTXX 输出入,FLAG 等待时间 TU 等待输出入.FLAG[ONOFF] 38 SEL语言

数值演算命令

LET(代入)

(AND.OR) (输出入.flag) (输出入.flag) 命令.宣言 操作1 操作2 自由 自由 LET 变量NO. 数据 ZR 〔功能〕在操作1的变量上代入操作2的数值。

当操作1的变量被代入0的时候,即输出ON。



〔例1〕 LET 1 10 在变量1上代入10。

〔例2〕 LET 1 2 在变量1上代入2。

LET 3 10 在变量3上代入10。

LET 1 3 在变量1的内容2变量上代入变量3的内容10。











TRAN(移动)

扩张条件

(AND.OR) 输入条件

(输出入.flag) 命令.宣言 输出部

(输出.flag) 命令.宣言 操作1 操作2 自由 自由 TRAN 变量NO. 变量NO. ZR 〔功能〕 将操作2的变量内容,代入操作1的变量。

当操作1的变量被代入0的时候,即输出ON。



〔例1〕 TRAN 1 2 将变量2的内容代入变量1。

上记的动作以LET命令执行。

〔例2〕 LET 1 2 在变量1上代入2。

LET 2 3 在变量2上代入3。

LET 3 4 在变量3上代入4。

LET 4 10 在变量4上代入10。

TRAN 1 3 在变量1的内容2变量上,代入变量3的内容

4之变量10。



变量会有下列变化。



变量 1 2 3 4 1 2 3 4 数值 2 3 4 10 2 10 4 10

CLR(删除变量)

扩张条件

(AND.OR) 输入条件

(输出入.flag) 命令.宣言 输出部

(输出.flag) 命令.宣言 操作1 操作2 自由 自由 CLR 变量NO. 变量NO. ZR 〔功能〕 删除操作1的变量到操作2的变量。

被删除的变量内容变成0。

当操作1的变量被代入0的时候,即输出ON。



〔例1〕 CLR 1 5 删除1~5的变量。



〔例2〕 LET 1 10 在变量1上代入10。

LET 2 20 在变量2上代入20。

CLR 1 2 删除从变量1的内容10到变量2的内容20为

止的变量。



算术演算命令

ADD(加算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 AND 变量NO. 数据 ZR 〔功能〕 加算操作1的变量内容与操作2的数值后,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 3 在变量1上代入3。

ADD 1 2 在变量1的内容3上加2。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 3 在变量2上代入3。

LET 3 2 在变量3上代入2。

ADD 1 3 在变量1的内容2变量上,加上变量3的内容2。

变量2就等于代入3+2=5







SUB(减算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SUB 变量NO. 数据 ZR 〔功能〕 从操作1的变量内容减掉操作2的数值后,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 3 在变量1上代入3。

SUB 1 2 从变量1的内容3减掉2。

变量1就等于代入3-2=1。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 3 在变量2上代入3。

LET 3 2 在变量3上代入2。

SUB 1 3 从变量1的内容2变量,减掉变量3的内容2。

变量2就等于代入3-2=1



MULT(乘算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MULT 变量NO. 数据 ZR 〔功能〕 在操作1的变量内容上乘算操作2的数值后,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 3 在变量1上代入3。

MULT 1 2 在变量1的内容3上乘以2。

变量1就等于代入3×2=6



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 3 在变量2上代入3。

LET 3 2 在变量3上代入2。

MULT 1 3 在变量1的内容2变量上,乘以变量3的内容2。

变量2就等于代入3×2=6









DIV(除算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 DIV 变量NO. 数据 ZR 〔功能〕 用操作2的数值除以操作1的变量后,代入操作1的变量。

当演算结果为0的时候,即输出ON。



(批注)当操作1为整数型变量时,少数点以下的数值则被舍去。



〔例1〕 LET 1 6 在变量1上代入6。

DIV 1 2 用2除以变量1的内容6。

变量1就等于代入6÷2=3



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 6 在变量2上代入6。

LET 3 2 在变量3上代入2。

DIV 1 3 用变量3的内容2除以变量1的内容,。

变量2就等于代入6÷2=3

MOD(商余)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MOD 变量NO. 数据 ZR

〔功能〕 用操作2的数值除以操作1的变量内容后,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔批注〕MOD命令使用于整数型变量上。





〔例1〕 LET 1 7 在变量1上代入7。

MOD 1 3 用3除以变量1的内容,以求算出商余。

变量1就等于7÷3=2余1,代入1。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 7 在变量2上代入7。

LET 3 3 在变量3上代入3。

MOD 1 2 用变量3的内容3除以变量1的内容2变量,以求商余。

变量2就等于7÷3=2余1,代入1。

11.3函数演算命令

SIN(正弧演算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SIN 变量NO. 数据 ZR 〔功能〕 在操作1的变量上代入操作2的正弧。

当演算结果为0的时候,即输出ON。

操作1的设定范围,请指定实数型变量100~199,300~399。

操作2的单位是弧度(RADIAN)[=国际单位制的平面角单位,符号为[rad]

〔批注〕弧度=角度×π÷180



〔例1〕 SIN 100 0.523599 在变量100上代入0.523599的正弧0.5。



〔例2〕 LET 1 100 在变量1上代入100。

LET 101 30 30×π÷180(弧度)

MULT 101 3.141592 (将30°变换为弧度,代入变量101。)

DIV 101 180 在变量1的内容100的变量上,代入变量

SIN 1 101 101的内容正弧0.5。



COS(余弧演算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 COS 变量NO. 数据 ZR 〔功能〕 在操作1的变量上代入操作2的余弧。

当演算结果为0的时候,输出即变成ON。

操作1的设定范围,请指定实数型变量100~199,300~399。

操作2的单位是弧度(RADIAN)[=国际单位制的平面角单位,符号为[rad]

〔批注〕弧度=角度×π÷180



〔例1〕 COS 100 1.047197 在变量100上,代入1.047197的余弧0.5。



〔例2〕 LET 1 100 在变量1上代入100。

LET 101 60 60×π÷180(弧度)

MULT 101 3.141592 (将60°变换为弧度,代入变量101。)

DIV 101 180 在变量1的内容100的变量上,代入变量

COS 1 101 101的内容余弧0.5。



TAN(正接演算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 TAN 变量NO. 数据 ZR 〔功能〕 在操作1的变量上代入操作2的正接值。

当演算结果为0的时候,即输出ON。

操作1的设定范围,请指定实数型变量100~199,300~399。

操作2的单位是弧度(RADIAN)[=国际单位制的平面角单位,符号为[rad]

〔批注〕弧度=角度×π÷180



〔例1〕 TAN 100 0.785398 在变量100上代入0.785398的正弧1。



〔例2〕 LET 1 100 在变量1上代入100。

LET 101 45 45×π÷180(弧度)

MULT 101 3.141592 (将45°变换为弧度,代入变量101。)

DIV 101 180 在变量1的内容100的变量上,代入变量

TAN 1 101 101的内容正接1。





ATN(逆正接演算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 ATN 变量NO. 数据 ZR 〔功能〕 在操作1的变量上代入操作2的逆正接值。

当演算结果为0的时候,输出即变成ON。

操作1的设定范围,请指定实数型变量100~199,300~399。

操作2的单位是弧度(RADIAN)[=国际单位制的平面角单位,符号为[rad]



〔批注〕弧度=角度×π÷180



〔例1〕 ATN 100 1 在变量100上的1逆正接,代入0.785398。



〔例2〕 LET 1 100 在变量1上代入100。

LET 101 1 在变量101上代入1。

TAN 1 101 在变量1的内容100的变量上,代入变量

101的内容逆正接0.785398。



SQR(平方根演算)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SQR 变量NO. 变量NO. ZR 〔功能〕 在操作1的变量上,代入操作2的平方根。

当演算结果为0的时候,即输出ON。



〔例1〕 SQR 1 4 在变量1上代入4的平方根2。





〔例2〕 LET 1 10 在变量1上代入10。

LET 2 4 在变量2上代入4。

SQR 1 2 在变量1的内容10变量上,代入变量3的内容

4的平方根。





11.4论理演算命令

AND(论理积)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 AND 变量NO. 数据 ZR

〔功能〕 将操作1的变量内容与操作2数值的论理积,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 204 在变量1上代入204。

AND 1 170 将变量1的内容204与170的论理积136,代

入变量1。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 204 在变量2上代入204。

LET 3 170 在变量3上代入170。

AND 1 3 在变量1的内容2即变量内容204与变量3

内容170的论理积136,代入变量1内容2的变量。









10进位 2进位

204 11001100

AND 170 AND 10101010

136 10001000



OR(论理和)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 OR 变量NO. 数据 ZR

〔功能〕 将操作1的变量内容与操作2数值的论理和,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 204 在变量1上代入204。

OR 1 170 将变量1的内容204与170的论理和238,代

入变量1。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 204 在变量2上代入204。

LET 3 170 在变量3上代入170。

OR 1 3 在变量1的内容2即变量内容204与变量3

内容170的论理和238,代入变量1内容2的

变量。









10进位 2进位

204 11001100

OR 170 OR 10101010

238 11101110





EOR(排他性论理和)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 EOR 变量NO. 数据 ZR 〔功能〕 将操作1的变量内容与操作2数值的排他性论理和,代入操作1的变量。

当演算结果为0的时候,即输出ON。



〔例1〕 LET 1 204 在变量1上代入204。

EOR 1 170 在变量1的内容204与170的排他性论理和102

,代入变量1。



〔例2〕 LET 1 2 在变量1上代入2。

LET 2 204 在变量2上代入204。

LET 3 170 在变量3上代入170。

EOR 1 3 将变量1的内容2即变量内容204与变量3

内容170的排他性论理和102,代入变量1内容2的变量。









10进位 2进位

204 11001100

EOR 170 EOR 10101010

102 01100110



11.5比较演算命令

CP××(比较)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 CP×× 变量NO. 变量NO. EQNE

GTGE

LTLE 〔功能〕 当操作1的变量内容与操作2的变量内容满足了比较条件的话,即输出

ON。

当不满足条件时,即输出OFF。





CP××

EQ ...操作1=操作2

NE ...操作1≠操作2

GT ...操作1>操作2

GE ...操作1≧操作2

LT ...操作1<操作2

LE ...操作1≦操作2







〔例1〕 LET 1 10 在变量1上,代入变量1。

CPEQ 1 10 600 如果变量1的内容为10的话,FLAG600即为ON。

600 ADD 2 1 当FLAG600为ON时,在变量2上加入1。







〔例2〕 LET 1 2 在变量1上代入2。

LET 2 10 在变量2上代入10。

LET 3 10 在变量3上代入10。

CPNE 1 3 310 当变量1的内容2的变量和变量3的内容不等于时,输出310即为ON。

11.6计时命令

TIMW(计时)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 TIMW 时间 TU 〔功能〕 等待用操作1所指定的时间,停止执行程序。

设定范围为0.01~99,单位=秒。

当超过时间移到下一个阶段时,即输出ON.





〔例1〕 TIMW 1.5 等待1.5秒。



〔例2〕 LET 1 10 在变量1上代入10。

TIMW 1 让变量1的内容等待10秒钟。











TIMC(删除时间)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 TIMC 程序NO. 〔功能〕 删除操作1所指定的并列动作之其它程序的时间。





〔例1〕 TIMC 10 解除程序10的等待时间。



〔例2〕 LET 1 10 在变量1上代入10。

TIMC 1 解除变量1的内容的程序等待时间。

〔例3〕 程序1 程序10

. .

. .

. TIMW 20 在程序10里等待20秒。

. (等待20s)

TIMC10 (等待20s) 解除程序10的等待时间。



(批注)此例并非是明细并排,而是在横向显示出同一时间里所执行的段阶。



GTTM(取得时间)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 GTTM 变量NO. 〔功能〕 将系统时间读入操作1的变量里。时间单位=10毫秒。

在此所取到的时间为非基数值。因此这个命令为叫出2次,再从其差值

里了解经过时间而所使用。





〔例1〕 GTTM 1 读入以变量1为标准的时间。

ADD 1 500 将结束时间设定在5秒后。

GTTM 2 读入变量2上的现在系统时间。

DWLE 1 2 经过5秒后进入EDDO的下一个段阶。

反复5秒进行处理。





GTTM 2 读入变量2的现在系统时间。

EDDO





〔例2〕 LET 1 5 在变量1上代入5。

GTTM 1 将现在系统的时间收纳在,变量1的内容5的变量。11.7输出入.FLAG之操作命令

●BT××(操作输出入埠.FLAG)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 BT×× 输出.FLAG 输出.FLAG 〔功能〕 从操作1所指定的输出埠或FLAG到操作2所指定之输出埠或FLAG

为止的反转ON.OFF功能。



BT××

ON ...为ON的状态。

OF ...为OFF的状态。

NT ...为反转的状态。





〔例1〕 BTON 300 让输出埠300为ON。



〔例2〕 BTOF 300 307 让输出埠300~307为OFF。



〔例3〕 LET 1 600 在变量1上代入600。

BTNT 1 反转变量1的内容600的FLAG。



〔例4〕 LET 1 600 在变量1上代入600。

LET 2 607 在变量2上代入607。

BTON 1 2 从变量1的内容600到变量2的内容607

的FLAG为ON。







●WT××(等待输出入埠.FLAG)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 WT×× 输出.FLAG 时间 TU 〔功能〕 等待用操作1所指定的输出埠.FLAG变成ON/OFF。

根据设定操作2的时间,可以用一定时间予以停止。

设定范围为0.01~99秒。

过了一定时间时,即输出ON。(仅限于有操作2的情况下)



(备注)在输出WT××命令上,无法设定局部FLAG。



WT××

ON ...等待输出入埠.FLAG为ON状态。

OF ...等待输出入埠.FLAG为OFF状态。





〔例1〕 WTON 15 等待输入埠15为ON状态。



〔例2〕 WTOF 307 10 等待输出埠307的OFF状态或等待10秒。



〔例3〕 LET 1 600 在变量1上代入600。

WTON 1 等待变量1的内容600的FLAG变成ON状态。



〔例4〕 LET 1 8 在变量1上代入8。

LET 2 5 在变量2上代入5。

WTOF 1 2 等待变量1的内容8的输入埠变成ON状态,或等待变量2的内容5秒。









●IN(读入2进位的输出入埠.FLAG)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 IN 输出入.FLAG 输出入.FLAG 〔功能〕 从操作1到操作2为止的输出入埠或FLAG为2进位,再读入变量99。



27 26 25 24 23 22 21 20 ...2进位 15 14 13 12 11 10 9 8 ...输入埠NO. ON OFF OFF OFF OFF ON OFF ON





1 0 0 0 0 1 0 1 ...2进位 27 0 0 0 0 22 0 20 128 0 0 0 0 4 0 1 =133





133 ........ 变量99

(备注)可输入之最大限度为31Bit。



〔例1〕 IN 8 15 让输入埠8~15为2进位,再读入变量99。



〔例2〕 LET 1 8 在变量1上代入8。

LET 2 15 在变量2上代入15。

IN 1 2 让变量1的内容8~变量2的内容15端口为2进位,再读入变量99。



●INB(读入BCD输出入埠.FLAG)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 INB 输出入.FLAG BCD位数 〔功能〕 将操作1到操作2的位数之输出入埠或FLAG作为BCD值,再读入变量99。



10x23 10x22 10x21 10x20 1x23 1x22 1x21 1x20 ...BCD码 15 14 13 12 11 10 9 8 ...输入埠NO. ON OFF OFF OFF OFF ON OFF ON





1 0 0 0 0 1 0 1 ...BCD码 10x23 0 0 0 0 1x22 0 1x20 80 0 0 0 0 4 0 1 =85





85 ........ 变量99



(备注1)可输入之最大限度为8位数(32Bit)。

(备注2)使用之输出入埠.FLAG为4×n(位数)。





〔例1〕 INB 8 2 让输入埠8之2位数(到15为止)为BCD

值,再读入变量99。



〔例2〕 LET 1 8 在变量1上代入8。

LET 2 2 在变量2上代入2。

INB 1 2 让变量1的内容的输入端口到变量2的内容2

位数(到15为止)为BCD值,再读入变量99。



●OUT(2进位输出)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 OUT 输出入.FLAG 输出入.FLAG 〔功能〕将变量99的值写到操作1到操作2的为止的输出埠或FLAG上。



133 ........ 变量99



上位下位

1 0 0 0 0 1 0 1 ...2进位





307 306 305 304 303 302 301 300 ...输出埠NO. ON OFF OFF OFF OFF ON OFF ON







(备注1)可输入之最大限度为31Bit。





〔例1〕 OUT 300 307 将2进位的变量99的值,写到输出埠300~307上。



〔例2〕 LET 1 300 在变量1上代入300。

LET 2 307 在变量2上代入307。

OUT 1 2 将2进位的变量99的值,写到从变量1的内容300到变量2的内容307的输出埠上。



●OUTB(BCD输出)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 OUTB 输出入.FLAG BCD位数 〔功能〕 将变量99的值做成BCD码,写到操作1到操作2的为止的输出埠或FLAG上。



85 ........ 变量99



上位下位

1 0 0 0 0 1 0 1 ...BCD码





307 306 305 304 303 302 301 300 ...输出埠NO. ON OFF OFF OFF OFF ON OFF ON

(备注1)可输入之最大限度为8位数(32Bit)。

(备注2)使用之输出埠.FLAG为4×n(位数)。





〔例1〕 OUTB 300 2 将BCD值的变量99的值,写到输出埠300的

2位数(到307为止)上。



〔例2〕 LET 1 300 在变量1上代入300。

LET 2 307 在变量2上代入2。

OUTB 1 2 将BCD值的变量99的值,写到从变量1的内容300到变量2的内容2位数(到307为止)的输出埠上。



11.8程控命令

GOTO(JUMP)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 GOTO 搜寻NO. 〔功能〕 跳到用操作1所指定的搜寻NO.位置上。



(批注)GOTO命令仅在同一个程序内才有效。





〔例1〕 TAG 1 设定搜寻。







GOTO 1 跳到搜寻1。





〔例2〕 LET 1 10 在变量1上代入10。

GOTO 1 跳到变量1的内容10的搜寻位置。

















TAG(搜寻宣言)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 TAG 搜寻NO. 〔功能〕用操作1设定指定的搜寻NO.。





〔例1〕请参照GOTO命令。



EXSR(执行子程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 EXSR 子程序NO. 〔功能〕 执行用操作1所指定的子程序。



(批注)仅限于在同一个程序内的子程序才有效。





〔例1〕 EXSR 1 执行子程序1。







EXIT

BGSR 1 激活子程序1。







EDSR 结束子程序1。





〔例2〕 LET 1 10 在变量1上代入10。

EXSR 1 执行变量1的内容10的子程序。











BGSR(激活子程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 BGSR 子程序NO. 〔功能〕激活用操作1所指定的子程序。





〔例1〕请参照EXSR命令。



EDSR(结束子程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 EDSR 〔功能〕 结束子程序。

务必要结束子程序。

经过此处理后,会移动到呼叫EXSR的下一个段阶。





〔例1〕请参照EXSR命令。





11.9任务管理命令

EXIT(结束程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 EXIT 〔功能〕 结束程序。

假使没有EXIT命令而来到最后段阶时,就会回到最前面。



(批注)结束时的状态 。输出埠........保持

。局部FLAG......消灭

。局部变量.......消灭

。现在值........保持

。总体FLAG......保持

。全局变量.......保持



〔例1〕 .





EXIT 结束程序。











EXPG(激活其它程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 EXPG 程序NO. CP 〔功能〕 激活用操作1所指定的其它程序后,执行并列处理。

当程序(任务)激活成功时,即输出ON。





〔例1〕 EXPG 10 激活程序10。



〔例2〕 LET 1 10 在变量1上代入10。

EXPG 1 激活变量1之内容10的程序。



ABPG(停止其它程序)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 ABPG 程序NO. CP 〔功能〕 强制结束用操作1所指定的程序。

当其它程序(任务)结束时,即输出ON。





(备注)ABPG命令用在当执行中的命令结束时,停止执行程序。





〔例1〕 ABPG 10 让程序10停止执行。



〔例2〕 LET 1 10 在变量1上代入10。

ABPG 1 停止变量1之内容10的程序。

位置操作命令

●PGET(读取位置的数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PGET 轴NO. 位置NO. 〔功能〕 将操作2所指定的位置数据及操作1所指定的轴NO.的数据,读取在变量199里。

执行时,当读取的数据为×××.××时,无法将此数据放入变量199里(无法执行)。





〔例1〕 PGET 1 3 将位置3的1轴数据读取到变量199里。



〔例2〕 LET 1 1 在变量1上代入1。

LET 2 3 在变量2上代入3。

PGET 1 2 将变量2之内容3的位置的变量1之内容1轴的数据,读取到变量199里。







●PPUT(写入位置的数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PPUT 轴NO. 位置NO. 〔功能〕将操作2所指定的位置数据及操作1所指定的轴NO.的数据,写在变量199里。







〔例1〕 LET 199 150 在变量199上代入150。

PPUT 1 3 在位置3的1轴上写入变量199的内容150。



〔例2〕 LET 199 150 在变量199上代入150。

LET 1 1 在变量1上代入1。

LET 2 3 在变量2上代入3。

PPUT 1 2 在变量2之内容3的位置里的变量1之内容1轴上,写入变量199之内容150。

●PCLR(删除位置数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PCLR 位置NO. 位置NO. 〔功能〕 删除操作1所指定的位置NO.~操作2所指定的位置NO.的。

被删除的数据即变成××.×××(无法变成0.000)。





〔例1〕 PCLR 10 20 删除位置NO.10~20的数据。



〔例2〕 LET 1 10 在变量1上代入10。

LET 2 20 在变量2上代入20。

PCLR 1 2 删除变量1之内容10的位置~变量2之内容20的位置数据。









●PCPY(复制位置数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PCPY 位置NO. 位置NO. 〔功能〕 复制操作1所指定的位置NO.~操作2所指定的位置NO.的。





〔例1〕 PCPY 20 10 将位置NO.10的数据复制到位置NO.20上。



〔例2〕 LET 1 20 在变量1上代入20。

LET 2 10 在变量2上代入10。

PCPY 1 2 复制变量2之内容10的位置数据。

●PRED(读取坐标值)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PRED 轴模式 位置NO. 〔功能〕 将操作1所指定的现在轴位置读进操作2所指定的位置里。





〔例1〕 PRED 1 10 将1轴的现在位置读入位置NO.10里。



〔例2〕 LET 1 10 在变量1上代入10。

PRED 1 1 将1轴的现在位置读入变量1之内容10的位置里。







●PTST(确认位置数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PTST 轴模式 位置NO. ×× 〔功能〕 在操作2所指定的位置NO.之操作1所指定之轴模式上,确认有无有效数据。

当轴模式所指定之数据为无效(××.×××)时,即输出ON。

0可视为有效数据。





〔例1〕 PTST 1 10 300 假使位置10的1轴上无有效值的时候,即输出300为ON。

当位置数据如下列所示的时候,即输出300为OFF。



〔例2〕 LET 1 11 在变量1上代入11。

PTST 1 1 600 假使变量1之内容11的位置10的1轴数据上无有效值的时候,即FLAG600为ON。

当位置数据如下列所示的时候,即FLAG600为ON。

速度加速度1轴

10×××××××100.000

11×××××××××××.×××●PVEL(代入速度的数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PVEL 速度 位置NO. 〔功能〕 将操作1所指定的速度写入操作2所指定的位置NO.上。



(备注) 使用PVEL命令写入负值的话,因移动以指定位置时会发生警报声响,因此请特别注意。





〔例1〕 PVEL 100 10 将速度100mm/s写入位置NO.10。



〔例2〕 LET 1 100 在变量1上代入100。

LET 2 10 在变量2上代入10。

PVEL 1 2 将变量1之内容速度100mm/s,写入变量2

之内容10的位置。











●PACC(代入加速度的数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PACC 加速度 位置NO. 〔功能〕 将操作1所指定的加速度写入操作2所指定的位置NO.上。



(备注) 用PACC命令无法执行范围确认。请注意不要超过传动装置的极限。





〔例1〕 PACC 0.3 10 将加速度0.3G写入位置NO.10。



〔例2〕 LET 100 0.3 在变量100上代入0.3。

LET 2 10 在变量2上代入10。

PACC 1 2 将变量100之内容加速度0.3G,写入变量2之内容10的位置。





●PSIZ(确认位置数据的尺寸)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 PSIZ 变量NO. 〔功能〕 将可使用之位置数据的最大值代入操作1所指定的变量里。







〔例1〕 PSIZ 1 在变量1上代入最大位置NO.



〔例2〕 LET 1 10 在变量1上代入10。

PSIZ 1 将最大位置NO.代入变量1的内容10变量上。

传动装置控制宣言

●VEL(设定速度)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 VEL 速度 〔功能〕 在操作1的值上设定传动装置的移动速度。

单位=mm/s。

根据连接传动装置的机种不同,最高速度也会不同,因此请设定如下。



(备注1)无法采用小数点以下的数值。会成为错误数据。

(备注2)最低速度为1mm/s。



〔例1〕 VEL 100 将速度设定为100mm/s。

MOVP 1 用100mm/s移动到POINT1。



〔例2〕 VEL 500 将速度设定为500mm/s。

MOVP 1 用500mm/s移动到POINT2。



〔例3〕 LET 1 300 在变量1上代入300。

VEL 1 将速度设定为变量1之内容300mm/s。



●OVRD(过载)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 OVRD 速度比 〔功能〕 让速度随着操作1的比率下降(设定速度系数)。

比率设定范围=1~100%。



(备注) 当过载的结果在1以下时,速度不可能也在1以下。

小数点以下的值均被舍弃。



〔例1〕 VEL 100 将速度设定为100mm/s。

OVRD 50 将速度降低到50%。

实际速度则为50mm/s。



〔例2〕 LET 1 30 在变量1上代入30。

VEL 100 将速度设定为100mm/s。

OVRD 1 将速度降低到变量1之内容30%。

实际速度则为30mm/s。

●ACC(设定加速度)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 ACC 加速度 〔功能〕 在操作1的值上设定传动装置的移加动速度。

单位=G。

根据连接传动装置的机种或负荷的不同,其最大加速度也会不同。

定格加速度=0.3G。

使用ACC命令没有设定加速度时,会以定格加速度0.3G执行动作。





〔例1〕 ACC 0.03 将加速度设定为0.3G。



〔例2〕 LET 100 0.1 在变量100上代入0.1。

ACC 100 将加速度设定为变量100之内容

0.1G。







●SCRV(设定S型加速)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SCRV 比率 〔功能〕 在操作1的值上设定传动装置的S型加速控制比率。

设定范围=0~50(%)的整数。

当使用这个命令而没有设定比率时,或者设定比率为0%时,则变成等加速。





〔例1〕 SCRV 30 将S型移动定为30%。



〔例2〕 LET 1 50 在变量1上代入50。

SCRV 1 将S型加速比率定为变量1之内容的50%。

●OFST(设定OFFSET)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 OFST 轴模式 OFFSET值 〔功能〕 移动操作1所设定的传动装置,并将操作2的OFFSET值加算在目标值上,以修整设定的目标值。

OFFSET的设定单位示mm,有效分解能为0.001mm。

假使OFFSET在动作范围内的话,也可指定负值。



(备注) OFST命令除了该程序以外均为无效。使用复数程序让OFST有效时,必须在每个程序里执行OFST命令。



〔例1〕 OFST 1 50 指定位置为加算了50mm。



〔例2〕 LET 1 100 在变量1上代入100。

OFST 1 1 指定位置被加算了变量1之内容的100mm。



●HOLD(保留:轴之暂时停止埠宣言)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 HOLD 输入埠 〔功能〕 在执行移动命令中,减速停止输入埠之宣言。

当被指定之输入埠为ON的时候,移动中的传动装置就会减速停止。

当被指定之输入埠为OFF的时候,就会再度激活。

有效的HOLD宣言,仅限于使用相同任务(程序)所做动的轴而已。

使用其它任务并不会影响运动中的轴。



(备注1) 在PATH移动中执行HOLD的话,就会在下一个位置(教示点)上停止。

使用其它移动命令(MOVP,MOVL,CIR,ARC等)会实时减速停止。

(备注2) 在IA上采用回归原点的序列,关闭伺服(ServoLock)以检测行程。在此瞬间执行HOLD与解除HOLD之后,有可能会发生警报(伺服产生暴走现象)。为了避免这个现象,可以在回归原点后执行HOLD宣言,或者无论如何都想要先执行的话,请设置原点近傍检测(AreaLimit)开关,在这附近请安装绝对不要执行HOLD的LOGIC。

(备注3) HOLD与CANC宣言,无法在一个程序里同时设定。

由后方开始的宣言比较有效。





[例1] HOLD 25 当输入埠25为ON时,即减速停止。





V



输入埠25ON







HOLD剩余动作

输入埠25OFF移动结束





[例2] LET 1 16 在变量1上代入16。

HOLD 1 当变量1的内容16的输入埠为ON的时候,

即减速停止。

●CANC(删除:轴之停止结束埠宣言)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 CANC 输入埠 〔功能〕 在执行移动命令中,减速停止输入埠之宣言。

当被指定之输入埠为ON的时候,移动中的传动装置就会减速停止。

当被指定之输入埠为OFF的时候,就会再度激活。

有效的CANC宣言,仅限于使用相同任务(程序)所做动的轴而已。

使用其它任务并不会影响做动中的轴。





(备注1) HOLD与CANC宣言,无法在一个程序里同时设定。

由后方开始的宣言比较有效。





[例1] CANC 25 当输入埠25为ON时,即减速停止。





V



输入埠25ON







剩余动作不被执行

移动结束









[例2] LET 1 16 在变量1上代入16。

CANC 1 当变量1的内容16的输入埠为ON的时候,即减速停止。

●AXST(取得轴况)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 AXST 变量NO. 轴NO. 〔功能〕 将操作2的轴况(错误码)收纳在操作1的变量里。

被收纳的错误码为161(A1)~175(AF),与显示在代码面板上的错误码相同。

一览表所写的均是16进位,因此必须要考虑到变换成10进位。

最初以A为开始的仅能取得错误码。





〔例1〕 AXST 1 1 将1轴的状况读入变量1里。下了这个命令后,将162放入变量1上即成为162÷16=10(=A)……2,错误码A2,用以解释在1轴引起马达过负荷错误。



〔例2〕 LET 1 10 在变量1上代入10。

LET 2 1 在变量2上代入1。

AXIS 1 2 将变量2之内容1轴的情况,收纳在变量1的内容10的变量上。

























传动装置控制命令

●SV××(伺服ON/OFF)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SV×× 轴的模式 〔功能〕用操作1的轴模式,让受指定的轴伺服执行ON/OFF。



SVXX

ON ...伺服为ON的状态。

OF ...伺服为OFF的状态。





〔例1〕 SVON 1 伺服为ON的状态。不会影响到已经变成ON的轴。















●HOME(回归原点)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 HOME 轴的模式 PE 〔功能〕 用操作1的轴模式,让受指定的轴回归原点。

回归原点轴会自动变成伺服ON的状态。

在开始执行回归原点时,即输出OFF。结束时即输出ON。







〔例1〕 HOME 1 回归原点。















●MOVP(指定移动PTP位置数据)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MOVP 位置NO. PE 〔功能〕 用操作1进入受指定之位置NO.上。

移动传动装置。(PointToPoint)。

开始移动轴的时候,即输出OFF。结束时,即输出ON。





〔例1〕 MOVP 1 将轴移动到位置NO.1的位置(200)。



〔例2〕 LET 1 2 在变量1上代入2。

MOVP 1 将轴移动到变量1之内容2的位置NO.(100)上。





NO. 速度 加速度 位置 1. ××× ×××× 200.000 2. ××× ×××× 100.000

















●MOVD(指定移动Direct)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MOVD 移动位置 PE 〔功能〕 用操作1进入受指定之位置上,再移动传动装置。

开始移动轴的时候,即输出OFF。结束时,即输出ON。





〔例1〕 MOVD 100 将轴移动到位置100上。



〔例2〕 LET 1 100 在变量1上代入100。

MOVD 1 将轴移动到变量1之内容100的位置上。







●MVPI(移动增量PTP)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MVPI 位置NO. PE 〔功能〕 将在操作1所指定之位置,视为从现在位置的移动量,再移动传动装置。

开始移动轴的时候,即输出OFF。结束时,即输出ON。





〔例1〕 MVPI 1 当现在位置为(50),位置NO.1为(150)时,将现在位置宜动荡150的位置(200)上。



〔例2〕 LET 1 2 在变量1上代入2。

MVPI 1 从现在位置的变量1之内容2的位置NO.(100)视为移动量,以进行移动。







NO.速度加速度轴

1.×××××××150.000

2.×××××××100.000●MVDI(移动增量)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 MVDI 移动量 PE 〔功能〕 将在操作1所指定的值视为移动量,再移动轴。

开始移动轴的时候,即输出OFF。结束时,即输出ON。





〔例1〕 MVDI 30 从现在位置移动30mm到+方向。



〔例2〕 LET 1 -100 在变量1上代入-100。

MVDI 1 从现在位置移动-100mm到变量1之内容-100mm,也就是-方向。

●J×W×(移动〔JOG〕)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 J×W× 轴模式 输出入.FLAG PE 〔功能〕 当操作1所指定的轴,与操作2所指定的输出入.FLAG(总体)条件符合期间,持续进行移动。

轴会一直执行到SOFTLIMIT为止时,即会停止。



JXWX

BF ...指定埠在OFF的时候后退。

BN ...指定埠在ON的时候后退。

FF ...指定埠在OFF的时候前进。

FN ...指定埠在ON的时候前进。



(备注)本命令无法使用HOLD命令。





〔例1〕 JBWF 1 10 输入10让轴在OFF的时候后退。



〔例2〕 LET 5 20 在变量5上代入20。

JFWN 1 5 输入变量5之内容20,让轴在ON的时候前进。





●STOP(减速停止)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 STOP 轴模式 PE 〔功能〕 让操作1的轴模式所指定的轴减速停止。





〔例1〕 STOP 1 让轴减速停止。

















11.13构造化IF命令

●IF××(构造化IF)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 IF×× 变量NO. 数据 〔功能〕 比较操作1的变量内容与操作2的数据,当条件成立后即进入下一个段阶。

当条件不成立时,如有因应ELSE命令的话,即进入下一个段阶,如果没有的话即进入因应EDIF命令的下一个段阶。

输入条件不成立,当没有执行IF××命令时,即进入因应EDIF之下一个段阶。

下一个可以和DW××合并到15个段阶。







IF××

EQ ...操作1=操作2

NE ...操作1≠操作2

GT ...操作1>操作2

GE ...操作1≧操作2

LT ...操作1<操作2

LE ...操作1≦操作2







〔例1〕 600 IFGE 1 0 选择移动方向。

JFWN 1 5 让1轴前进。

ELSE

JBWN 1 5 让1轴后进。

EDIF







用变量1选择前后进(+/-),执行JOG的移动。

FLAG600为OFF时,不会执行任何动作,即进入最后

EDIF的下一个段阶。







●ELSE

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 ELSE 〔功能〕 ELSE命令与IF××命令合并后得以任意使用,当条件不成立时即宣言被执行的命令部。





〔例1〕请参照IF××。



















●EDIF(结束IF××)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 EDIF 〔功能〕 结束IF××命令。





〔例1〕请参照IF××。



11.14构造化DO命令

●DW××(DOWHILE)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 DW×× 变量NO. 数据 〔功能〕 比较操作1的变量内容与操作2的数据,在条件成立时执行到EDDO为止的命令。

当条件不成立时,即进入因应EDDO命令的下一个段阶。

使用LEAV命令可以强制结束回路。

输入条件不成立,当没有执行DW××命令时,即进入因应EDDO之下一个段阶。

下一个可以和IF××合并到15个段阶。



DW××

EQ ...操作1=操作2

NE ...操作1≠操作2

GT ...操作1>操作2

GE ...操作1≧操作2

LT ...操作1<操作2

LE ...操作1≦操作2



〔例1〕 008 DWEQ 1 0 反复执行变量1,0直到进入EDDO命令为止的命令。

EDDO

出现DW××后,当输入8为OFF的状态时,不会执行任何动作,即进入EDDO的下一个段阶。



●LEAV(从DOWHILE离开)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 LEAV 〔功能〕 离开DO××的回路,移到EDDO的下一个段阶。



〔例1〕 DWEQ 1 0 反复执行变量1,0直到进入EDDO命令为止的命令。

600 LEAV 假使FLAG600为ON的时候,即强制结束回路,进入EDDO命令的下一个段阶。

EDDO

●ITER(反复)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 ITER 〔功能〕 在DO××的回路中途,强制移到EDDO控制。



〔例1〕 DWEQ 1 0 反复执行变量1,0直到进入EDDO命令

. 为止的命令。

600 ITER 假使FLAG600为ON的时候,即强制移

. 到EDDO命令,以执行结束判断。

EDDO

















●EDDO(结束DOWHILE)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 EDDO 〔功能〕 结束用DW××开始的回路。

当DW××的条件不成立时,即进入这个命令的下一个段阶。





〔例1〕请参照DW××。











11.15多分歧命令

●SLCT(开始选择GROUP)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 自由 自由 SLCT 〔功能〕当EDSL命令为止的WH××命令条件成立,或者每个条件都不符合的时候,就会在OTHE命令的下一个段阶分歧开来。





〔例1〕 LET 1 1 在变量1上代入1。



600 SLCT 跳入条件吻合的WH××上。

WHEQ 1 1 当变量1代入1的时候,

. 即执行这个部份的命令。

WHEQ 1 2 当变量1代入2的时候,

. 即执行这个部份的命令。

OTHE 当不吻合的时候,

. 即执行这个命命。

EDSL 当FLAG600为ON的时候,执行其中

一个条件后,即移到这个命令上。





●WH××(在真正的场合下选择变量)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 WH×× 变量NO. 数据 〔功能〕 使用于SLCT~EDSL命令之间,比较操作1的变量内容与操作2的数据,当条件成立时即执行下一个WH××,或者OTHE,EDSL为止的命令。



WH××

EQ ...操作1=操作2

NE ...操作1≠操作2

GT ...操作1>操作2

GE ...操作1≧操作2

LT ...操作1<操作2

LE ...操作1≦操作2



〔例1〕 SLCT 执行多分歧

SHEQ 1 10 当变量1=10,此时执行(1),完成后跳至EDSL,

. 继续执行(4)。

(1)



WHGT 1 10 当变量1≠10,程序跳过(1),而至此变量1>10

. ,此时执行(2),完成后跳至EDSL,继续执行(4)

(2)



OTHE 如变量1<10,因以上两条件均不成立,程序跳

. 过(1)及(2),而至此执行(3),完成后至EDSL,继

(3) 续执行(4)。



EDSL



(4)







变量1=10>10<10

执行程序(1),(4)(2),(4)(3),(4)

●OTHE(选择其它命令时)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 OTHE 〔功能〕 使用SLCT~EDSL命令,都与每一个条件互不成立时,即执行这个命令宣言。





〔例1〕 请参照SLCT,WH××。























●EDSL(结束选择GROUP)

扩张条件(AND.OR) 输入条件(输出入.flag) 命令.宣言 输出部(输出.flag) 命令.宣言 操作1 操作2 EDSL 〔功能〕 结束SLCT命令。





〔例1〕请参照SLCT,WH××。



错误代码一览表

每当激活警讯时,会显示下列错误讯号。

SA控制器的错误讯号开头为E,以3位数显示。

错误代码 错误名称 错误内容 A1 外部因子错误 马达过电流2.回生电流过大(“-“负荷过大)

3.传动装置过热 A2 马达过负荷错误 因机械负荷过大等引起马达过负荷 A3 偏差错误 因机械负荷过大等,马达无法听从指定 A4 SoftLimitError 将参数设定在SoftLimit以上 A5 PoleSenseError 无法PoleSenseError B0 无程序错误 没有存在程序数据 B1 程序执行错误 二度执行正执行中的程序 B2 程序超过错误 执行超过所设定的任务参数以上 B3 子程序No.多重定义 重复使用子程序No. B4 TagNo.多重定义 重复使用TagNo. B5 子程序No.未定义 没有定义出子程序No. B6 TagNo.未定义 没有定义出TagNo. B7 子程序线对错误 BGSR与EDSR没有配成对 B8 段阶1发生BGSR错误 程序段阶1变成BGSR命令 B9 DO.EDDO线对错误 DO与EDDO没有配成对 BA DONextOverError 将DO重复数设定到超过15 BB IF线对错误 IF与EDIF没有配成对 BC ELSE错误 ELSE被使用在EDIF以外的地方 C0 回归原点未完了错误 不回归原点的状态下,想要移动指定位置 C1 位置指定错误 没有指定位置数据,而想要移动位置时 C2 轴使用中错误 在移动中的轴上,再度指定移动命令 C3 SoftLimitError 在程序中指定超过SoftLimit以上的移动 CD 资源No.错误 指定超过资源No.1~9以上 CE S运转百分比错误 将S运转百分比指定超过0~50%以上 D0 加速度错误 加速度指定超过上限值以上 D1 无速度错误 在程序中没有设定速度 D2 过载错误 指定过载超过1~100%以外 D4 轴模式错误 轴模式指定不正确。C1(位置指定错误)时也会显示D4 D5 轴No.错误 将轴No.指定超过1以外 D7 程序No.错误 指定超过参数程序数以上的程序No. D8 位置No.错误 指定超过参数位置数以上的位置No. D9 PointNo.错误 PointData被指定为负数据 DA FlagNo.错误 FlagNo.指定错误 DB 变量错误 变量指定错误 DC 位数超过错误 超过指定位数(8位数),(32位数) DD 用0除算错误 用0除算 DF 任务标准错误 将任务标准设定在1~15以外 E0 未定义命令错误 执行未定义命令 E1 子程序NextOverError 子程序重复数设定超过15 E2 子程序NextUnderError EXSR与EDSR没有配成对 E3 控制栏错误 扩张条件的使用方法错误 EG EMG错误 被输入紧急停止命令 F0 加入错误 马达CPU与加入处理数互不一致

1





73









献花(0)
+1
(本文系云山逸语首藏)