Skip to main content

部分:CFCCreation

本节包含由 CFC 生成器解释的所有小节。

SEC cfc.CFCCreation

    SEC CreateCFCProgram : <CFC program identifier>    //optional: yes, modifier [UPDATE]
            StandardCallTask := <Task type>;               //optional: yes, type: ID
            CustomCallTask := <Task type>;                 //optional: yes, type: ID
            ParentFolder := <create folder ID;             //optional: yes, type: ID
    END_SEC

    SEC CreateCFCModuleCall                            //optional: yes, modifier [UPDATE]
            PreferredCFCProgram := <CFC program>           //optional: yes; type: FB type
    END_SEC

    SEC CreateCFCIOCall : <CFC IO call ID>             // optional: yes; modifier [UPDATE]
            FB := <FB name>;                               // optional: no; type: FB type
            PreferredCFCProgram := <CFC program>           // optional: yes; type: FB type
            FBInstanceBaseName := AInput;                  // optional: yes; type: identifier
    END_SEC

    SEC CreateFolder : <folder ID>                     //optional: yes, modifier [UPDATE]
            ParentFolder := <folder name>;                 //optional: yes, type: ID
    END_SEC

END_SEC

有关定义类型语法的详细信息,请参阅 部分 模块声明

小节:CreateCFCProgram

如果模块声明包含一个节 cfc.CFCCreation 包括本小节 CreateCFCProgram,将为指定的模块类型创建一个 CFC 程序。 CFC 程序将插入到下一个更高顶级/解耦父模块实例的目标应用程序下方。定义 CustomCallTask 或者 StandardCallTask 可用于定义调用要创建的 CFC 程序的任务。

. 规格:
  • 本节的目标 CreateCFCProgram 标识该模块类型的 CFC 程序。基本上,模块类型可以为其模块实例定义和创建多个 CFC 程序。

  • 的定义 StandardCallTask 或者 CustomCallTask 必须存在,但只允许有一个定义。

    • 为了 StandardCallTask 三个ID LOW, MEDIUM, 和 HIGH 可用于定义下一个更高顶级/解耦父模块实例的任务。

    • 为了 CustomCallTask 所有目标 ID 均可用,可用于下一个更高顶级/解耦父模块实例的相应自定义任务。

  • ParentFolder 的目标 ID CreateFolder 可以进入部分。然后将创建的 CFC 程序添加到该子子文件夹中(CreateFolder)。

小节:CreateCFCModuleCall

如果模块声明包含一个节 cfc.CFCCreation 包括本小节 CreateCFCProgram,将为下一个更高父模块实例的 CFC 程序中分配的模块类型创建模块实例 FB 的调用。

. 规格:
  • PreferredCFCProgram 定义当有多个程序可用时要使用的 CFC 程序。

小节:CreateCFCIOCall

该部分用于标记模块类型或模块声明的 I/O。对于这些 I/O,将创建已定义类型的 FB 实例。然后在 CFC 程序中创建对这些 FB 实例的调用。

. 规格:
  • 的目标 CreateCFCIOCall 部分定义将为其创建全局 I/O FB 的模块 I/O ID。创建的 I/O FB 将在 CFC 程序中调用。

  • FB 定义全局实例化并为上述 I/O FB 调用的功能块类型。

  • PreferredCFCProgram 定义当有多个程序可用时要使用的 CFC 程序。

  • FBInstanceBaseName 定义一个“基本名称”,用于命名所创建的 I/O FB。如果定义不存在,则模块实例的名称将用作基本实例。

小节:创建文件夹

此部分包含用于在下面创建子文件夹的参数 AC_CFC_Programs 文件夹。对应这个a ParentFolder 可以定义在 CreateCFCProgram 部分。然后在创建的目录中生成 CFC 程序 CreateFolder 部分。文件夹本身可以定义一个 ParentFolder 指定更多子文件夹和子子文件夹。

. 规格:
  • ParentFolder 的目标 ID CreateFolder 可以进入部分。然后创建的目录将在该子文件夹中创建(CreateFolder)。

39. 例子
 SEC cfc.CFCCreation
                SEC CreateCFCProgram : Standard
                        StandardCallTask := MEDIUM;
                        ParentFolder := SubFolderUnderFolder;
                END_SEC
        SEC CreateFolder : SubFolderUnderFolder
                ParentFolder := SubFolder;
        END_SEC
END_SEC