功能块FB/函数块FC的区别与使用

FB/FC的通常使用情况主要还是进行相似功能或者相似算法的封装,通过对FB/FC的调用来有效减少相同部分的重复编程,简化程序结构,提高编程效率。

现在就两者的区别与使用做一下自己使用下来的总结:

区别:

FB有自己独立的背景数据块,也就是说他所有的IN OUT INOUT或者 VAR等都是会建立自己特定的存储区;

FC无背景数据块,其IN OUT INOUT等变量相当于指针的形式指向实参地址[我认为这样理解更好一点],其VAR是其被调用的时候系统临时分配地址内存,使用过后其占用的地址内存即被释放,所以FC中的VAR[西门子的temp]必须先赋值再使用

使用:

最近写了一个类似挡停的程序块,但是我这个是线体电机的传输,两者的使用功能相似,下面是FC的接口

下面是调用

以上重复调用FC执行时是没有问题的,但是如果你将上述函数块转成FB后,那么你再调用的时候,需要在FB实例化时是以需要调用的次数去实例FB数量的,如果只实例一个那么你会发现在调用的时候,IN等接口会保持相同的数据状态

以上是自己使用上的理解,如有问题,请留言!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

孔子老先生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值