STEP 7 Professional V14.0使用库

西门子plc
西门子plc
西门子plc
1976
文章
127
评论
2018年6月29日23:01:47 评论 1,471 阅读

9.1 库基本知识

可以将需要重复使用的对象存储在库中。每个项目都连接一个项目库。除了项目库,还可创建任意多数量的全局库,可在多个项目中使用。由于各库之间相互兼容,因此可以将一个库中的库元素复制和移动到另一个库中。例如,使用库创建块模板时,首先将该块粘贴到项目库中,然后在项目库中进行进一步开发。后,再将这些块从项目库复制到全局库中。这样,在项目中的其他同事也可以使用该全局库。其他同事继续使用这些块并根据自己个人需求来修改这些块。
项目库和全局库中都包含以下两种不同类型的对象:
  • 主模板
    基本上所有对象都可保存为主模板,并可在后期再次粘贴到项目中。例如,可以保存整个设备及其内容,或者将设备文档的封页保存为主模板。
  • 类型
    运行用户程序所需的元素(例如块、PLC 数据类型、用户自定义的数据类型或面板)可作为类型。可以对类型进行版本控制,以便支持专业的二次开发。类型有新版本时使用这些类型的项目会立即进行更新。
项目库
每个项目都有自己的库,即项目库。在项目库中,可以存储想要在项目中多次使用的对象。项目库始终随当前项目一起打开、保存和关闭。
全局库
除了项目库之外,可以使用可供多个项目使用的全局库。全局库共有以下三个版本:
  • 系统库
    西门子将自己开发的软件产品包含在全局库中。这些库包括可以在项目中使用的现成函数和函数块。这些自带的库无法更改。自带的库无法根据项目进行自动装载。
  • 企业库
    企业库由用户所在组织集中提供,例如,位于网络驱动器上的某个中央文件夹中。TIA Portal 可对相应的企业库进行自动管理。现有版本的企业库更新后,系统将提示用户将相应的企业库更新为新版本。
  • 用户库
    全局用户库与具体项目无关,因此可以传送给其它用户。如果所有用户都需要以写保护方式打开全局用户库,则可对全局用户库进行共享访问。例如,将该库放置在网络驱动器上。
    与此同时,用户仍可以使用自己在较低 TIA Portal 版本中创建的全局用户库。但是,如果要继续使用旧版本 TIA Portal 中的全局用户库,则必须先将该库进行升级。
比较库对象
可以将块和 PLC 数据类型与设备中的对象进行比较。这样,可以确定某些块或 PLC 数据类型是否已在项目中使用,以及它们是否已修改。

9.2 使用“库”(Libraries) 任务卡

9.2.1 “库”(Libraries) 任务卡概述

通过“库”(Libraries) 任务卡可以高效使用项目库和全局库。
“库”(Libraries) 任务卡的布局
“库”(Libraries) 任务卡由以下部分组成:
STEP 7 Professional V14.0使用库
“库视图”(Library view) 按钮
可以使用“库视图”(Library view) 按钮切换到库视图中。该操作将隐藏“库”(Libraries) 任务卡和项目树。
另请参见: 使用库视图​
“项目库”(Project library) 窗格
在“项目树”(Project library) 窗格中,可以存储要在项目中多次使用的对象。
“全局库”(Global libraries) 窗格
通过“全局库”(Global libraries) 窗格可管理全局库,其库中的元素将在多个项目中重复使用。
“全局库”(Global libraries) 窗格还列出了所购产品随附的库。例如,这些库为您提供现成的函数和函数块。这些自带的全局库无法编辑。
“元素”(Elements) 窗格
在该窗格中可显示库中文件夹的内容。默认情况下不显示“元素”(Elements) 窗格。要显示此窗格时,需先对其进行启用。“元素”(Elements) 选项板有以下三种视图模式:
  • 详细模式
    在详细模式中,将以表格形式显示文件夹、主模板和类型的属性。
  • 列表模式
    在列表模式中,将列出文件夹中的内容。
  • 总览模式
    在总览模式中,将以较大符号显示文件夹中的内容。
“信息”(Info) 窗格
在“信息”(Info) 窗格中可显示库元素中的内容。同时还将显示类型的各个版本以及各版本的后修订日期。
“类型”(Types) 文件夹
在“类型”(Types) 目录中,可以管理项目中用作实例的对象类型和类型的版本。
另请参见: 使用类型​
“主模板”(Master copies) 文件夹
在“主模板”(Master copies) 目录中,可以管理项目中用作副本的对象的主模板。

9.2.2 使用元素视图

首次打开“库”(Libraries) 任务卡时,将打开“项目库”(Project library) 和“全局库”(Global libraries) 选项板,而“信息”(Info) 选项板为关闭状态。 需要时,可显示“元素”(Elements) 选项板。
元素视图显示所选库的元素。 元素视图中有以下三种视图模式:
  • 详细视图
    在详细模式中,将以表格形式显示文件夹、主模板和类型的属性。
  • 列表
    在列表模式中,将列出文件夹中的内容。
  • 概述
    在总览模式中,将以较大符号显示文件夹中的内容。
“信息”(Info) 选项板显示所选库元素的内容。 如果在元素视图中选择一种类型,则将在“信息”(Info) 选项板中显示该类型的版本。
要求
已显示“库”(Libraries) 任务卡。
步骤
要使用元素视图,请按以下步骤操作:
  1. 在“项目库”或“全局库”窗格中,单击“打开或关闭元素视图”。
  2. 要将视图模式从详细视图更改为列表模式或总览模式,请单击工具栏上的相应图标。

9.3 使用库视图

该库视图中包含“库”(Libraries) 任务卡和总览窗口的功能。在库视图中,库中各元素将显示在不同的视图中。例如,将在详细视图中,显示各个元素的其它属性。在库视图中,还可对这些类型进行编辑和版本控制。
库视图的布局
下图显示了库视图的结构:
STEP 7 Professional V14.0使用库
库树
库总览
“打开/关闭库视图”按钮和“打开库管理”
“打开或关闭库总览”按钮
库树
库树与“库”(Libraries) 任务卡相似,两者之间仅存在极小差异。与任务卡不同的是,库树中没有“元素”(Elements) 选项板,这是由于将在库总览中显示元素。此外,还可在库树中关闭库视图,或者打开和关闭库总览。
另请参见: “库”(Libraries) 任务卡​
库总览
库总览与总览窗口相似,将显示在库树中当前所选对象的元素。可以在三个不同视图中显示这些元素。
  • 详细视图
    对象显示在一个含有附加信息(例如上次更改日期)的列表中。
  • 列表视图
    对象显示在一个简单列表中。
  • 图标视图
    根据类别以图标的形式显示对象。
此外,可以在库总览中执行以下操作:
  • 重命名元素
  • 删除元素
  • 复制元素
  • 移动元素
  • 编辑类型接口
  • 对这些类型进行版本控制
  • 仅限 WinCC:编辑面板和 HMI 用户数据类型
在某些情况下,库视图将自动打开,例如在编辑某种类型的测试实例或在编辑面板和 HMI 用户数据类型时。 也可以手动打开库视图。
打开库视图
要手动打开库视图,请按以下步骤操作:
  1. 打开“库”(Libraries) 任务卡。
  2. 在“库”(Libraries) 任务卡中,单击“打开库视图”(Open library view) 按钮。
    将打开库树。 并关闭“库”(Library) 任务卡和项目树。
  3. 如果没有显示库总览,则单击库树中的 “打开/关闭库总览”(Open/close library overview) 按钮。
    将打开库总览。
退出库视图
要退出库视图,请按以下步骤操作:
  1. 在库树中,单击“关闭库视图”(Close library view) 按钮。
    将关闭库树。 并打开“库”(Libraries) 任务卡和项目树。

9.4 使用库管理

9.4.1 库管理概述

与其它库元素存在依赖关系的主模板和类型受到一些功能限制。例如,只要与其它库元素间的相关关系仍然存在,就无法将其删除。这样可以防止其它库元素变为无法使用。库管理用于标识依赖关系并创建工作进度概览。
库管理提供了下列功能:
  • 显示类型和主模板的相互关系
    如果在其它类型或主模板中引用了某种类型,则将在库管理中显示它们之间的相互关系。同时还可了解哪些库元素引用了类型或主模板。
  • 显示项目中类型的使用位置
  • 显示适合升级的类型
  • 使用过滤器缩小显示的类型范围。
