n
描述:
当使用S7 F systems V6.0 和 CFC V7.0 SP1组态F程序时,对CFC进行 "Changes" 编译可能会中途终止。即便没有对F程序进行任何的修改,随后的完全编译也将导致F程序的overall Signature的变化。随后进行"change only"下载时,程序的安全模式将不能激活。必须通过F_SHUTDN功能块进行Full shutdown后才能重新启动安全程序。n
在什么情况下可能会发生上述问题?
当使用S7 F systems V6.0 和 CFC V7.0 SP1组态F程序时,并且在项目中使用了FC 0或 SFC 0功能块。通常PCS7系统会自动创建FC 0。n
如何避免该问题?
如下有两种方法可以避免该问题的发生。n
选项 1: 从项目中删除FC 0 和 SFC 0
按照如下方法即可从项目中删除 FC 0和SFC 0 功能块,从而避免上述问题的发生:n
- 可通过如下方法避免CFC使用FC 0,在CFC菜单 Tools -> Settings -> Compilation/Download 中设置 FC 块号保留范围从 0到 xxx。
图. 01 - 在程序中不要自己创建FC 0块,如果已经创建,请重命名。
- 如何防止CFC图表中使用SFC 0,在CFC中如果调用了SFC 0,则可以通过将此调用封装在一个新的FC/FB中,然后将CFC中调用的SFC0删除(在FC中调用时,请注意允许的数据类型)。然后打开CFC菜单 Tools -> Block types...,点击Clean up按钮。
- 使用Entire program方式编译CFC。
更改后程序需要通过完全下载的方式才能下载到F CPU中。
选项2:限制多用户工程
如果不能对当前CPU进行完全下载(CPU 需要STOP),那么可以通过如下方式在项目中使用 FC 0/SFC 0。但操作过程中必须考虑多用户工程的情况。限制:
在包含安全程序及硬件组态的项目中,必须确保生成或装载过程运行时,没有其它用户正在对CFC进行组态工作。
如下步骤演示如何操作。
注意:下列中第一点必须在每一个ES站的用户上进行一次操作。第二点和第三点则只需要每个项目执行一次操作。
- 运行 S7F-FC0.exe,激活选项 Allow F-Block types and FC0/SFC0 Blocks,点击 OK按钮,点击 Close 按钮关闭程序。
图. 02 - 在CFC中任意进行一次假的改动(例如,更改一个标准参数,然后恢复更改). 。
- 使用Changes Only进行CFC编译。
- 现在即可按通常的情况继续使用安全程序而无需重新装载安全程序。
S7F-FC0.ZIP ( 52 KB ) ( 52 KB )
原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc334763.html