西门子CPU模块6ES7355-2CH00-0AE0原装现货
保存符号表并关闭“符号编辑器”窗
口。
同样,关闭共享数据块。
变量声明表中的共享数据块:
使用菜单命令视图 > 数据视图,可为共享数据块修改表中数据类型INT 的实际值(请参见第
5.5 节)。
符号表中的共享数据块:
与背景数据块相反,在符号表中共享数据块的数据类型总是juedui地址。在我们的示例中,数
据类型是“DB3”。对于背景数据块,相应的功能块总是指定的数据类型。
在帮助 > 目录的主题“编程块”和“创建数据块”中可以找到更多的信息。
如果您在第4 章中从样例项目
(zEn01_02_STEP7__STL_1-10,
zEn01_06_STEP7__LAD_1-10 或
zEn01_04_STEP7__FBD_1-10) 中复制符号表
到您的“Getting Started”项目中,现在您不
需要增加任何符号。
编程共享数据块
STEP 7 使用入门
9-4 A5E00446502-01
STEP 7 使用入门
A5E00446502-01 10-1
10 编程多重背景
10.1 创建和打开功能块
在第5 章中,您创建了一个功能块“Engine”(FB1)控制一台发动机的程序。当功
能块FB1 在组织块OB1 中调用时,它使用了数据块“Petrol”(DB1)和“Diesel”
(DB2)。每个数据块包含发动机的不同数据(例如,#Setpoint_Speed)。
现在想象一下,您的自动化设备还需要其它的程序控制发动机;例如,用于菜籽油
发动机的控制程序,或者用于氢发动机的控制程序,等等。
按照目前您已经学习过的步骤,现在要为一个附加的发动机控制程序使用FB1,并
且每次为发动机的数据分配新的数据块;例如,FB1 和DB3 用于控制菜籽油发动
机,FB1 和DB4 用于控制氢发动机,等等。当您创建新的发动机控制程序时,块数
量的增加是非常大的。
另一方面,通过使用多重背景可以减少块的数量。为此,您要创建一个新的、更高
的功能块(在我们的示例中是FB10),并在其中调用未作任何修改的FB1 作为
“局部背景”。对每一个调用,子程序FB1 将它的数据存储在较高一B10 的数
据块DB10 中。这就意味着您无需给FB1 分配任何数据块。所有的功能块都指向一
个数据块(此处是DB10)。
您应该已经熟悉了使用梯形图、功能块图或语句表编程(请参见第4 章和第5 章)以
及符号编程(请参见第3 章)。
数据块DB1 和DB2 被集成在DB10 中。为此,必须在FB10 的
静态局域数据中声明FB1。
OB1
CALL FB10,DB10
FB10
CALL FB1 (用于汽油机)
CALL FB1 (用于柴油机)。
DB10
“汽油机”数据
“柴油机”数据
FB1
“Engine”
?
FB1
“Engine”
编程多重背景
STEP 7 使用入门
10-2 A5E00446502-01
如果您已经在第1 至第7 章中创建并使
用了示例项目“Getting Started”,则
将它打开。
如果没有,可在SIMATIC 管理器中打
开以下项目之一:
ZEn01_05_STEP7__LAD_1-9 用于梯
形图,
ZEn01_01_STEP7__STL_1-9 用于语
句表
ZEn01_03_STEP7__FBD_1-9 用于功
能块图。
查找到Blocks 文件夹并打开它。
在右半窗口中击鼠标右键,然后使用弹
出菜单插入一个功能块。
将块名改为FB10 并选择所需要的编程
语言。
如有必要,激活多重背景FB,并用确
定确认其余的缺省设置。
FB10 被加入到Blocks 文件夹。双击以
打开FB10。
您可以为任意功能块创建多重背景,例如,为阀门控制程序。如果您要使用多重背景,注意
调用块和被调用块都必须具有多重背景功能。
在帮助 > 目录的主题“编程块”和“创建块和库”中可以找到更多的信
息。
编程多重背景
STEP 7 使用入门
A5E00446502-01 10-3
10.2 编程FB10
要将FB1 作为FB10 的一个“局部背景”调用,则需要在变量详细视图中为每一个
计划调用的FB1 声明一个具有不同名字的静态变量。这里,数据类型是FB1
(“Engine”)。
声明/定义变量
FB10 在LAD/STL/FBD 编程窗口中打开。将顺序映像的声明传送到变量详细视图
中。为此,请依次选6ES7355-2CH00-0AE0 西门子PLC