库管理的布局
下图显示了库管理的组件:
STEP 7 Professional V14.0使用库
库管理的工具栏
“类型”(Types) 区域
“使用”(Uses) 区域
库管理的工具栏
在库管理的工具栏中,可执行以下任务:
  • 更新使用区域
    在项目发生更改时,可以更新库管理的视图。
  • 清理库
    通过清理库,可以删除项目中没有与实例相关联的所有类型和类型版本。
  • 统一项目
    通过统一项目,可以更改项目中类型使用的名称和路径结构,从而与库中类型的名称和路径结构相匹配。
  • 全部折叠
    通过“全部折叠”(Collapse all) 图标,可以在“类型”(Types) 区域隐藏高节点的所有子条目。较低级别的元素,如类型和各个版本等将不再显示。
  • 全部展开
    通过“显示所有”(Show all) 图标,可以在“类型”(Types) 区域展开所有级别较低的元素。较低级别的元素,如类型和各个版本等所有内容都将显示。
“类型”(Types) 区域
在“类型”(Types) 区域中,将显示在库视图中所选文件夹的内容。对于每种类型,都会显示其引用的类型。通过“类型”(Types) 区域工具栏中的按钮,可以展开或折叠所有类型节点。还可以使用“过滤器”(Filter) 下拉列表过滤视图。
“使用”(Uses) 区域
“使用”(Uses) 区域提供了所选类型和主模板使用位置的概览。“使用”(Uses) 区域分为两个选项卡:
  • “在项目中使用”(Use in the project) 选项卡
    “在项目中使用”(Use in the project) 选项卡用于显示类型版本实例及其在项目中的使用位置。选择实例时,可在巡视窗口中显示项目中实例的交叉引用。
  • “在库中使用”(Use in the library) 选项卡
    “在库中使用”(Use in the library) 选项卡用于显示库中使用类型或主模板的所有使用位置。

9.4.2 打开库管理

要打开库管理,请按以下步骤操作:
  1. 打开库视图。
  2. 选择一个类型或包含类型的任意文件夹。
  3. 在快捷菜单中,选择“库管理”(Library management) 命令。
结果
库管理将打开,并且显示类型及其版本。

9.4.3 过滤类型显示

使用过滤器可获得扩展库中类型的佳概览效果。过滤器提供了限制显示类型的选项。可用的过滤器包括:
  • 具有未决变更的类型
    过滤器将显示版本为“测试”或“开发”的所有类型。
  • 已发布的类型
    过滤器将显示版本不为“测试”或“开发”的所有已发布类型。
  • 具有多个版本的类型
    过滤器将显示具有多个版本的所有类型。
  • 项目中未使用的类型
    过滤器将显示项目中没有实例的所有类型。
  • 具有可升级其它类型新版本的类型
    过滤器将显示适合升级其它类型的所有类型。该类型需满足以下条件:
    • 该类型有多个版本。
    • 相应类型的所有版本均已发布。
要求
打开库管理。
操作步骤
要过滤显示类型,请按以下步骤操作:
  1. 在“类型”(Types) 区域中,选择包含要过滤内容的文件夹。
  2. 从“过滤器”(Filter) 下拉列表中选择所需过滤器。
    在“类型”(Types) 区域中,将显示符合所选过滤条件的类型。

9.4.4 显示项目中的实例

在库管理中,显示了某一类型所有版本的实例或单个类型版本。可直接跳转到项目中的每个实例。
要求
打开库管理。
操作步骤
要显示类型或其版本实例,请按以下步骤操作:
  1. 在“类型”(Types) 区域中,选择所需文件夹、类型或版本。
  2. 在“使用”(Uses) 区域中打开“在项目中使用”(Uses in the project) 选项卡。
    将显示每个类型版本的项目实例。“路径”(Path) 列显示相应实例在项目中的路径。
  3. 可选:单击路径直接跳转到项目树中对应的实例。
    库管理被隐藏,并在项目树中选中了该实例。

9.4.5 显示实例的交叉引用

可在不退出库管理时显示实例交叉引用。
要求
打开库管理。
操作步骤
要在项目中显示实例的交叉引用,请按以下步骤操作:
  1. 在“类型”(Types) 区域中,选择要显示其实例的类型版本。
  2. 在“使用 > 在项目中使用”(Uses > Uses in the project) 区域中,选择所需类型版本的实例。
  3. 在巡视窗口中,打开“信息 > 交叉引用”(Info > Cross-references) 选项卡。
    实例交叉引用将显示在项目中。

9.4.6 显示与其它库对象的关联

可显示库管理中各库对象间的关联。各类型版本对其它库对象的引用将自动显示在“类型”(Types) 区域中。在“使用”(Uses) 区域中,还可查看引用各类型版本的其它库对象。
要求
打开库管理。
操作步骤
要显示引用类型版本的其它库对象,请按以下步骤操作:
  1. 在“类型”(Types) 区域中,选择所需文件夹、类型或版本。
  2. 在“使用”(Uses) 区域中打开“在库中使用”(Uses in the library) 选项卡。
    现在,“使用”(Uses) 区域中将显示各类型版本所引用的其它库对象。
  3. 可选:要跳转到引用的库对象,请单击“路径”(Path) 列中的相应路径.

9.5 使用全局库

9.6 在库中创建文件夹

库元素将根据“类型”(Types) 和“主站副本”(Master copies) 文件夹中的类型存储在库中。 在“类型”(Types) 和“主站副本”(Master copies) 下创建其它文件夹,对主站副本和类型进行进一步管理。
要求
  • 显示“库”(Libraries) 任务卡或打开库视图。
  • 如果要在全局库中创建新文件夹,则必须使用写权限打开该全局库。
步骤
若要创建新文件夹,请按以下步骤操作:
  1. 右键单击库中的任意一个文件夹。
  2. 从快捷菜单中选择“添加文件夹”。
    将创建一个新文件夹。
  3. 输入新文件夹的名称。

9.7 使用主模板

9.7.1 关于主模板的基本信息

主模板是用于创建常用元素的标准副本。可以创建所需数量的元素,并将其插入到基于主模板的项目中。这些元素都将具有主模板的属性。
主模板既可以位于在项目库中,也可以位于在全局库中。项目库中的主模板只能在项目中使用。在全局库中创建主模板时,主模板可用于不同的项目中。
例如,可以在库中将以下元素创建为主模板:
  • 带有设备组态的设备
  • 变量表或各个变量
  • 指令配置文件
  • 监控表
  • 文档设置元素,如封面和框架
  • 块和包含多个块的组
  • PLC 数据类型与包含多种 PLC 数据类型的组
  • 文本列表
  • 报警类别
  • 工艺对象
在许多情况下,作为主模板添加的对象都包含一些其它元素。例如,一个 CPU 可以包含多个块。如果所包含的元素使用某种类型版本,则将在库中自动创建该类型所使用的版本。之后可以将此处包含的元素用作一个实例并与该类型进行关联。

9.7.2 添加主站副本

如果要多次使用对象,可以将这些对象作为主模板复制到项目库或全局库中。可通过以下几种方式创建主模板:
  • 选择一个或多个元素并使用它们来创建各个主模板
  • 选择多个元素并创建包含所有选中元素的单个主模板。
要求
  • 已显示“库”(Libraries) 任务卡。
  • 如果将一个设备增加作为主模板,则该设备应满足以下要求:
    • 设备已编译并且一致。
    • 该设备中不包含类型的测试实例。
  • 如果将主模板添加到全局库中,则需使用写权限打开全局库。
通过一个或多个元素创建主模板
要基于一个或多个元素创建主模板,请按以下步骤操作:
  1. 在“库”(Libraries) 任务卡中打开库。
  2. 选择所需的元素。
  3. 使用拖放操作,将这些元素移到“主模板”(Master copies) 文件夹或“主模板”(Master copies) 的任意子文件夹中。
或者:
  1. 选择所需的元素。
  2. 将这些元素复制到剪切板并将它们粘贴到所需的位置。
    每个元素以主模板形式粘贴到库中。在所有情况下,将使用所包含的任何对象(例如,被引用的块)自动创建类型。
