(转载)一张表搞清楚西门子S7系列标准DB块与优化DB块
在TIA Portal中为S7-1200/S7-1500 CPU 添加一个 DB 块时,其缺省属性为优化的 DB ,优化的 DB 块与标准的 DB 块整体对比如下表所示:
|
项 |
标准 DB |
优化 DB |
|
数据管理 |
取决于变量的生明。用户可以生成用户定义或一个内存优化的数据结构。 |
数据被系统管理和优化。用户可以生成用户定义的数据结构,系统进行优化以节省内存的空间。 |
|
存储方式 |
每个变量的存储地址在 DB 块中每个变量的偏移地址可见 |
每个变量的存储地址由 CPU 自动分配,无偏移地址。 |
|
访问方式 |
可通过符号地址、绝对地址以及指针方式寻址 |
仅可通过符号地址访问 |
|
下载无需初始化功能 |
不支持 |
支持(仅 S7-1500) |
|
访问速度 |
慢 |
快 |
|
数据保持性 |
以整个 DB 块为单位设置保持性 |
DB 块内的每个变量均可单独设置保持性 |
|
兼容性 |
与 S7-300/400 PLC 兼容 |
与 S7-300/400 PLC 不兼容 |
|
出错几率 |
绝对地址访问 (例如 HMI 或间接寻址 ),声明修改后可能导致数据的不一致。 |
缺省为符号访问,不会造成数据的不一致,例如 HMI 只与符号名称对应。 |
S7-300/S7-400 与 S7-1200 以及 S7-1500 DB参数的对比如下表所示:
|
项 |
S7-300/S7-400 |
S7-1200 |
S7-1500 |
|
DB 的最大容量 |
64 KB |
64 KB |
标准 DB 64KB,优化 DB 最大 16 M。 |
|
DB 的最大块号 |
16000 |
65535 |
|
|
DB 块类型 |
标准 DB |
优化 DB、标准 DB(取决于DB块的属性) |
可通过修改 DB 块的属性将 DB 块修改为标准 DB 块或优化的 DB 块,如下图所示:

如 DB 块属性为标准 DB 块,该 DB 块内变量的偏移地址(offset)被编译后会出现,标准 DB 块与优化的 DB 块对比如下图所示:

S7-1200CPU中,标准 DB 块与优化的 DB 块在 PLC 中按照下图方式存储。

S7-1500CPU中,标准 DB 块与优化的 DB 块在 PLC 中按照下图方式存储。

在 S7-1500 CPU 中,相比于标准的 DB 块,优化的 DB 块提供更快的访问速度,其根本原因与 CPU 的编码方式有关,如下图所示:

与标准的 DB 块相比,优化的 DB 块有以下优势:
提供更快的访问速度
以符号寻址,编程者无需考虑 DB 块中每个变量存储的具体地址,每个变量在 CPU 中存储的位置由 PLC 的系统自动进行分配;
CPU 与 HMI (如 Panel)连接时,由于优化的 DB是靠符号寻址,所以当 PLC 变量连接到 HMI 后,PLC 侧对变量做的修改,HMI 无需重新下载;
对 DB 块内的任意位置对变量进行添加及删除,或对变量的类型进行修改(如将Tag_1的属性由 byte 修改为Word),不会引起该 DB 块其它变量的使用;
S7-1200/S7-1500中如有以下应用,必须使用标准 DB 块:
与其它 CPU 建立 S7 单边通信时(PUT/GET),用于存储发送区数据和接收区数据的 DB 块;与 Wincc V7.2 进行 HMI 连接时,Wincc V7.2 访问的 S7-1200/S7-1500 CPU 的 DB 块只能是标准的 DB 块;使用Simatic Net V8.2 与S7-1200/S7-1500 PLC进行 OPC 连接时,OPC 服务器访问 S7-1200/S7-1500 CPU 的 DB 块只能是标准的 DB 块。
--- THE END ---
---------------------
作者:工控网
来源:搜狐
原文:https://www.sohu.com/a/215331959_754529
(转载)一张表搞清楚西门子S7系列标准DB块与优化DB块的更多相关文章
- 西门子S7系列PLC的主要种类及应用软件
德国西门子(SIEMENS)公司生产的可编程序控制器在我国的应用也相当广泛,在冶金.化工.印刷生产线等领域都有应用.西门子(SIEMENS)公司的PLC产品包括LOGO,S7-200,S7-300,S ...
- 西门子S7系列以太网通讯处理器功能介绍
北京华科远创科技有限研发的远创智控型号ETH-YC模块适用于西门子S7-200/S7-300/S7-400.SMART S7-200.西门子数控840D.840DSL.合信.亿维PLC的PPI/MPI ...
- 一张表搞懂各种 Docker 监控方案 - 每天5分钟玩转 Docker 容器技术(86)
前面我们已经介绍了ps/top/stats.Sysdig.Weave Scope.cAdvisor 和 Prometheus 多种容器监控工具和方案,是时候做一个比较了.下面将从五个方面来对比它们之间 ...
- 一张表搞清楚php is_null、empty、isset的区别
isset 判断变量是否已存在 empty 判断变量是否为空或为0 is_null 判断变量是否为NULL 变量 empty is_null isset $a="" true fa ...
- 一张表搞清楚 php 的 is_null、empty、isset的区别
isset 判断变量是否已存在 empty 判断变量是否为空或为0 is_null 判断变量是否为NULL 变量 empty is_null isset $a=”” true false true $ ...
- 086、一张表搞定各种Docker监控方案(2019-05-08 周三)
参考https://www.cnblogs.com/CloudMan6/p/7736176.html 前面已经学习了 ps/top/stats.Sysdig.Weave Scope .cAdvi ...
- 西门子S7系列以太网通讯处理器安装调式操作
北京华科远创科技有限研发的远创智控ETH-YC模块,PLC转以太网型号有MPI-ETH-YC01和MPI-ETH-YC01,适用于西门子S7-200/S7-300/S7-400.SMART S7-20 ...
- 开源纯C#工控网关+组态软件(三)加入一个新驱动:西门子S7
一. 引子 首先感谢博客园:第一篇文章.第一个开源项目,算是旗开得胜.可以看到,项目大部分流量来自于博客园,码农乐园,名不虚传^^. 园友给了我很多支持,并提出了很好的改进意见.现加入屏幕分辨率自 ...
- OrmLite动态创建表,一个实体类创建多张表的的偏招
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/LonelyRoamer/article/details/26299355 在做一个Android的项 ...
随机推荐
- sitecore系列教程之目标功能有什么新意?
由于SItecore 8中有很多令人兴奋的东西,我选择专注于体验平台的特定领域,这篇文章的主题是目标. 1.客户智能选项 目标项目(/ sitecore / system / Marketing C ...
- RobotFrameWork(一)robotfamework(python版)及Ride在windows安装
1.windows下的安装 (1)准备条件: python-2.7.3.msi robotframework-2.7.5.win32.exe wxPython2.8-win32-unicode-2.8 ...
- Groovy常用编程知识点简明教程
概述 Groovy 是一门基于JVM的动态类型语言,可以与 Java 平台几乎无缝融合(与Java代码一样编译成字节码). 使用 Groovy ,可以增强 Java 应用的灵活性和可扩展性,提升开发效 ...
- 设计模式之Singleton(单态)(转)
定义: Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在. 在很多操作中,比如建立目录 数据库连接都需要这样的单线程操作. 还有, singleton能够被状 ...
- Subversion1.8源码安装流程
为了解决svnamin:Unrecognized record type in stream的问题,决定将Subversion1.7升级为Subversion1.8 Subversion1.8的源码安 ...
- [转载] mysql 索引中的USING BTREE 的意义
索引是在存储引擎中实现的,因此每种存储引擎的索引都不一定完全相同,并且每种存储引擎也不一定支持所有索引类型. 根据存储引擎定义每个表的最大索引数和最大索引长度.所有存储引擎支持每个表至少16个索引,总 ...
- jquery操作节点
var v= $("input[type='checkbox'][name='ids']:checked").closest('tr').find('td:eq(2)').map( ...
- shell 冒号
: ${TEST_LOOP:='1'} 如果不在前面加上:(冒号)命令,那么就会把${TEST_LOOP:='1'}本身当做一个命令来执行,报错是肯定的. [root@node56 ~]# : abc ...
- ES6知识整理(9)--class的基本语法
(总结完知识点,出去滑板刷街) promise的catch 上一节promise中漏了一个知识点: promise对象可以使用catch来避免每个then中都加error判断,让错误时都进到catch ...
- The logback manual #03# Configuration
索引 Configuration in logback Automatically configuring logback Automatic configuration with logback-t ...