ZMotionPlc编程手册 · 第一章 zplc编程入门 ......

85
深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版 1 ZMotion Plc 编程手册 Version 1.0 ZBasic 是 ZMotion 运动控制器支持的 Basic 编程语言。 ZPlc 是 ZMotion 运动控制器支持的 Plc 语言,可以使用梯形图和语句表。 ZMtion引擎 控制器软件结构图 ZBasic/ZPlc双引擎 嵌入式BASIC/PLC程序 在线BASIC命令 Zdevelop开发工具 用户PC程序 第一章 ZPLC 编程入门 编写和调试 ZPLC 程序需要 ZDevelopV2.0 以上版本软件,ZMC 运动控制器(或 仿真器)V3.0 版本以上固件,PC 在线命令发送需要 zmotion.dll 动态库。

Transcript of ZMotionPlc编程手册 · 第一章 zplc编程入门 ......

Page 1: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

1

ZMotion Plc 编程手册

Version 1.0

ZBasic 是 ZMotion 运动控制器支持的 Basic 编程语言。

ZPlc 是 ZMotion 运动控制器支持的 Plc 语言,可以使用梯形图和语句表。

ZMtion引擎

控制器软件结构图

ZBasic/ZPlc双引擎

嵌入式BASIC/PLC程序 在线BASIC命令

Zdevelop开发工具 用户PC程序

第一章 ZPLC编程入门

编写和调试 ZPLC 程序需要 ZDevelopV2.0 以上版本软件,ZMC 运动控制器(或

仿真器)V3.0 版本以上固件,PC 在线命令发送需要 zmotion.dll 动态库。

Page 2: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

2

1.1 ZDevelop开发软件使用

简单步骤:

1,点击“文件(File)”菜单,新建项目。

2,点击“新建(New)”选择建立 Plc 程序文件,写入程序代码,点击“保存”,

选择与项目文件相同的目录保存。

3,点击“项目(Project)”-“添加到项目”,选择刚才保存的 Plc 文件。

4,双击窗口左边文件列表对应 Plc 文件的“自动运行(AutoRun)”选项,

填入数字 0。

5,连接到控制器或仿真器,点击“下载到 RAM”菜单,此时会下载刚才的程

序到控制器并自动运行。

不建立项目的时候,只有程序文件无法下载到控制器。

1.2 设置程序上电时运行

程序必须存储在 ROM,并且对应自动运行的文件设置自动运行(autorun)任务号,参见

zdevelop工具软件的介绍。

1.3 程序调试

zdevelop连接控制器后从菜单选择调试/启动调试,请保证 PC程序文件和控制器的程序

文件一致,否则可能导致光标位置错误;只能在 UNLOCK时进行程序调试。

Page 3: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

3

调试机器要注意安全!请务必在机器中设计有效的安全保护装置,并在软件中加入出错

处理程序,否则所造成的损失,正运动技术公司没有义务或责任对此负责。

1.4 多任务运行

PLC主任务:第一个设置自动运行的 PLC 任务为主任务,PLC 循环的相关状态参数由

这个任务得到。

控制器支持多 PLC任务同时运行,也可以 Plc 和 Basic任务一起运行。

当中断任务运行时,PLC 主任务暂停运行,其它 PLC 任务不受影响,与中断任务同时

运行。

1.5 掉电存储

各个寄存器有部分是掉电保持的,同 VR类似。

通过 SETCOM命令可以配置寄存器 D是否掉电保持。

1.6 PLC步数

程序容量不同型号控制器不一样,空间和 ZBASIC 程序共享,没有 ZBASIC 程序时,

大部分控制器总步数在 40K步上下。

每个指令占用的步数是寄存器个数+1,@寄存器多占用一步。

1.7 中断函数

EI 允许中断,同 BASIC命令:INT_ENABLE=1DI 禁止中断,同 BASIC命令:INT_ENABLE=0ONPOWEROFF: 掉电中断

INT_ONn:输入变有效中断,n-输入口编号

INT_OFFn:输入变无效中断,n-输入口编号

ONTIMERn:定时器中断,n-定时器编号

1.8 连接人机界面

控制器支持MODBUS-RTU协议或MODBUS-TCP协议连接人机界面。

使用 ADDRESS 参数设置协议站号,缺省 1。串口连接时配置好对应串口号,以太网连接时配

置人机界面的的 PLC端 IP为控制器的 IP(仿真器可以为本机 IP 127.0.0.1),端口号 502。

Page 4: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

4

威纶触摸屏以太网设置图

1.9 常见问题

当程序运动出错后,ZDevelop软件会显示出出错信息,如果出错信息没有看到,可以通过

命令行输入?*task再次查看出错信息,双击出错信息可以自动切换到程序出错位置。

问题 可能原因

stop of error:2049:Line not ended.

1,部分命令必须占用一整行。

2,GSUB调用不需要括号()

stop of error:2033:Unknown label is met.

1,未定义的变量或数组。

2,未定义的 SUB过程

3,有定义数组,但是定义的语句没有执行到,可能是对应

文件没有设置自动运行。

Page 5: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

5

第二章 寄存器(软元件)类型

2.1 Basic寄存器@

此寄存器可以把 BASIC表达式或执行语句嵌入到 Plc 中,在不同的指令中会自动进行

格式变换以匹配。

举例:

LD @(a+b)EXEP@MOVEABS(100) AXIS(0)//绝对定位

单个@寄存器字符数不要超过 1000 字节。

2.2 输入寄存器 X

此寄存器对应通用输入,对 PLC 主任务,会在每个循环开始时备份此寄存器,避免扫

描阶段输入变化,其他任务读取的是当前实时的输入状态。

2.3 输出寄存器 Y

此寄存器对应通用输出,对 PLC 主任务,本地输出会在循环结束的时候输出到硬件输

出口。

2.4 辅助位寄存器 M

此寄存器对应MODBUS_BIT,(0x寄存器)。

编号:0-4095掉电保持:2048-2175

2.5 状态寄存器 S

编号:0-999掉电保持:0-127

2.6 数据寄存器 D

此寄存器对应MODBUS_REG,(4x寄存器),通过 D.可以按位访问。

Page 6: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

6

编号:0-2047根据 SETCOM的配置来确定映射到 VR的方式(参见 ZBASIC手册 SETCOM 指令)。当需要掉电保持时,推荐 variable=3variable参数是全局的设置,所有的端口共一个。

值 描述

0 VR,此时一个 VR映射到一个MODBUS_REG。1 TABLE,此时一个 TABLE 数据映射到一个

MODBUS_REG。(不推荐)

2(缺省) 系统MODBUS 寄存器,此时 VR与MODBUS寄

存器是两片独立区间。

3 VR_INT 模式,此时一个 VR_INT 映射到两个

MODBUS_REG。

2.7 计数器 C

寄存器长度 32位,当通过 16位指令访问时自动使用低 16位。

编号:0-127掉电保持:100-107

2.8 定时器 T

寄存器长度 32位,当通过 16位指令访问时自动使用低 16位。

同 BASIC的 TIMER命令

编号:0-127掉电保持:100-103

2.9 变址寄存器 V

寄存器长度 16位。

编号:0-7

2.10 变址寄存器 Z

寄存器长度 16位。

编号:0-7

Page 7: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

7

2.11 浮点寄存器 DT

此寄存器为 32位浮点数,采用其他格式访问时会自动转换类型,转成整数时自动去掉

小数部分。

此寄存器与 ZBASIC的 TABLE为同一个,可以用于与 ZBASIC之间传输数据。

编号:0-TSIZE-1

2.12 局部寄存器 LV

在函数内局部有效的寄存器,每个函数的每个运行实例使用不同的数据;每个函数有 8个 LV,编号 0-7;此寄存器为 32位浮点数。

