Skip to main content

选项卡:用于确定许可证的软件指标

此环境中的度量是与许可证计算相关的单位“值”(数量)。根据产品的不同,这可以是用户代码的大小(以字节为单位)或轴、I/O 通道或现场总线实例的数量。

设备编辑器的选项卡显示一个树结构,其中包含可用于应用程序的指标。通过这种方式,您可以查看当前测量值并检查是否下载到控制器的代码数量超出了许可证允许的数量。许可证是为每个控制器颁发的,因此位于控制器上。许可证检查也在此处进行。

指标在下载过程中传输到控制器。单击时它们会刷新 构建 → 生成代码 对于活跃的应用程序。

从设备读取当前指标

从控制器获取和传输指标并将它们显示在 设备价值 柱子。

生成代码来计算指标

必须生成代码才能计算指标。

显示许可证

打开 许可证 对话

对话框显示该项目所需的许可证。 在商店中打开所有内容并关闭对话框 命令打开建议的产品 CODESYS Store International

如果您想在 CODESYS Store North America,那么你需要选择 北美 存储在 CODESYS 选项。

指标

每个应用程序的指标类型

项目价值

开发系统中使用的标签数量。该值是在代码生成期间测量的(构建 → 生成代码 命令)。

有关计算的详细信息,请参见 值的计算 部分。

注意:如果删除应用程序的编译信息,则这些值将重置为0。

最大限度。允许

根据控制器上的许可证,每个应用程序允许的最大值

设备价值

实际测量值,从控制器读取

注意:要确定这些值,通信必须有效。

值的计算

公制

确定值

用户代码大小

值(以字节为单位)

仅评估用户编程的代码(实现)。未使用 IEC 编译器编译的代码不会被评估。

声明中变量的数量和大小不相关。

对用户开发的 IEC 库进行代码大小评估。标准库、系统库和通信堆栈 CODESYS GmbH 不予评价。

任务组分配

对于任务配置中 IEC 任务组的配置,如果 IEC 任务在不同的 CPU 内核上执行,很多情况下需要“任务组分配”许可证。

以下配置不需要许可证:

  • 具有以下属性的已配置任务组

    • 固定

    • 固定核心

    • 顺序固定 (仅一个 IEC 任务)

  • 多个配置的任务组均在同一个 CPU 核心上运行

是的

以下配置需要许可证:

  • 具有以下属性的已配置任务组

    • 自由浮动

    • 顺序固定 (多个 IEC 任务)

  • 具有属性的多个配置任务组

    • 自由浮动

    • 顺序固定

  • 配置多个任务组,所有任务组都在不同的 CPU 核心上运行

现场总线, 输入/输出通道

具有基本数据类型的映射通道数(BOOL, INT, REAL,...)。映射复杂数据类型时(STRUCT, ARRAY),统计基本数据类型的子元素个数。

重要

如果您选择了 始终更新变量 选项,则计算中将考虑所有通道,无论它们是否分配给特定的 IEC 变量。

CANopen、Modbus、PROFIBUS 实例

使用的该类型的现场总线堆栈实例

主站/控制器或从站/设备在设备配置中被视为一个实例。设备树中链接到这些主站/从站的设备不计算在内。这些是通过 I/O 通道进行计数的。现场总线网关也算作一个实例(例外:CANopen 网关)。

有关更多信息,请参阅以下内容: 现场总线 — 许可

EtherCAT、EtherNet/IP、PROFINET、SAE J1939 实例

可视化标签数量

可视化 – 许可

软运动

SoftMotion – 许可

沟通

沟通 – 许可

有关基于应用程序的许可证的许可证包的信息,请参阅 CODESYS 商店

现场总线根据相应现场总线类型的创建实例数量进行许可。每个生成的现场总线堆栈实例都将添加到确定许可证所需的软件指标

. 以下内容作为实例适用:
  • 在设备树中创建的现场总线的客户端(主站、控制器)

  • 在设备树中创建的独立远程服务器或本地服务器(从属服务器、设备)

  • 通过相应库以编程方式创建的现场总线堆栈实例

  • 现场总线网关,CANopen 网关除外

. 以下内容不适用于实例:
  • 设备树中配置在客户端(主服务器)下方的所有服务器(从服务器)。这些都是通过使用的 I/O 通道考虑在内的。

因此,实例数对应于实际使用的某一类型的现场总线堆栈实例的数量。

该示例使用 Modbus 来解释如何确定为您确定合适的许可证所需的实例数量。

Softwaremetriken_Lizezierung_Feldbusse.png

设备树中显示以下实例:

(1)

在客户端设备下方插入两台服务器设备。

客户端被视为一个实例,分配给它的两台服务器不算作一个实例。

这加起来总共有 1 个实例。

(2)

实例在本地实例化为服务器。多个客户端可以访问这些数据。

该服务器被计为 1 个实例。

(3)

分配给远程 TCP 服务器的 TCP 客户端被视为一个实例。插入的远程 TCP 服务器不作为实例应用,因此不计算在内。

TCP 客户端被计为 1 个实例。

(4)

这些本地 TCP 服务器各代表一个实例。多个 TCP 客户端可以访问他们的数据。

这加起来总共有 2 个实例。

(5)

结果:对于此示例配置,计算了 5 个实例。

525. 声明示例
PROGRAM PLC_PRG
VAR	
   FB_Client_TCP: ModbusFB.ClientTCP;  // = Modbus_Client_TCP  - count license +
   FB_Server_TCP_Local: ModbusFB.ServerTCP;// = Modbus_Server_TCP_Local - count license +
   FB_Server_TCP_Local2: ModbusFB.ServerTCP;// = Modbus_Server_TCP_Local2 - count license +
   FB_Read_Write: ModbusFB.ClientRequestReadWriteMultipleRegisters; // = Modbus-Server Remote 
   FB_Read: ModbusFB.ClientRequestReadHoldingRegisters; // = Modbus-Server Remote
   FB_Write: ModbusFB.ClientRequestWriteMultipleRegisters ; // = Modbus-Server Remote
END_VAR


在示例中创建的服务器和客户端的 Modbus 实例是通过编程方式创建的 ModbusFB 库(声明)。

该声明包括:

  • 2 个服务器实例

  • 1 个客户端实例

结果:在本示例中,计算了 3 个实例。

Kopie_von_gesamte_Instanzen_count.png

要刷新显示屏,必须编译项目。在示例中,总共可以看到 8 个实例 用于确定许可证的软件指标 中的选项卡 CANopen、Modbus、PROFIBUS、SAE J1939 的实例 区域。

总共计算了 8 个 Modbus 实例,因此在本示例中需要以下许可证包:

CODESYS Control Standard M