理论分析
存储方式对比
S7-1200

- 由于较大的标签位于块的开头,因此不会数据间不会有间隙
- 每个变量可以单独设置是否保持
- 优化的块不支持绝对值寻址
S7-1500

- 由于较大的标签位于块的开头,因此不会数据间不会有间隙
- ==由于处理器优化的存储,访问速度更快(S7-1500的处理器读取或写入这些标签只使用一句机器指令)==
- ==为了更快的访问,处理器将Bool存储为Byte.==
- 在DB里增加减少变量的时候,优化的块可以直接下载而不需要初始化(需要配置存储区)
- 每个变量可以单独设置是否保持
- 优化的块不支持绝对值寻址

1. 结构化的数据是单独存储的,可以整体拷贝
2. 保持的数据单独存储,可以整体拷贝

- ==因为处理器架构的改变,新的S7-1500控制器是以"小端"顺序读取的,而非优化的块是以"大端"存储的,因此S7-1500需要额外的处理==
- ==非优化块最大64KB,优化块最大16MB.==
访问速度
- 非保持的变量,临时的变量,FC的基本变量接口.
- 访问优化块,保持的变量
- 访问非优化块
- 在运行时需要计算的索引的索引访问(例如Motor [i])
- 需要在运行时进行检查的访问,如
- 访问在运行时创建或已打开的DB (例如OPN DB [i])
- 间接内存访问
- 访问在运行时创建或已打开的DB (例如OPN DB [i])
- 在优化和非优化块之间复制结构(除了字节数组Array of Bytes)
总结及注意 事项
总结
- 访问速度上,优化块是快于非优化块的
- 在块容量上,优化块远大于非优化块
- 优化块可以设置每个变量是否可保持
- 在DB里增加变量的时候,优化的块可以直接下载而不需要初始化
注意事项
尽量避免在优化和非优化之间复制数据。
- 源格式和目标格式之间所需的数据转换需要很长的处理时间
- 当结构化的数据作为输入/输出参数(InOut)传输到被调用块时,它们 默认情况下是以引用方式传递的.但是,如果其中一个块具有“优化”属性,另一个块是"非优化",则情况并非如此 。在这种情况下,所有 参数通常作为副本传输,==可能会造成PLC清除上位机下载的数据.==
实测
对扫描周期和存储空间的影响
以唯品会五期分区一为例,测试优化非优化对扫描周期大小和占用存储空间的影响

背景DB等DB块为非优化时,扫描周期为9.68左右,空闲存储区比例分别为092,0.45,0.96,0.91

背景DB等DB块为非优化时,扫描周期为3.47左右,空闲存储区比例分别为092,0.46,0.93,0.90
由此可见,将DB块由非优化转为优化可以显著减少扫描周期,但对存储空间影响较小.
###


Comments | NOTHING