远辰 2026-5-5 08:21:59 | 显示全部楼层 | 阅读模式
抖音粉丝群1
『7x24小时有问必答』

     刚开始学编程时,分不清FC和FB到底什么时候用合理,各自的作用又是什么,下面简单讲解一下两个功能块的区别与作用。
1:FC和FB都可以用于封装可复用的子程序逻辑。最本质的区别:FB有自己的“记忆”(背景数据块),FC没有。即添加新块时,FB会生成一个背景数据块DB块,FC没有。
1.jpeg
2:FC纯功能逻辑计算器,必须给所有形参赋值才能用,内部Temp临时变量仅本次扫描有用,用完即忘,清空。(无STAT)
2.jpeg
运用场景
数学运算:温度单位转换、流量计算、平均值滤波。
逻辑判断:信号取反、多路选择、报警条件判断。
数据处理:BCD转INT、字符串截取、校验和计算。
我常用计算电流和称重值,这些模拟量的运算。波动大还可以加频率滤波西门子系统和时钟存储器的使用博图STEP7
3.jpeg
4.jpeg
3:FB带记忆的设备驱动功能块,封装有状态的控制逻辑,比如说需要记载步序程序。调用时会生成一个DB,状态存储在DB里面,里面数据也可以调用。比FC多一个变量类型,静态变量(STAT)。可设置为断电保持,如图。
5.jpeg
使用场景:流水线工序控制,自动产线步序控制,一些PID闭环控制保存数据输出,电机,气缸这些保存运行状态,累计时间,故障次数。如下图,或者封装电机起保停块新手如何编写电磁阀控制功能块FB,实测有效可直接用
6.jpeg
FB有独立的存储背景块,所以只需要一个电机FB即可多重调用控制一百个电机都行。但是过多的调用FB产生DB会占用很多资源。
4:如何选择FC,FB?
FC当:
功能无状态,纯计算/转换。
只调用1次,或调用时无数据冲突风险。
追求极致执行速度。
用FB当:
需要保存状态/自锁/计数/计时。
控制多个相同设备(电机、轴、阀) 。
程序结构复杂,追求模块化、可复用、易维护。
总结:FC算完就忘,FB自带存档;单功能用FC,多设备复杂逻辑用FB。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

上一主题上一主题         下一主题下一主题
QQ手机版小黑屋粤ICP备17165530号

关于我们·投诉举报· 用户帮助· 联系我们 · 本站服务 · 版权声明· 隐私政策 · 投搞指南

法律保护:PLC技术网,plcjs.com,plcjs.net等字样
Copyright 2010-2030. All rights reserved. 


微信公众号二维码 抖音二维码 百家号二维码 今日头条二维码哔哩哔哩二维码