三菱plc有哪些编程指令?详细介绍

三菱plc有哪些编程指令?详细介绍

三菱PLC(主要以主流FX系列和Q/L系列为例)的编程指令非常丰富,涵盖基本逻辑控制、数据处理、运算、流程控制、通信、定位等多个方面。以下按功能分类对一些常用和重要的指令进行详细介绍(使用中文指令名,括号内为常见助记符):

一、 基本逻辑指令 (LD, LDI, AND, ANI, OR, ORI, OUT, SET, RST)

LD (取):

读取常开触点状态。若对应软元件为ON,则触点导通。例如:LD X0 读取输入点X0状态。

LDI (取反):

读取常闭触点状态。若对应软元件为OFF,则触点导通。例如:LDI X1。

AND (与):

串联常开触点。例如:LD X0 AND X1 表示X0与X1都ON时通路。

ANI (与非):

串联常闭触点。例如:LD X0 ANI X1 表示X0 ON且X1 OFF时通路。

OR (或):

并联常开触点。例如:LD X0 OR X1 表示X0或X1任一个ON时通路。

ORI (或非):

并联常闭触点。例如:LD X0 ORI X1 表示X0 ON或X1 OFF时通路。

OUT (输出):

驱动线圈(继电器输出Y,辅助继电器M,定时器T,计数器C等)。例如:OUT Y0。

SET (置位):

将目标位元件置为ON并保持(锁定)。一旦置位,即使条件断开,状态仍保持ON,直到被复位。例如:SET M0。

RST (复位):

将目标位元件置为OFF并保持(解锁),或清除定时器当前值和计数器当前值。例如:RST M0, RST C0。

二、 堆栈与主控指令 (MPS, MRD, MPP, MC, MCR)

MPS (入栈):

存储运算中间结果(状态)。用于处理复杂的串并联分支。

MRD (读栈):

读取栈顶存储的中间结果,不影响堆栈。用于分支点之后的公共部分。

MPP (出栈):

读取并清除栈顶存储的中间结果。通常用于分支的结束。

MC (主控):

条件成立时,激活主控起点到主控结束点之间的程序。相当于一个总开关。

MCR (主控复位):

主控块的结束点。MCR后的指令不受主控条件影响。

三、 定时器指令 (T)

定时器 (T):

设定时间达到后,其常开触点闭合,常闭触点断开。

线圈(如 OUT T0 K50)被驱动时开始计时。

K50

表示设定时间(如100ms单位定时器K50=5秒,单位由T编号决定)。

计时过程中当前值增加。当前值 ≥ 设定值时,定时器触点动作。

线圈断开时,当前值复位为0。

工作原理:

类型:普通定时器(通电延时ON),积算定时器(断电保持当前值)。

四、 计数器指令 (C)

计数器 (C):

输入脉冲达到设定次数后,其常开触点闭合,常闭触点断开。

计数输入:

由OFF→ON变化时,计数当前值+1。

复位输入(RST指令):

为ON时,将当前值清零,计数器触点复位。

当前值 ≥ 设定值(如 OUT C0 K10)时,计数器触点动作。

工作原理(增计数):

类型:16位增计数器(普通型,电池后备/锁存型),32位增减双向计数器等。

五、 数据处理指令

MOV (传送):MOV S D

将源操作数S中的数据复制到目标操作数D中。例如:MOV D0 D10。

ADD (加):ADD S1 S2 D

将S1和S2相加,结果存入D。例如:ADD D0 D1 D2 (D2 = D0 + D1)。

SUB (减):SUB S1 S2 D

将S1减去S2,结果存入D。例如:SUB D0 D1 D2 (D2 = D0 - D1)。

MUL (乘):MUL S1 S2 D

将S1乘以S2,结果存入D(注意结果占用多个寄存器)。例如:MUL D0 D1 D2。

DIV (除):DIV S1 S2 D

将S1除以S2,商存入D,余数存入D的下一个寄存器。例如:DIV D0 D1 D2 (商存D2,余数存D3)。

INC (加1):INC D

目标操作数D的值+1。

DEC (减1):DEC D

目标操作数D的值-1。

AND (与):AND S1 S2 D

S1和S2进行位与位逻辑与操作,结果存入D。

OR (或):OR S1 S2 D

S1和S2进行位与位逻辑或操作,结果存入D。

XOR (异或):XOR S1 S2 D

S1和S2进行位与位逻辑异或操作,结果存入D。

CMP (比较):CMP S1 S2

