课程中心
HOME
课程中心
正文内容
plc编程变量类型 探讨PLC变量的数据类型及数值范围
发布时间 : 2025-04-20
作者 : 小编
访问数量 : 23
扫码分享至微信

探讨PLC变量的数据类型及数值范围

PLC是工业控制不可缺少的自动化核心设备,要想学好PLC就必须要先了解数据类型。数据类型是所有自动化软件的编程基础,只有熟练掌握,才能随心所欲的驾驭。下面我们就以西门子S7-200为例,详细讲述这些常用的数据类型。

siemens PLC

1、基本数据类型

基本数据类型由以下几种:

1.1、位(bit) 

定义为BOOL(布尔型),只有两个值:0 或 1。如:I0.0,Q0.1,M0.0,V0.1 等。

1.2、字节(Byte)

定义一个字节(Byte)等于8 位(Bit),其中0位为最低位,7 位为最高位。

如:IB0(包括 I0.0~I0.7 位),QB0(包括Q0.0~Q0.7 位),MB0,VB0 等。

用十六进制表示的范围为:00~FF,用十进制表示的范围为 0~255。

字节

1.3、字(Word) 

定义相邻的两字节(Byte)组成一个字(Word),表示一个无符号整数,所以一个字为16位。

如:IW0 由 IB0 和 IB1 组成的,其中I是输入映象寄存器,W表示字,0是字的起始字节。特别注意的是:起始字节必须是偶数。

字的范围为十六进制的 0000~FFFF,十进制的 0~65536。

在编程时,如果已经使用 IW0,如果想再用 IB0或 IB1,就要特别慎重,避免重复定义。

1.4、双字(Double Word)

相邻的两个字(Word)组成一个双字,来表示一个无符号数。因此,双字为 32 位。

如:MD100 是由 MW100 和 MW102 组成的,其中M是位存储区,D表示双字,100是双字的起始字节。特别注意的是:双字的起始字节也必须是偶数。

双字的范围为十六进制的 0000~FFFFFFFF(即十进制的 0~4294967295)。

在编程时如果已经使用了MD100,如果再用 MW100或MW102,就要特别慎重,避免重复定义。

双字

特别注意:以上的字节、字和双字数据类型均为无符号数,即只有正数,没有负数。

1.5、16位整数(INT,Integer)

整数为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-32768~32767。

正整数

1.6、32 位整数(DINT,Double Integer)

32 位整数和16位整数一样,为有符号数,最高位为符号位,1表示负数,0表示正数。范围为-2147483648~2147483647。

负整数

1.7、浮点数(R,Real)

浮点数为 32 位,可以用来表示小数。浮点数可以为:1.m×2e。

单精度浮点数

2、复合数据类型

用户通过复合基本数据类型而生成就是复合数据类型。

复合数据类型包括以下几种:

2.1、数组(ARRAY)

将一组同一类型的数据组合在一起组成一个单位就是数组。

2.2、结构(STRUCT)

将一组同不同类型的数据组合在一起组成一个单位就是结构。

2.3、字符串(STRING)

字符串是由最多 254 个字符组成的一维数组。

2.4、日期和时间(DATE-AND-TIME)

用于存储年、月、日、时、分、秒、毫秒和星期的数据。占用 8 个字节,BCD 编码。

星期天代码为1,星期一~星期六代码分别是 2~7。

如:DT#2004_07_15_12:30:15.200 为 2004 年 7 月 15 日 12 时 30 分 15.2 秒。

2.5、用户定义的数据类型(UDT,User-Defined Data Type)

由用户将基本数据类型和复合数据类型组合在一起形成的数据类型。

可以在数据块DB和变量声明表中定义复合数据类型。

3、数据类型汇总表格

4、举例说明

对于有符号的整数来说,最高位用作符号位,余下的位才是数值部分。

下面以有符号整数INT来举例说明其数值范围为什么是-32768-32767?

最高位是符号位,0为"+"、1为"- ,去掉一个符号位后,余下的数据只有15位。

15位二进制1对应的整数最大正整数为2^15-1=32767,最大值为+32767,对应二进制:0111 1111 1111 1111。即十进制范围:0~32767;

15位二进制1对应的整数最大负整数为-2^15=-32768,最大值为-32768,对应二进制:1111 1111 1111 1111。即十进制范围:-32768~-1;

西门子PLC

其实,数据类型简单也复杂,尤其是自定义数据类型。看得懂,并不代表你能在编程过程中能正确使用。只有自己动手编程,对不同的数据类型进行定义和使用,才能有深入地理解和掌握。当你对数据类型充分理解后,就可以学习数据的寻址。坚持不懈的学习和实际编程,才会有可能成为变成专家。

西门子PLC变量的分类与使用范围

西门子PLC变量的分类有哪些?西门子plc可以使用的“程序变量”包括程序参数、局部变量(又称临时变量Temp)、静态变量(Stat)3种基本类型。

(1)程序参数

S7的程序参数用于传递逻辑块之间的数据。当采用调用式结构时,应通过参数定义执行被调用的逻辑块所需要的数据:也可以通过参数将被调用的逻辑块的执行结果返回给调用的块。

在S7中,从参数的用途与功能上,程序参数可以分为输入参数(IN)、输出参数(OUT)、输入/输出参数(IN OUT)3种;从参数的性质上可以分为形式参数(Format Parameter)与实际参数( Actual Parameter)2种。

①输入参数(IN):它是逻辑块执行所需要的基本输入参数,在逻辑块中只能进行“读”操作,必须由调用它的其他逻辑块予以赋值。