通过多个元素创建单个主模板
要通过多个元素为所有元素创建单个主模板,请执行以下步骤:
  1. 在“库”(Libraries) 任务卡中打开库。
  2. 将要创建为主模板的元素复制到剪贴板中。
  3. 右键单击“主模板”(Master copies) 文件夹或库中的任意一个子文件夹。
  4. 在快捷菜单中,选择“粘贴为单个主模板”(Paste as a single master copy) 命令。
或者:
  1. 选择所需的元素。
  2. 使用拖放操作,将这些元素移到“主模板”(Master copies) 文件夹或“主模板”(Master copies) 的任意子文件夹中。同时,保持按住 <Alt> 键。
    这些元素会以单个主模板形式粘贴到库中。单个主模板包含所有选中元素。在所有情况下,将使用所包含的任何对象(例如,被引用的块)自动创建类型。
说明
避免使用主模板的复杂结构
要避免名称冲突以及在后续使用主模板期间与文件夹结构有关的冲突,请避免使用复杂的主模板。复杂主模板的一个例子就是,包含多个元素和嵌套文件夹的主模板。

9.7.3 过滤主模板

为了更好地跟踪大量主模板,可以按照主模板类型过滤显示。
要求
显示“库”(Libraries) 任务卡或打开库视图。
步骤
要过滤视图,请按以下步骤操作:
  1. 在项目库或全局库中打开主模板(Master copies) 文件夹。
  2. 在工具栏的下拉列表中,选择要在“主模板”(Master copies) 下显示的对象类型。
结果
仅显示所选类型的主模板。 要恢复到未设置过滤条件的视图,则可将过滤器设置为“全部”(All) 。

9.7.4 使用主副本

主模板既可以包含在项目库中,也可以包含在全局库中。 可以同时将一个或多个主模板粘贴到项目中。 如果同时插入多个主模板,请确保所有主模板都与期望的使用点兼容。
要求
已显示“库”(Libraries) 任务卡。
步骤
要将主模板粘贴到项目中,请按以下步骤操作:
  1. 打开“主模板”(Master copies) 文件夹,或库中“主模板”(Master copies) 的任意一个子文件夹。
  2. 使用拖放操作,将所需的主模板或整个文件夹移到使用点。
或者:
  1. 打开元素视图。
  2. 使用拖放操作,将所需的主模板或整个文件夹从“元素”(Elements) 窗格移到使用点。
结果
已插入主模板的副本。 如果在多重选择中包含不兼容的主模板,则将忽略这些主模板并且在项目中不会创建副本。

9.8 使用类型及其版本

9.8.1 有关类型的基本信息

类型是执行用户程序所需的元素。可以对类型进行版本控制,并从中央位置对其进行二次开发。
以下元素可作为类型存储在项目库或全局库中:
  • 函数 (FC)
  • 函数块 (FB)
  • PLC 数据类型
  • 用户数据类型
  • 面板
  • 画面
  • 类型
  • 用户自定义函数
可以从项目中类型的版本生成任意多个实例。然后将这些实例与类型的版本进行关联。如果使用全局库中的类型,则将在项目库中创建该类型。如果类型已存在于项目库中,请根据需要添加缺失的类型版本。这样,该实例就只与项目库中的相应类型版本相关联。
并用一个黑色的三角形标记类型及其实例。下图显示了一个标记有黑色三角形的实例,和一个普通程序块:
STEP 7 Professional V14.0使用库
通过进行类型版本控制,可以统一对类型进行开发,然后将新版本作为更新集成到各个项目中。通过这种方法,可以将纠错功能和新增功能轻松集成到现有项目中。如果已经创建了一个全局库的新版本,则可以在自动过程中对现有项目进行更新。对于包含多个单独项目的大型自动化解决方案,这样可以将错误率降至低同时也极大降低了维护的工作量。
通过版本控制,可以跟踪各类型的开发进程。在一个版本发布之前,可以在测试环境中进行试用,确认对类型所做的更改是否正确集成到了现有项目中。在确保一切正常后,才能发布一个可用于生产环境中的版本。可以随时查看项目中各实例的历史记录,并确定实例生成的版本。
TIA Portal 会自动检查是否存在与某个类型的各个版本相关的对象。例如,关联的对象可以是块中引用的 PLC 数据类型或其它块。在创建类型或在库之间进行复制时,已经考虑了所有关联的对象。在发布之前,还将检查类型版本的一致性以确保项目中没有不一致现象。
类型的版本
每种类型都会指定版本。版本号将同时显示在“库”(Libraries) 任务卡中和相应类型旁边的库视图中。要显示该实例旁项目树中的类型版本,请按以下步骤操作:为此,在项目树中选择“版本”(Version) 列。这样,便于查看项目中所用实例的版本。
版本号由三个数字组成,数字间使用句点分隔。用户可以随机分配前两位数字。允许使用从 1 到 999 的数字作为前两个数字。第三位数字是编译编号。编辑与版本相关的实例时,该数字将自动加 1。在发布版本时,编译编号将复位为 1。
类型的版本共有以下三种状态:
  • 开发(面板和 HMI 用户数据类型)
  • 测试(除面板和 HMI 用户数据类型之外的所有类型)
  • 已发布
下图显示了一种类型的两个版本。一个版本是“测试版本”,另一个版本是“发布版本”:
STEP 7 Professional V14.0使用库
如果在项目库中使用函数 (FC) 或函数块 (FB) 作为类型,在编译该块时如果使用不同指令版本,则需遵循以下注意事项:
  • 如果块接口的版本相同,则重新编译专有技术保护块时无需密码。
  • 如果所有实参值未丢失且新版本中无需添加新的实参,则可重新编译不受专有技术保护的块。
  • 如果因类型的指令版本不同而无法编译,则需要给该类型生成一个新版本包含所需的调整

9.8.2 类型版本的状态

类型的版本共有以下三种不同的状态。可通过实例或者在库中确定状态。
“开发”状态
只有面板和 HMI 用户数据类型的版本才具有“开发”(In progress) 状态。如果某个版本处于“开发”状态,则在库中该版本旁边会显示“开发”(In progress)。
创建新类型或已发布类型的新版本时,会为该类型分配状态“开发”(In progress)。
可以在库视图中编辑状态为“开发”(In progress) 的类型。而无需具有项目中对实例的引用。在发布时,一致性检查将对类型的兼容性进行测试。
“测试中”(In test) 状态
除面板和 HMI 用户数据类型之外的所有类型都可以具有“测试中”(In test) 状态。如果版本正在测试,则将在库中的实例旁显示“测试中”(In test)。测试状态的版本与项目中的测试实例相关联。这样,用户就可以在实际应用中使用所发布的类型之前,在测试环境中试验所做更改的效果。
“已发布”状态
“已发布”状态可用于所有类型,而无需考虑使用位置。如果版本已发布,则库中的版本将标记上印章符号:
STEP 7 Professional V14.0使用库
已发布版本可以在实例中以写保护方式打开。如果您想要编辑已发布的版本,必须首先创建一个新的“开发”(In progress) 或“测试”(in test) 版本。

9.8.3 显示已发布的类型版本

如果要显示一个已发布的版本但不希望进行编辑,则可以用写保护方式打开该实例。 除面板和 HMI 用户数据类型之外,其它所有类型都可以直接在实例中打开。 面板和 HMI 用户数据类型只能在“库”(Libraries) 任务卡或库视图中打开。
要求
已发布的版本在项目中有一个实例;除面板或 HMI 用户数据类型外。
在实例中打开类型版本
要从实例开始以写保护模式打开类型的已发布版本,请按以下步骤操作:
  1. 在项目树中的实例上选择已发布的版本。
  2. 为此,需右键单击该实例,然后从快捷菜单中选择“打开”(Open) 命令。
    将以写保护模式打开该实例。
在“库”(Libraries) 任务卡或库视图中打开类型版本
要在“库”(Libraries) 任务卡或库视图中打开一个类型已发布的版本,请按以下步骤操作:
  1. 选择该版本。
  2. 为此,需右键单击该版本,然后从快捷菜单中选择“打开”(Open) 命令。
    如果是面板或 HMI 用户数据类型,则可在库视图中直接打开。 在这种情况下,可跳过其它步。 如果是其它任何类型,则将打开“打开类型”(Open type) 对话框。
  3. 从实例列表中选择待显示版本的实例。
  4. 单击“确定”(OK) 进行确认。
    将以写保护模式打开该实例。

