quote:以下是引用n次看你的背影在2012-12-22 20:53:47的发言:
2、实际项目应用中如何选取FB或FC
在S7-200中,没有FB也没有背景数据块;在S5中也没有背景数据块;可它们的子程序都能实现需要2个周期或几个周期实现的功能;在S7-300、400中并非只有FB才能实现,同样FC也能实现并进行移植。
在实际项目应用中:选择FC还是选择FB,还没有看到官方给出明确的定论。其实也没有必要下定论,用户可以根据对其掌握的熟练程度进行选择应用。FB需要对其声明的形参(TEMP变量除外)生成相应的背景数据块,而FC只需要对其形参分配内存(共享DB或者位存储器M);对于同一个功能而言,FC消耗的内存资源较少。如果WinCC或者PCS7集成于STEP7中,FB的优势较为明显,FB形参可以设置s7_m_c属性,显得较为方便,但付出了较大内存的代价。
确实如大家所说,官方对使用FB还是FC并没有明确的要求,一个工艺的完成可能通过FB或FC均可,其中的优劣大家也进行了对比,在此之上还有一些深层次和使用技巧的问题大叫可以考虑一下:
1) FB有背景DB,如何充分利用该背景DB特别是在STL,指针,Graph编程中对于项目的编程有重大意义?
2) FB和FC中都有形参,一旦形参变动,对整个程序将会有影响,如何快速进行程序结构更新?
3) 在一个项目中,特别是Work Memory和Load memory的大小是需要考虑的,在同等工艺情况下使用FC或FB
将产生多大影响?
4)另外一个是网友提到的项目的可用性和移植问题,特别是在一些OEM项目中应用FB编程带来的整体便利性
非常明显,还有就是现在已经出来TIA Portal平台,FB相对于FC的移植也是有一定的优势的
因此从上面几个问题来看,FB,FC使用确实都是相对的,欢迎大家继续探讨,也再次感谢大家的踊跃发贴了