此寄存器与 ZBASIC 的 LOCAL 类似,ZBASIC 调用 ZPLC 时,调用参数自动传入 LV寄存器。

LV存储器可以同时作为变址寄存器。

编号:0-7

2.13 Label寄存器 L

此寄存器通过 LBL 指令定义,一共有 64个 L寄存器,L寄存器可以通过 CALL/JUMP指令来调用或跳转。

编号:0-63

2.14 特殊寄存器 M

M8000=运行标志 OnM8001=运行标志 OffM8002=初始 ONM8003=初始 OFFM8004=错误标志

M8011=10MSM8012=100MSM8013=1SM8014=60SM8020=ZeroFlagM8021=借位

M8022=进位

M8023=小数点标志

M8100-M8199 轴 0-99 的 IDLE标志

M8200-M8299 轴 0-99 的 BUFFER 剩余标志

Page 8: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

8

2.15 特殊寄存器 D

D8000=扫描时间监测

D8001=版本

D8004=错误

D8010=扫描时间

D8011=扫描最大时间

D8012=扫描最小时间

D8013=秒D8014=分D8015=时D8016=日D8017=月D8018=年D8019=星期

D10000-D10198=DPOS,浮点方式,每个轴占 2个 REG。D11000-D11198=MPOS,浮点方式,每个轴占 2个 REG。D12000-D12198=VPSPEED,浮点方式,每个轴占 2个 REG。D13000-D13128 =AOUT,模拟量输出

D14000-D14256 =AIN,模拟量输入

第三章 ZPLC指令列表

3.1 常用指令

3.1.1 //注释

//表示此行为注释, 注释总是占用一整行。

3.1.2 LD

指令说明:

LD指令用于左母线开始的 A接点或一个接点回路块开始的 A接点。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

Page 9: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

9

3.1.3 LDI

指令说明:

LD指令用于左母线开始的 B接点或一个接点回路块开始的 B接点。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.4 LDP

指令说明:

LDP指令的用法和 LD相同,但 LDP仅在指定软元件的上升沿(从 OFF 改变到 ON的

时候)时,接通 1个运算周期。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.5 LDF

指令说明:

LDF指令的用法和 LD相同,但 LDF仅在指定软元件的下降沿(从 ON改变到 OFF 的

时候)时,接通 1个运算周期。

操作数:

LD

LDI

LDP

Page 10: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

10

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.6 AND

指令说明:

AND指令用于 A接点的串联连接。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.7 ANI

指令说明:

ANI指令用于 B接点的串联连接。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

LDP

AND

ANI

Page 11: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

11

3.1.8 ANDP

指令说明:

ANDP指令用法和 AND相同,但 ANDP仅在指定软元件的上升沿(从 OFF改变到 ON的时候)时,接通 1个运算周期。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.9 ANDF

指令说明:

ANDF指令用法和 AND相同,但 ANDF仅在指定软元件的下降沿(从 ON改变到 OFF的时候)时,接通 1个运算周期。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.10OR

指令说明:

OR指令用于一个 A触点的并联连接。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

ANDP

ANDF

Page 12: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

12

3.1.11 ORI

指令说明:

ORI指令用于一个 B触点的并联连接。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.12ORP

指令说明:

ORP指令用法与 OR相同,但 ORP仅在指定软元件的上升沿(从 OFF 改变到 ON的时

候)时,接通 1个运算周期。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

OR

ORI

ORP

Page 13: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

13

3.1.13ORF

指令说明:

ORF指令用法与 OR相同,但 ORF仅在指定软元件的上升沿(从 ON改变到 OFF 的时

候)时,接通 1个运算周期。

操作数:

S:X,Y,M,S,T,C,D.,@a编程示例:

3.1.14 PLS

指令说明:

PLS 为上升沿检出指令。当 PLS 指令被执行,仅在驱动输入由 OFF 变为 ON以后的一

个周期内对软元件进行置 ON操作。

操作数:

S:Y,M编程示例:

3.1.15 PLF

指令说明:

PLF 为上升沿检出指令。当 PLF 指令被执行,仅在驱动输入由 ON变为 OFF以后的一

个周期内对软元件进行置 ON操作。

操作数:

S:Y,M编程示例:

ORF

PLS

Page 14: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

14

3.1.16 STL

指令说明:

使用步进梯形图指令的程序,以机械的动作为基础,对各工序分配状态 S,作为连接在

状态触点(STL触点)中的回路,对输入条件和输出控制的顺序进行编程。

当前状态(S0)向下一状态(S1)转移时,该扫描周期两个状态内的动作均得到执行;

下一扫描周期执行时,当前状态(S0)被下一状态(S1)所复位,当前状态(S0)内的动

作不被执行,所以 OUT元件的输入均被断开。

操作数:

S:Sn编程示例:

3.1.17RET

指令说明:

RET指令代表一个步进流程的结束,所以一连串步进点的最后一定要有 RET指令。

操作数:

状态的转移只能

使用 SET Sn,若使用 out,则 Sn作为普通的辅助

继电器使用;

步进程序编写完

成后需要使用

RET结束程序。

状态转移

步进流程结束

PLF

STL

RET

Page 15: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

15

编程示例:

参见 STL指令。

3.1.18 SET

指令说明:

当 SET指令被驱动,其指定的元件被设置为 ON,且被设置的元件会维持 ON,不管 SET指令是否仍被驱动。可以利用 RST指令将该元件设为 OFF。操作数:

S:Y, M, S编程示例:

3.1.19RST

指令说明:

当 RST指令被驱动,则其指定的位元件被设定为 OFF,且不管 RST指令是否仍被驱动,

被设定的位元件会维持 OFF状态。可利用 SET指令将该位元件设为 ON。当 RST指令被驱动,则其指定字软元件的当前值被清除

操作数:

S:Y, M, T,C,D,S,V,Z,DT,LV编程示例:

3.1.20NOP

指令说明:

指令 NOP在程序不做任何运算,因此执行后仍会保持原逻辑运算结果,使用时如下:

想要删除某一指令,而又不想改变程序长度,则可以 NOP指令取代。

SET

RST

Page 16: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

16

3.1.21EU

指令说明:

EU(NP)指令当累积寄存器由 0变为 1时,此指令将使累积寄存器维持一次扫描周期的 1,然后第二次扫描周期之后,自动将累积寄存器改为 0。操作数:

编程示例:

3.1.22ED

指令说明:

ED(PN)指令当累积寄存器由 1变为 0时,此指令将使累积寄存器维持一次扫描周期的 1,然后第二次扫描周期之后,自动将累积寄存器改为 0。操作数:

编程示例:

3.1.23 INV

指令说明:

INV指令是将 INV指令之前的逻辑运算结果取反的指令,无需指定软元件的编号。

操作数:

编程示例:

3.1.24EXE

指令说明:

INV

NP

PN

Page 17: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

17

PLC可以通过 EXE指令调用 Basic标准指令

操作数:

Basic标准指令

编程示例:

调用 Basic中的 print函数,当 X0由 OFF 变为 ON时,打印出 55。

3.1.25EXEP

指令说明:

EXEP 指令用法与 EXE 相同,但仅在驱动输入由 OFF 变为 ON后,才调用 Basic 标准

指令

操作数:

Basic标准指令

编程示例:

调用 Basic中的 print函数,当 X0接通时,打印出 55。

3.1.26MPS

指令说明:

MPS、MRD、MPP指令都无操作数,这 3个指令所占程序步数均为 1。嵌入式 PLC中有 11个栈空间,也就是说可以压栈的最大深度为 11级。每使用一次MPS

将当前结果压入第一段存储,以前压入的结果依次移入下一段。MPP 指令将第一段读出,

并且删除它, 同时以下的单元依次向前移。MRD指令读出第一段,但并不删除它。其他单

元保持不变。使用这 3条指令可以方便多分支编程。