9.8.4 显示类型或版本的属性

可以显示某个类型或版本的属性。
步骤
要显示类型或版本的属性并输入注释,请按以下步骤操作:
  1. 在“库”(Libraries) 任务卡或库视图中选择一个类型或类型版本。
  2. 为此,需右键单击该类型或该类型的一个版本,然后从快捷菜单中选择“属性”(Properties) 命令。
    将打开“属性”(Properties) 对话框。
  3. 需要时,可在“注释”(Comment) 字段中输入该类型的注释信息或者编辑现有的注释信息。
可见和可更改的属性
下表显示了某个类型/版本的可见属性或可更改属性:

9.8.5 使用项目库中的类型

9.8.5.1 将类型添加到项目库

可以在项目库中为各种元素创建可在项目中重复使用的类型。 例如。可以将以下元素创建为类型,例如:
  • 程序块
  • 面板
  • PLC 数据类型
  • HMI 用户数据类型
如果将元素作为类型添加到项目库中,并且此元素与其它元素相关,则系统也会将相关的元素作为类型进行自动创建。
将一个类型添加到项目库中之后,该类型将与项目中添加的元素象关联。
要求
  • 已显示“库”(Libraries) 任务卡。
  • 编译要添加为类型的元素。
  • 各个元素具有一致性。
  • 对于块,需要满足所有其它要求,请参见“ 块要求​ 部分
步骤
要将现有元素作为类型添加到项目库,请按以下步骤操作:
  1. 在“库”(Libraries) 任务卡中打开项目库。
  2. 将一个或多个元素拖放到“类型”(Types) 文件夹或“类型”(Types) 的任意一个子文件夹中。
    或者: 将项目树中的元素复制到剪贴板,然后再将这些元素添加到指定的项目库文件夹中。
    将打开“生成类型”(Generate type) 对话框。
  3. 输入新类型的属性:
    • 在“类型的名称”(Name of the type) 字段中输入新类型的名称。
    • 在“版本”(Version) 字段中输入新类型的版本号。
    • 在“作者”(Author) 字段中输入该类型编者的姓名。
    • 在“注释”(Comment) 字段中输入该类型的注释。
  4. 单击“确定”(OK) 进行确认。
    将生成已发布版本的新类型。 此版本将与已添加的元素进行关联。

9.8.5.2 块要求

可在项目库中创建以下块类型:
  • 函数块
  • 函数
  • 用户自定义的数据类型
一致性和编译
要通过块创建类型,块必须具有一致性且经过编译创建类型时,将自动检查块的一致性,如有必要还将对块进行编译。
块要求
要通过块创建类型,块必须满足下列要求:
  • 块必须与 CPU 类型相匹配。
    可通过项目树中块右侧显示的不兼容符号识别与 CPU 不匹配的块。例如将块从 S7-1500 CPU 复制到 S7-300 CPU 时就会出现这种情况。S7-1500 的块与 S7-300 CPU 不兼容,无法编译块。这意味着无法通过块创建类型。
  • 该块不是系统数据块。
  • 该块不包括全局数据访问或实例数据块的单个实例调用。
    例如,这还适用于通过“OPN”命令在 STL 块中调用数据块。
受专有技术保护的块的特殊情况
您也可以创建受专有技术保护的块类型。但是,谨记以下对受专有技术保护的块的额外要求:
  • 已发布用作类型的块
    受专有技术保护的块必须已发布才可在库中使用。需在块属性中进行所需设置。
  • 块不包括到数据块、PLC 变量和 PLC 常量的访问。
    因为无法通过数据块、PLC 变量或 PLC 常量创建类型,因此也无法通过可以访问上述对象的受专有技术保护的块创建类型。受专有技术保护的块的实例在无相关数据块、PLC 变量或 PLC 常量的情况下无效。

9.8.5.3 引用块中的对象

很多情况下,可以在类型中引用其它对象。例如,调用块中的变量或数据块。相应地,块和引用的对象之间存在相关性。只有同时提供所有相关对象时块才是一致的。
引用其它类型
如果您在块中调用其它程序块、面板、PLC 数据类型或 HMI 用户数据类型,则这些相关对象也会以类型的形式自动存储在项目库中。如果引用的块稍后以实例形式在项目中再次使用,则还会创建被引用对象的实例。因此,TIA Portal 会自动确保块状态始终是一致的。
引用其它对象
允许在未受专有技术保护的块中访问数据块、PLC 变量或 PLC 常量,因此,仍可以通过这些块创建类型。例如,当在块中引用的函数块也自动创建为项目库中的块类型时,也不可访问数据块、PLC 变量和 PLC 常量。如果在块中引用数据块、PLC 变量或 PLC 常量,则只将块本身创建为类型。引用的对象不会创建为类型。如果引用未以类型形式存储的对象,则注意以下事项:
  • 在不同使用位置使用块
    如果在另一个使用位置(例如,另一个不同的 CPU)根据类型创建实例,则新的使用位置上引用的对象将缺失。这意味着需要在新的使用位置上再次创建引用的对象(例如,数据块或变量表)。确保新的使用位置上的引用对象具有相同的名称。
  • 被引用对象后续名称的更改
    如果您后续更改被引用对象的名称,则块就不再一致,也就不再能找到被引用的对象(例如,变量)。对于已发布版本的类型,则无法再更正对象的调用。在这种情况下,会创建新版本的类型并更正已调用对象的名称。将项目中所有类型实例更新至新版本。

9.8.5.4 复制类型

可以复制项目库中的类型。 如果复制某个类型,则以下准则适用于复制项:
  • 在相同文件夹中创建复制项。
  • 使用该类型的高版本创建复制项。
  • 复制项在项目中没有实例。
要求
已发布该类型。
步骤
要复制项目库中的某个类型,请执行以下步骤:
  1. 右键单击某个类型。
  2. 在快捷菜单中选择“复制类型”(Duplicate type) 命令。
    将打开“复制类型”(Duplicate type) 对话框。
  3. 输入新类型的属性:
    • 在“类型的名称”(Name of the type) 字段中输入新类型的名称。
    • 在“版本”(Version) 字段中输入新类型的版本号。
    • 在“作者”(Author) 字段中输入该类型编者的姓名。
    • 在“注释”(Comment) 字段中输入该类型的注释。
  4. 单击“确定”(OK) 进行确认。
    将生成已发布版本的新类型。

9.8.5.5 使用类型

项目库中的类型可在项目中使用任意次。 类型的使用始终与项目库中相应类型的版本相关联。 如果类型包含从属元素,则还必须在项目中的适当点将这些元素创建为使用类型。 从属元素的示例是块中引用的 PLC 数据类型。
只能将相同类型的一个版本分配给一个设备。 必要时,也可以同时创建多种使用类型。
类型的使用在项目树中称为实例。
可能的类型版本使用点
要使用某个类型,请在项目中的适当点处创建该类型的特定版本的实例。 适当的使用点包括:
  • 项目树中的文件夹
    可以在项目树中的文件夹中创建类型的实例。 该文件夹必须适用于特定类型。 例如,如果类型为用户数据类型,只能在“PLC 数据类型”(PLC data types) 文件夹中创建实例。
  • 编辑器
    可以在相应编辑器中使用类型创建实例。 例如,可在另一个块中使用函数块类型创建实例。 以这种方式从另一个块中调用函数块类型。
用于创建实例的选项
可选择以下两种方式来创建类型实例:
  • 将所需的类型版本从项目库拖放到指定位置。
    生成了类型实例和相关元素,并粘贴到待使用的位置。 此外,还将实例与项目库中的相应类型版本进行了关联。 如果在编辑器中创建了实例,则还会在项目树中的相应点处创建类型实例。 默认情况下,在项目树中会复制库中的文件夹结构。 如果想选择项目树中的其它文件夹,则可在库中的相同文件夹里找到实例。
  • 复制和粘贴类型实例
    可将类型实例复制到剪贴板然后粘贴到另一位置。 这样可创建另一个类型版本实例。 实例仍与项目库中的相同类型版本进行关联。 将一个类型实例复制到剪切板然后粘贴到另一个项目中后,该项目的项目库将接受所有所需类型版本。
