12 西门子数据块中的数据存储详解
- 格式:ppt
- 大小:594.00 KB
- 文档页数:19
西门子数据类型概述:西门子数据类型是指在西门子编程中常用的数据类型,用于存储和处理不同类型的数据。
这些数据类型包括整数、浮点数、字符串和布尔值等。
本文将详细介绍西门子数据类型的特点、用途和示例。
一、整数类型西门子编程中常用的整数类型有以下几种:1. BYTE:用于表示一个字节范围内的整数,取值范围为0到255。
2. WORD:用于表示两个字节范围内的整数,取值范围为0到65535。
3. DWORD:用于表示四个字节范围内的整数,取值范围为0到4294967295。
4. SINT:用于表示有符号的8位整数,取值范围为-128到127。
5. INT:用于表示有符号的16位整数,取值范围为-32768到32767。
6. DINT:用于表示有符号的32位整数,取值范围为-2147483648到2147483647。
这些整数类型在西门子编程中广泛应用于计数、计时、存储数据等方面。
示例:在西门子编程中,使用INT类型定义一个变量count,用于计数。
代码示例如下:VARcount: INT;END_VAR二、浮点数类型西门子编程中常用的浮点数类型有以下几种:1. REAL:用于表示单精度浮点数,占用4个字节。
2. LREAL:用于表示双精度浮点数,占用8个字节。
这些浮点数类型在西门子编程中广泛应用于测量、运算、控制等方面。
示例:在西门子编程中,使用REAL类型定义一个变量temperature,用于存储温度值。
代码示例如下:VARtemperature: REAL;END_VAR三、字符串类型西门子编程中常用的字符串类型有以下几种:1. STRING:用于表示固定长度的字符串,长度需在声明时指定。
2. WSTRING:用于表示固定长度的宽字符字符串,长度需在声明时指定。
这些字符串类型在西门子编程中广泛应用于存储文本、显示信息等方面。
示例:在西门子编程中,使用STRING类型定义一个变量name,用于存储姓名。
(一)数字量输入和输出映象区1.输入映象寄存器(数字量输入映象区)(I)数字量输入映象区是S7-200CPU为输入端信号状态开辟的一个存储区。
输入映像寄存器的标识符为I,在每个扫描周期的开始,CPU对输入点进行采样,并将采样值存于输入映像寄存器中。
输入映像寄存器是PLC接收外部输入的开关量信号的窗口。
可以按位、字节、字、双字四种方式来存取。
(1)按“位”方式:从I0.0~I15.7,共有128点(2)按“字节”方式:从IB0~IB15,共有16个字节(3)按“字”方式:从IW0~IW14,共有8个字(4)按“双字”方式:从ID0~ID12,共有4个双字2.输出映像寄存器(Q)数字量输出映象区是S7-200CPU为输出端信号状态开辟的一个存储区。
输出映像寄存器的标识符为Q(从Q0.0~Q15.7,共有128点),在每个扫描周期的末尾,CPU将输出映像寄存器的数据传送给输出模块,再由后者驱动外部负载。
可以按位、字节、字、双字四种方式来存取。
(1)按“位”方式:从Q0.0~I15.7,共有128点(2)按“字节”方式:从QB0~QB15,共有16个字节(3)按“字”方式:从QW0~QW14,共有8个字(4)按“双字”方式:从QD0~QD12,共有4个双字说明:实际没有使用的输入端和输出端的映象区的存储单元可以作中间继电器用。
(二)模拟量输入映象区和输出映象区1.模拟量输入映象区(AI区)模拟量输入映象区是S7-200CPU为模拟量输入端信号开辟的一个存储区。
S7-200将测得的模拟量(如温度、压力)转换成1个字长(2个字节)的数字量,模拟量输入映像寄存器用标识符(AI)、数据长度(W)及字节的起始地址表示。
从AIW0~AIW30,共有16个字,总共允许有16路模拟量输入。
说明:模拟量输入值为只读数据。
2.模拟量输出映象区(AQ区)模拟量输出映象区是S7-200CPU为模拟量输出端信号开辟的一个存储区。
S7-1200的内部存储区和掉电数据保持S7-1200的内部存储区分为工作存储区、装载存储区和保持性存储区三种。
装载存储区:是非易失性存储区。
用于存储用户项目文件(用户程序、数据和组态)。
在不插存储卡时,用户使用STEP 7 Basic软件下载项目即是下载到装载存储区中。
项目中的符号名和注释也可以被下载到装载存储区中,极大地方便了用户的后期调试和维护。
注意:使用大容量的存储卡,也无法扩展装载存储区工作存储区:是易失性存储区。
CPU在执行用户程序时会将一些项目内容从装载存储区复制到工作存储区。
断电后工作存储区中的内容断电后丢失,且不能被扩展。
保持性存储区:用于在CPU断电时存储指定单元的过程数据,保证数据断电不丢失内部存储区的具体大小请参考下表:用户可以在“PLC tags”标签页中,点击“Retain”按钮来设定M存储区的保持范围,如下图所示:图1:保持M存储区2、FB功能块和SFB功能块的背景数据块FB的背景数据块可以设定为“禁用符号寻址或者绝对地址寻址,即在新建FB功能块时,是否勾选“Symbolic access only”图2:创建FBa. 对于使用符号寻址方式的FB背景数据块中的每个变量都可以单独指定断电保持特性。
打开FB,在上方的“Interface”窗口中,用户可以在“Retain”列中修改每个变量的保持特性,如下图所示:图3:修改符号寻址FB的背景数据保持特性如果多次调用经过上述设置的FB, 每次调用分配不同的背景数据块,则此FB的所有背景数据块都有相同数据保持特性。
b. 对于使用绝对寻址方式的FB只能整体地指定其背景数据块的保持特性,不能每个变量单独指定。
打开FB的一个背景数据块,用户可以在“Retain”列中修改每个变量的保持特性,如下图所示:图4:修改绝对寻址FB的背景数据保持特性如果多次调用经过上述设置的FB, 每次调用分配不同的背景数据块,用户可以分别指定每个背景数据块的保持特性。
西门子数据类型引言概述:西门子数据类型是指在西门子PLC(可编程逻辑控制器)编程中所使用的数据类型。
这些数据类型在工业自动化领域中起着重要的作用,能够描述和处理各种工业设备的信号和数据。
本文将详细介绍西门子数据类型的分类和特点,并分析其在工业控制系统中的应用。
一、基本数据类型1.1 位(BOOL)类型:位类型用于表示开关状态,只能取0或1两个值,通常用于逻辑判断和开关控制。
1.2 字节(BYTE)类型:字节类型用于存储8位二进制数据,可以表示0-255之间的整数值。
1.3 整数类型:整数类型包括有符号(SINT、INT、DINT)和无符号(USINT、UINT、UDINT)整数,用于存储不同范围的整数值。
二、浮点数类型2.1 单精度浮点数(REAL)类型:REAL类型用于表示带有小数的数值,精度为6位有效数字,适用于大部分工业自动化应用。
2.2 双精度浮点数(LREAL)类型:LREAL类型用于表示更高精度的浮点数,精度为15位有效数字,适用于对精度要求较高的应用场景。
2.3 定点数(FIXED)类型:定点数类型用于表示小数点固定的数值,可以指定小数点位置和整数部分位数,适用于需要精确控制小数位数的场景。
三、字符串类型3.1 字符串(STRING)类型:字符串类型用于存储文本数据,可以包含任意字符和长度,常用于存储设备状态、报警信息等。
3.2 字符串数组(STRING[n])类型:字符串数组类型可以存储多个字符串,每个字符串的长度可以不同,适用于存储多个相关的文本数据。
3.3 字符(CHAR)类型:字符类型用于存储单个字符,通常用于表示设备状态、报警等信息的标志。
四、特殊数据类型4.1 时间(TIME)类型:时间类型用于表示时间值,包括小时、分钟、秒和毫秒,常用于定时器和计时器的应用。
4.2 日期(DATE)类型:日期类型用于表示日期值,包括年、月、日,常用于记录和处理时间相关的数据。
4.3 时间日期(DATE_AND_TIME)类型:时间日期类型结合了时间和日期的信息,可以同时表示日期和时间,适用于需要同时记录时间和日期的场景。
西门子S7-1200数据块的使用硬件环境:S7-1200 CPU V2.0(6ES7214-1AE30-0XB0)软件环境:(1)Windows 7 Professional SP1 64位(2)STEP7 V11 SP2步骤1. 创建DB块:在项目中添加了S7-1200设备之后,在项目树中此PLC的"程序块"下即可以添加新的数据块。
图1 DB块的创建在打开的"添加新块"窗口下选择数据块。
以下是对此窗口下各项配置的说明:名称:此处可以键入DB块的符号名。
如果不做更改,那么将保留系统分配的默认符号名。
例如此处为DB块分配的符号名为“Data_block_2”;类型:此处可以通过下拉菜单选择所要创建的数据块类型-全局数据块或背景数据块。
如果要创建背景数据块,下拉菜单中列出了此项目中已有的FB供用户选择。
语言:对于创建数据块,此处不可更改。
编号:默认配置为“自动”,即系统自动为所生成的数据块配分块号。
当然也可以选择“手动”,则“编号”处的下来菜单变为高亮状态,以便用户自行分配DB块编号。
块访问:默认选项为“已优化”,当选择此项时,数据块中的变量仅有符号名,没有地址偏移量的信息,该数据块仅可进行符号寻址访问。
选择“已优化”创建数据块可优化CPU 对存储空间的分配及访问,提升CPU性能;用户也可以选择“标准-与S7-300/400兼容”,获得与S7-300/400数据块相同的特性,数据块中的变量有符号名和偏移量,可以进行符号访问和绝对地址访问。
注意:数据块的块访问属性只能在创建数据块时定义。
创建完成后无法修改数据块的访问。
(一)数字量输入和输出映象区1.输入映象寄存器(数字量输入映象区)(I)数字量输入映象区是S7-200CPU为输入端信号状态开辟的一个存储区。
输入映像寄存器的标识符为I,在每个扫描周期的开始,CPU对输入点进行采样,并将采样值存于输入映像寄存器中。
输入映像寄存器是PLC接收外部输入的开关量信号的窗口。
可以按位、字节、字、双字四种方式来存取。
(1)按“位”方式:从I0.0~I15.7,共有128点(2)按“字节”方式:从IB0~IB15,共有16个字节(3)按“字”方式:从IW0~IW14,共有8个字(4)按“双字”方式:从ID0~ID12,共有4个双字2.输出映像寄存器(Q)数字量输出映象区是S7-200CPU为输出端信号状态开辟的一个存储区。
输出映像寄存器的标识符为Q(从Q0.0~Q15.7,共有128点),在每个扫描周期的末尾,CPU将输出映像寄存器的数据传送给输出模块,再由后者驱动外部负载。
可以按位、字节、字、双字四种方式来存取。
(1)按“位”方式:从Q0.0~I15.7,共有128点(2)按“字节”方式:从QB0~QB15,共有16个字节(3)按“字”方式:从QW0~QW14,共有8个字(4)按“双字”方式:从QD0~QD12,共有4个双字说明:实际没有使用的输入端和输出端的映象区的存储单元可以作中间继电器用。
(二)模拟量输入映象区和输出映象区1.模拟量输入映象区(AI区)模拟量输入映象区是S7-200CPU为模拟量输入端信号开辟的一个存储区。
S7-200将测得的模拟量(如温度、压力)转换成1个字长(2个字节)的数字量,模拟量输入映像寄存器用标识符(AI)、数据长度(W)及字节的起始地址表示。
从AIW0~AIW30,共有16个字,总共允许有16路模拟量输入。
说明:模拟量输入值为只读数据。
2.模拟量输出映象区(AQ区)模拟量输出映象区是S7-200CPU为模拟量输出端信号开辟的一个存储区。
• 17•随着plc 技术的不断发展,Plc 现在不仅仅能够进行逻辑运算,同时还能够针对数据进行处理,对于一个中大型程序来讲,数据处理一定要做到非常完美,这样才能够保证程序本身的完善性。
而在针对plc 技术的不断研讨与发展过程中,更多的是将plc 设备本身的数据处理功能作为主要研发方向。
所以这就需要在进行研究的过程中,针对plc 设备本身的数据处理部分进行更深层次的研究与分析,对数据的存储形式进行理解。
对于现在众多的plc 设备来讲,西门子s7-1200设备是当前plc 设备当中数据存储技术较有特色的一种。
正是因为该型号的plc 设备具有较强的数据存储特征,所以在进行实际教学过程中,针对该设备进行学习时,该型号的设备学习具有较大难度。
例如在进行脉冲检测指令下达时,为什么需要增加一个存储位,同时在进行函数的数据保存时,为什么要将其保存在输入输出接口外的存储介质当中,以及plc 系统当中为什么要增加各种数据块。
这些问题都需要在实际教学中进行深入研究。
1 Plc设备的存储位在plc 设备进行逻辑指令的下达以及处理过程中,设备本身的触点指令中会存在多个操作数,这是西门子s7-1200plc 设备的特有特征。
所以针对这种逻辑指令处理过程中所出现的多操作数,如果不能够正确理解,那么在进行实际编程过程中,编程工作人员很可能会无所适从,难以下手,并且导致编程错误出现。
而在进行触点指令研究过程中,典型的质量包括扫描操作数的信号上升沿和信号下降沿指定,这两个指令本身都带有两个操作数。
对于该设备的批指令来讲,存在两个操作数,上方的操作数为OPERAND ,该操作数是一个BOOL 的操作数,所以触点指令进行扫描时的操作数就是该操作数,在进行指令执行过程中,要对信号上升沿指令在本周期下的状态进行读取。
而下方的操作数是INOUT 型的布尔量,其本身属于是一个存储位,所以能够进行读,同时也能够进行写,需要由PLC 系统写入上方操作数的上一个周期进行扫描时呈现状态,然后再进行该操作数的指令,执行时需要对状态进行实时读取。
西门子数据格式以及寻址,实例讲解清晰易懂,PLC编程必修课PLC在应用时需要处理各种各样的数据,因此为了应付这些数据,它的存储单元就需要有多种格式,今天带大家了解一下,西门子1200PLC 的数据格式.西门子S7-1200 CPU中可以按照位、字节、字和双字,对存储单元进行寻址。
二进制数的一位只有0或1两种不同的取值,可以用来表示数字量或称开关量的两种不同的状态,如触点的断开和接通线圈的通电和断电等。
八位二进制数组成一个字节,其中的第0位为最低位,第七位为最高位。
两个字节组成一个字,其中的第0位为最低位,第15位为最高位。
两个字组成一个双字,其中的第0位为最低位,第31位为最高位。
西门子S7-1200 CPU,不同的存储单元都是以字节为单位, 如图所示:对位数据的寻址由字节地址和位地址组成,如I3.2,其中的区域标识符I表示输入映像区,字节地址为3,位地址为2,这种存取方式称为字节位寻址方式。
对字节的寻址,如MB2,其中的区域标识符M表示为存储区,2表示寻址单元的起始字节地址,B表示寻址长度为一个字节,即寻址为存储区中的第二个字节。
对字的寻址,如MW2,其中的区域标识符M表示为存储区,2表示寻址单元的起始字节地址,W表示寻址长度为一个字,即两个字节,寻址为存储区中从第二个字节开始的一个字,即字节2和字节3。
请注意,两个字节组成一个字,遵循的是低地址、高字节的原则。
以MW2为例,MB2为MW2的高字节,MB3为MW2的低字节。
对双字的寻址,如MD0,其中的区域标识符M表示为存储区,0表示寻址单元的起始字节地址,D表示寻址长度为一个双字,即两个字四个字节,寻址为存储区中从第0个字节开始的一个双字,即字节0、字节1、字节2和字节3。
寻址方式详解分类:寻址方式从大的方面可以分成直接寻址和间接寻址。
直接寻址就像甲要和乙说话直接叫乙的名字就可以了,甲直接和乙建立联。
间接寻址就像甲要和乙说话,而乙在另外一个城市,甲就写了一封信通过邮递员送给乙,甲通过邮递员间接和乙建立联系,这就叫间接寻址。
西门子数据类型概述:西门子数据类型是指在西门子自动化系统中使用的各种数据类型,用于存储和处理不同类型的数据。
这些数据类型包括整数、浮点数、字符串等,每种数据类型都有其特定的格式和取值范围。
1. 整数类型:西门子数据类型中的整数类型包括有符号整数和无符号整数。
有符号整数用于表示正负整数,取值范围为-32768到32767;无符号整数用于表示非负整数,取值范围为0到65535。
整数类型可以用于表示设备的状态、计数器的值等。
2. 浮点数类型:西门子数据类型中的浮点数类型用于表示实数,包括单精度浮点数和双精度浮点数。
单精度浮点数占用4个字节,精度为6位有效数字,取值范围为-3.4E38到3.4E38;双精度浮点数占用8个字节,精度为15位有效数字,取值范围为-1.7E308到1.7E308。
浮点数类型可以用于表示温度、压力等实际物理量。
3. 字符串类型:西门子数据类型中的字符串类型用于表示字符序列,可以包含字母、数字、特殊字符等。
字符串类型可以用于表示设备的名称、报警信息等。
字符串类型的长度可以根据需求进行设置,最大长度为255个字符。
4. 时间类型:西门子数据类型中的时间类型用于表示日期和时间,包括年、月、日、时、分、秒等信息。
时间类型可以用于记录事件发生的时间、定时任务的执行时间等。
时间类型的格式可以根据需求进行设置,如YYYY-MM-DD HH:MM:SS。
5. 布尔类型:西门子数据类型中的布尔类型用于表示逻辑值,只有两个取值:真和假。
布尔类型可以用于表示开关状态、报警状态等。
布尔类型在内存中占用1个字节。
6. 数组类型:西门子数据类型中的数组类型用于存储多个相同类型的数据。
数组类型可以是整数数组、浮点数数组、字符串数组等。
数组类型可以用于存储传感器数据、历史记录等。
7. 结构体类型:西门子数据类型中的结构体类型用于组合多个不同类型的数据,形成一个新的数据类型。
结构体类型可以包含整数、浮点数、字符串等多种数据类型。