西门子300PLC的FB和FC类似于200PLC的子程序,但要比200的强大很多。今天,由工控站来讲解一下FB和FC。![]() FB代表功能块,FC代表功能,需要注意的是在使用FB和FC时,尽量不使用触点来进行触发。 FC功能分为:有参数的FC、无参数的FC,类似于200子程序,即有接口和无接口。 FB功能块分为:有参数FB、无参数FB、多重背景FB。 一、创建FC或FB
在项目页面即可创建一个FC或FB,如下图所示: 二、FC功能讲解 1: 创建一个FC功能,里面会有5个接口,如下图: 2: FC接口含义如下 IN: 输入接口(主程序向FC传递数据) OUT: 输出接口(FC主程序向主程序输出数据) IN_OUT: 输入输出接口(主向FC传递或者FC向主传递) TEMP: 临时变量(用来存储FC的临时数据,不进行保持) RET_VAL: 返回值(向主程序返回数据) 注意:TEMP是不生成接口的,这个临时变量尽量少用,使用多次就会影响下一次的调用,因第一次调用生成的数据会影响下一次。最好仅使用一次,多次使用要先进行赋值再进行使用。
3:FC的使用一般分为3种情况
第一种就是直接使用实际参数,不定义任何接口,在程序中直接调用即可。
第二种也是调用一次,只不过使用形式参数生成了接口,调用时在填写接口参数。
第三种就是多次调用,多次调用也要定义接口,但是TEMP必须先赋值后使用,或者TEMP仅使用一次。 三、FB功能块讲解 1:FB功能块和FC功能差不多,但变量不同,FB多用于多次调用,接口如下图所示: 2: FB接口含义如下 IN:输入接口 OUT:输出接口 IN_OUT:输入输出接口 STAT:静态变量 TEMP:临时变量 注:FB功能块中的静态变量是不生成接口的。 3:使用FB,如果在主程序中调用,接口可以不填,也可以通过编译使用,这在FC中是不予许的,但是使用FB必须使用DB数据块,就是上图中顶部填写的DB5。
DB块中保存的数据有接口数据、静态变量,DB块里面存储的是IN、 OUT 、 IN_OUT、 STAT的数据,具有掉电记忆功能。
FB每调用一次就要分配一个DB数据块,或者使用多重背景功能,但是如果FB仅仅调用一次,可使用FC代替,如果非要使用FB的话,内部的SATA可用全局变量代替,例如:MW20。 四、 FB功能块和FC功能的区别: 1:FC中有RET_VAL返回值接口,FB中有STAT静态变量接口 2:FB需要有DB数据块才能用,内部的数据具有断电保持性,(除临时变量) 3:FB的接口默认有初始值,不填也可以使用。 版权声明1、本站某些内容、插图、视频、技术资料来源于互联网,由本站重新整理后发布,如有侵权请告知,将在第一时间删除。 |
Powered by 工控站 © 2015-2018 & gongkongzhan.net
鲁公网安备 37021402000232号