SIMATIC S7-1500数据块介绍其应用(1)

电子说

1.3w人已加入

描述

数据块( DB )介绍

(1) 数据块 (DB) 简介

数据块用于存储用户数据及程序中间变量。新建数据块时,默认状态是优化的存储方式,且数据块中存储的变量是非保持的。数据块占用****CPU 的装载存储区和工作存储区,与标识存储器的功能类似,都是全局变量,不同的是, M数据区的大小在CPU 技术规范中已经定义,且不可扩展,而数据块存储区由用户定义,最大不能超过工作存储区或装载存储区。 SIMATICS7-1500 PLC****的非优化数据最大数据空间为 64KB 。而优化的数据块的存储空间要大得多,但其存储空间与CPU的类型有关。

按照功能分,数据块****DB 可以分为:全局数据块、背景数据块和基于数据类型 ( 用户定义数据类型、系统数据类型和数组类型 ) 的数据块。

(2) 全局数据块 **(DB)**及其应用

全局数据块用于存储程序数据,因此,数据块包含用户程序使用的变量数据。一个程序中可以创建多个数据块。全局数据块必须创建后才可以在程序中使用。

以下用一个例题来说明数据块的应用。

【例 1 】用数据块实现电动机的启停控制。

【解】①新建一个项目,本例为“块应用”,如图1所示:

SIMATIC

图****1

在项目视图的项目树中,选中并单击“新添加的设备” ( 本例为 PLC_1) →“程序块”→“添加新块”,弹出界面“添加新块”。

如图2****所示:

SIMATIC

图****2

在“添加新块”界面中,选中“添加新块”的类型为 DB ,输入数据块的名称,再单击“确定”按钮,即可添加一个新的数据块,但此数据块中没有数据。

③****打开“数据块 1 ”,如图3所示:

SIMATIC

图****3

在“数据块 1 ”中,新建一个变量 A ,如是非优化访问数据块,其地址实际就是 DB1.DBX0.0 

**④在“程序编辑器”中,输入如图4 **所示的程序,此程序能实现启停控制,保存程序。

SIMATIC

图****4

数据块创建后,在全局数据块的属性中可以切换有的方式。在项目视图的项目树中,选中并单击数据块 1 ”,单击鼠标右键,在弹出的快捷菜单中,单击“属性”选项,弹出如图5所示的界面,选中“属性”,如果取消“优化的块访问”则切换到“非优化存储方式”这种存储方式与S7-300/400兼容。

SIMATIC

图****5

如楚”非优化存储方式”,可以使用绝对为式说回该数据块 (  ** DB1.DBX0.0)** ,如是“优化存储方式”则只能采用符号方式访问该数据块 ( 如”数据块 1  .A) 

(3) 数组DB及其应用

数组DB是一种特殊类型的全局数据块,它包含一个任意数据类型的数组。其数据类型可以为基本数据类型,也可以是PLC数据类型的数组。创建数组DB时,需要输入数组的数据类型和数组上限,创建完数组DB后,可以修改其数组上限,但不能修改数据类型。数组DB始终启用“优化块访问”属性,不能进行标准访问,并且为非保持型属性,不能修改为保持属性。

数组DBSIMATIC S7-1500 PLC中较为常用,以下的例子是用数据块创建数组。

【例 2 】用数据块创建一个数组****ary[0. .5],数组中包含6个整数,并编写程序把模拟量通道IW752:P采集的数据保存到数组的第3****个整数中。

【解】  新建项目“块应用 ( 数组 ) ”,进行硬件组态,并创建共享数组块 DB1 ,如图****6 所示,双击“ DB1 ”打开数据块“ DB1 ”。

SIMATIC

图****6

DB1****中创建数组。数组名称 ary ,数组为****Array[0. .5],表示数组中有6 个元素, Int表示数组的数据为整数,如图7****所示,保存创建的数组。

SIMATIC

图****7

③****在 Main[OB1] 中编写梯形图程序,如图8所示。

SIMATIC

图****8





审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分