课程中心
HOME
课程中心
正文内容
PLc编程转换表 了解PLC编程语言,分享精心整理的西门子PLC指令表
发布时间 : 2024-11-24
作者 : 小编
访问数量 : 23
扫码分享至微信

了解PLC编程语言,分享精心整理的西门子PLC指令表

一、西门子PLC编程语言

PLC的编程语言包括以下五种:梯形图语言(LD)、指令表语言(IL)、功能模块图语言(FBD)、顺序功能流程图语言(SFC)及结构化文本语言(ST)。不同型号的PLC编程软件对以上五种编程语言的支持种类是不同的,早期的PLC仅仅支持梯形图编程语言和指令表编程语言。目前的PLC对梯形图(LD)、指令表(STL)、功能模块图(FBD)编程语言都以支持。比如,SIMATIC STEP7 MicroWIN V3.2。

(1)梯形图

在西门子PLC实际编程使用情况中中,梯形图语言是PLC程序设计中最常用的编程语言。它是与继电器线路类似的一种编程语言。由于电气设计人员对继电器控制较为熟悉,因此,梯形图编程语言得到了广泛的欢迎和应用。

梯形图编程语言的特点是:与电气操作原理图相对应,具有直观性和对应性;与原有继电器控制相一致,电气设计人员易于掌握。梯形图编程语言与原有的继电器控制的不同点是,梯形图中的能流不是实际意义的电流,内部的继电器也不是实际存在的继电器,应用时,需要与原有继电器控制的概念区别对待。

(2)指令表

松下PLC编程

指令表编程语言是与汇编语言类似的一种助记符编程语言,和汇编语言一样由操作码和操作数组成。在无计算机的情况下,适合采用PLC手持编程器对用户程序进行编制。同时,指令表编程语言与梯形图编程语言图一一对应,在PLC编程软件下可以相互转换。

指令表表编程语言的特点是:采用助记符来表示操作功能,具有容易记忆,便于掌握;在手持编程器的键盘上采用助记符表示,便于操作,可在无计算机的场合进行编程设计;与梯形图有一一对应关系。其特点与梯形图语言基本一致。

(3)功能模块图语言(FBD)

功能模块图语言是与数字逻辑电路类似的一种PLC编程语言。采用功能模块图的形式来表示模块所具有的功能,不同的功能模块有不同的功能。

功能模块图编程语言的特点:功能模块图程序设计语言的特点是:以功能模块为单位,分析理解控制方案简单容易;功能模块是用图形的形式表达功能,直观性强,对于具有数字逻辑电路基础的设计人员很容易掌握的编程;对规模大、控制逻辑关系复杂的控制系统,由于功能模块图能够清楚表达功能关系,使编程调试时间大大减少。

(4) 顺序功能流程图语言(SFC)

顺序功能流程图语言是为了满足顺序逻辑控制而设计的编程语言。编程时将顺序流程动作的过程分成步和转换条件,根据转移条件对控制系统的功能流程顺序进行分配,一步一步的按照顺序动作。每一步代表一个控制功能任务,用方框表示。在方框内含有用于完成相应控制功能任务的梯形图逻辑。这种编程语言使程序结构清晰,易于阅读及维护,大大减轻编程的工作量,缩短编程和调试时间。用于系统的规模校大,程序关系较复杂的场合。

顺序功能流程图编程语言的特点:以功能为主线,按照功能流程的顺序分配,条理清楚,便于对用户程序理解;避免梯形图或其他语言不能顺序动作的缺陷,同时也避免了用梯形图语言对顺序动作编程时,由于机械互锁造成用户程序结构复杂、难以理解的缺陷;用户程序扫描时间也大大缩短。

(5)结构化文本语言(ST)

结构化文本语言是用结构化的描述文本来描述程序的一种编程语言。它是类似于高级语言的一种编程语言。在大中型的PLC系统中,常采用结构化文本来描述控制系统中各个变量的关系。主要用于其他编程语言较难实现的用户程序编制。

结构化文本编程语言采用计算机的描述方式来描述系统中各种变量之间的各种运算关系,完成所需的功能或操作。大多数PLC制造商采用的结构化文本编程语言与BASIC语言、PASCAL语言或C语言等高级语言相类似,但为了应用方便,在语句的表达方法及语句的种类等方面都进行了简化。

结构化文本编程语言的特点:采用高级语言进行编程,可以完成较复杂的控制运算;需要有一定的计算机高级语言的知识和编程技巧,对工程设计人员要求较高。直观性和操作性较差。

