分享

TIA protal与SCL从入门到精通(3)——软件单元基本介绍

 阆苑仙境rqb 2020-07-31

1.绪论

TIA15.1中在1500系列的PLC中(固件版本在2.6或以上)引入“软件单元”的概念,通过软件单元,能够将用户程序细分为各个的程序部件,分别进行编辑和下载。很像C++中的类,但是他的功能主要应用在生产过程中的多人协调生产,在化工生产过程中能够体现较大的效用。

每个软件单元中都包含有以下主要元素:

1、关系:通过关系表,可设置从当前软件单元对以下对象的访问方式:

  • 其它软件单元中已发布的块和 PLC 数据类型

  • 软件单元之外的全局数据块

  • 工艺对象

2、“程序块”(Program blocks) 文件夹:在该文件夹中,可创建各种程序块(组织块、函数块、函数、数据块)。

3、“PLC 变量”(PLC tags) 文件夹:在该文件夹中,可创建 PLC 变量表、PLC 变量和常用常量。

4、“PLC 数据类型”(PLC data types) 文件夹:在该文件夹中,可创建 PLC 数据类型。

5、PLC 监控和报警:可打开报警和监控编辑器。

6、PLC 报警文本列表:可打开文本列表编辑器。

在软件单元内创建用户程序,是对现有编程方式的一种扩展。即,用户可灵活选择在软件单元之内或之外创建程序段。

2.软件单元使用的基本注意事项

使用软件单元时,需注意以下信息:

1、软件单元可与所有型号的 S7-1500 CPU(固件版本 V2.6 或更高版本)一同使用。
每个 CPU 最多可使用 255 个软件单元。

2、由于每个软件单元程序都是单独独立的,所以该软件单元的所有程序块均选定 “优化块访问”(Optimized block access) 属性 ,且无法禁用。

3、如果支持软件单元的设备已创建有一个在线备份,则不支持软件单元的设备无法使用该备份。

4、程序消息中包含所有块的信息,而与这些块是否在软件单元中创建无关。

5、软件单元中的数据块和变量也将显示在设备代理中,因此可以导入和导出。数据的导入和导出与这些块是否已发布无关。

6、OPC UA 客户端接口:系统在 OPC UA 客户端接口处生成的组态数据块(“<客户端接口名称_Configuration>”),通常在软件单元外生成。如需访问,则可创建一个与这些客户端接口的关系。为此,可使用“软件单元之外的数据块”(Data block outside of the software unit) 选项作为关系类型。

3.软件单元编程的基本注意事项

在软件单元内进行编程时,需注意以下事项:

该软件单元的所有程序块均选定“优化块访问”(Optimized block access) 属性,且无法禁用。即,将软件单元之外的块移动到软件单元中时,需启用该属性。因此,请勿执行带有需绝对寻址参数的指令,如“PUT”或“GET”。

在一个软件单元外创建的程序段,无法访问一个软件单元内创建的程序段。一个软件单元内编程的块无法访问软件单元之外的块。但用户可选择一个软件单元,允许访问软件单元之外的特定程序元素。例如,访问软件单元之外的全局数据块和工艺对象。

  • 软件单元内的程序代码是整个用户程序的一部分。因此,块名称需在整个 CPU 内保持唯一。

  • 在软件单元内,仅支持符号化编程方式。

  • 在软件单元内,不支持故障安全块(F 块)。

  • 除了组织块 (OB) 之外,其它所有块均为系统自动编号。自动分配的块编号在系统中不显示,但可在块属性中查看。

  • 块接口中,不支持参数类型“TIMER”、“COUNTER”、“BLOCK_FB”和“BLOCK_FC”。

  • PLC 变量表中,不支持位存储器、“Timer”函数和“Counter”函数。此时,可使用 IEC 定时器和计数器。

  • 软件单元可单独编辑和加载。如果同一个软件单元中的块在多个编辑器进行了更改,则可在加载过程进行数据同步。

  • 系统常量在相关对象所在的软件单元中创建,不能被发布。即,无法从该软件单元之外进行对它访问。

  • 当使用系统中用作函数或函数块的各指令时,这些系统函数或系统函数块将在该软件单元外的“系统块”(System blocks) 文件夹中进行创建。而系统函数块中该数据块的单实例则与之不同,在相应软件单元的“系统块”(System blocks) 文件夹中创建且状态为“未发布”。如果需要移动该数据块并进行访问,则需将访问方式更改为“已发布”(Published) 并创建一个与该数据块关系。

  • 使用软件单元不会更改变量通过 HMI 或 OPC UA 的访问方式。这些选项仍在本地变量的块接口中或全局变量的 PLC 变量中定义。

3.软件单元支持编程语言

编程语言
在软件单元中,可使用以下编程语言:

  • LAD

  • FBD

  • SCL

  • GRAPH

  • ProDiag

在软件单元中,编程语言 LAD、FBD、SCL 和 GRAPH 的应用与其它环境中并无任何差别。在软件单元中进行编程时,请注意以下 ProDiag 特别事项:

  • 特定监控文本中引用的用户自定义文本列表可存储在任何软件单元中,但不能存储在软件单元之外。

  • 每个软件单元都带有一个自己的 ProDiag OB,并对其指定一个 >=250 的编号,而 ProdDiag FB 的全局变量监控只能监控同一个软件单元中的操作数。

  • ProDiag FB 仅包含引用同一个软件单元中参数的块监控。ProDiag FB 无法发布。因此,无法从其它软件单元中进行访问。

  • 仅当在软件单元中执行写入操作且 ProDiag FB 位于全局监控和调用中时,才能对该 ProDiag FB 进行初始值采集。

原文链接:https://blog.csdn.net/anhongning123/article/details/105709773

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多