AS控制器内存分配及优化
西门子SIMATIC S7家族中的控制器按照应用场合、性能等分为S7-1200、S7-200、S7-300、S7-400等各种不同的系列。而每一系列中又细分不同的型号,例如,S7-400系列中有S7-412、S7-414、S7-416、S7-417等型号。不同系列、不同型号的控制器对应不同的控制性能(运算速度、内存容量等)。本文基于S7-400系列控制器,详细介绍内存的类型、分配情况及实际使用过程中可能的内存优化方法。
1.内存类型
1.内存类型
S7-400型控制器的内存按照功能的不同,可以分为:
√ 系统内存(System Memory)--- 控制器的自身功能(M、T、C等)
√ 工作内存(work Memory)--- 用于运行程序;
√ 装载内存(Load Memory)--- 用于装载程序;
其中,工作内存部分又可以细分为:
√ 代码工作内存(Code Memory)--- 用于运行程序的代码部分;
√ 数据工作内存(Data Memory)--- 用于运行程序的数据部分;
S7-400型控制器的内存按照集成方式的不同,可以分为:
√ 集成内存(Integrated)--- 直接集成在控制器内部随控制器一起提供,无需额外订购;
√ 扩展内存(Expanded)--- 通过扩展存储卡的方式扩展提供,需要额外订购;
一般情况下,控制器的工作内存不可扩展,而装载内存则可以通过FEPROM或RAM的方式进行扩展。如果希望和集成的RAM装载内存无缝扩展使用,则扩展的装载内存必须选用RAM类型。下图为CPU 412的性能参数示例。
图 1 CPU 412的性能参数示例
2.内存分配
控制器内存详细分配情况如下表所示。#
内存类型 | 内容 | 注释信息 |
装载内存 | 系统数据/System Data | 硬件组态数据 |
程序块/Program Blocks | 程序块 | |
(FBs,FCs,OBs,Symbols1),Comments1)) | ||
工作内存 | 数据块/Data Blocks | 数据块 (DBs) |
(数据部分) | 系统数据/System Data | 硬件组态信息,非装载内存中的全部硬件组态数据 |
SFC动态创建的DB块/DBs Created by SFC | 通过SFC21/22等动态创建的数据块 | |
本地数据/Local Data | 各优先级中断所需的临时数据存储区 | |
工作内存 | 逻辑功能块/Logic Blocks | 逻辑功能块 (FBs,FCs) |
(代码部分) | 通信数据缓冲/Communication Data Buffer2) |
新闻详情