技术支持——西门子S7-1500和1200PLC存储区域保持性设置
1 存储区(M 、定时器、计数器)的保持性设置
与 S7-300/400 一样,S7-1500 和 S7-1200 都有存储区 M 区,另外 S-1500 还有存储区(定时器、计数器),这些区域都可以设置保持性。下面详细介绍如何设置这些区域的保持性。在创建项目中,双击“PLC 变量”中的“显示所有变量”,在点击带有电池和扳手的图标,
如下图所示。
点击保持性设置图标后,弹出“保持性存储器”对话框,在此界面可以设置 M 区、定时器和计数器的保持性大小,如下图所示。
但是 S7-1200 不支持 S5 定时器和计数器(图中设置区域显示为灰色),因此无法设置定时器和计数器的保持性(即显示灰色),如下图所示。
2 局 全局 DB 块保持性的设置
从访问方式上,全局 DB 块分 2 种类型:DB 块优化和非优化;下面对这 2种类型分别介绍保持性的设置。
2.1 的 非优化的 DB 块保持性设置
进入 DB1 的属性框,“常规-〉属性”下,将“优化的块访问”勾取消,如下图所示。
S7-1500 和 S7-1200 创建 DB 块,默认情况是优化的块访问(即:符号访问),因此将此项取消,如下图所示。
双击打开非优化的 DB 块,在“保持”一列任何一个框打勾,如下图所示。注意:由于这是非优化的 DB 块,因此如果该 DB 块中的变量需要保持,就是所有变量都被设置成保持(即:“保持”一列全部被勾选上)。
2.2 的 优化的 DB 块保持性设置
在前面 2.1 章节介绍了,创建 DB 块,默认情况下是优化的块访问,如图 2-1所示。双击打开优化的 DB 块,在“保持”一列进行勾选。需要说明,由于这是优化的 DB 块,因此如果该 DB 块中的哪个变量需要保持,就在该变量这一行的“保持”打勾,而优化的 DB 块的变量是可以进行单个设置保持性的,如下图所示。
3 背景数据块保持性的设置
背景数据块保持性的设置与 FB 块是密不可分的,下面详细介绍。
3.1 的 非优化的 FB 块的背景数据块保持性设置
进入 FB1 的属性框,“常规-〉属性”下,将“优化的块访问”勾取消,如下图所示。
S7-1500 和 S7-1200 创建 FB 块,默认情况是优化的块访问(即:符号访问),因此将此项取消,如下图所示。
双击 FB1,进入 FB1的块接口里,如下图所示,Input 添加两个 Int 类型的变量 Input_1 和Input_1,Output 添加一个 Int 类型变量 Output_1。可以看到块接口区域没有“保持”这一
列设置。
在 OB1 中调用 FB1,生成背景数据块 DB1,如下图所示。
双击 DB1,可以看到“保持”这一列,这与非优化的 DB 块情况一样,在“保持”一列任何一个框打勾,所有变量都被设置成保持(即:“保持”一列全部被勾选上),如下图所示。
3.2 的 优化的 FB 块的背景数据块保持性设置
在前面 3.1 章节介绍了,创建 FB 块,默认情况下是优化的块访问,如图 3-1所示。双击打开优化的 FB2 块,在“保持”一列进行勾选。由于这是优化的 FB 块,因此如果该 FB 块中的哪个变量需要保持,可以看到有 3 项选择:“非保持、保持、在 IDB 中设置”,如下图所示。
下面来分别说明,第一种情况,设置“保持”。优化的 FB 块的接口变量可以单个选择,当需要哪个变量保持,就在该变量这一行的保持列选择“保持”,如下图所示。
在 OB1 调用 FB2,生成一个 FB2 的背景数据块 DB2,双击打开 DB2,可以看到保持一列完全是按照之前 FB2 接口变量保持一列设置来显示的,如下图所示。
第二种情况,设置“在 IDB 中设置”。优化的 FB 块的接口变量可以单个选择,当需要哪个变量设置,就在该变量这一列的保持栏进行设置,在此选择“在 IDB 中设置”,如下图所示。当选择该选项,就是将保持性的设置交给背景数据块来设置。创建一个与 FB2 一样的 FB3,在保持一列将 2 个变量选择“在 IDB 中设置”。
在 OB1 调用 FB3,生成一个 FB3 的背景数据块 DB3,双击打开 DB3,可以看到保持一列完全是按照之前 FB2 接口变量保持一列设置来显示的。如果需要设置保持,那么这些被设置成
“在 IDB 中设置”的变量全部被设置成“保持”(即“保持”都被勾选),如下图所示。