在PLC控制系统设计中,要求设计人员不但对PLC的硬件性能了解外,也要了解PLC对编程语言支持的种类。

二、西门子PLC指令表功能汇总

指令( 英文全称意思 ) :指令含义

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 比例、积分、微分 ) :比例积分微分调节器。

如有不妥,欢迎指正!

PLC常用数制及转换方法,让你轻松掌握PLC编程

一、什么是进位计数制

数制也称计数制,是指用一组固定的符号和统一的规则来表示数值的方法。按进位的原

则进行计数的方法,称为进位计数制。比如,在十进位计数制中,是按照“逢十进一”的原则进

行计数的。

常用进位计数制:

1 、十进制(Decimalnotation) ,有10个基数:0~~9,逢十进一;

2 、二进制(Binarynotation) ,有2个基数:0~~1,逢二进一;

3 、八进制(Octalnotation) ,有8个基数:0~~7,逢八进一;

4 、十六进制数(Hexdecimalnotation) ,有16个基数:0~~9,A,B,C,D,E,F

(A=10,B=11,C=12,D=13,E=14,F=15),逢十六进一。

二、进位计数制的基数与位权

"基数"和"位权"是进位计数制的两个要素。

1 、基数:

所谓基数,就是进位计数制的每位数上可能有的数码的个数。例如,十进制数每位上的数码,

有"0"、"1"、"3",…,"9"十个数码,所以基数为10。

2 、位权:

所谓位权,是指一个数值的每一位上的数字的权值的大小。例如十进制数4567从低位到高

位的位权分别为100、101、102、103。因为:

4567=4x103+5x102+6x101+7x100

3 、数的位权表示:

任何一种数制的数都可以表示成按位权展开的多项式之和。

比如:十进制数的435.05可表示为:

435.05=4x102+3x101+5x100+0x10-1+5x10-2

位权表示法的特点是:每一项=某位上的数字X基数的若干幂次;而幂次的大小由该数字所

在的位置决定。

三、二进制数

计算机中为何采用二进制:二进制运算简单、电路简单可靠、逻辑性强。

1 、定义:

按“逢二进一”的原则进行计数,称为二进制数,即每位上计满2时向高位进一。

2 、特点:

每个数的数位上只能是0,1两个数字;二进制数中最大数字是1,最小数字是0;基数为

2;

比如:10011010与00101011是两个二进制数。

3 、二进制数的位权表示:

(1101.101)2=1x23+1x22+0x21+1x20+1x2-1+0x2-2+1x2-3

4 、二进制数的运算规则:

加法运算

①0+0=0③1+1=10

②0+1=1+0=1

乘法运算

①0×0=0③1×1=1

②0×1=1×0=0

四、八进制数

1 、定义:

按“逢八进一”的原则进行计数,称为八进制数,即每位上计满8时向高位进一。

2 、特点:

每个数的数位上只能是0、1、2、3、4、5、6、7八个数字;八进制数中最大数字是7,最

小数字是0;基数为8;

比如:(1347)8与(62435)8是两个八进制数。

3 、八进制数的位权表示:

(107.13)8=1x82+0x81+7x80+1x8-1+3x8-2

五、十六进制数

1 、定义:

按“逢十六进一”的原则进行计数,称为十六进制数,即每位上计满16时向高位进一。

2 、特点:

每个数的数位上只能是0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F十六个数码;

十六进制数中最大数字是F,即15,最小数字是0;基数为16;

比如:(109)16与(2FDE)16是两个十六进制数。

3 、十六进制数的位权表示:

(109.13)16=1x162+0x161+9x160+1x16-1+3x16-2

(2FDE)16=2x163+15x162+13x161+14x160

六、常用计数制间的对应关系

二进制数、八进制数、十六进制数及十进制数是现代数字系统中常用的四种数制,这几种进

位制计数制之间的对应关系如表1所列。

表1常用计数制数的表示方法

七、数制间的转换

1 、十进制数转换成非十进制数

1 )十进制整数转换成非十进制整数

①为什么要进行数制间的转换?

将数由一种数制转换成另一种数制称为数制间的转换。

因为日常生活中经常使用的是十进制数,而在计算机中采用的是二进制数。所以在使用计算

机时就必须把输入的十进制数换算成计算机所能够接受的二进制数。计算机在运行结束后,

再把二进制数换算成人们所习惯的十进制数输出。这两个换算过程完全由计算机自动完成。

②转换方法

十进制整数化为非十进制整数采用“余数法”,即除基数取余数。

