新闻资讯
你的位置:首页 > 新闻资讯

西门子S7-1200 数据块的使用

* 来源: * 作者: admin * 发表时间: 2024-10-24 17:31:49 * 浏览: 99

S7-1200 数据块的使用

硬件环境:

S7-1200 CPU V4.4(6ES7 214-1AG40-0XB0)

软件环境:

(1)Windows 10 Enterprise 64位

(2)STEP7 Professional V16

步骤

 

1. 创建DB块: 在项目中添加了S7-1200设备之后,在项目树中此PLC的"程序块"下即可以添加新的数据块。


在打开的"添加新块"窗口下选择数据块。 以下是对此窗口下各项配置的说明:

名称:此处可以键入DB块的符号名。如果不做更改,那么将保留系统分配的默认符号名。例如此处为DB块分配的符号名为“数据块_1”;

类型:此处可以通过下拉菜单选择所要创建的数据块类型-全局数据块、背景数据块,或是基于UDT以及SDT的全局数据块(参见链接UDT、SDT)。如果要创建背景数据块,下拉菜单中列出了此项目中已有的FB供用户选择。

语言:对于创建数据块,此处不可更改。

编号:默认配置为“自动”,即系统自动为所生成的数据块配分块号。当然也可以选择“手动”,则“编号”处的下拉菜单变为高亮状态,以便用户自行分配DB块编号。

 

当以上的数据块属性全部定义完成,点击“确定”按钮即创建完成一个数据块。用户可以在项目树中看到刚刚创建的数据块

 

2. 为数据块定义变量:双击打开数据块即可逐行添加变量


如果取消勾选数据块的属性对话框中的“优化的块访问”的复选框,则在数据块中可以看到“偏移量”列,并且系统在编译之后在该列生成每个变量的地址偏移量。设置成优化访问的数据块则无此列。

 

默认情况下会有一些变量属性列未被显示出来,可以通过右键单击任意列标题,可在出现的菜单中选择显示被隐藏的列

 

定义变量的数据类型:可以为变量定义基本数据类型,复杂数据类型(时间与日期,字符串,结构体,数组等),PLC数据类型(如用户自定义数据类型),系统数据类型和硬件数据类型。可以直接键入数据类型标识符(例如:使用高速计数器功能时,调用指令CTRL_HSC_EXT指令,其中CTRL引脚填写的数据类型为“HSC_Count”,需要手动直接输入。),或者通过该列中的选择按钮选择。

 

DB块数据的保持性:对于可优化访问的数据块,其中的每个变量可以分别设置其保持与否;而标准数据块仅可设置其中所有的变量保持或不保持,不能对每个变量单独设置。

 

在程序中添加DB块中的变量,可以采用拖拽的方式,鼠标左键单击DB块,在“详细视图”中显示DB块中的所有变量,选中相应的变量(例如:变量D),按住鼠标左键,将变量D直接拖动到MOVE指令的OUT1引脚即可


3. 数据块的访问:

符号访问:.<变量名>;例如:"Data_Block_1".A;

绝对地址访问:.<变量长度及偏移量>:DB1.DBX0.0;DB1.DBB0;DB1.DBW0;DB1.DBD0。

注意:复杂数据类型只能符号寻址。

4. 数据块的属性:

(1)双击打开数据块,可以看到起始值列,点击“全部监视”按钮,可以看到监视值列:

起始值:在启动时变量采用的值。创建数据块时,代码块中中定义的默认值将用作起始值。之后,即可使用实例特定的起始值替换所用的默认值。可选择是否指定起始值。如果未指定任何值,

则在启动时变量将采用默认值。如果也没有定义默认值,将使用相应数据类型的有效默认值。例如,将 BOOL 的默认值指定为"FALSE"。当CPU下载程序时,下载的是数据块的起始值。

监视值:CPU 中的当前数据值。只有当在线连接可用并单击"全部监视"按钮时,此列才会出现。当CPU上传程序时,上传的是数据块的监视值。当执行下载并复位PLC程序时,下载的是数据块的起始值,

并将监视值复制为起始值。

(2)右键点击数据块,在"属性->属性"中,可以看到数据块的如下属性,如图10所示:

仅存储在装载内存中:激活时,数据块仅存储在装载存储器中,不占用工作存储器的空间,且不链接到程序。处理数据块的指令位于"扩展指令 -> 数据块控制“中。

在设备中写保护数据块:指示数据块在目标系统中是否为只读,且在程序运行期间是否无法将其覆盖。

优化的块访问:在带有优化访问功能的块变量声明中,仅包含数据元素的符号名称。系统将自动优化并管理地址。这将提高 CPU 的性能并同时有效防止来自诸如 SIMATIC HMI 的访问错误。

数据块从OPC UA可访问:如果选中该复选框,则该数据块可作为完整的对象从 OPC UA 进行访问。之后,可为 OPC UA 分别发布或锁定该数据块的各个变量。

 

数据块可通过 Web 服务器访问:如果选中该复选框,则数据块可作为一个完整的对象从 Web 服务器进行访问。之后,可对该数据块的各变量进行分别发布或锁定。


郑鼎PLC编程,郑鼎侯PLC编程培训,PLC编程,PLC编程培训,自动化编程,小白学PLC编程,零基础学PLC编程