在进行多分支编程时,MPS 保存前面的计算结果,以后的分支可以利用 MRD,MPP 从

栈中读出前面的计算结果,再进行后面的计算。最后一个分支必须用MPP,保证MPS、MPP使用的次数相同。 注意,使用 MPP 以后,就不能使用 MRD 读出运算结果,也就是 MPP必须放在最后的分支使用。

MRD指令可以使用多次,没有限制。MPS连续使用的最多次数为 11,但是可以多次使

用。 每个MPS指令都有一个MPP指令对应,MPP的个数不能多于MPS的个数。

操作数:

EXE

EXEP

Page 18: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

18

编程示例:

3.1.27MRD

参见MPS指令。

3.1.28MPP

参见MPS指令。

3.1.29TMR

指令说明:

当 TMR指令执行时,其所指定的定时器线圈受电,定时器开始计时,当到达定时器所

指定的定时值,定时器所对应的触点动作。

寄存器长度 32位,当通过 16位指令访问时自动使用低 16位。

定时器一共 128个,分别是 T0~T127,其中 T100~T103为掉电保持型。

操作数:

S1:T0~T 127S2:K,D

编程示例:

X0接通后定时器 T0 开始计时,2秒后 T0常开触点闭合,线圈 Y0导通。

MPS

MRD

MRD

MPP

TMR

Page 19: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

19

3.1.30CNT

指令说明:

该指令为 16位计数指令,当 CNT 指令由 OFF 到 ON执行,表示指定的计数器线圈由

失电到受电,则该计数器计数值加 1,当计数到达所指定的数值时,计数器的触点动作。

寄存器长度 32位,当通过 16位指令访问时自动使用低 16位。

计数器器一共 128个,分别是 C0~C127,其中 C100~C107为掉电保持型。

操作数:

S1:C0~C 127S2:K,D

编程示例:

X0由 OFF 变为 ON则计数器 C0数值加 1,当 C0数值为 10时,C0常开触点闭合,Y0导通。

3.1.31DCNT

指令说明:

该指令为 32位计数指令,当 CNT 指令由 OFF 到 ON执行,表示指定的计数器线圈由

失电到受电,则该计数器计数值加 1,当计数到达所指定的数值时,计数器的触点动作。

寄存器长度 32位,当通过 16位指令访问时自动使用低 16位。

计数器器一共 128个,分别是 C0~C127,其中 C100~C107为掉电保持型。

操作数:

S1:C0~C 127S2:K,D

编程示例:

X0由 OFF 变为 ON则计数器 C0数值加 1,当 C0数值为 10时,C0常开触点闭合,Y0导通。

CNT

DCNT

Page 20: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

20

3.1.32MC

指令说明:

1. 为主控起始指令,当MC指令执行时,位于MC与MCR指令之间的指令照常执行。

当MC指令 Off时,位于MC与MCR指令之间的指令动作如下所示:

一般定时器: 计时值归零,线圈失电,接点不动作

子程序用定时器:计时值归零,线圈失电,接点不动作

累计型定时器:线圈失电,计时值及接点保持目前状态

计数器 :圈失电,计数值及接点保持目前状态

SET,RST指令驱动的元件:保持目前状态

用指令 : 全部不动作

2.MCR 为主控结束指令,置于主控程序最后,在MCR指令之前不可有接点指令。

操作数:

S:N编程示例:

3.1.33MCR

参见MC指令。

3.2 触点比较指令

3.2.1 LD*/ LDD*/FLD* AND*/ ANDD*/FAND* OR*/

ORD*/FOR*

指令说明:

触点比较指令 S1 与 S2 之内容作比较的指令﹐比较结果符合判断条件时﹐该指令导

通﹐不符合判断条件时﹐该指令不导通。

LD*/ LDD*/FLD*指令列表:

16-bit指令 32-bit指令 32-bit浮点指令 导通条件 不导通条件

MC

MCR

Page 21: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

21

LD= DLD= FLD= S1=S2 S1≠S2

LD> DLD> FLD> S1>S2 S1≦S2

LD< DLD< FLD< S1<S2 S1≧S2

LD<> DLD<> FLD<> S1≠S2 S1=S2

LD<= DLD<= FLD<= S1≦S2 S1>S2

LD>= DLD>= FLD<= S1≧S2 S1<S2

AND*/ ANDD*/FAND*指令列表:

16-bit指令 32-bit指令 32-bit浮点指令 导通条件 不导通条件

AND= DAND= FAND= S1=S2 S1≠S2

AND> DAND> FAND> S1>S2 S1≦S2

AND< DAND< FAND< S1<S2 S1≧S2

AND<> DAND<> FAND<> S1≠S2 S1=S2

AND<= DAND<= FAND<= S1≦S2 S1>S2

AND>= DAND>= FAND>= S1≧S2 S1<S2

OR*/ ORD*/FOR*指令列表:

16-bit指令 32-bit指令 32-bit浮点指令 导通条件 不导通条件

OR= DOR= FOR= S1=S2 S1≠S2

OR> DOR> FOR> S1>S2 S1≦S2

OR< DOR< FOR< S1<S2 S1≧S2

OR<> DOR<> FOR<> S1≠S2 S1=S2

OR<= DOR<= FOR<= S1≦S2 S1>S2

OR>= DOR>= FOR>= S1≧S2 S1<S2

操作数:

S1:K, H, KnX, KnY, KnM, T, C, DS2:K, H, KnX, KnY, KnM, T, C, D

3.2.2 LD=

请参见 3.2.1。

Page 22: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

22

3.2.3 LDD=

请参见 3.2.1。

3.2.4 LD>

请参见 3.2.1。

3.2.5 LDD>

请参见 3.2.1。

3.2.6 LD<

请参见 3.2.1。

3.2.7 LDD<

请参见 3.2.1。

3.2.8 LD<>

请参见 3.2.1。

3.2.9 LDD<>

请参见 3.2.1。

3.2.10LD<=

请参见 3.2.1。

Page 23: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

23

3.2.11 LDD<=

请参见 3.2.1。

3.2.12LD>=

请参见 3.2.1。

3.2.13LDD>=

请参见 3.2.1。

3.2.14AND=

请参见 3.2.1。

3.2.15ANDD=

请参见 3.2.1。

3.2.16AND>

请参见 3.2.1。

3.2.17ANDD>

请参见 3.2.1。

3.2.18AND<

请参见 3.2.1。

Page 24: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

24

3.2.19ANDD<

请参见 3.2.1。

3.2.20AND<>

请参见 3.2.1。

3.2.21ANDD<>

请参见 3.2.1。

3.2.22AND<=

请参见 3.2.1。

3.2.23ANDD<=

请参见 3.2.1。

3.2.24AND>=

请参见 3.2.1。

3.2.25ANDD>=

请参见 3.2.1。

3.2.26OR=

请参见 3.2.1。

Page 25: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

25

3.2.27ORD=

请参见 3.2.1。

3.2.28OR>

请参见 3.2.1。

3.2.29ORD>

请参见 3.2.1。

3.2.30OR<

请参见 3.2.1。

3.2.31ORD<

请参见 3.2.1。

3.2.32OR<>

请参见 3.2.1。

3.2.33ORD<>

请参见 3.2.1。

Page 26: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

26

3.2.34OR<=

请参见 3.2.1。

3.2.35ORD<=

请参见 3.2.1。

3.2.36OR>=

请参见 3.2.1。

3.2.37ORD>=

请参见 3.2.1。

3.2.38LD#

指令说明:

触点逻辑运算指令 LD&、LD|、LD^、LDD&、LDD|、LDD^, S1 与 S2 之内容作位运

算的指令﹐结果不为 0时则该指令导通﹐结果为 0时则该指令不导通。

16-bit指令 32-bit指令 导通条件 不导通条件