要求
  • 已发布所需的版本。
  • 项目中已包含支持指定类型的设备
  • 而且该设备并未分配给同一类型的其它任何实例。
步骤
要创建类型实例,请按下列步骤操作:
  1. 在项目库中,选择要从中创建实例的版本。
  2. 使用拖放操作,将版本从项目库移到项目树或编辑器中的使用点。
    或者: 要自动使用新版本,请通过拖放操作将类型自身从项目库移到使用点处。
    例如,使用拖放操作将函数块类型移到项目树中 CPU 的块文件夹中。 例如,要从另一个块中直接调用类型,请通过拖放操作将该类型从项目库移到程序编辑器中的使用点处。
或者:
  1. 将一个或多个实例复制到剪贴板。
  2. 将实例粘贴到同一项目或不同项目的合适位置中。

9.8.5.6 显示实例类型

在项目树中,可跳转到项目库中与实例相关的类型。
步骤
要跳转到项目库中与实例相关的类型,请按以下步骤操作:
  1. 右键单击项目树中的类型实例。
  2. 从快捷菜单中选择“转至类型”(Go to type) 命令。
    将在项目库中显示相关类型。

9.8.5.7 创建类型的测试版本

在发布类型用于生产过程之前,需要在项目中和自动化系统上对这一类型进行测试。此测试将在特定的测试环境中进行。例如,该测试环境可以是一个 CPU。
创建一个“测试”状态的版本进行测试。创建“测试”版本适用于除面板和 HMI 用户数据类型之外的所有类型。另一方面,可以使用面板和 HMI 用户数据类型创建“开发”版本。
可通过以下两种方式,创建一个类型的测试版本并定义测试环境:
  • 在“库”(Libraries) 任务卡或库视图中
    在“库”(Libraries) 任务卡或库视图中,生成“测试”状态的新版本。可以直接从类型或类型的特定版本生成新版本。
  • 在项目树中的实例上
    也可以直接在项目树中的实例上创建测试版本。由于该实例始终用于项目内的一个特定版本内,因此将根据该实例处所使用的版本生成类型的新版本。
也可以同时创建多种类型的测试版本。
以下规则适用于“测试”版本:
  • 对于每种类型,在指定时间只能将一个版本设置为“测试”版本。
  • 测试版本只能与项目中的一个实例相关联。因此,只要实例处于“测试”状态,就无法将该实例复制到剪贴板、复制实例或根据该实例创建其它类型。
要求
  • 项目中该类型的至少一个实例处于指定版本中。
  • 如果要根据该类型的特定版本创建新版本,则在项目中该实例使用此版本。
步骤
要生成类型或类型版本的新测试版本,请按以下步骤操作:
  1. 选择该类型、该类型的版本或实例。
    在实例中直接创建测试版本时,可以通过多选功能选择多个元素或多个文件夹。由于所选实例已经定义了测试环境,因此可以跳过步骤 3 和 4。
  2. 右键单击所选元素并从快捷菜单中选择“编辑类型”(Edit type) 命令。
    如果已经开始在“库”(Libraries) 任务卡或库视图中进行编辑,则将打开“编辑类型”(Edit type) 对话框。如果已经开始在项目树中的实例上进行编辑,则立即打开测试实例以便在库视图中编辑。
  3. 从项目内的列表中选择该类型的实例。
    如果已经开始对该类型本身进行编辑,则应注意以下几点事项:
    • 实例的使用位置(例如 CPU)也用作后续编辑该类型时的测试环境。
    • 选择测试实例也可定义待编辑的版本。
    以下情况适用于编辑一个特定的版本:
    如果从特定版本开始,则只能从相同版本中使用的实例列表中进行选择。
  4. 单击“确定”(OK) 进行确认。
结果
创建了该类型的一个新版本。新版本为“测试”状态,识别方式与用户界面中的相同。

9.8.5.8 编辑类型的测试版本

编辑“测试”版本时,不会创建新版本。在“库”(Libraries) 任务卡或库视图中,可以从项目树中的实例上开始编辑测试版本。
说明
删除和重命名接口参数
可以添加新参数。但如果对现有参数进行重命名或删除,那么在调用块时将无法使用这些参数。
步骤
要编辑类型的测试版本,请按以下步骤操作:
  1. 右键单击测试版本或实例。
  2. 在快捷菜单中选择“编辑类型”(Edit type) 命令。
    将打开测试实例,并且可以进行编辑。

9.8.5.9 创建类型的编辑版本

如果要编辑一个面板或 HMI 用户数据类型的类型,则需为该类型新建一个“开发”版本。 并在库视图中对新版本进行编辑。 要检查所做更改的兼容性,则需在发布前自动执行一致性检查。
要求
在“库”(Libraries) 任务卡或库视图中打开项目库。
步骤
要创建该类型的新开发版本,请按以下步骤操作:
  1. 右键单击该类型或该类型的版本。
  2. 在快捷菜单中选择“编辑类型”(Edit type) 命令。
    将创建新的“开发”版本并在库视图中打开进行编辑。

9.8.5.10 对版本进行一致性检查

在编辑过程中,类型版本可能会意外包含有不一致状态。 为及时发现开发过程中的错误,请定期执行一致性检查。 但在发布版本时,系统将立即自动执行一致性检查。
以下内容详细介绍了如何手动对类型版本进行一致性检查。
要求
  • 在“库”(Libraries) 任务卡或库视图中打开项目库。
  • 版本处于“开发”或“测试”状态。
操作步骤
要对类型版本进行一致性检查,请按以下步骤操作:
  1. 右键单击要进行一致性检查的版本。
  2. 在快捷菜单中,选择“一致性检查”(Consistency check) 命令。
    将执行一致性检查。 用户将收到一条包含一致性检查结果的消息。

9.8.5.11 废弃版本

如果不再需要版本,则可以废弃“测试”(in test) 或“开发”(In progress) 类型的版本。还可以选择多个类型或文件夹,并废弃包含在其中的所有测试版本或编辑版本。并将所有使用删除版本的位置都复位到上一次发布时的状态。
要求
  • 要废弃的版本处于“测试”(In testing) 或“开发”(In progress) 状态。
  • 当前所在“库”(Libraries) 任务卡中的库视图已打开。
步骤
要废弃一个版本,请按以下步骤操作:
  1. 右键单击要废弃的版本。
  2. 在快捷菜单中,选择“废弃更改并删除版本”(Discard changes and delete version) 命令。
    将删除该版本。
或者可在库视图中进行如下操作:
  1. 在打开某个版本进行编辑时,可单击工具栏中的“废弃更改并删除版本”(Discard changes and delete version) 按钮。
    将删除该版本。

9.8.5.12 废弃文件夹中的所有版本

可同时废弃某个文件夹中状态为“测试”或“开发”的所有版本。 所有使用已删除版本的位置都将复位为上次发布的状态。
要求
当前所在“库”(Libraries) 任务卡中的库视图已打开。
废弃单个类型的版本
要废弃文件夹中的所有版本,请按以下步骤操作:
  1. 右键单击文件夹。
  2. 从快捷菜单中选择“全部废弃”(Discard all) 命令。
    将删除所有处于“测试”或“开发”状态的版本。

9.8.5.13 发布版本

完成类型版本的编辑操作后,可发布该版本从而用于生产过程中。 为该发布指定一个版本号。 还可以使用多重选择来同时发布多个版本。
要求
  • “库”(Libraries) 任务卡或库视图处于打开状态。
  • 要发布的版本处于“测试”(in test) 或“开发”(In progress) 状态。
  • 这些版本保持一致。
    在开始发布时将立即执行一致性检查。 如果在一致性检查过程中出错不能继续发布,则将显示一条消息指示如何更正这些错误。
