×
Siemens Industry Online Support
Siemens AG
文档类型 常问问题 文档编号 837001, 文档发布日期 2010年8月17日
(23)
评估

数据块初始值与实际值的含义

  • 文档
  • 涉及产品

描述
在数据块的变量声明表中可以定义变量的名称、数据类型、注释和变量初始值。初始值为纯粹的组态值,当由UDT生成数据块或在全局数据块中生成新变量时,组态的初始值被用作为实际值。 可以通过菜单命令  “View > Data view” 来查看实际值。

初始值对于数据块或新声明的变量数据块来说,组态的有效次数仅为一次。如果变量已经存在,实际值将不会随着初始值的变化而发生改变。对于CPU来说,操作的数值为实际值,初始值虽也可以下载到CPU中并可在线监控,但不会被CPU采用。

有以下两种方法可以将初始值传送给 CPU 作为实际值:

  1. 切换到数据浏览状态 “View > Data view”,在“Actual value” 栏输入新的初始值。
  2. 进入声明浏览状态 “View > Declaration view ”,在“Actual value” 栏输入新的初始值;然后,切换到“Data view” 状态,执行菜单命令 “Edit > Initialize Data Block”将所有“Intial value”栏的数值传送至“Actual value”栏。

然后将数据块下载至CPU中。

由于初始值仅使用一次,因而没有必要将实际值装载至初始值, 如装载“Actual value” 栏到“Initial value”栏。 STEP 7 中没有与之相关的菜单命令。 但是一些特殊应用需要将实际值保存为初始值。这一过程可通过 STL 源文件或 Excel 来实现,以下将分别介绍其操作步骤。

在STL 源文件中,将数据块的实际值直接保存为初始值
当生成 STL 源文件后,实际值可以逐行拷贝至 STL 源程序中的声明语句中。
 

No. 步骤
1 在 SIMATIC Manager 选择菜单指令 "View > Online" ,在线打开要执行操作的数据块。 选择菜单命令  “File > Save” 或点击软盘图标保存该数据块。
2 通过菜单命令 “File > Generate Source...”生成此数据块的源文件。
3 打开生成的源文件,该文件位于 SIMATIC Manager 的 Source 文件夹。
4 在 STL 源文件中,将位于 “BEGIN”和 “END_DATA_BLOCK”语句之间的实际值逐行复制到相应的声明行(初始值)及相应的数据类型之中。


图 01

如图 01 所示,通配符“:=”也必须和实际值一起复制到初始值的声明行。以下是声明行定义的一个示例:

  • Data_1 : BYTE := B#16#AA;
5 保存编译 STL 源程序
  • File > Save
  • File > Compile

此时,实际值被用作初始值

使用 Excel 将数据块的实际值保存为初始值(便利方法)
数据块的实际值也能在 Excel 中被存为初始值。当数据量较大时,推荐使用 Excel 进行操作,这是因为此时数据是逐块而不是逐行被复制到声明区域的。 下述表格介绍了如何导入/导出 STL 源文件及将其保存在 Excel 中。
 

No. 步骤
1 在 SIMATIC Manager 选择菜单指令 "View > Online" ,在线打开要执行操作的数据块。 选择菜单命令  “File > Save” 或点击软盘图标保存该数据块。
2 通过菜单命令 “File > Generate Source...”生成此数据块的源文件。
3 Mark the generated source in the source in the SIMATIC Manager and right-click it. Then select the "Export Source..." command in the pop-up menu.
4 在 “Export source”对话框中确定源文件导出文件加后,选择“STL source (*.awl)” 作为文件类型且文件名中必须包含扩展名“.AWL ”,例如 “Source_DB2.AWL”,然后点击“Save”按钮。


图 02

5 启动 Microsoft Excel,通过 “文件 > 打开...”打开刚才导出的 STL 源文件,出现“文本导入向导”对话框。

注意
为了保证在“Open”对话框中可以找到该 STL 源文件,需要选择“All files (*.*)”作为打开文件类型。

6 在文本倒入向导第一步,使能“Delimited“ 格式选项。


图 03

然后单击 “Next” 按钮。

7 在下一个文本倒入向导的对话框中,选择"tab" 或 "space" 作为分隔符。


图 04

然后单击 “Next” 按钮。

8 在第三步文本倒入向导中,选择”standard” 作为;栏数据格式。


图 05

然后单击“Finish”按钮。 转化的 STL 源在Excel 中打开。

9 选中所有属于 STL source 的单元格后点击右键。 在弹出菜单中选择“设置单元格格式...”。 


图 06

10 在“对齐”页签中将水平对齐设置为“靠右”或“靠右(缩进)”点击确定。


图 07

11 选择位于“BEGIN”和“END_DATA_BLOCK”之间的实际值以及通配符“:=”,将数据复制到“STRUCT”和 “END_STRUCT”之间声明区域的相应数据类型之后,如图 08 所示。


图 08

12

复制完成后检查语法格式是否正确,例如:

STRUCT
  Data_1 : BYTE := B#16#AA;
  ...
END_STRUCT;


图 09

13 在 Excel 中保存文件,“文件 > 另存为...” 并选择
  • 带格式文本文件(空格分隔)(*.prn) 作为文件类型。.

注意

执行上述操作后,文件保存为“Source_DB2.AWL”。但是,如果文件以另一文件名保存,如“Source_DB20.AWL”,系统会将其保存为“Source_DB20.AWL.PRN”文件。 此文件需通过删除扩展文件名 PRN 将“Source_DB20.AWL.PRN”转换为“Source_DB20.AWL”。PRN 扩展名是系统自动添加的,这种情况发生在保存文件时已输入过一次以 AWL 结尾的文件名。

14 在 SIMATIC Manager 中选择菜单命令 “Import > External Source...”将 Excel 中处理完成的 STL 源文件导入至 STEP 7 项目下的 source 文件夹。
15 选择导入的源文件后点击右键,在弹出菜单中选择 “Compile...”命令进行编译。编译完成后,实际值便保存为初始值。


图 10

注意
如果数据块中有 UDT 类型的数据,使用时有限制:不能将实际值附着在变量后作为初始值。虽然 UDT 可以被导出,但其初始值的改变将会影响到所有使用该 UDT 的数据块,因此无法做到在不同数据块中的差别化应用。

关键词:
编成帮助,初始化,初始值,系统行为

安全性信息
为了保护技术基础设施、系统、机器和网络免受网络威胁,有必要实施并持续维护一个全面、最先进的IT安全方案。西门子的产品和解决方案构成了这一方案的一个要素。有关网络安全的更多信息,请访问
https://www.siemens.com/cybersecurity#Ouraspiration.
评估文档
无评估
请求和反馈
您想要做什么?
注意:反馈总是与当前的条目/产品相关。您的消息将被转发给我们在线支持团队的技术编辑们。如果我们需要就您的反馈提供答复,您将在几天内收到答复。如果没有其它问题,您将不会收到答复。