西门子PLC指令
- 格式:docx
- 大小:23.44 KB
- 文档页数:5
西门子PLC编程指令1、位逻辑指令(1)-||-常开接点(地址)(2)-|/|-常闭接点(地址)(3)XOR位异或(4)-|NOT|-信号流反向(5)-()输出线圈(6)-(#)-中间输出(7)-(R)线圈复位(8)-(S)线圈置位(9)RS复位置位触发器(10)RS置位复位触发器(11)-(N)-RLO下降沿检测(12)-(P)-PLO上升沿检测(13)-(SAVE)将RLO存入BR存储器(14)MEG地址下降沿检测(15)POS地址上升沿检测2、比较指令(1)CMP?I整数比较(2)CMP?D双整数比较(3)CMP?R实数比较3、转换指令(1)BCD_IBCD码转换为整数(2)I_BCD整数转换为BCD码(3)I_DINT整数转换为双整数(4)BCD_DIBCD码转换为双整数(5)DI_BCD双整数转换为BCD码(6)DI_REAL双整数转换为浮点数(7)INV_I整数的二进制反码(8)INV_DI双整数的二进制反码(9)NEG_I整数的二进制补码(10)NEG_DI双整数的二进制补码(11)NEG_R浮点数求反(12)ROUND舍入为双整数(13)TRUNC舍去小数取整为双整数(14)CEIL上取整(15)FLOOR下取整4、计数器指令(1)S_CUD加减计数(2)S_CU加计数器(3)S_CD减计数器(4)-(SC)计数器置初值(5)-(CU)加计数器线圈(6)-(CD)减计数器线圈5、数据块指令(1)-(OPN)打开数据块:DB或DI6、逻辑控制指令(1)-(JMP)无条件跳转(2)-(JMP)条件跳转(3)-(JMPN)若非则跳转(4)LABEL标号7、整数算术运算指令(1)ADD_I整数加法(2)SUB_I整数减法(3)MUL_I整数乘法(4)DIV_I整数除法(5)ADD_DI双整数加法(6)SUB_DI双整数减法(7)MUL_DI双整数乘法(8)DIV_DI双整数除法(9)MOD_DI回送余数的双整数8、浮点算术运算指令(1)基础指令①ADD_R实数加法②SUB_R实数减法③MUL_R实数乘法④DIV_R实数除法⑤ABS浮点数绝对值运算(2)扩展指令①SQR浮点数平方②SQRT浮点数平方根③EXP浮点数指数运算④LN浮点数自然对数运算⑤SIN浮点数正弦运算⑥COS浮点数余弦运算⑦TAN浮点数正切运算⑧ASIN浮点数反正弦运算⑨ACOS浮点数反余弦运算⑩ATAN浮点数反正切运算9、赋值指令(1)MOVE赋值10、程序控制指令(1)-(Call)从线圈调用FC/SFC(无参数) (2)CALL_FB从方块调用FB(3)CALL_FC从方块调用FC(4)CALL_SFB从方块调用SFB(5)CALL_SFC从方块调用SFC(6)-(MCR<)主控继电器接通(7)-(MCR>)主控继电器断开(8)-(MCRA)主控继电器启动(9)-(MCRD)主控继电器停止(10)-(RET)返回11、移位和循环指令(1)移位指令①SHR_I整数右移②SHR_DI双整数右移③SHL_W字左移④SHR_W字右移⑤SHL_DW双字左移⑥SHR_DW双字右移(2)循环指令①ROL_DW双字左循环②ROR_DW双字右循环12、状态位指令(1)OV-||-溢出异常位(2)OS-||-存储溢出异常位(3)UO-||-无序异常位(4)BR-||-异常位二进制结果(5)==0-||-结果位等于"0"(6)<>0-||-结果位不等于"0" (7)>0-||-结果位大于"0"(8)<0-||-结果位小于"0"(9)>=0-||-结果位大于等于"0" (10)<=0-||-结果位小于等于"0"13、定时器指令(1)S_PULSE脉冲S5定时器(2)S_PEXT扩展脉冲S5定时器(3)S_ODT接通延时S5定时器(4)S_ODTS保持型接通延时S5定时器(5)S_OFFDT断电延时S5定时器(6)-(SP)脉冲定时器线圈(7)-(SE)扩展脉冲定时器线圈(8)-(SD)接通延时定时器线圈(9)-(SS)保持型接通延时定时器线圈(10)-(SF)断开延时定时器线圈14、字逻辑指令(1)WAND_W字和字相"与"(2)WOR_W字和字相"或"(3)WAND_DW双字和双字相"与" (4)WOR_DW双字和双字相"或" (5)WXOR_W字和字相"异或" (6)WXOR_DW双字和双字相"异或“。
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.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或DI6 逻辑控制指令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 从方块调用FB10.3 CALL_FC 从方块调用FC10.4 CALL_SFB 从方块调用SFB10.5 CALL_SFC 从方块调用SFC10.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-||- 结果位小于"0"12.9 >=0-||- 结果位大于等于"0"12.10 <=0-||- 结果位小于等于"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 双字和双字相"异或。
SM特殊功能寄存器SM0.0PLC运行时一直为1,是常ON继电器。
SM0.1PLC首次扫描为1,一个扫描周期。
一般用于初始化程序。
SM0.2若保持数据丢失,改为为1,一个扫描周期。
SM0.3进入RUN方式,闭合一个扫描周期SM0.4周期为1分钟,占空比为0.5的时钟脉冲,ON30SOFF30SSM0.5周期为1秒,占空比为0.5的时钟脉冲SM0.6扫描时钟脉冲,本次扫描置1,下次扫描置0,一直循环执行。
可作为扫描计数器。
SM0.7指示CPU工作方式开关的位置,0为Term位置。
1为Run位置。
若满意请及时采纳最佳答案。
SM0.0:该位始终为1。
1.如果你用SM0.0的常开触点,它始终是接通的;2.如果你用SM0.0的常闭触点,它始终都是断开的,就是说使用SM0.0的常闭触点没有意义。
SM0.1:该位在第一个扫描周期保持为1,之后为0。
此位常开常闭都可以用,但常开和常闭在时序上逻辑相反,要视乎你的需要,一般把SM0.1的常开用在初始化上。
常开和常闭是两种相反的逻辑,不能互相代替的。
m 是中间继电器就是相当于外部硬件中的中间继电器,放到程序中你就把它当作是一个虚拟的点,编程时需要用到中间过渡的点.,不能直接驱动输出。
西门子EM232CN模块端子上标有M0,V0,I0,M1,V1,I1,这就是模拟量输出的接线端子,如果你要的输出是电压信号,就接M0,V0,和M1,V1,电流信号就接M0,I0,和M1,I1。
M为公共端,V表示电压,I表示电流,后面的0,1表示通道号。
模拟量输入,EM231CN中EM指的是功能扩展模块;2指的是200系列(300就是3,400就是4,1200就是12);3指的是模拟量(2是数字量模块;3是模拟量模块;4是网络通讯模块;5是位控模块等等)1指的是输入(在模拟量中1是输入、2是输出、5是输入加输出;数字量中1是输入、2是输出、3是输入加输出);CN指的是中国产,不带CN的是指美国或者德国产的。
西门⼦PLC基本指令表及各指令解释最受欢迎的⼯控微信平台:技术分享、学习交流、⼯控视频西门⼦PLC基本指令表如下图所⽰名称助记符⽬标元件说明取指令LD I、Q、M、SM、T、C、V、S、L常开接点逻辑运算起始取反指令LDN I、Q、M、SM、T、C、V、S、L常闭接点逻辑运算起始线圈驱动指令=Q、M、SM、T、C、V、S、L驱动线圈的输出与指令A I、Q、M、SM、T、C、V、S、L单个常开接点的串联与⾮指令AN I、Q、M、SM、T、C、V、S、L单个常闭接点的串联或指令O I、Q、M、SM、T、C、V、S、L单个常开接点的并联或⾮指令ON I、Q、M、SM、T、C、V、S、L单个常闭接点的并联置位指令S I、Q、M、SM、T、C、V、S、L使动作保持复位指令R I、Q、M、SM、T、C、V、S、L使保持复位正跳变ED I、Q、M、SM、T、C、V、S、L输⼊信号上升沿产⽣脉冲输出负跳变EU I、Q、M、SM、T、C、V、S、L输⼊信号下降沿产⽣脉冲输出空操作指令NOP⽆使步序作空操作⼀、标准触点LD、A、O、LDN、AN、ONLD,取指令。
表⽰⼀个与输⼊母线相连的常开接点指令,即常开接点逻辑运算起始。
LDN,取反指令。
表⽰⼀个与输⼊母线相连的常闭接点指令,即常闭接点逻辑运算起始。
A,与指令。
⽤于单个常开接点的串联。
AN,与⾮指令。
⽤于单个常闭接点的串联。
O,或指令。
⽤于单个常开接点的并联。
ON,或⾮指令。
⽤于单个常闭接点的并联。
⼆、正、负跳变ED、EUED,在检测到⼀个正跳变(从OFF到ON)之后,让能流接通⼀个扫描周期。
EU,在检测到⼀个负跳变(从ON到OFF)之后,让能流接通⼀个扫描周期。
三、输出==,在执⾏输出指令时,映像寄存器中的指定参数位被接通。
四、置位与复位指令S、RS,执⾏置位(置1)指令时,从bit或OUT指定的地址参数开始的N个点都被置位。
R,执⾏复位(置0)指令时,从bit或OUT指定的地址参数开始的N个点都被复位。
指令(英文全称意思) :指令含义
1 、LD( Load 装载) :动合触点
2、LDN ( Load Not 不装载) : 动断触点
3、A ( And 和动合) : 用于动合触点串联
4、AN ( And Not 和动断) :用于动断触点串联
5、O ( Or 或动合) :用于动合触点并联
6、ON ( Or Not 或动断) : 用于动断触点并联
7、= ( Out 输出) :用于线圈输出
8、OLD ( Or Lode): 块或
9、ALD ( And Lode): 块和
10、LPS ( Logic Push ) :逻辑入栈
11、LRD ( Logic Read ) :逻辑读栈
12、LPP ( Logic Pop ) :逻辑出栈
13、NOT ( not 并非) :非
14、NOP ( No Operation Performed ) : 无操作
15、AENO ( And ENO ) :指令盒输出端ENO相和
16、S ( Set 放置) : 置1
17、R ( Reset 重置,清零) :清零
18、P ( Positive) :上升沿
19、N ( Negative) :下降沿
20、TON ( On_Delay Timer ) :接通延时定时器
21、TONR ( Retentive On_Delay Timer ) : 有记忆接通延时定时器
22、TOF ( Off_ Delay Timer ) :断开延时定时器
23、CTU ( Count Up ) : 增计数器
24、CTD ( Count Down ) : 减计数器
25、CTDU ( Count Up/ Count Down ) :增减计数器
26、ADD ( add 加) : 加注意
//ADD_I (_ I 表示整数)
ADD_DI( DI表示双字节整数)
ADD-R (R 表示实数)
它们都是加运算只是数的大小不同。
27、SUB ( Subtract 减去,减少) :减
28、MUL ( Multiply ) : 乘
29、DIV ( Divide ) : 除
30、SQRT ( Square root ) : 求平方根
31、LN ( Napierian Logarithm 自然对数) : 求自然对数
32、EXP ( Exponential 指数的) :求指数
33、INC_B ( Increment 增加) :增1
//其中_B代表数据类型还有W(字节)、DW双字后面几个都是这样的。
34、DEC_B ( Decrement 减少) :减1
35、WAND_B ( Word and 和命令) :逻辑和
36、WOR_B ( Word or 或命令) : 逻辑或
37、WXOR_B ( Word exclusive or 异或命令) :逻辑异或
38、INV_B ( Inverse 相反) : 取反
39、MOV _B ( Move 移动) :数据传送
40、BLKMOV_B ( Block Move 块移动) :数据块传送
41、SWAP ( Swap 交换) :字节交换
42、FILL ( Fill 填充) :字填充
43、ROL_B ( Rotate Left 循环向左) :循环左移位
44、ROR_B ( Rotate Right 循环向右) : 循环右移位
45、SHL_B ( Shift Right 移动向左) :左移动
46、SHR_B ( Shift Right 移动向右) :右移动
47、SHRB ( Shift buffer 移动缓存) :寄存器移位
48、STOP ( Stop 停止) :暂停
49、END /MEND ( End /Mend ) : 条件/无条件结束
50、WDR ( Watch dog reset ) :看门狗复位
51、JMP ( Jump 跳) :跳转
52、LBL ( Label 位置) :跳转标号
53、FOR ( For 循环) :循环
54、NEXT ( Next 再下去) :循环结束
55、SBR ( Subprogram Regulating子程序控制) : 子程序调用
56、SBR_T ( Subprogram Regulating Take ) : 带参数子程序调用
57、SCR ( Sequence Control 顺序控制) : 步开始
58、SCRT ( Sequence Control Transfer 顺序控制转移) : 步转移
59、SCRE ( Sequence Control End 顺序控制结束) : 步结束
60、AD_T_TBL ( Add data to table 添加数据到表格中) :填数据表
61、FIFO ( First in First out 先进先出) :先进先出
62、LIFO ( Last in First out 后进先出) :后进先出
63、TBL_FIND ( Table Find 表格查找) :表查找
64、BCD_I ( Binary Coded Decimal _I 二进制编码的十进制) :BCD 码转整数
65、I_BCD ( I_ Binary Coded DecimaL ) :整数转BCD码
66、B_I ( Bit to int ) :字节转整数
67、I_B ( int to bit ) :整数转字节
68、DI_I ( Double int to int ) :双整数转整数
69、I_DI ( int to double int ) :整数转双整数
70、ROUND ( Round 取整) : 实数转双整数
71、TRUNC ( Trunc 截取) :转换32位实数整数部分(舍去小数取整)
72、DI_I (double int to int ) :双整数转实数
73、ENCO ( Encode 编码) :编码
74、DECO ( Decode 译码) :译码
75、SEG ( Segment decoder分断译码器) : 七段显示译码器
76、ATH ( ASCII码turn hex ) : ASCII码转16进制
77、HTA ( Hexadecimal to ascii) : 16进制转ASCII码
78、ITA ( // int to ascii) : 整数转ASCII码
79、DTA ( // double int to ascii ) : 双整转ASCII码
80、RTA ( // real to ascii) : 实数转ASCII码
81、ATCH (//attach ) : 中断连接
82、DTCH ( Depatch ) : 中断分离
83、HDEF ( High speed counter definition ) : 高速计数器定义
84、HSC ( High Speed Counter 高速计数器) :启动高速计数器
85、PLS ( Pulse 脉冲) :脉冲输出
86、READ_ RTC ( Read real time clock 读实时时钟) :读实时时钟
87、SET_RTC ( Set real time clock ) : 写实时时钟
88、XMT ( Transmitter ) : 自由发送
89、RCV ( Receive 接收) : 自由接收
90、NETR ( Net read 网络读) : 网络读
91、NETW ( Net write 网络写) : 网络写
92、GET_ADDR ( Get address 获取地址) : 获取口地址
93、SET_ADDR ( Set address 设置地址) : 设定口地址
94、PID ( Proportional Integral Differential 比例、积分、微分) :比例积分微分调节器。