步骤
要发布类型版本,请按以下步骤操作:
  1. 选择待发布的版本。
  2. 右键单击所选择的版本。
  3. 在快捷菜单中,选择“发布版本”(Release version) 命令。
    将打开“发布类型版本”(Release type version) 对话框。
  4. 必要时,可更改版本的属性:
    • 在“名称”(Name) 字段中输入类型的名称。 如果选择了多个发布版本,则无法更改“名称”(Name) 字段。
    • 在“版本”(Version) 字段中,定义待发布版本的主版本号和中间版本号。 如果选择了多个发布版本,则无法更改“版本”(Version) 字段,并使用后一个版本号进行发布。
    • 在“作者”(Author) 字段中,输入待发布版本的编者。
    • 在“注释”(Comment) 字段中,输入待发布版本的注释信息。
  5. 可选: 如果要从库中删除没有与项目中任何实例相关联的所有版本,则可选中“删除库中未使用类型版本”(Delete unused type versions from the library) 复选框。 这样,将不会删除与其它类型或库元素相关联的版本。
  6. 单击“确定”(OK) 进行确认。
或者可在库视图中进行如下操作:
  1. 在打开某个版本进行编辑时,可单击工具栏中的“发布版本”(Release version) 图标。
  2. 继续执行上述步骤的第 3 步到第 5 步。
结果
将发布所选择的版本。
以上特性适用于该类型本身、待发布的版本以及所有后续开发的新版本。 已发布的版本不受变更的影响。
需要时,可以将具有相同原始版本的所有实例更新到新版本,并删除该类型的未使用版本。

9.8.5.14 发布文件夹中的所有版本

完成文件夹中所有类型的编辑操作后,可同时发布所有版本。
要求
  • 当前位于“库”(Libraries) 任务卡或库视图中。
  • 该文件夹中包含有处于“测试”或“开发”状态的版本。
  • 所有处于“测试”或“开发”状态的版本均一致。
    在开始发布时将立即执行一致性检查。 如果在一致性检查过程中出错不能继续发布,则将显示一条消息指示如何更正这些错误。
操作步骤
要发布文件夹中的所有类型版本,请按以下步骤操作:
  1. 右键单击指定文件夹。
  2. 在快捷菜单中,选择“全部发布”(Release all) 命令。
    将打开“发布类型版本”(Release type version) 对话框。
  3. 必要时,可更改版本的属性:
    • 在“作者”(Author) 域中,输入待发布版本的编者。
    • 在“注释”(Comment) 域中,输入待发布版本的注释信息。
  4. 如果要从库中删除没有与项目中任何实例相关联的所有版本,则可选择复选框“删除库中所有未使用类型版本”(Delete all unused type versions from the library)。 这样,将不会删除与其它类型或主模板相关联的版本。
  5. 单击“确定”(OK) 进行确认。
结果
将发布所选文件夹中处于“测试”或“开发”状态的所有类型版本。
以上特性适用于待发布的版本以及所有后续开发的新版本。 已发布的版本不受变更的影响。
同时会删除项目中未使用的类型版本

9.8.5.15 将项目更新到新版本

在项目库中更新多种类型后,将项目中的所有实例更新为项目库中类型的新版本。如果不希望在整个项目中应该这些更改,则可以将更新限制为项目中的个别设备。
以下每个元素都可选择为更新源:
  • 整个项目库
  • 项目库中的各个文件夹
  • 各种类型
    可以选择多种类型。
要求
当前位于“库”(Libraries) 任务卡或库视图中。
操作步骤
要使用项目库中的内容更新项目中的实例,请按以下步骤操作:
  1. 选择整个项目库或库中的元素。
  2. 右键单击所需的元素,然后从快捷菜单中选择“更新 > 项目”(Update > Project) 命令。
    将打开“更新项目”(Update project) 对话框。
  3. 可以选择整个项目,也可以选择单个设备进行更新。
  4. 选择更新过程的选项:
    • 在此过程中,将始终选择“更新受影响类型的所有实例”(Update all instances of the affected types) 复选框。
    • 选中“删除受影响类型的所有未使用版本”(Delete all unused versions of the affected types) 复选框时,将从项目库中删除所更新类型的所有较早版本。
  5. 单击“确定”(OK) 进行确认。
    将执行更新。
结果
对项目进行了以下更改:
  • 根据需要,从项目库中删除所有较早的版本。
  • 所选设备中的所有实例都将更新为所关联类型的新版本。
  • 如果 CPU 中不包含用户程序中调用的块实例,则系统将从该 CPU 中移除该用户实例。这些类型位于库中。需要时,可在项目中重复使用。
  • 更新过程的日志文件位于项目树中的“公共数据”(Common data) 下。

9.8.5.16 删除实例和类型之间的关联

类型的实例始终与相应类型的版本相关联。 它们与普通对象不同,无法编辑。 如果要编辑实例,则将在库中自动创建该类型的一个新版本,因而这些变更将影响整个项目。
如果删除实例及其类型之间的关联,则可以在项目树中按照普通对象的编辑方式编辑该对象。
要求
实例不能处于“测试”状态。
操作步骤
要删除实例及其类型版本之间的关联,请按以下步骤操作:
  1. 在项目树中选择一个或多个实例。
  2. 右键单击所选择的实例,然后从快捷菜单中选择命令“终止与类型的连接”(Terminate connection to type)。
  3. 此时,将删除与相应类型版本的关联。

9.8.6 使用全局库中的类型

9.8.6.1 将类型添加到全局库中

操作多个项目时,全局库将用作中央资源。 在所有类型中,只有项目库中的类型可以直接编辑。 因此,如果要对类型进行操作,则可使用项目库。 编辑项目库中类型之后,即可将该类型添加到全局库中。 并按照从项目库复制类型的常规过程,从项目库添加类型。
要求
  • 显示“库”(Libraries) 任务卡或打开库视图。
  • 要添加类型的全局库将打开,并且可写入。
操作步骤
若要将类型添加到全局库中,请按以下步骤操作:
  1. 在“库”(Libraries) 任务卡或库视图中,打开全局库中的指定文件夹。
  2. 将一个或多个类型从项目库拖放到“类型”(Types) 文件夹或全局库的任意子文件夹中。
或者:
  1. 将所需类型从项目库复制到剪贴板中。
  2. 在“库”(Libraries) 任务卡的“全局库”(Global library) 选项板中打开所需的全局库。
  3. 右键单击“类型”(Types) 文件夹或其任何子文件夹。
  4. 在快捷菜单中,选择“粘贴”(Paste) 命令。
结果
这些类型将插入到全局库中。 如果相关类型(例如 HMI 用户数据类型或变量的类型)在全局库中不存在,则会将它们也复制到全局库中。 这样,可确保生成实例所需的所有元素都包含在全局库中。
如果类型已在全局库中,则按照所描述的操作更新全局库。 在这种情况下,将该类型的新已发布版本添加到全局库中。

9.8.6.2 使用类型

要使用全局库中的类型,请在项目中的适当点处创建该类型的特定版本的实例。 必要时,也可以同时创建多种使用类型。 类型的使用在项目树中称为实例。
可能的类型版本使用点
适用于全局库中的类型的使用点:
  • 项目树中的文件夹
    可以在项目树中的文件夹中创建类型的实例。 该文件夹必须适用于特定类型。 例如,如果类型为用户数据类型,只能在“PLC 数据类型”(PLC data types) 文件夹中创建实例。
  • 编辑器
    可以在相应编辑器中使用类型创建实例。 例如,可在另一个块中使用函数块类型创建实例。 以这种方式从另一个块中调用函数块类型。
将实例与项目库相关联
在项目中,全局库中类型的实例没有与全局库中的类型相关联。 而是在创建实例时,在项目库中生成类型的副本和相关元素。 例如,相关元素可以是块中所引用的 PLC 数据类型。 在任何情况下,项目库中类型的副本和相关元素都包含与该实例相关联的版本。 如果在项目库中已存在该类型或相关元素,则仅在需要时才在项目库中添加缺少的版本。
这样,该实例终将与项目库中的类型副本相关联。 无论版本如何,只能将类型分配给设备一次。
要求
  • 项目中已包含支持该类型的设备。
  • 而且该设备并未分配给同一类型的其它任何实例。
步骤
要使用项目中的类型版本,请按以下步骤操作:
  1. 在全局库中,选择要从中创建实例的版本。
  2. 使用拖放操作,将类型的废弃版本移到使用点处。
    或者: 要自动使用新版本,请通过拖放操作将类型自身从项目库移到使用点处。
    例如,使用拖放操作将函数块类型移到项目树中 CPU 的块文件夹中。 例如,要从另一个块中直接调用类型,请通过拖放操作将该类型从项库移到程序编辑器中的使用点处。
