西门子plcS7-1500中FC块优化的块访问有什么意义

西门子plc 发布于 4星期前 分类:S7-1500

看“使用 AT 覆盖变量”资料时发现,在FC中使用使用 AT 覆盖变量,FC块需要去除优化访问才可以,不禁想,FC没有内存,那么S7-1500中FC块优化的块访问有什么意义?

2个回复

  • plc电工爱好者
    plc电工爱好者

    针对优化访问块的变量声明只包含数据元素的符号名称。 系统将自动优化并管理地址。 这将提高 CPU 的性能并同时有效防止来自诸如 SIMATIC HMI 的访问错误。
    可优化访问的数据块

    可优化访问的数据块没有固定的定义结构。 在声明中,仅为数据元素分配一个符号名称,而不分配在块中的固定地址。 这些元素将自动保存在块的空闲内存区域中,从而在内存中不留存储间隙。 这样,可以提高内存空间的应用率。
    在这些数据块中,变量使用符号名称进行标识。 要寻址该变量,则需输入该变量的符号名。例如,可通过以下方式访问“Data”数据块中的“Fill Level”变量:
    "Data".Fill Level
    可优化访问的数据块具有以下优势:
    可以使用任意结构创建数据块,而无需在意各个数据元素的物理排列方式。
    由于数据的存储方式已优化并由系统进行管理,因此可快速访问经优化的数据。
    不会发生访问错误,如,间接寻址或 HMI 进行访问。
    可以将指定的单个变量定义为具有保持性。
    默认情况下,优化块具有一个预留存储区,可以在操作过程中对函数块或数据块的接口进行扩展。无需将 CPU 设置为 STOP 模式,即可下载已修改的块,而不会影响已加载变量的值。

    FC在运行的时候,也会占用一定内存,特别是有申请的临时变量等情况的时候,占用的内存也是比较多的,优化的访问应该是能对内存进行优化,节省内存空间

  • plc电工爱好者
    plc电工爱好者

    已阅,最佳答案正确。举个简单的例子,优化访问的FC中定义了临时变量,每次调用这个FC时,FC中的临时变量都会由系统自动清零。非优化的FC就没有这个功能。