例如,在图11-2.1中,信号A、B在逻辑块中为“触点”信号,它必须由调用它的块将其定义为IO.1、I0.2或Il.l、I1.2等具体而明确的输入地址(可以是绝对地址或符号地址,参见图11-2.2)。

②输出参数(OUT):它是逻辑块执行结果存储所需要的基本输出参数,在逻辑块中只能进行“写”操作,必须由调用它的其他逻辑块定义地址,执行结果可以用于其他逻辑块。

例如,在图11-2.2中的信号C在逻辑块中为输出“线圈”信号,同样必须由调用它的逻辑块将其定义为QO.1或Ql.l等具体而明确的输出地址(可以是绝对地址或符号地址,参见图11-2.2)。

③输入/输出参数(IN- OUT):它是逻辑块执行所需要的基本输入/输出参数,在逻辑块中可以进行“读/写”操作,在逻辑块中一方面要求有“初始值”输入(初始值可以在变量表中设定),另一方面又可以进行结果输出。因此,必须由调用它的其他逻辑块或变量表给定“初始值”;但在逻辑块的执行过程中将改变参数值,改变后的输入/输出参数同样可以用于其他逻辑块。

例如,在图11-2.2中的D在逻辑块中需要进行加“1”运算,它必须由调用它的块给定初始值( MW10),运算结果同时又保存在MW10中(参见图11-2.2)。

④形式参数与实际参数:在使用了变量后,功能块中所使用的信号与数据只能以“符号”的形式出现,如图11-2.2中的A、B、C、D等,这些“符号”称为形式参数(Format Parameter)。而在调用块中对“符号”所赋予的实际地址或实际数值,如图11-2.2中的IO.1、I0.2、QO.1、MW10等称为实际参数(Actual Parameter)。

(2)局部变量

S7中的局部变量又称为“临时变量(Temporary)”,它用于存储逻辑块内部中间状态暂存的寄存器(堆栈L),堆栈的状态仅在所在的逻辑块内部生效,不可以用于其他逻辑块。

(3)静态变量

静态变量( Static)只能用于功能块FB,它存储在与功能块配套的即时数据块DI中,仅对所调用的FB块有效,结果可以记忆,但只能与FB配套使用,不能用于其他逻辑块。

(4)变量的使用范围

程序变量在逻辑块中的使用有规定的范围,具体如下:

组织块OB:只能使用临时变量(Temp);

程序块FC:可以使用临时变量(Temp)与程序参数输入(IN)、输出(OUT)与输入/输出(IN_OUT):

功能块FB:可以使用全部变量。

相关问答

plc变量的数据类型讲解?

1.位(bit):最小的数据单位,在编程时通常用于表示开关状态或二进制数值。位变量只有两种取值,即0和1。2.字节(byte):8个二进制位组成的数据单元,可以...1...

plc变量怎么理解?

PLC(可编程逻辑控制器)变量是指在PLC编程中用于存储和处理数据的符号。它们类似于其他编程语言中的变量,可以存储不同类型的数据,例如数字、布尔值、字符串等...

如何理解PLC编程中变量的概念,变量的由来和意义,以及如何使用?

如何理解PLC编程中变量的概念,变量的由来和意义,以及如何使用。首先PLC中的变量指的是内置的输入输出继电器、辅助继电器、状态、计数器、数据寄存器等各种软...

PLC的各种变量怎样使用?

1、变量分局部变量和全局变量2、局部变量只能在所在子程序中使用,全局变量可以在此工程任何程序中使用,且可以直接与上位机通讯。3、如果在局部变量和全局变...

omronnjplc怎么定义变量?

在OmronNJPLC中,可以通过以下步骤来定义变量。首先,在程序编辑器中选择要定义变量的程序块。然后,使用VAR或VAR_GLOBAL指令来定义变量。在变量定义指令中...

1200plc的变量和hmi变量?

plc变量大概包括这些:I,O,M,数据块变量等。HMI变量大概包括这些:HMI内部变量,HMI和PLC相关联的变量。HMI内部变量仅供HMI内部使用,不与PLC发生关系。HMI...

西门子PLC变量是什么意思,能不能用通俗的语言解释什么是变量,它有什么作用,设置后在PLC有什么动作?

建议你去看一下这个问题的问答《如何理解PLC编程中变量的概念,变量的由来和意义,以及如何使用?》--这个问题和你的问题差不多,应该对你有帮助!建议你去看一下...

plc变量和mcgs有什么区别?

MCGS变量,隶属于MCGS数据库,其可以为内部变量,也可以为外部变量,无论是什么类型变量,都将计数在点数范畴。而plc变量,隶属于PLC中,因为引入了IEC61131-3...M...

plc如何生成一个变量?

PLC通过声明变量的数据类型,并分配一个内存地址来生成一个变量。1.首先,PLC需要知道变量所使用的数据类型,例如:整数,浮点数,布尔值等。同时,PLC中支持多...

intouch与西门子300plc的变量如何对应?

intouch与西门子300plc的变量可以通过OPC(OLEforProcessControl)进行对应。intouch是一种人机界面软件,用于监控和控制工业过程。而西门子300plc是一种可...

 第27集团军  醒来薛之谦 
王经理: 180-0000-0000(微信同号)
10086@qq.com
北京海淀区西三旗街道国际大厦08A座
©2025  上海羊羽卓进出口贸易有限公司  版权所有.All Rights Reserved.  |  程序由Z-BlogPHP强力驱动
网站首页
电话咨询
微信号

QQ

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

热线

188-0000-0000
专属服务热线

微信

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