结果
已在项目库中添加缺失的类型或各个版本。 如果项目库中不存在某个类型,则此类型存储在与以前在全局库中相同的文件夹中。 通过类型及其从属元素创建实例并将此实例插入到使用点处。 此外,还将实例与项目库中的相应类型版本进行了关联。
如果在编辑器中创建了实例,则还会在项目树中的相应点处创建类型实例。 在项目树中会复制库中的文件夹结构。 因此,可在与全局库中相同的文件夹中找到实例。

9.8.6.3 将项目更新到新的类型版本

在具有无数自动化项目的大型企业中,经常需要从中央位置对全局库进行编辑。在编译新版本后,各项目更新后的全局库立即可用。如果收到全局库的更新版本,可以用新版本替换项目中旧版本的实例。如果不希望在整个项目中应该这些更改,则可以将更新限制为项目中的个别设备。
在更新项目或单个设备时,也会使用全局库中类型的新版本对项目库进行更新。
以下元素可选择为更新源:
  • 全局库中的单个文件夹
  • 各种类型
    可以选择多种类型。
要求
  • 当前位于“库”(Libraries) 任务卡或库视图中。
  • 更新后的全局库已打开。
步骤
要使用全局库中的内容更新项目中的实例,请按以下步骤操作:
  1. 选择更新后的全局库或该库中的单个元素。
  2. 右键单击全局库或指定元素,然后从快捷菜单中选择“更新 > 项目”(Update > Project) 命令。
    将打开“更新项目”(Update project) 对话框。
  3. 可以选择整个项目,也可以选择单个设备进行更新。
  4. 选择更新过程的选项:
    • 在此过程中,将始终选择“更新受影响类型的所有实例”(Update all instances of the affected types) 复选框。
    • 选中“删除受影响类型的所有未使用版本”(Delete all unused versions of the affected types) 复选框时,将从项目库中删除所更新类型的所有较早版本。
  5. 单击“确定”(OK) 进行确认。
    将执行更新。
结果
对项目进行了以下更改:
  • 在项目库中,显示所选类型的新版本。并在必要时删除了所有较早版本。
  • 并将所选设备中的所有实例已更新到所关联类型的新版本。
  • 更新过程的日志文件位于项目树中的“公共数据”(Common data) 下。

9.8.7 指定版本

将与内容有关的类型均采用相同的版本号后,库结构可更为清晰明了。同时也可在操作进度上显示相同的版本号。完成多个相关类型操作后,可为这些类型指定相同的版本号。
可提供以下方式为类型指定一个公共的版本号:
  • 通过库中的一个或多个文件夹
  • 通过一个或多个类型
要求
  • “库”(Libraries) 任务卡或库视图处于打开状态。
  • 不能选择处于“测试”或“开发”状态的类型。
步骤
要为多个类型指定同一个版本,请按以下步骤操作:
  1. 选择待指定公共版本的类型。
  2. 在快捷菜单中,选择“指定版本”(Assign version) 命令。
    将打开“指定版本”(Assign version) 对话框。
  3. 必要时,可更改版本的属性:
    • 在“版本”(Version) 字段中,指定新版本号。该版本号必须高于所有所选类型的高版本号。
    • 在“作者”(Author) 字段中,输入发布该版本的负责人姓名。
    • 在“注释”(Comment) 字段中,输入待发布版本的注释信息。
  4. 单击“确定”(OK) 进行确认。
结果
选定的类型版本将进行以下更改:
  • 将使用指定的版本号创建所有选定类型的新版本。
  • 对于新版本以及所有后续开发的新版本,以上特性适用于所有选定的类型。较低的版本不受变更的影响。如果不对属性进行更改,则将应用每种类型上一次发布版本的属性。
  • 只要用户未选择相关类型,该类型的编译编号就会增加到下一个可用编译编号。如果还选择了相关类型,则会分配指定的版本号。
将创建一个日志文件记录所有变更信息。如果在项目库中已确定了类型的版本,则日志文件将位于“公共数据 > 日志”(Common data > Logs) 下的项目树中。如果全局库中已确定了类型的版本,则日志文件将位于全局库下子目录中的“公共数据 > 日志”(Common data > Logs) 文件夹内。

9.9 库中的多用户工程组态

9.9.1 使用库对象进行多用户工程组态

在多用户工程组态系统中,项目库中各对象的标记方式与项目树中的相同。在 TIA Portal 的以下区域中,可标记库对象:
  • “库”(Libraries) 任务卡
  • 库视图
  • 库管理
  • 任何使用位置,如类型实例处
通常采用手动方式标记库对象。
下图显示了“库”(Libraries) 任务卡,其中包含用于多用户功能的标记列和标记的对象:
STEP 7 Professional V14.0使用库
可标记的库对象
下表列出了项目库中和项目实例中可标记为检入的类型:
删除本地会话中的类型
如果要删除本地会话中的类型,则需注意以下事项:
  • 如果版本仍处于测试或编辑状态,则请释放相应的类型。
  • 要删除指定服务器项目中的类型,删除前应在本地会话中标记这些类型。
在本地会话中可删除各种版本,这些版本在服务器项目中仍存在。由于删除一种管理行为,因此需在服务器项目中删除相应的类型及其版本。
更新项目
如果要更新该项目,则需注意以下事项:
  • 更新项目前,对类型进行标记。
  • 在更新项目前,在使用点对 HMI 用户数据类型进行标记。
  • 更新项目时,本地会话中不会应用对 HMI 形式的更改。需在服务器项目视图中更新 HMI 形式。

9.9.2 检入类型和模板副本

在多用户服务器项目中,检入类型与模板副本变更的过程与本地会话中其它所有对象相同。检入某个类型时,该类型的所有版本都将检入。
更新服务器项目
在服务器项目中,库类型和模板副本根据**的 GUID 进行标识和同步。类型和模板副本检入后,本地会话中的更改将应用到服务器项目中。
  • 在服务器项目中应用类型或模板副本的属性,如名称
  • 添加缺失的类型版本
  • 在服务器项目中,应用库中的文件夹结构。但是,空文件夹不会删除。
更新服务器项目时可能会发生一些冲突。可通过以下方式解决各种冲突:
  • 名称冲突
    两个类型的名称不能相同。如果发生名称冲突,本地会话中将自动调整则受影响类型的名称。
  • “测试”或“开发”状态的类型
    在服务器项目或本地会话中,如果某个类型属于其中一种状态,则服务器项目无法更新。在更新服务器项目前,请先释放所有标记的类型。
  • 版本冲突
    如果在服务器项目和本地会话中发现相同版本号对应的内容不同,则将发出一条通知消息。此时,需更改版本号,确保版本号**。

9.10 编辑库元素

在“库”(Libraries) 任务卡或库视图中,可以剪切、复制、粘贴、移动、重命名或者删除类型、主模板和文件夹。对于以上操作,必须使用写权限打开全局库。
说明
类型和主模板的用户自定义文档
用户自定义的文档不受库中任何操作的影响。如果将主模板或类型移到其它位置,则还需要将文件系统中相关的用户自定义文档移到相应位置。
有关使用用户自定义的文档的更多帮助,请参见“ 使用用户自定义文档​ ”一章。
复制类型
将类型复制到剪贴板时应遵守以下规则:
  • 复制类型时始终将其所有关联的版本都复制到剪贴板。并且仅复制先前已发布的版本。
  • 复制类型时始终将其所有相关元素都复制到剪贴板。
  • 主模板及其使用的所有类型版本通常会复制到剪贴板上。
类型版本的复制和粘贴
将类型版本复制到其它库时,目标库中必须已存在这些类型。
剪切元素
只能将之前剪切的库元素粘贴到同一个库中。为此,只能将主模板粘贴到“主模板”(Master copies) 文件夹或它的任意一个子文件夹。与此类似,只能将类型粘贴到“类型”(Types) 文件夹或它的任意一个子文件夹。
粘贴类型
在另一个库中粘贴类型以更新目标库。
将类型粘贴到另一个库时应遵守以下规则:
  • 在进行类型粘贴时将始终包含该类型的所有版本。
  • 如果该类型在目标库中已存在,则所有不可用版本将添加到目标库的相应类型中。
  • 如果目标库中已有一个“发布”状态的版本,则不会再粘贴该版本。
  • 如果目标库中存在“测试”或“开发”状态的相同版本,则将该版本替换为已发布的版本。
  • 如果一个类型需要使用其它类型,还需在相应位置添加这些类型。
