n
在 STEP 7 编程语言梯形图 (LAD) 和功能块图 (FBD),当使用 FM352-5 编译时会发生错误。n
以下信息是针对 LAD 和 FBD 的。
推荐在多段 network 中使用以下解决方案n
注意:
如果工作在调试模式,所有的例子都将被正确地执行。这是因为程序没有运行在 FM352-5 模块中,而是在 CPU存储器中。n
有效性:
Programming Tools V1.2.1.0 的下一个发布的版本将清除这种编译器行为。n
LAD 解决方案
如果使用 OR 连接直接从总线连接一个或多个嵌套子逻辑回路将会发生编译错误。n
图01: 第二个顺序程序中带有嵌套逻辑的 OR 连接n
因为第二 (2) 顺序中有嵌套,在执行编译时产生错误。
编译器使 OR 连接成为第一个子逻辑 (1)与触点#Din[0] 的连接功能替代第二个子逻辑的功能。n
通过在 network 的开始进行逻辑嵌套做补救措施
为了避免编译错误,先编写嵌套子逻辑 (3) ,然后编写无嵌套的子逻辑 (4) 。n
图02: 第二顺序控制使用简单逻辑进行 OR 连接n
因为顺序控制 4 是一个简单的连接,顺序 3 和 4 的 OR 连接在编译后产生正确结果。n
通过分离成几个单独的 network (首选的解决方案)
如果可能,通常应该将顺序控制分解成几个独立的 network避免编译错误发生。n
图03: Network 1n
图04: Network 2n
图05: Network 3
因为顺序 5 和 6 在不同的 network 中, 逻辑编译正确。顺序 7 的逻辑现在变为了简单的 OR 连接,并且不会产生编译错误。
FBD 解决方案
如果使用 OR 连接直接从总线连接一个或多个嵌套子逻辑回路将会发生编译错误。
图06: 第二个顺序程序中带有嵌套逻辑的 OR 连接
因为第二 (2) 顺序中有嵌套,在执行编译时产生错误。
编译器使 OR 连接成为第一个子逻辑 (1)与触点#Din[0] 的连接功能替代第二个子逻辑的功能。
通过在 network 的开始进行逻辑嵌套做补救措施
为了避免编译错误,先编写嵌套子逻辑 (3) ,然后编写无嵌套的子逻辑 (4) 。
图07: 第二顺序控制使用简单逻辑进行 OR 连接
因为顺序控制 4 是一个简单的连接,顺序 3 和 4 的 OR 连接在编译后产生正确结果。
通过分离成几个单独的 network (首选的解决方案)
如果可能,通常应该将顺序控制分解成几个独立的 network避免编译错误发生。
图08: Network 1
图09: Network 2
图10: Network 3
因为顺序 5 和 6 在不同的 network 中, 逻辑编译正确。顺序 7 的逻辑现在变为了简单的 OR 连接,并且不会产生编译错误。
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc334557.html