比较S1和S2的大小,结果驱动特殊继电器(M8020零标志, M8021小于标志, M8022大于标志)。

ZCP (区间比较):ZCP S S1 S2 D

比较源S与下限S1、上限S2构成的区间,驱动3个连续目标位元件D(表示小于), D+1(表示范围内), D+2(表示大于)。

六、 移位与循环指令

SFTR (位右移), SFTL (位左移):

对n位组成的移位寄存器进行位移动。常用于流水线控制、状态切换。

ROR (循环右移), ROL (循环左移):

对16/32位数据进行循环位移。

SFR (右移), SFL (左移):

带进位标志的位移指令。

七、 流程控制指令 (CJ, CALL, SRET, IRET, EI, DI, FEND, END)

CJ (条件跳转):CJ Pn

当驱动条件满足时,跳过中间程序,跳转到指定指针Pn处执行。

CALL (子程序调用):CALL Pn

当驱动条件满足时,调用指定的子程序(以Pn为标号)。

SRET (子程序返回):

位于子程序末尾,执行此指令时返回主程序CALL指令后的下一条指令。

FEND (主程序结束):

表示主程序结束,其后可为子程序或中断程序。

IRET (中断返回), EI (允许中断), DI (禁止中断):

用于中断服务程序的控制与管理。

END (程序扫描结束):

表示程序结束。PLC每次扫描执行到END就回到第0步,处理I/O刷新后开始下一扫描周期。

八、 方便指令 (应用指令)

ALT (交替输出):

每次输入条件从OFF变ON时,目标元件状态翻转一次(ON变OFF或OFF变ON)。常用于单按钮启动/停止。

HSC (高速计数器):

用于处理高频脉冲输入的专用计数器。

PLSY (脉冲输出):

用于控制步进电机或伺服电机,发出指定频率和数量的脉冲(FX系列常用)。

PLSR (加减速脉冲输出):

带加减速控制的脉冲输出指令(FX系列常用)。

DRVA (绝对定位), DRVI (增量定位):

Q/L系列定位模块常用定位指令。

RS (串行通信):

用于无协议通信的发送/接收指令。

FROM/TO (缓冲存储器读写):

用于读写特殊功能模块(如模拟量模块、通信模块)内部的数据寄存器(BFM)。

九、 模拟量指令 (通过FROM/TO配合特殊模块)

虽然严格来说不是单一指令,但对模拟量处理至关重要:

读模拟量输入:

使用FROM指令读取模拟量输入模块对应通道的BFM(AD转换值)。

写模拟量输出:

使用TO指令将数据写入模拟量输出模块对应通道的BFM(设置DA输出值)。

十、 时钟与比较指令

TCMP (时间比较):

将当前时间(小时、分钟、秒)与设定的时间值进行比较。

TZCP (时间段比较):

判断当前时间是否在设定的两个时间点构成的区间内。

重要说明:

操作数表示:S

通常代表源操作数(Source, 如D0, K10, H0A, X0等),D通常代表目标操作数(Destination, 如D10, Y0, M0等)。n通常代表数量或数据长度。

数据长度:

三菱PLC指令区分16位和32位操作。指令符号前加D表示32位操作(如MOV是16位,DMOV是32位)。指令符号后加P表示脉冲执行型(只在驱动条件从OFF变ON的上升沿执行一次)。例如:DMOVP D0 D10(在上升沿将D0/D1的32位值传到D10/D11)。

支持情况:

具体指令的支持情况取决于PLC的具体型号和系列(FX1S/FX1N/FX3U/FX5U/Q系列等)及CPU的版本。务必查阅相应型号的编程手册。

编程手册:最全面、最准确的指令信息源是您所使用的具体三菱PLC型号的《编程手册》或《指令手册》。

手册中会详细列出每条指令的功能、操作数说明、用法示例、占用步数、支持的型号等关键信息。

总结:

三菱PLC提供了从最基本的开关量控制到复杂数据处理、高速计数、精密定位、网络通信等全方位的编程指令集。掌握这些核心指令是进行有效PLC程序设计的基础。对于复杂的工程应用,务必深入研读具体型号的官方编程手册,并根据项目需求选择合适的指令进行编程。

相关创作

换股骨头手术需要多长时间
beat365最新版

换股骨头手术需要多长时间

08-04 👁 9400
超详细的格式化输出(format的基本玩法)
365彩票官方下载手机

超详细的格式化输出(format的基本玩法)

07-01 👁 474