粘贴主模板
粘贴主模板时,也会同时粘贴这些副本中包含的所有类型版本。如果库中已存在对应的类型,则只会将缺失的版本添加到相应类型中。如果其中一个所用类型不存在,则将在库的高层级中粘贴该类型。类型包含在主模板中使用的类型版本。
移动元素
当将元素从一个库移动到另一个库时,只复制该元素但不会将其移走。需遵循“粘贴类型”和“粘贴主模板”中介绍的相同规则。
删除类型和类型版本
在删除类型或类型版本时,请注意以下几点事项:
  • 只能删除与其它类型无关的类型或类型版本。
  • 在删除类型时,将删除该类型的所有版本。
  • 如果删除类型的所有版本,则将删除该类型。
  • 如果在项目中删除带有实例的版本,则将从项目中删除这些实例。
  • 如果删除作为主模板同时存储的类型,主模板也会被删除。
删除实例
如果删除与其它实例相关的实例,则在下一次编译时将恢复该实例。而且该实例将重新与原来的类型版本相关联。这样,可恢复项目的一致性。

9.11 使用其它库的内容更新库

可以使用其它库的内容更新现有的库。可通过以下几种方式更新库:
  • 使用其它全局库或项目库中的类型更新全局库
  • 使用全局库中的类型更新项目库
以下每个元素都可选择为更新源:
  • 整个库
  • 库中的单个文件夹
  • 各种类型
    可以选择多种类型。
在更新过程中,新版本将添加到目标库中已存在的类型中。对于目标库中不存在的类型,将连同该类型的所有版本一起复制到目标库中。
说明
复制类型时的用户自定义文档
用户自定义的文档不会与类型一同复制到其它库中。需要手动将这些类型的用户自定义文档复制到相应的目录中。
有关用户自定义文档的更多帮助信息,请参见“ 使用用户自定义文档​ ”部分。
要求
如果要更新一个全局库,则需以写权限打开该库。
操作步骤
要使用另一个库中的内容更新库,请按以下步骤操作:
  1. 选择一个库或库中的单个元素作为更新源。
  2. 右键单击该源,然后从快捷菜单选择“更新 > 库”(Update > Library) 命令。
    将打开“更新库”(Update library) 对话框。
  3. 选择要更新的库类型:
    • 选择“更新项目库”(Update the project library),使用全局库中的类型更新项目库。
    • 如果要更新全局库,则需选择“更新全局库”(Update a global library)。
  4. 可选:如果要更新全局库,则可在下拉列表中选择待更新的全局库。
  5. 选项更新方式:
    • 在此过程中,将始终禁用“更新受影响类型的所有实例”(Update all instances of the affected types) 选项。
    • 如果受影响类型的所有未使用版本在项目中未分配给任何实例而且与其它类型没有任何关联,则在选择“删除受影响类型的所有未使用版本”(Delete all unused versions of the affected types) 复选框时,将从项目库中删除类型的所有较早版本。由于在项目中不会使用全局库的类型,因此在更新全局库时无法选择该选项。
  6. 单击“确定”(OK) 进行确认。
    将执行更新。
结果
对目标库进行了以下更改:
  • 对于目标库中尚未使用的类型,复制时将包含这些类型的所有版本。将更新版本添加到目标库中已存在的类型中。如果目标库中已存在该类型的更新版本,仍会复制新版本,并自动为其指定一个更新的版本号。
  • 如果这些的类型的所有版本在项目中的任何实例中都未使用,则可需要时从项目库中删除这些版本。
  • 并更新过程创建了一个日志文件,记录对目标库执行的所有更改。
    如果已更新了项目库,则日志文件位于“公共数据 > 日志”(Common data > Logs) 下的项目树中。
    如果已更新了全局库,则日志文件位于在全局库下子目录中的“公共数据 > 日志”(Common data > Logs) 文件夹内。

9.12 统一名称和路径结构

可以将库与项目进行统一。 这样有助于更正以下信息:
  • 实例名称:
    在库的开发阶段创建实例时,由于采用系统自动更正,因此实例的名称后将附加“_1”、“_2”,依此类推。 这种扩展名可以防止项目中的名称重复。 在进行统一的过程中,实例将再次采用相关联类型的名称。
  • 路径结构:
    在并行开发或复制相关实例的过程中,可能会造成原始路径结构丢失。 这样会影响项目结构的清晰度。 在统一过程中,将根据库的路径结构对项目中的路径结构进行相应调整。
操作步骤
要统一名称和路径结构,请按以下步骤操作:
  1. 打开库管理。
  2. 单击工具栏上的“统一项目”(Harmonize project)。
    将打开“统一项目”(Harmonize project) 对话框。
  3. 选择要统一库的设备。
  4. 如果要恢复路径结构,则需选择“统一项目和库之间的路径”(Harmonize paths between project and library) 复选框。
  5. 如果要更正名称,则需选择“在项目和库之间统一名称”(Harmonize names between project and library) 复选框。
  6. 单击“确定”(OK) 确认输入。
结果
根据具体设置,将对库和项目中的名称和路径结构进行统一。
记录该项目所进行更改。日志文件位于项目导航中的“公共数据 > 日志”(Common data > Logs) 下。

9.13 清理库

通过清理项目库或全局库,可以删除与项目中任何实例都无关的类型或版本。 这样,不但提高了库中数据的清晰度,同时还缩小了库大小。
清理项目库
要清理项目库,请按以下步骤操作:
  1. 打开库管理。
  2. 单击工具栏中的“清理库”(Clean up library)。
    将打开“清理项目库”(Clean up project library) 对话框。
  3. 选择要删除类型或版本的范围:
    • 要保留高版本号的版本(即使其没有任何实例),请选择选项“删除旧类型版本并保留新类型版本”(Delete old type versions and retain the newest type version)。
    • 如果没有版本与实例相关,请选择选项“删除整个类型”(Delete complete types) 来删除整个类型。
  4. 单击“确定”(OK) 确认输入。
    根据具体选择,从项目库中删除未使用的类型版本或类型。
    将记录这些更改。 日志文件位于项目导航中的“公共数据 > 日志”(Common data > Logs) 下。
清理全局库
要清理全局库,请按以下步骤操作:
  1. 打开库管理。
  2. 单击工具栏中的“清理库”(Clean up library)。
    将打开“清理全局库”(Clean up global library) 对话框。
  3. 单击“继续”(Continue)。
    将删除未使用的类型版本。 通常会保留类型的新版本。
    将记录这些更改。 日志文件位于全局库下子目录中的“公共数据 > 日志”(Common data > Logs) 文件夹内。

9.14 比较库元素

可以将库中的设备与当前项目中的设备进行比较,或者与相同或其它库/参考项目中的设备进行比较。 但是,请注意参考项目为写保护。 也可以将设备中的实例与它们在库中的类型版本进行比较。 但并非所有操作都进行类型比较。 例如,无法使用库中旧版本类型覆盖新版本的实例。
比较库元素时,可以在自动比较和手动比较之间进行切换。
步骤
要比较库元素和项目的设备数据,请执行下列步骤:
  1. 在项目树中,选择要与库元素进行数据比较的设备而且该设备允许进行离线/离线比较。
  2. 在快捷菜单中,选择“比较 > 离线/离线”(Compare > Offline/offline) 命令。
    将打开比较编辑器,并且在左侧区域中显示所选设备。
  3. 打开“库”(Libraries) 任务卡。
  4. 选择要与设备数据进行比较的库元素。
  5. 将库元素拖放比较编辑器的右侧比较区。
    在“状态和操作”区域中,可以使用一些符号来标识对象的状态。 选择对象后,对象的属性和已分配设备中所对应的对象将清楚地显示在属性比较中。
    可随时将其它设备从当前项目、库或引用点拖放到比较区域,开始新的比较。这与拖放到比较区域的设备无关。
继续阅读
weinxin
plc入门知识问答
所有PLC工程师都会关注的微信公众账号,只需输入您的问题,就会有答案
匿名

发表评论

匿名网友 填写信息

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: