PLC 移植将自动修改 GRAPH 程序,以尽量适应新的 CPU 系列。 在此过程中,将对编程条件语句中的操作和 LAD 或 FBD 程序段进行分析。 并对 S7-1500 中无效的程序结构进行更新。 同时会将新 CPU 中无法使用的指令替换为相应的 S7-1500 指令。
集成符号编程是 SIMATIC S7-1500 中的一个特性。 通过这种方式较大地提高了编程效率,同时还降低了访问错误的风险。
如果原程序使用符号名称尚未声明的**地址,则会将该**地址标记为无效。 编译移植程序之前,必须先对符号名称进行声明。
如果原程序中使用已声明了符号名称的**地址,则在移植过程中将使用符号名称而非**地址。 将使用片断访问代替对所声明符号操作数中各个位的访问。
以下示例说明了移植前的**地址访问:
%DB1.DBx1.1 |
而下面显示的则是在移植过程中如何替换**地址访问。 由于在“DataBlock1”中**个数据字节声明为“FirstDataByte”变量,因此可将该变量中**个位的访问替换为一个片段访问。
"DataBlock1".FirstDataByte.x1 |
在 S7-300/400 程序中,通常经常使用部分限定寻址进行间接访问。 此时,只能*数据块中的 DB 变量地址。 而不会*地址中的 DB 名称或 DB 编号(如,%DBX0.2)。 在运行过程中,程序将访问 DB 寄存器中当前存储的数据块。 S7-1500 不支持部分限定寻址。要间接寻址 DB 变量,则可以使用“DB_ANY”数据类型的块参数。
如果在 GRAPH 程序中使用了部分限定地址,则在移植后将报告为错误。 同时该块无法编译。 此时,需要将部分限定地址替换为完全限定访问。
Transition、Interlock、Supervision 和 Permanent 指令中的 LAD 或 FBD 程序段的移植过程,与单纯 LAD 或 FBD 块中程序段的移植过程相同。
另请参见: 将 LAD/FBD 程序移植到 S7-1500
SIMATIC S7-1500 对指令集进行了稍许修改。 包含有一些新指令或替换了旧指令。
如果在 GRAPH 操作中使用了这些指令,则在移植过程中将检查在 S7-1500 是否支持这些指令。并尽可能延续使用这些指令。 如果一条指令在 S7-1500 中不可用,则将尝试将其替换为一个兼容的或类似的指令。
例如,“RLDA: 循环左移状态位 CC 1”和“RRDA: 循环右移状态位 CC 1”指令。 这两个指令将替换为“ROR: 循环右移”和“ROL: 循环左移”指令。
如果在移植过程进行指令替换,则将在移植日志中进行相应记录。 然后,需要再次检查移植后的程序并进行必要的修改。
产品推荐
友情链接