大家写PLC程序,尤其用到STL语言是不是一边写代码,一边放个巨大的PDF,100多页。用到那个翻页半天,罗里吧嗦。今天把西门子90几个STL语句表,全部整理发给大家。有语句注释,收藏备用吧。
指令( 英文全称意思 ) :指令含义
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、CTUD?( 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 比例、积分、微分 ) :比例积分微分调节器。