LD& DLD& S1 & S2 ≠0 S1 & S2 =0

LD| DLD| S1 | S2 ≠0 S1 | S2 =0

LD^ DLD^ S1 ^ S2 ≠0 S1 ^ S2 =0

操作数:

S1:K, H, KnX, KnY, KnM, T, C, DS2:K, H, KnX, KnY, KnM, T, C, D

Page 27: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

27

3.2.39LD&

参见 3.2.38 LD#。

3.2.40LD|

参见 3.2.38 LD#。

3.2.41LD^

参见 3.2.38 LD#。

3.2.42LDD&

参见 3.2.38 LD#。

3.2.43LDD|

参见 3.2.38 LD#。

3.2.44LDD^

参见 3.2.38 LD#。

3.2.45AND#

指令说明:

触点逻辑运算指令 AND&、AND|、AND^、ANDD&、ANDD |、ANDD ^, S1 与 S2 之

内容作位运算的指令﹐比较结果不为 0 时则该指令导通﹐比较结果为 0 时则该指令不导

通。

16-bit指令 32-bit指令 导通条件 不导通条件

LD& DLD& S1 & S2 ≠0 S1 & S2 =0

LD| DLD| S1 | S2 ≠0 S1 | S2 =0

LD^ DLD^ S1 ^ S2 ≠0 S1 ^ S2 =0

操作数:

S1:K, H, KnX, KnY, KnM, T, C, D

Page 28: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

28

S2:K, H, KnX, KnY, KnM, T, C, D

3.2.46AND&

参见 3.2.45 AND#。

3.2.47AND|

参见 3.2.45 AND#。

3.2.48AND^

参见 3.2.45 AND#。

3.2.49ANDD&

参见 3.2.45 AND#。

3.2.50ANDD|

参见 3.2.45 AND#。

3.2.51ANDD^

参见 3.2.45 AND#。

3.2.52OR#

指令说明:

触点逻辑运算指令 OR&、OR|、OR^、ORD&、ORD|、ORD^, S1 与 S2 之内容作位运

算的指令﹐比较结果不为 0 时则该指令导通﹐比较结果为 0时则该指令不导通。

16-bit指令 32-bit指令 导通条件 不导通条件

OR& DOR& S1 & S2 ≠0 S1 & S2 =0

OR| DOR| S1 | S2 ≠0 S1 | S2 =0

OR^ DOR^ S1 ^ S2 ≠0 S1 ^ S2 =0

Page 29: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

29

操作数:

S1:K, H, KnX, KnY, KnM, T, C, DS2:K, H, KnX, KnY, KnM, T, C, D

3.2.53OR&

参见 3.2.52 OR#。

3.2.54OR|

参见 3.2.45 AND#。

3.2.55OR^

参见 3.2.45 AND#。

3.2.56ORD&

参见 3.2.45 AND#。

3.2.57ORD|

参见 3.2.45 AND#。

3.2.58ORD^

参见 3.2.45 AND#。

3.2.59 FLD=

请参见 3.2.1。

3.2.60 FLD>

请参见 3.2.1。

Page 30: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

30

3.2.61 FLD<

请参见 3.2.1。

3.2.62 FLD<>

请参见 3.2.1。

3.2.63 FLD<=

请参见 3.2.1。

3.2.64 FLD>=

请参见 3.2.1。

3.2.65 FAND=

请参见 3.2.1。

3.2.66 FAND>

请参见 3.2.1。

3.2.67 FAND<

请参见 3.2.1。

3.2.68 FAND<>

请参见 3.2.1。

Page 31: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

31

3.2.69 FAND<=

请参见 3.2.1。

3.2.70 FAND>=

请参见 3.2.1。

3.2.71 FOR=

请参见 3.2.1。

3.2.72 FOR>

请参见 3.2.1。

3.2.73 FOR<

请参见 3.2.1。

3.2.74 FOR<>

请参见 3.2.1。

3.2.75 FOR<=

请参见 3.2.1。

Page 32: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

32

3.2.76 FOR>=

请参见 3.2.1。

3.3 传送和比较指令

3.3.1 CMP

指令说明:

CMP为 16位指令,比较 2个值,将其结果(大、相等、小)输出到位软元件中。若想

清除比较结果,需手动清零。

操作数:

S1:KnX, KnY, KnM, T,C,D,K,HS2:KnX, KnY, KnM, T,C,D,K,HD: Y,M,S

16-bit指令 32-bit指令 是否为脉冲型

CMP DCMP 否

CMPP DCMPP 是

3.3.2 CMPP

CMP的 16位脉冲执行型指令,参见 CMP指令。

3.3.3 DCMP

CMP的 32位指令,参见 CMP指令。

3.3.4 DCMPP

CMP的 32位脉冲执行型指令,参见 CMP指令。

3.3.5 ZCP

指令说明:

ZCP为 16位指令,区间比较,将其结果(大、相等、小)输出到位软元件中。若想清

除比较结果,需手动清零。

Page 33: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

33

操作数:

S1:KnX, KnY, KnM, T,C,D,K,HS2:KnX, KnY, KnM, T,C,D,K,HD: Y,M,S

16-bit指令 32-bit指令 是否为脉冲型

ZCP DZCP 否

ZCPP DZCPP 是

3.3.6 ZCPP

ZCP的 16位脉冲执行型指令,参见 ZCP指令。

3.3.7 DZCP

ZCP的 32位指令,参见 ZCP指令。

3.3.8 DZCPP

ZCP的 32位脉冲执行型指令,参见 ZCP指令。

3.3.9 MOV

指令说明:

MOV为 16位指令,是将软元件的内容传送到其它软元件中的指令。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DT

16-bit指令 32-bit指令 是否为脉冲型

MOV DMOV 否

MOVP DMOVP 是

3.3.10MOVP

MOV的 16位脉冲执行型指令,参见MOV指令。

Page 34: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

34

3.3.11 DMOV

MOV的 32位指令,参见MOV指令。

3.3.12DMOVP

MOV的 32位脉冲执行型指令,参见MOV指令。

3.3.13 SMOV

指令说明:

SMOV指令以位数为单位(4位)进行数据的分配合成。

传送源 S和传送目标先被转换成 4位的 BCD,然后将 S中 m1(位数从 1开始)开始的

低 m2位数部分合并到 D的 n位处,最后将合并后的数据转换成 BIN并保存到 D中。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@m1:K,Hm2:K,HD :KnY, KnM, KnS, T,C,D,V,Z,LV,DTn :K,H

3.3.14 SMOVP

SMOV的脉冲执行型指令,参见 SMOV指令。

3.3.15CML

指令说明:

CML为 16位指令,是以位为单位对数据进行反转并复制存储。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DT

16-bit指令 32-bit指令 是否为脉冲型

CML DCML 否

CMLP DCMLP 是

Page 35: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

35

3.3.16CMLP

CML的 16位脉冲执行型指令,参见 CMP指令。

3.3.17DCML

CML的 32位指令,参见 CML指令。

3.3.18DCMLP

CML的 32位脉冲执行型指令,参见 CMP指令。

3.3.19BMOV

指令说明:

BMOV指令对指定点数的多个数据进行批量复制(多对多)。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DTn : K,H

3.3.20BMOVP

BMOV的脉冲执行型指令,参见 BMOV指令。

3.3.21 FMOV

指令说明:

FMOV为 16位指令,将同一数据传送到指定点数的目标软元件中(一对多)。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DTn : K,H

16-bit指令 32-bit指令 是否为脉冲型

FMOV DFMOV 否

Page 36: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

36

FMOVP DFMOVP 是

3.3.22 FMOVP

FMOV的 16位脉冲执行型指令,参见 FMOV指令。

3.3.23DFMOV

FMOV的 32位指令,参见 FMOV指令。

3.3.24DFMOVP

