当前位置:首页 > 工业用地 >s71200优化块访问修改(plc优化块访问取消不了)

s71200优化块访问修改(plc优化块访问取消不了)

西门子S7-1200/1500系列PLC支持优化块访问(Optimized block access)。通常理解为数据块(DB)具有此功能。

事实上,除了数据块之外,组织块、功能块和函数也都有这个功能。

s71200优化块访问修改(plc优化块访问取消不了)

当您在Portal 环境中创建这四种类型的程序组织单元时,它们的属性默认选中“优化块访问”。

今天的文章我们就来详细聊聊这个功能。

1、数据块(DB)

在Portal环境中创建一个新的数据块。在其属性中可以看到“优化块访问”被勾选了,如下图:

优化后的数据块具有以下特点:

数据块中的变量只能进行符号访问(不支持绝对地址访问)。例如,如果优化数据块的名称为“optDB”,并且其中有一个起始变量,则访问语法为:

'optDB'.start

注意:optDB两边的双引号是自动加上的,表示是全局变量;如果加井号(#),则表示是局部变量;

为了说明标准数据块和优化数据块存储策略的区别,我们举个例子。假设有按以下顺序存储的变量:

开始:布尔类型;

speed:实数类型;

stop:布尔类型;

对于标准数据块,使用绝对地址来存储变量(以字节为单位),第一个布尔变量占用一个字节(B0,尽管实际上只使用了其中的一位)。

第二个变量为实数,从偶数地址开始存储,因此其起始地址为B2,占用4个字节(B2~B5);第三个变量是布尔类型,占用一个字节(B6)。

可以看出,在这种存储策略下,这三个变量占用了7个字节的存储空间。

当然,如果调整顺序,将两个布尔变量放在一起,就会节省一个字节的空间,但这需要程序员熟悉它的存储策略。

当存在多种数据类型时,手动优化存储往往费力且难以达到预期效果。

优化后的数据块帮助我们解决了这个问题。它会自动将相同类型的变量存储在一起,以最大限度地利用存储空间。两者对比如下图所示:

优化数据块可以对其中的变量单独设置保留属性,而标准数据块可以全部保留或取消所有保留;

对于S7-1200,优化后的数据块采用存储优先策略(因为其数据空间比较小);对于S7-1500,优化后的数据块采用访问优先策略(因为其数据空间比较大,为了提高访问速率);

2. 组织块(OB)

优化启动信息。

优化后的组织块只有很少的启动信息。例如Startup组织块优化后只有两条启动信息,如下图所示:

3. 功能块(FB)

对其后台数据块进行优化,与数据块的优化类似;

复杂变量可以通过符号寻址;

4. 功能(FC)

优化临时变量的使用,临时变量会在每次块调用之前初始化;

复杂变量可以通过符号寻址;

审稿人:刘庆

最新资讯

推荐资讯