把十进制整数逐次用任意十制数的基数去除,一直到商是0为止,然后将所得到的余数由

下而上排列即可。

②十进制小数转换成非十进制小数转换方法

十进制小数转换成非十进制小数采用“进位法”,即乘基数取整数。

把十进制小数不断的用其它进制的基数去乘,直到小数的当前值等于0或满足所要求的精度

为止,最后所得到的积的整数部分由上而下排列即为所求。

2 、非十进制数转换成十进制数

非十进制数转换成十制数采用“位权法”,即把各非十进制数按位权展开,然后求和。

3 、二、八、十进制数之间转换

(1)二进制数与八进制数之间的转换转换方法

①把二进制数转换为八进制数时,按“三位并一位”的方法进行。

以小数点为界,将整数部分从右向左每三位一组,最高位不足三位时,添0补足三位;小数

部分从左向右,每三位一组,最低有效位不足三位时,添0补足三位。然后,将各组的三位

二进制数按权展开后相加,得到一位八进制数。

②将八进制数转换成二进数时,采用“一位拆三位”的方法进行。

即把八进制数每位上的数用相应的三位二进制数表示。

③二进制数与十六进制数之间的转换转换方法

a、把二进制数转换为十六进制数时,按“四位并一位”的方法进行。

以小数点为界,将整数部分从右向左每四位一组,最高位不足四位时,添0补足四位;小数

部分从左向右,每四位一组最低有效位不足四位时,添0补足四位。然后,将各组的四位二

进制数按权展开后相加,得到一位十六进制数。

b、将十六进制数转换成二进数时,采用“一位拆四位”的方法进行。

即把十六进制数每位上的数用相应的四位二进制数表示。

相关问答

plc脉冲转换毫米程序怎么写?

以下是一个简单的示例,用于将PLC接收到的脉冲数转换为毫米,假设每个脉冲代表一定的距离(例如1个脉冲对应0.1毫米):梯形图复制LDSM0.0MO...以下是...

plc有两种编程方式分别为?

常用的方法有梯形图法、波形图法及流程法。梯形图法是基本方法,无论是经验法还是解析法,若将PLC程序转化成梯形图后,就要用到梯形图法。波形图法适合于时间控...

西门子200plc转换300的怎么弄?

梯形图和语句表的转化在PLC编程软件工具栏查看里选择切换。西门子S7-200的PLC对语句表编写的格式要求多,因为200的语句表和梯形图可任意切换,如果语句表格...

PLC编程中的进制数该如何表示?相互之间又是如何转换的?

PLC也是一台微电脑,许多功能指令离不开进制转换,同时也是为了增加程序的可读性,想要对PLC进行编程,那么必须得清楚数制的设置以及转化和对应的符号。当然,...1...

施耐德modbus地址表换算方法?

1、将设备的16进制地址转换为10进制:0003H(16进制数,H没用,只是说明该数为16进制数)=0003。2、设备定义PLC----莫迪康---Mobus-rtu----串口。3、变量定义.....

三菱plc怎么用语句表编程?

回答如下:三菱PLC可以使用语句表编程,具体步骤如下:1.打开三菱PLC编程软件,创建一个新的程序。2.在程序中选择一个需要编写语句表的程序段,例如主程序段...

plc程序如何转换成pdf的格式?

PLC程序是一种二进制文件,无法直接转换成PDF格式。如果需要将PLC程序转换成PDF格式,可以通过以下步骤实现:打开PLC程序编辑软件,如SiemensSTEP7、Rockwell...

DEVELOPER(三菱PLC编程软件)梯形图与语句表之间是肿么转换...

你搞错了,三菱plc和别的不一样,它的定时器和计数器都是线圈指令而不是功能指令...你有没有基恩士的USB编程线的驱动啊?有用(0)回复支持一下有用(0)回复展...

plc二进制转十进制用什么指令?

pcl二/十进制转换指令包括BCD数转换成二进制数指令BIN(23)/@BIN(23)、BINL(58)/@BINL(58),以及二进制数转换成BCD数指令BCD(24)/@BC...

PLC1200数模转换范围?

PLC1200的数模转换范围取决于模拟量模块的输入信号类型和量程设置。一般来说,PLC1200的模拟量输入模块可以接受的信号类型包括电压信号(如0-10V、-10V-10V等)...

 卖时间  变色硅胶干燥剂 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2024  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

在线咨询真诚为您提供专业解答服务

热线

188-0000-0000
专属服务热线

微信

二维码扫一扫微信交流
顶部