FMOV的 32位脉冲执行型指令,参见 FMOV指令。

3.3.25XCH

指令说明:

XCH指令将两个软元件数据进行交换。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DTn : K,H

16-bit指令 32-bit指令 是否为脉冲型

XCH DXCH 否

XCHP DXCHP 是

3.3.26XCHP

请参见 3.3.25 XCH指令。

3.3.27DXCH

请参见 3.3.25 XCH指令。

Page 37: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

37

3.3.28DXCHP

请参见 3.3.25 XCH指令。

3.3.29BCD

指令说明:

BCD指令将 BIN(2 进制数)数据转换成 BCD(10进制数)数据后进行传送。(主要用在带

BCD码的 7段数码管的显示输出)

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DT

16-bit指令 32-bit指令 是否为脉冲型

BCD DBCD 否

BCDP DBCDP 是

3.3.30BCDP

请参见 3.3.29 BCD指令。

3.3.31DBCD

请参见 3.3.29 BCD指令。

3.3.32DBCDP

请参见 3.3.29 BCD指令。

3.3.33BIN

指令说明:

BIN 指令将 BCD(10 进制数)数据转换成 BIN(2 进制数)数据后进行传送。(主要用在数

字开关的输入)

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@D :KnY, KnM, KnS, T,C,D,K,H,V,Z,LV,DT

Page 38: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

38

16-bit指令 32-bit指令 是否为脉冲型

BIN DBIN 否

BINP DBINP 是

3.3.34BINP

请参见 3.3.33 BIN指令。

3.3.35DBIN

请参见 3.3.33 BIN指令。

3.3.36DBINP

请参见 3.3.33 BIN指令。

3.4 循环跳转类

3.4.1 LBL

指令说明:

标明下面是一个子程序,并指明子程序名称。

操作数:

S:@sub_func,ln编程示例:

1、 Basic调用 PLC子函数

LBL

LBL

SRET 从子函数返回主函数,

若加参数则该参数作为返回

值。

Page 39: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

39

3.4.2 CJ CJP

指令说明:

使 CJ、CJP指令开始到 LBL标记为止的顺序程序不执行的指令。

操作数:

S:Ln编程示例:

3.4.3 CJEND CJPEND

指令说明:

使 CJEND、CJPEND指令开始到程序 END标记为止的顺序程序不执行的指令。

操作数:

编程示例:

1、CJEND

2、CJPEND

指令 CJ L0执行后跳转到此处

指令 CJ L1执行后跳转到此处

X0为 ON时一直跳转

X0为 ON时只跳转一次

Page 40: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

40

3.4.4 CALL CALLP

指令说明:

调用指令, 可以调用 BASIC的全局过程,或 LBL定义的过程。

操作数:

此指令可以传入参数(参数必须为 32位浮点数,如:全局变量、LV、DT), 参数自

动传入被调用过程的参数或 LV寄存器中。

参数自动以 32位浮点数格式传入。

编程示例:

1 为调用 PLC 子函数;

2 为调用 BASIC的全局过程,参数为全局变量;

3 为调用 BASIC的全局过程,参数为 LV;4 为调用 BASIC的全局过程,参数为 DT;

3.4.5 SRET

指令说明:

执行了主程序中的 CALL指令后,跳转到子程序,然后使用 SRET指令返回到主程序。

操作数:

可以带上返回值,返回值是浮点格式,调用者通过 RETURN指令获取返回值。

编程示例:

参见 LBL指令。

Page 41: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

41

3.4.6 IRET

指令说明:

IRET指令使中断子程序返回到主程序。

操作数:

无。

3.4.7 EI

指令说明:

EI指令使可编程控制器变为允许中断的状态,可编程控制器通常为禁止中断的状态。

操作数:

无。

3.4.8 DI

指令说明:

DI指令使可编程控制器由允许中断变为禁止中断的状态。

操作数:

无。

3.4.9 FEND

指令说明:

FEND指令表示主程序结束的指令。

执行 FEND指令后,会执行与 END指令相同的输出处理、输入处理、看门狗定时器的

刷新,然后返回到 0步的程序。在编写子程序和中断程序时需要使用这个指令。

操作数:

无。

3.4.10WDT

指令说明:

WDT指令可以对看门狗定时器进行刷新。

通过设置 D8000可以设置看门狗定时器的时间。

操作数:

无。

Page 42: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

42

3.4.11 FOR

指令说明:

从 FOR指令开始到 NEXT指令之间的程序按指定次数重复运行。

操作数:

S :KnX, KnY, KnM, KnS,T,C,D,K,H,V,Z,LV,DT,@编程示例:

3.4.12NEXT

指令说明:

从 FOR指令开始到 NEXT指令之间的程序按指定次数重复运行。

操作数:

无。

3.4.13END

指令说明:

END指令表示程序结束的指令。

操作数:

无。

3.5 运算指令

3.5.1 ADD

指令说明:

ADD指令将两个数据进行加法运算,并将结果保存在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

ADD DADD 否

ADDP DADDP 是

Page 43: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

43

3.5.2 ADDP

请参见 3.5.1 ADD指令。

3.5.3 DADD

请参见 3.5.1 ADD指令。

3.5.4 DADDP

请参见 3.5.1 ADD指令。

3.5.5 SUB

指令说明:

SUB指令将两个数据进行减法运算,并将结果保存在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

SUB DSUB 否

SUBP DSUBP 是

3.5.6 SUBP

请参见 3.5.5 SUB指令。

3.5.7 DSUB

请参见 3.5.5 SUB指令。

3.5.8 DSUBP

请参见 3.5.5 SUB指令。

Page 44: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

44

3.5.9 MUL

指令说明:

MUL指令将两个数据进行乘法运算,并将结果保存在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

MUL DMUL 否

MULP DMULP 是

3.5.10MULP

请参见 3.5.10 MUL指令。

3.5.11 DMUL

请参见 3.5.10 MUL指令。

3.5.12DMULP

请参见 3.5.10 MUL指令。

3.5.13DIV

指令说明:

DIV指令将两个数据进行除法运算,并将结果保存在目标寄存器中。

16位指令时,结果占 32位,低 16位存储商,高 16位存储余数。

32位指令时,结果占 64位,低 32位存储商,高 32位存储余数。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

DIV DDIV 否

DIVP DDIVP 是

Page 45: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

45

3.5.14DIVP

请参见 3.5.13 DIV指令。

3.5.15DDIV

请参见 3.5.13 DIV指令。

3.5.16DDIVP

请参见 3.5.13 DIV指令。

3.5.17 INC

指令说明:

INC指令使数据软元件数值加 1。连续运算指令每个运算周期都执行加 1运算。

脉冲型指令每次触发的上升沿执行加 1运算。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

INC DINC 否

INCP DINCP 是

3.5.18 INCP

请参见 3.5.17 INC指令。

3.5.19DINC

请参见 3.5.17 INC指令。

3.5.20DINCP

请参见 3.5.17 INC指令。

Page 46: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

46

3.5.21DEC

指令说明:

DEC指令使数据软元件数值减 1。连续运算指令每个运算周期都执行减 1运算。

脉冲型指令每次触发的上升沿执行减 1运算。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

DEC DDEC 否

DECP DDECP 是

3.5.22DECP

请参见 3.5.21 DEC指令。

3.5.23DDEC

请参见 3.5.21 DEC指令。

3.5.24DDECP

请参见 3.5.21 DEC指令。

3.5.25WAND

指令说明:

WAND指令将两个数值进行逻辑与运算,并将结果存储在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

WAND DWAND 否

WANDP DWANDP 是

Page 47: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

47

3.5.26WANDP

请参见 3.5.25 WAND指令。

3.5.27DWAND

请参见 3.5.25 WAND指令。

3.5.28DWANDP

请参见 3.5.25 WAND指令。

