问题1. CFC 里能不能调用LAD/STL编写的FC/FB
在CFC中可以调用其他编程语言编写的FC/FB,例如使用LAD编写的设备逻辑处理代码等。
使用LAD/STL等编写FC/DB时需要注意功能块号的选择,具体信息请参考问题2;
问题2.如何查看CFC中给用户预留的FC/DB范围
在CFC的编程窗口中,依次打开菜单项
“Options" >“Customize" >"Compile/Download":

在弹出的窗口中,"Areas Reserved for Other Applications”中可以设置和查看给用户预留的FC和DB范围
问题3.修改FC/DB块范围时报错
CFC编译过程中会根据Chart中插入的功能块和运行组的设置,自动创建FC和DB块。如果程序中还有通过LAD/STL/FBD创建的FC和DB,在CFC编译过程中为了保护这些用户代码,可以指定哪些范围中的FC和DB块被保留。
根据实际需要可以调整预留的FC和DB块的范围,但在调整过程中,可能会弹出如下错误提示:

导致这个问题的原因是设置的新范围并不能涵盖所有用户自定义的FC/DB。可以将涉及到的FC/DB修改块号来适应新的范围。
在FC/DB的范围设置窗口中还可以通过“Compress”选项来调整CFC相关的FC/DB以实现块号的连贯性。但使用这个功能需要注意:
1、使用Compress之前使用Read Back功能回读参数;
2、Compress之后需要对CPU进行全部下载;
3、对OS重新编译和下载。
问题4.CFC中如何监控功能块和变量
完成CFC的编译和下载之后,点击工具栏上的按钮,即可开启测试模式( "TestMode")。在测试模式下选中需要监控的功能块,点击右键选择"Watch On”,或者在菜单"Debug”下选择Watch On”"。此时该功能块的监控列表( "Watch List")中包含的管脚都会开始监控。如果需要监视该功能块的其他管脚,则可以选择该管脚,点击右
键选择“Add I/O",或者点击功能工具栏上的一即可将其添加到功能块的Watch List中:

每次开启测试模式,所有的功能块管脚不会自动被监控,这是因为默认情况下,CFC为了降低监控通讯负荷对AS的影响,都是在运行模式( "Process Mode")工作。但是,也可以在CFC编程窗口的菜单项"Debug”中选择"Laboratory Mode'来激活实验室模式。工作在这种模式下,只要测试模式开启,CFC中所有功能块的Watch List中包含的管脚都会自动被监控。
问题5.如何禁用部分CFC的执行
默认情况下,CFC中插入的功能块都是隶属于某个OB3x下、以CFC名称命名的运行组。双击功能块上的高亮区即可打开运行组窗口
在运行组编辑器中也可以自己创建新的运行组,将需要禁用的功能块拖放到其中。在程序中可以通过-一个BOOL类型的输出来激活/禁止-一个运行组,具体过程是:
选择一个功能块的BOOL类型输出管脚,点击菜单项"Insert"→“Interconnection toRuntime Group...":
编译下载程序。只要上图中“StruDiIn”的管脚"Value"为0,名为"TIC 1003"的运行组就会被禁止执行。