pLC编程指令代码大全(plc编程的指令大全)
plc中常用指令
PLC常用的指令有触点指令(比如常开触点,常闭触点,上升沿,下降沿等)、定时器指令、计数器指令、四则运算指令(比如整数的加减乘除等)、移位指令(比如左移位、循环左移等)。
望采纳。。。。。。
欧姆龙PLC指令表
编程指令
顺序输入指令
顺序输出指令
顺序输出指令
定时器和计数器指令
比较指令
数据传送指令
指令助记符
装载LD
装载非LD NOT
与AND
与非AND NOT
或OR
或非OR NOT
与装载AND LD
或装载OR LD
非NOT
条件ON UP
条件OFF DOWN
指令助记符
输出OUT
输出非OUT NOT
保持KEEP
上升沿微分DIFU
下降沿微分DIFD
置位SET
复位RSET
多位置位SETA
多位复位RSTA
单一位置位SETB
单一位复位RSTB
指令助记符
结束END
空操作NOP
联锁IL
联锁解除ILC
多联锁区别保持MILH
多联锁区别释放MILR
多联锁解除MILC
跳转JMP
跳转结束JME
条件跳转CJP
FOR循环FOR
循环终止BREAK
下一个循环NEXT
指令助记符
定时器
TIM
编辑指令
数据移位指令
递增/递减指令
四则运算指令
转换指令
逻辑指令
特殊算术指令
特殊算术指令
表格数据处理指令
数据控制指令
指令助记符
移位寄存器SFT
可逆移位寄存器SFTR
字移位WSFT
算术左移ASL
算术右移ASR
循环左移ROL
循环右移ROR
一个数字左移SLD
一个数字右移SRD
左移N位NASL
双字左移N位NSLL
右移N位NASR
双字右移N位NSRL
指令助记符
二进制递增++
双字二进制递增++L
二进制递减--
双字二进制递减--L
BCD递增++B
双字BCD递增++BL
BCD递减--B
双字BCD递减--BL
指令助记符
无进位带符号二进制加法+
无进位带符号双字二进制加法+L
有进位带符号二进制加法+C
有进位带符号双字二进制加法+CL
无进位BCD加法+B
无进位双字BCD加法+BL
有进位BCD加法+BC
有进位双字BCD加法+BCL
无进位带符号二进制减法-
无进位带符号双字二进制减法-L
有进位带符号二进制减法-C
有进位带符号双字二进制减法-CL
无进位BCD减法-B
无进位双字BCD减法-BL
有进位BCD减法-BC
有进位双字BCD减法-BCL
带符号二进制乘法*
带符号双字二进制乘法*L
BCD乘法*B
双字BCD乘法*BL
带符号二进制除法/
带符号双字二进制除法/L
BCD除法/B
双字BCD除法/BL
指令助记符
BCD→二进制BIN
双字BCD→双字二进制BINL
二进制→BCD BCD
双字二进制→双字BCD BCDL
二进制求补NEG
数据译码MLPX
数据编码DMPX
ASCⅡ转换码ASC
ASCⅡ→HEX HEX
指令助记符
逻辑与ANDW
双字逻辑与ANDL
逻辑或ORW
双字逻辑或ORWL
异或XORW
双字异或XORL
求补COM
双字求补COML
指令助记符
算术处理APR
位计数器BCNT
指令助记符
浮点数→16位FIX
浮点数→32位FIXL
16位→浮点数FLT
32位→浮点数FLTL
浮点数加法+F
浮点数减法-F
浮点数除法/F
浮点数乘法*F
浮点符号比较
LD, AND, OR+=F
LD, AND, OR+F
LD, AND, OR+F
LD, AND, OR+=F
LD, AND, OR+F
LD, AND, OR+=F
浮点数→ASCⅡ FSTR
ASCⅡ→浮点数FVAL
指令助记符
交换字节SWAP
帧校验和FCS
指令助记符
带自调整的PID控制PIDAT
时间比例输出TPO
标度SCL
标度2 SCL2
标度3 SCL3
平均值AVG
子程序指令
中断控制指令
高速计数器和脉冲输出指令
步指令
I/O单元指令
串行通信指令
时钟指令
故障诊断指令
其他指令
指令助记符
子程序调用SBS
子程序进入SBN
子程序返回RET
指令助记符
设置中断屏蔽MSKS
清除中断CLI
禁止中断DI
允许中断EI
指令助记符
模式控制INI
高速计数器当前值读取PRV
比较表载入CTBL
速度输出SPED
设置脉冲PULS
脉冲输出PLS2
加速度模式ACC
原点搜索ORG
可变占空比系数脉冲PWM
指令助记符
步定义STEP
步启动SNXT
指令助记符
I/O刷新IORF
7段译码SDEC
数字开关输入DSW
矩阵输入MTR
7段显示输出7SEG
指令助记符
发送TXD
接收RXD
指令助记符
日历加法CADD
日历减法CSUB
时钟调整DATE
指令助记符
故障报警FAL
严重故障报警FALS
指令助记符
设置进位STC
清除进位CLC
延长最大循环时间WDT
TIMX
计数器
CNT
CNTX
高速定时器
TIMH
TIMHX
1MS定时器
TMHH
TMHHX
累计定时器
TTIM
TTIMX
长时间定时器
TIML
TIMLX
可逆计数器
CNTR
CNTRX
定时器/计数器复位
CNR
CNRX
指令助记符
输入比较指令
(无符号)
LD,AND,OR+=
LD,AND,OR+
LD,AND,OR+
LD,AND,OR+=
LD,AND,OR+
LD,AND,OR+=
输入比较指令
(双字长,无符号)
LD,AND,OR+=+L
LD,AND,OR++L
LD,AND,OR++L
LD,AND,OR+=+L
LD,AND,OR++L
LD,AND,OR+=+L
输入比较指令
(带符号)
LD,AND,OR+=+S
LD,AND,OR++S
LD,AND,OR++S
LD,AND,OR+=+S
LD,AND,OR++S
LD,AND,OR+=+S
输入比较指令
(双字长,带符号)
LD,AND,OR+=+SL
LD,AND,OR++SL
LD,AND,OR++SL
LD,AND,OR+=+SL
LD,AND,OR++SL
LD,AND,OR+=+SL
时间比较指令
=DT
DT
DT
=DT
DT
=DT
比较CMP
双字比较CMPL
带符号二进制比较CPS
双字长带符号二进制比较CPSL
表格比较TCMP
无符号块比较BCMP
区域范围比较ZCP
双区域范围比较ZCPL
指令助记符
传送MOV
双字长传送MOVL
传送非MVN
传送位MOVB
数字传送MOVD
多位传送XFRB
块传送XFER
块置位BSET
数据交换XCHG
单字分配DIST
数据收集COLL
三菱plc编程指令是什么?
三菱FX2 PLC基本指令快速浏览
1. 触点取用与线圈输出指令 LD、LDI、OUT
2 .单个触点串联指令 AND、ANI
3. 单个触点并联指令 OR、ORI
4. 串联电路块的并联 OR
5. 并联电路块的串联 ANB
6. LDP、LDF、ANDP、ANDF、ORP、ORF(FX2n型有)
7 .多重输出电路 MPS、MRD、MPP
8 .主控及主控复位指令 MCMCR
9 .脉冲输出 PLS、PLF
10 .自保持与解除 SET、RST
11 .计数器、定时器线圈输出和复位指令 OUT、RST
12. 空操作指令 NOP
13 .程序结束指令 END
DSZR带dog搜索的原点回归,DVIT中断定位,TBL表格设定定位,ABS读出ABS当前值,ZRN原点回归,PLSV可变速脉冲输出,DRVI相对定位,DRVA绝对定位。
三菱plc编程指令
以下是三菱plc常用的指令,还有不懂的可以问我一 程序流程控制指令—FNC00~09
00 CJ 条件转移
01 CALL 子程序调用
02 SRET 子程序返回
03 IRET 中断返回
04 EI 开中断
05 DI 关中断
06 FEND 主程序结束
07 WDT 监控定时器刷新
08 FOR 循环开始
09 NEXT 循环结束
二 传送、比较指令—FNC10~19 BIN----二进制 BCD----十进制
10 CMP 比较
11 ZCP 区间比较
12 MOV 传送
13 SMOV BCD码移位传送
14 CML 取反传送
15 BMOV 数据块传送(n点→n点)
16 FMOV 多点传送(1点→n点)
17 XCH 数据交换,(D0)←→(D2)
18 BCD BCD变换,BIN→BCD
19 BIN BIN变换,BCD→BIN
三 算术、逻辑运算指令—FNC20~29 BIN----二进制 BCD----十进制
20 ADD BIN加法
21 SUB BIN减法
22 MUL BIN乘法
23 DIV BIN除法
24 INC BIN加一
25 DEC BIN减一
26 WAND 字与
27 WOR 字或
28 WXOR 字异或
29 NEG 求BIN补码
四 循环、移位指令—FNC30~39
30 ROR 循环右移
31 ROL 循环左移
32 RCR 带进位循环右移
33 RCL 带进位循环左移
34 SFTR 位右移
35 SFTL 位左移
36 WSFR 字右移
37 WSFL 字左移
38 SFWR FIFO写入
39 SFRD FIFO读出
五 数据处理指令—FNC40~49
40 ZRST 区间复位
41 DECO 解码
42 ENCO 编码
43 SUM 求置ON位总数
44 BON ON位判别
45 MEAN 求平均值
46 ANS 信号报警器标志置位
47 ANR 信号报警器标志复位
48 SQR BIN平方根
49 FLT BIN整数→BIN浮点数六 高速处理指令—FNC50~59
50 REF 输入输出刷新
51 REFF 输入滤波时间常数调整
52 MTR 矩阵输入
53 HSCS 高速记数器比较置位
54 HSCR 高速记数器比较复位
55 HSZ 高速记数器区间比较
56 SPD 速度检测
57 PLSY 脉冲输出
58 PWM 脉冲宽度调制
59 PLSR 带加减速功能的脉冲输出
七 方便指令—FNC60~69
60 IST 状态初始化
61 SER 数据搜索
62 ABSD 绝对值凸轮顺控
63 INCD 增量凸轮顺控
64 TTMR 示教定时器
65 STMR 专用定时器—可定义
66 ALT 交替输出
67 RAMP 斜坡输出
68 ROTC 旋转工作台控制
69 SORT 数据排序
八 外部I/O设备指令—FNC70~79
70 TKY 10键输入
71 HKY 16键输入
72 DSW 拨码开关输入
73 SEGD 七段译码
74 SEGL 带锁存的七段码显示
75 ARWS 方向开关
76 ASC ASCII码转换
77 PR 打印输出
78 FROM 读特殊功能模块
79 TO 写特殊功能模块
九 外围设备指令—FNC80~89
80 RS RS-232C串行通讯
81 PRUN 并行运行
82 ASCI 十六进制→ASCII
83 HEX ASCII→十六进制
84 CCD 校验码
85 VRRD 电位器读入
86 VRSC 电位器设定
88 PID PID控制
十 F2外部模块指令—FNC90~99
90 MNET F-16N, Mini网
91 ANRD F2-6A, 模拟量输入
92 ANW* *2-6*, 模拟量输出
93 RMST F2-32RM, 启动RM
94 RMWR F2-32RM, 写RM
95 RMRD F2-32RM, 读RM
96 RMMN F2-32RM, 监控RM
97 BLK F2-30GM, 指定块
98 MCDE F2-30GM, 机器码十一 浮点数运算指令—FNC110~132
110 ECMP BIN浮点数比较
111 EZCP BIN浮点数区间比较
118 EBCD BIN浮点数→BCD浮点数
119 EBIN BCD浮点数→BIN浮点数
120 EADD BIN浮点数加法
121 ESUB BIN浮点数减法
122 EMUL BIN浮点数乘法
123 EDIV BIN浮点数除法
127 ESQR BIN浮点数开方
129 INT BIN浮点数→BIN整数
130 SIN BIN浮点数正弦函数(SIN)
131 COS BIN浮点数余弦函数(COS)
132 TAN BIN浮点数正切函数(TAN)
十二 交换指令—FNC147
147 SWAP 高低字节交换
十三 定位指令—FNC155~159
155 ABS 读当前绝对值位置
156 ZRN 返回原点
157 PLSY 变速脉冲输出
158 DRVI 增量式单速位置控制
159 DRVA 绝对式单速位置控制
十四 时钟运算指令—FNC160~169
160 TCMP 时钟数据比较
161 TZCP 时钟数据区间比较
162 TADD 时钟数据加法
163 TSUB 时钟数据减法
166 TRD 时钟数据读出
167 TWR 时钟数据写入
169 HOUR 小时定时器
十五 变换指令—FNC170~177
170 GRY 二进制数→格雷码
171 GBIN 格雷码→二进制数
176 RD3A 读FXon-3A模拟量模块
177 WR3A 写FXon-3A模拟量模块
十六 触点比较指令—FNC224~246
224 LD= (S1)=(S2)时运算开始之触点接通
225 LD (S1)(S2)时运算开始之触点接通
226 LD (S1)(S2)时运算开始之触点接通
228 LD (S1)≠(S2)时运算开始之触点接通
229 LD≤ (S1)≤(S2)时运算开始之触点接通
230 LD≥ (S1)≥(S2)时运算开始之触点接通
232 AND= (S1)=(S2)时串联触点接通
233 AND (S1)(S2)时串联触点接通
234 AND (S1)(S2)时串联触点接通
236 AND (S1)≠(S2)时串联触点接通
237 AND≤ (S1)≤(S2)时串联触点接通
238 AND≥ (S1)≥(S2)时串联触点接通
240 OR= (S1)=(S2)时并联触点接通
241 OR (S1)(S2)时并联触点接通
242 OR (S1)(S2)时并联触点接通
244 OR (S1)≠(S2)时并联触点接通
245 OR≤ (S1)≤(S2)时并联触点接通
246 OR≥ (S1)≥(S2)时并联触点接通
PLC编程 (指令语句)
PLC的用户程序是设计人员根据控制系统的工艺控制要求,通过PLC编程语言的编制设计的。根据国际电工委员会制定的工业控制编程语言标准(IEC1131-3)。PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。
1、梯形图语言(LD)
梯形图语言是PLC程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。
梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。
梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。
2、指令表语言(IL)
指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。图3就是与图2PLC梯形图对应的指令表。
指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。其特点与梯形图语言基本一致。
3、功能模块图语言(FBD)
功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。图4是对应图1交流异步电动机直接启动的功能模块图编程语言的表达方式。
功能模块图编程语言的特点:功能模块图程序设计语言的特点是:以功能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握的编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。
4、 顺序功能流程图语言(SFC)
顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步的按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形图逻辑。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间。用于系统的规模校大,程序关系较复杂的场合。顺序功能流程图编程语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。
5、结构化文本语言(ST)
结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。它是类似于高级语言的一种编程语言。在大中型的PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系。主要用于其他编程语言较难实现的用户程序编制。
结构化文本编程语言采用计算机的描述方式来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。大多数PLC制造商采用的结构化文本编程语言与BASIC语言、PASCAL语言或C语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。
结构化文本编程语言的特点:采用高级语言进行编程,可以完成较复杂的控制运算;需要有一定的计算机高级语言的知识和编程技巧,对工程设计人员要求较高。直观性和操作性较差。
不同型号的PLC编程软件对以上五种编程语言的支持种类是不同的,早期的PLC仅仅支持梯形图编程语言和指令表编程语言。目前的PLC对梯形图(LD)、指令表(STL)、功能模块图(FBD)编程语言都以支持。比如,SIMATIC STEP7 MicroWIN V3.2。
在PLC控制系统设计中,要求设计人员不但对PLC的硬件性能了解外,也要了解PLC对编程语言支持的种类。
西门子plc编程的指令都有什么
西门子plc编程指令全集在这里
1 位逻辑指令
1.1 -||- 常开接点(地址)
1.2 -|/|- 常闭接点(地址)
1.3 XOR 位异或
1.4 -|NOT|- 信号流反向
1.5 -( ) 输出线圈
1.6 -(#)- 中间输出
1.7 -(R) 线圈复位
1.8 -(S) 线圈置位
1.9 RS 复位置位触发器
1.10 RS 置位复位触发器
1.11 -(N)- RLO下降沿检测
1.12 -(P)- PLO上升沿检测
1.13 -(SAVE) 将RLO存入BR存储器
1.14 MEG 地址下降沿检测
1.15 POS 地址上升沿检测
2 比较指令
2.1 CMP?I 整数比较
2.2 CMP?D 双整数比较
2.3 CMP?R 实数比较
3 转换指令
3.1 BCD_IBCD码转换为整数
3.2 I_BCD 整数转换为BCD码
3.3 I_DINT 整数转换为双整数
3.4 BCD_DIBCD码转换为双整数
3.5 DI_BCD 双整数转换为BCD码
3.6 DI_REAL 双整数转换为浮点数
3.7 INV_I 整数的二进制反码
3.8 INV_DI 双整数的二进制反码
3.9 NEG_I 整数的二进制补码
3.10 NEG_DI 双整数的二进制补码
3.11 NEG_R 浮点数求反
3.12 ROUND 舍入为双整数
3.13 TRUNC 舍去小数取整为双整数
3.14 CEIL 上取整
3.15 FLOOR 下取整
4 计数器指令
4.1 S_CUD 加减计数
4.2 S_CU 加计数器
4.3 S_CD 减计数器
4.4 -(SC) 计数器置初值
4.5 -(CU) 加计数器线圈
4.6 -(CD) 减计数器线圈
5 数据块指令
5.1 -(OPN) 打开数据块DB或DI
6 逻辑控制指令
6.1 -(JMP) 无条件跳转
6.2 -(JMP) 条件跳转
6.3 -(JMPN) 若非则跳转
6.4 LABEL 标号
7 整数算术运算指令
7.1 ADD_I 整数加法
7.2 SUB_I 整数减法
7.3 MUL_I 整数乘法
7.4 DIV_I 整数除法
7.5 ADD_DI 双整数加法
7.6 SUB_DI 双整数减法
7.7 MUL_DI 双整数乘法
7.8 DIV_DI 双整数除法
7.9 MOD_DI 回送余数的双整数
8 浮点算术运算指令
8.1 基础指令
8.1.1 ADD_R 实数加法
8.1.2 SUB_R 实数减法
8.1.3 MUL_R 实数乘法
8.1.4 DIV_R 实数除法
8.1.5 ABS 浮点数绝对值运算
8.2 扩展指令
8.2.1 SQR 浮点数平方
8.2.2 SQRT 浮点数平方根
8.2.3 EXP 浮点数指数运算
8.2.4 LN 浮点数自然对数运算
8.2.5 SIN 浮点数正弦运算
8.4.6 COS 浮点数余弦运算
8.2.7 TAN 浮点数正切运算
8.2.8 ASIN 浮点数反正弦运算
8.2.9 ACOS 浮点数反余弦运算
8.2.10ATAN 浮点数反正切运算
9 赋值指令
9.1 MOVE 赋值
10 程序控制指令
10.1 -(Call) 从线圈调用FC/SFC(无参数)
10.2 CALL_FB 从方块调用FB
10.3 CALL_FC 从方块调用FC
10.4 CALL_SFB 从方块调用SFB
10.5 CALL_SFC 从方块调用SFC
10.6 -(MCR)
10.7 -(MCR) 主控继电器断开
10.8 -(MCRA) 主控继电器启动
10.9 -(MCRD) 主控继电器停止
10.10 -(RET) 返回
11 移位和循环指令
11.1 移位指令
11.1.1 SHR_I 整数右移
11.1.2 SHR_DI 双整数右移
11.1.3 SHL_W 字左移
11.1.4 SHR_W 字右移
11.1.5 SHL_DW 双字左移
11.1.6 SHR_DW 双字右移
11.2 循环指令
11.2.1 ROL_DW 双字左循环
11.2.2 ROR_DW 双字右循环
12 状态位指令
12.1 OV -||- 溢出异常位
12.2 OS -||- 存储溢出异常位
12.3 UO -||- 无序异常位
12.4 BR -||- 异常位二进制结果
12.5 ==0-||- 结果位等于'0'
12.6 0-||- 结果位不等于'0'
12.7 0-||- 结果位大于'0'
12.8 0-||-
12.9 =0-||- 结果位大于等于'0'
12.10 =0-||-
13 定时器指令
13.1 S_PULSE 脉冲S5定时器
13.2 S_PEXT 扩展脉冲S5定时器
13.3 S_ODT 接通延时S5定时器
13.4 S_ODTS 保持型接通延时S5定时器
13.5 S_OFFDT 断电延时S5定时器
13.6 -(SP) 脉冲定时器线圈
13.7 -(SE) 扩展脉冲定时器线圈
13.8 -(SD) 接通延时定时器线圈
13.9 -(SS) 保持型接通延时定时器线圈
13.10 -(SF) 断开延时定时器线圈
14 字逻辑指令
14.1 WAND_W 字和字相'与'
14.2 WOR_W 字和字相'或'
14.3 WAND_DW 双字和双字相'与'
14.4 WOR_DW 双字和双字相'或'
14.5 WXOR_W 字和字相'异或'
14.6 WXOR_DW 双字和双字相'异或