3.5.29WOR

指令说明:

WOR指令将两个数值进行逻辑或运算,并将结果存储在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

WOR DOR 否

WORP DORP 是

3.5.30WORP

请参见 3.5.25 WOR指令。

3.5.31DOR

请参见 3.5.25 WOR指令。

3.5.32DORP

请参见 3.5.25 WOR指令。

Page 48: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

48

3.5.33WXOR

指令说明:

WXOR指令将两个数值进行逻辑异或运算,并将结果存储在目标寄存器中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

WXOR DXOR 否

WXORP DXORP 是

3.5.34WXORP

请参见 3.5.33 WXOR指令。

3.5.35DXOR

请参见 3.5.33 WXOR指令。

3.5.36DXORP

请参见 3.5.33 WXOR指令。

3.5.37NEG

指令说明:

NEG指令求出一个数的补码(将数值符号取反)。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

NEG DNEG 否

NEGP DNEGP 是

Page 49: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

49

3.5.38NEGP

请参见 3.5.37 NEG指令。

3.5.39DNEG

请参见 3.5.37 NEG指令。

3.5.40DNEGP

请参见 3.5.37 NEG指令。

3.6 移位指令

3.6.1 ROR

指令说明:

ROR指令使不包括进位标志在内的数据按位循环右移。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DTn :KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

ROR DROR 否

RORP DRORP 是

3.6.2 RORP

请参见 3.6.1 ROR指令。

3.6.3 DROR

请参见 3.6.1 ROR指令。

3.6.4 DRORP

请参见 3.6.1 ROR指令。

Page 50: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

50

3.6.5 ROL

指令说明:

ROL指令使不包括进位标志在内的数据按位循环左移。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DTn :KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

ROL DROL 否

ROLP DROLP 是

3.6.6 ROLP

请参见 3.6.1 ROL指令。

3.6.7 DROL

请参见 3.6.1 ROL指令。

3.6.8 DROLP

请参见 3.6.1 ROL指令。

3.6.9 RCR

指令说明:

ROL指令使包括进位标志在内的数据按位循环右移。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DTn :KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

RCR DRCR 否

RCRP DRCRP 是

Page 51: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

51

3.6.10RCRP

请参见 3.6.9 RCR指令。

3.6.11 DRCR

请参见 3.6.9 RCR指令。

3.6.12DRCRP

请参见 3.6.9 RCR指令。

3.6.13RCL

指令说明:

RCR指令使包括进位标志在内的数据按位循环左移。

操作数:

D:KnY, KnM, KnS, T,C,D,Z,V, LV,DTn :KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

RCL DRCL 否

RCLP DRCLP 是

3.6.14RCLP

请参见 3.6.13 RCL指令。

3.6.15DRCL

请参见 3.6.13 RCL指令。

3.6.16DRCLP

请参见 3.6.13 RCL指令。

Page 52: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

52

3.6.17 SFTR

指令说明:

SFTR指令将 D起始的 n1个位元件右移 n2位,并从 D的高位开始复制 S起始的 n2位个位元件。

操作数:

S:X,Y,M,S,T,C,D.,@D:X,Y,M,S,T,C,D.,@n1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@n2:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

3.6.18 SFTRP

指令说明:

SFTRP是 SFTR的脉冲型指令。

3.6.19 SFTL

指令说明:

SFTR指令将 D起始的 n1个位元件左移 n2位,并从 D的低位开始复制 S起始的 n2位个位元件。

操作数:

S:X,Y,M,S,T,C,D.,@D:X,Y,M,S,T,C,D.,@n1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@n2:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

Page 53: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

53

3.6.20 SFTLP

指令说明:

SFTLP 是 SFTL的脉冲型指令。

3.6.21WSFR

指令说明:

WSFR指令将 D起始的 n1个字元件右移 n2位,并从 D+n2-n1开始复制 S起始的 n2位个字元件。

操作数:

S:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS,T,C,D, Z,V,LV,DTn1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@n2:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

3.6.22WSFRP

指令说明:

WSFRP是WSFR的脉冲型指令。

Page 54: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

54

3.6.23WSFL

指令说明:

WSFR指令将 D起始的 n1个字元件左移 n2位,并从 D开始复制 S起始的 n2位个字元

件。

操作数:

S:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS,T,C,D, Z,V,LV,DTn1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@n2:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

3.6.24WSFLP

指令说明:

WSFLP 是WSFL的脉冲型指令。

3.6.25 SFWR

指令说明:

将 S的值写入由 D地址起始,个数为 n的“先进先出”队列中,以第一个编号装置作为指

针,当指令执行时,指针内容值先加 1,之后 S 所指定的装置其内容值会写入先入先出 D数据串列中由指针所指定的位置。若队列数据已满,则不处理后来的数据,且标志位M8022置 ON。操作数:

S:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS,T,C,D, Z,V,LV,DTn1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

Page 55: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

55

3.6.26 SFWRP

指令说明:

SFWRP 是 SFWR 的脉冲型指令。

3.6.27 SFRD

指令说明:

从“先进先出”队列 S的首项读出到 D中,然后将队列 S逐字右移 1个字,将队列指针

递减。以第一个编号装置作为指针,当指令执行时,指针内容值先减 1,之后 S 所指定的

装置其内容值会写入先入先出 D数据串列中由指针所指定的位置。若指针已经为 0,则指令

不处理前述操作,而 0标志M8020会置 1。操作数:

S:KnY, KnM, KnS,T,C,D, Z,V,LV,DTD:KnY, KnM, KnS,T,C,D, Z,V,LV,DTn1:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

Page 56: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

56

3.6.28 SFRDP

指令说明:

SFRDP是 SFRD的脉冲型指令。

3.7 数据处理指令

3.7.1 ZRST

指令说明:

ZRST指令使指定两个软元件间执行成批复位的命令。

操作数:

S1:Y, M, S,T,C,D, Z,V,LV,DTS2:Y, M, S,T,C,D, Z,V,LV,DT

编程示例:

3.7.2 ZRSTP

指令说明:

ZRSTP是 ZRST的脉冲型指令。

3.7.3 DECO

指令说明:

DECO指令根据源操作数中的数的值将目标操作数中对应位置 1。根据目标操作数是字元件或位元件,n取值范围分别为 1-4或 1-8 中,0不处理。

操作数:

S:X,Y, M, S,T,C,D, Z,V,LV,DT,K,HD:Y, M, S,T,C,D, Z,V,LV,DTn:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

Page 57: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

57

3.7.4 DECOP

指令说明:

DECOP是 DECO的脉冲型指令。

3.7.5 ENCO

指令说明:

ENCO指令对 DECO的译码结果进行编码。

根据源操作数是字元件或位元件,n取值范围分别为 1-4 或 1-8 中,0不处理。

操作数:

S:X,Y, M, S,T,C,D, Z,V,LV,DT,K,HD:Y, M, S,T,C,D, Z,V,LV,DTn:KnX,KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

参见 3.7.3DECO指令

3.7.6 ENCOP

指令说明:

ENCOP是 ENCO的脉冲型指令。

3.7.7 SUM

指令说明:

SUM指令计算在指定的软元件的数据中为“1”的位的总个数。

Page 58: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

58

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS, T,C,D,Z,V, LV,DT

16-bit指令 32-bit指令 是否为脉冲型

SUM DSUM 否

SUMP DSUMP 是

编程示例:

3.7.8 SUMP

请参见 3.7.7 SUM指令。

3.7.9 DSUM

请参见 3.7.7 SUM指令。

3.7.10DSUMP

请参见 3.7.7 SUM指令。

3.7.11 BON

指令说明:

SON指令检查软元件中指定位的位置为 ON还是为 OFF。

Page 59: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

59

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:Y, M, S, T,C,D.,@n:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

SON DSON 否

SONP DSONP 是

编程示例:

3.7.12BONP

请参见 3.7.11 SON指令。

3.7.13DBON

请参见 3.7.11 SON指令。

3.7.14DBONP

请参见 3.7.11 SON指令。

3.7.15MEAN

指令说明:

MEAN指令求数据的平均值。

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS,T,C,D, Z,V,LV,DT,n:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

16-bit指令 32-bit指令 是否为脉冲型

MEAN DMEAN 否

Page 60: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

60

MEANP DMEANP 是

编程示例:

3.7.16MEANP

请参见 3.7.15 MEAN指令。

3.7.17DMEAN

请参见 3.7.15 MEAN指令。

3.7.18DMEANP

请参见 3.7.15 MEAN指令。

3.7.19ANS

3.7.20ANR

3.7.21ANRP

3.7.22 SQR

指令说明:

SQR指令求平方根运算。

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

Page 61: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

61

D:KnY, KnM, KnS,T,C,D, Z,V,LV,DT,

16-bit指令 32-bit指令 是否为脉冲型

SQR DSQR 否

SQRP DSQRP 是

编程示例:

3.7.23 SQRP

请参见 3.7.22 MEAN指令。

3.7.24DSQR

请参见 3.7.22 MEAN指令。

3.7.25DSQRP

请参见 3.7.22 MEAN指令。

3.7.26 FLT

指令说明:

FLT指令将 BIN整数值转换成 2进制浮点数(实数)的指令。

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@D:KnY, KnM, KnS,T,C,D, Z,V,LV,DT,

16-bit指令 32-bit指令 是否为脉冲型

FLT DFLT 否

FLTP DFLTP 是

编程示例:

Page 62: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

62

3.7.27 FLTP

请参见 3.7.26 FLT指令。

3.7.28DFLT

请参见 3.7.26 FLT指令。

3.7.29DFLTP

请参见 3.7.26 FLT指令。

3.7.30 SWAP

指令说明:

SWAP指令互换字数据的高 8位和低 8位的指令。

操作数:

S:KnY, KnM, KnS,T,C,D,Z,V,LV,DT

16-bit指令 32-bit指令 是否为脉冲型

SWAP DSWAP 否

SWAPP DSWAPP 是

编程示例:

Page 63: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

63

3.7.31 SWAPP

请参见 3.7.30 SWAP指令。

3.7.32DSWAP

请参见 3.7.30 SWAP指令。

3.7.33DSWAPP

请参见 3.7.30 SWAP指令。

3.8 浮点运算指令

3.8.1 DECMP

指令说明:

DECM 指令比较 2个数据,将结果输出到位软元件(3点)中。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT,@S2:KnY, KnM, KnS,T,C,D,Z,V,LV,DTD:Y, M, S,T,C,D.,@

16-bit指令 32-bit指令 是否为脉冲型

- DECMP 否

- DECMPP 是

3.8.2 DECMPP

请参见 3.8.1 DECM 指令。

3.8.3 DEZCP

指令说明:

DEZCP指令将上下 2点的比较范围和数据(2进制浮点数)进行比较,根据其结果输出到

位软元件(3点)中的指令。

操作数:

Page 64: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

64

S1:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT,@S:KnY, KnM, KnS,T,C,D,Z,V,LV,DTD:Y, M, S,T,C,D.,@

16-bit指令 32-bit指令 是否为脉冲型

- DEZCP 否

- DEZCPP 是

3.8.4 DEZCPP

请参见 3.8.3 DEZCP指令。

3.8.5 DEBCD

指令说明:

DEBCD指令将软元件中的 2进制浮点数转换成 10进制浮点数。

操作数:

S:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT,@D:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT

编程示例:

3.8.6 DEBCDP

指令说明:

DEBCD是 DEBCDP 的脉冲型指令。

3.8.7 DEBIN

指令说明:

DEBIN指令将软元件中的 10进制浮点数转换成 2进制浮点数。

操作数:

Page 65: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

65

S:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT,@D:KnX, KnY, KnM, KnS,T,C,D,K,H, LV,DT

编程示例:

参见 DEBCD指令。

3.8.8 DEBINP

指令说明:

DEBIN是 DEBINP的脉冲型指令。

3.8.9 DEADD/DEADDP/DESUB/DESUBP/

DEMUL/DEMULP/DEDIV/DEDIVP/DESQR/DESQ

RP

指令说明:

该组指令用于浮点数四则运算。

32-浮点指令 是否为脉冲型 操作数种类 指令名称

DEADD 否

S1: T,C,D,K,H, LV,DT,@S2: T,C,D,K,H, LV,DT,@D: T,C,D, LV,DT

浮点数加法DEADDP 是

DESUB 否浮点数减法

DESUBP 是

DEMUL 否浮点数乘法

DEMULP 是

DEDIV 否浮点数除法

DEDIVP 是

DESQR 否浮点数开方

DESQRP 是

注意:浮点数指令会将参数中的常数转化为浮点数(所有,包含三菱中提到的

RAD/DEG/EXP/LOGE)。浮点数指令中使用数据寄存器时,数据寄存器内的值必须为浮点数或可以自动转化为常数的

值。

编程示例:

Page 66: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

66

3.8.10DEADD

请参见 3.8.9。

3.8.11 DEADDP

请参见 3.8.9。

3.8.12DESUB

请参见 3.8.9。

3.8.13DESUBP

请参见 3.8.9。

3.8.14DEMUL

请参见 3.8.9。

3.8.15DEMULP

请参见 3.8.9。

3.8.16DEDIV

请参见 3.8.9。

Page 67: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

67

3.8.17DEDIVP

请参见 3.8.9。

3.8.18DESQR

请参见 3.8.9。

3.8.19DESQRP

请参见 3.8.9。

3.8.20 INT

指令说明:

INT指令将 2进制浮点数,转换成可编程控制器中的一般数据形式 BIN整数的指令。

操作数:

S:T,C,D,K,H, LV,DT,@D:KnY, KnM, KnS,T,C,D,K,H, LV,DT,,Z

16-bit指令 32-bit指令 是否为脉冲型

INT DINT 否

INTP DINTP 是

编程示例:

3.8.21 INTP

请参见 3.8.20 INT。

Page 68: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

68

3.8.22DINT

请参见 3.8.20 INT。

3.8.23DINTP

请参见 3.8.20 INT。

3.8.24DSIN

指令说明:

DSIN指令求角度(RAD)的 SIN值得指令。

操作数:

S1:T,C,D, LV,DT, @S2:T,C,D, LV,DT

编程示例:

3.8.25DSINP

指令说明:

DSIN指令的脉冲形式。

3.8.26DCOS

指令说明:

DCOS指令求角度(RAD)的 COS值得指令。

操作数:

S1:T,C,D,LV,DT, @S2:T,C,D, LV,DT

编程示例:

Page 69: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

69

3.8.27DCOSP

指令说明:

DCOS指令的脉冲形式。

3.8.28DTAN

指令说明:

DTAN指令求角度(RAD)的 TAN值得指令。

操作数:

S1:T,C,D, LV,DT, @S2:T,C,D, LV,DT

编程示例:

3.8.29DTANP

指令说明:

DTAN指令的脉冲形式。

3.8.30DEMOV

指令说明:

DEMOV指令对二进制浮点数进行传送。

Page 70: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

70

操作数:

S1:T,C,D, LV,DT, @,K,HS2:T,C,D, LV,DT

编程示例:

3.8.31DEMOVP

指令说明:

DEMOV指令的脉冲形式。

3.8.32DEXP

指令说明:

DEXP指令是以 e(2.71828)为底的指数运算。

操作数:

S1:T,C,D, LV,DT, @,K,HS2:T,C,D, LV,DT

编程示例:

3.8.33DEXPP

指令说明:

DEXPP指令的脉冲形式。

3.8.34DLOGE

指令说明:

DLOGE指令执行自然对数运算。

操作数:

S1:T,C,D, LV,DT, @,K,HS2:T,C,D, LV,DT

编程示例:

Page 71: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

71

3.8.35DLOGEP

指令说明:

DLOGEP指令的脉冲形式。

3.8.36DLOG

指令说明:

DLOG指令执行常用对数(以 10为底的对数)运算。

操作数:

S1:T,C,D, LV,DT, @,K,HS2:T,C,D, LV,DT

编程示例:

3.8.37DLOGP

指令说明:

DLOG指令的脉冲形式。

3.8.38DASIN

指令说明:

DASIN指令执行 SIN-1运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.39DASINP

指令说明:

DASIN指令的脉冲形式。

Page 72: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

72

3.8.40DACOS

指令说明:

DACOS指令执行 COS-1运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.41DACOSP

指令说明:

DACOS指令的脉冲形式。

3.8.42DATAN

指令说明:

DATAN指令执行 TAN-1运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.43DATANP

指令说明:

Page 73: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

73

DATAN指令的脉冲形式。

3.8.44DRAD

指令说明:

DRAD指令将角度转化成弧度的运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.45DRADP

指令说明:

DRAD指令的脉冲形式。

3.8.46DDEG

指令说明:

DDEG指令将弧度转化成角度的运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

Page 74: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

74

3.8.47DDEGP

指令说明:

DDEG指令的脉冲形式。

3.8.48DSINH

指令说明:

DSINH指令为双曲线正弦运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.49DSINHP

指令说明:

DSINH指令的脉冲形式。

3.8.50DCOSH

指令说明:

DCOSH指令为双曲余弦运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.51DCOSHP

指令说明:

DCOSH指令的脉冲形式。

Page 75: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

75

3.8.52DTANH

指令说明:

DTANH指令为双曲线正切运算。

操作数:

S1:T,C,D, LV,DT,K,@S2:T,C,D, LV,DT

编程示例:

3.8.53DTANHP

指令说明:

DTANH指令的脉冲形式。

3.9 其它指令

3.9.1 BASE

指令说明:

BASE指令指定要参与运动的轴。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@……S8:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@

编程示例:

1、直接使用 PLC指令中的 BASE指令:

2、在 PLC 中调用 Basic中的 BASE指令:

3.9.2 MOVE

指令说明:

Page 76: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

76

MOVE指令为直线插补相对运动指令。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@……S8:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@操作数若使用字寄存器,寄存器中的数值需用浮点指令赋值。

编程示例:

1、直接使用 PLC指令中的MOVE指令:

2、在 PLC 中调用 Basic中的MOVE指令:

注:两者对MOVE 指令的调用存在着差别。使用 PLC 中的MOVE指令时,若MOVE运动

没有完成就断开 X1,则MOVE运动立即停止;使用 Basic 中的MOVE指令时,即使MOVE运动没有完成就断开 X1,该MOVE运动也会继续执行直到完成。

3.9.3 MOVEABS

指令说明:

MOVEABS指令为直线插补绝对运动指令。

操作数:

S1:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@S2:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@……S8:KnX, KnY, KnM, KnS,T,C,D,K,H,Z,V,LV,DT,@操作数若使用字寄存器,寄存器中的数值需用浮点指令赋值。

编程示例:

1、直接使用 PLC指令中的MOVEABS指令:

2、在 PLC 中调用 Basic中的MOVEABS指令:

注:两者对MOVEABS指令的调用存在着差别。同MOVE指令。

Page 77: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

77

3.9.4 VMOVE

指令说明:

VMOVE指令为连续运动指令指令,即连续向一个方向运动。

操作数:

S:K (-1为负方向/1正方向)编程示例:

1、直接使用 PLC指令中的 VMOVE指令:

2、在 PLC 中调用 Basic中的 VMOVE指令:

注:两者对 VMOVE指令的调用存在着差别。同MOVE指令。

3.9.5 DATUM

指令说明:

DATUM指令为连续运动指令指令,即连续向一个方向运动。

操作数:

S:K (-1为负方向/1正方向)编程示例:

1、直接使用 PLC指令中的 DATUM指令:

2、在 PLC 中调用 Basic中的 DATUM指令:

Page 78: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

78

注:两者对 DATUM指令的调用存在着差别。同MOVE指令。

第四章 同时使用 PLC和 BASIC

4.1 PLC与 BASIC共享变量

相关寄存器:

X 对应 INY 对应 OPM 对应MODBUS_BITD 对应MODBUS_REGDT 对应 TABLE@BASIC表达式

4.2 PLC使用 BASIC命令

相关指令: EXE EXEP@MOVE()参见 EXE/EXEP指令。

4.3 PLC使用 BASIC表达式

相关寄存器: @basicexpr编程示例:

下例展示了使用 PLC 实现对轴基本参数的定义。

Page 79: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

79

4.4 PLC调用 BASIC子程序

相关指令:CALL@basicfunc参见 CALL/CALLP 指令。

4.5 BASIC调用 PLC子程序

相关指令:LBL@plcfuncCALL plcfunc参见 LBL指令。

4.6 BASIC启动 PLC任务

相关命令:RUN, RUNTASK可以实现 Basic与 Plc 之间子函数的相互调用,以及文件的相互启动。

编程示例:

Plc1.plc文件,设置为自动运行

Plc2.plc文件

Basic1.bas文件

Page 80: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

80

Basic2.bas文件

第五章 例程

5.1 星三角降压启动

Page 81: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

81

动作要求:

1.三相交流异步电动机启动时电流较大,一般为额定电流的 5~7倍,为了减少启动电流

对电网的影响,采用星-三角形降压启动方式。

2.星-三角形降压启动过程:合上开关后,电机启动接触器和星形降压方式启动接触器

先启动。10 秒延时后,星形降压方式启动接触器断开,再经过 3 秒延时后将三角形正常运

行接触器接通,电动机主电路接成三角形接法正常运行。采用两级延时的目的是确保星形降

压方式启动接触器完全断开后才去接通三角形正常运行接触器。

程序控制:

程序说明:

1.按下启动按钮,X0=On,Y0=On 并自保,电机启动接触器 KM0 接通,同时 T0计时

器计时,因 Y0=On,T0=Off,Y2=Off,所以 Y1=On,星形降压方式启动接触器 KM1 导通。

2.T0计时器到达 10秒预设值后,T0=On,Y1=Off,T1 计时器开始计时,到达 3s 预设

值后,T1=On,所以 Y2=On,三角形正常运行接触器 KM2导通。

3.当按下停止按钮时,X1=On,无论电动机处于启动状态还是运行状态,Y0、Y1、Y2 都

变为 Off,电机停止运行。

Page 82: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

82

5.2 直线插补运动

动作要求:

完成简单的两轴直线插补运动。

程序控制:

程序介绍:

Page 83: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

83

程序上电初始化时,对轴的各种参数进行初始化,当 X0被触发时,X0的上升沿对两

轴运动距离寄存器 D0、D2进行赋值,当 X1被触发时,X1的上升沿开启MOVE运动并且

M0自锁,当运动完成时,M1 被置位一个周期,M0断开。

5.3 三点画圆弧

动作要求:

通过触摸屏按键移动 X、Y轴坐标到合适位置,并定位圆弧中间点和结束点坐标。定位

完成后,按启动键来实现指定圆弧动作,停止键可停止圆弧动作。状态栏实时显示当前系统

状态。

程序控制:

Page 84: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

84

Page 85: ZMotionPlc编程手册 · 第一章 zplc编程入门 ... 当中断任务运行时,plc主任务暂停运行,其它plc任务不受影响,与 ... 威纶触摸屏 ...

深圳市正运动技术有限公司 ZMotion Plc 编程手册 1.0 版

85