西门子编程FC与FB的相互调用,用一实例说明在各种情况下的优劣。 60
这里有36个电磁阀,用一个S7-1200控制。现在用的是FB写的单个电磁阀的控制程序,整个设备的控制用的是一个FC程序,每用到一个电磁阀,就调用一个FB,这样,整个程序就...
这里有36个电磁阀,用一个S7-1200控制。现在用的是FB写的单个电磁阀的控制程序,整个设备的控制用的是一个FC程序,每用到一个电磁阀,就调用一个FB,这样,整个程序就调用了36次FB块,也就产生了36个背景块,如果我FC写电磁阀的控制,再用一个FB调用36次FC,就不产生这么多的背景块了,这样好吗,请指教,谢谢
展开
1个回答
展开全部
简单的控制程序可以只用OB块编程。
若程序功能较多、控制对象较多,应遵循西门子(也是IEC)的建议采用结构化编程。
应该采用FC、FB,就采用相应的功能;
S7-300/400PLC程序采用结构化程序,把程序分成多个模块,各模块完成相应的功能。结合起来就能实现一个复杂的控制系统。就像高级语言一样,用子程序实现特定的功能,再通过主程序调用各子程序,从而能实现复杂的程序。
在S7-300/400PLC中,写在OB1块里的程序就是主程序,子程序写在功能(FC)、功能块(FB)。各个OB相当于主程序的不同分段,负责调用其他功能块。如果程序简单只需OB就可以实现。
系统功能块(SFB)和系统功能(SFC)也是相当于子程序,只不过SFB和SFC是集成在S7
CPU中的功能块,用户能直接调用不需自已写程序。
SFC与FC不具有储存功能,FB和SFB具有储存功能
。
的应用。(要求会正确排序) 早期的信息传播工具:烽
若程序功能较多、控制对象较多,应遵循西门子(也是IEC)的建议采用结构化编程。
应该采用FC、FB,就采用相应的功能;
S7-300/400PLC程序采用结构化程序,把程序分成多个模块,各模块完成相应的功能。结合起来就能实现一个复杂的控制系统。就像高级语言一样,用子程序实现特定的功能,再通过主程序调用各子程序,从而能实现复杂的程序。
在S7-300/400PLC中,写在OB1块里的程序就是主程序,子程序写在功能(FC)、功能块(FB)。各个OB相当于主程序的不同分段,负责调用其他功能块。如果程序简单只需OB就可以实现。
系统功能块(SFB)和系统功能(SFC)也是相当于子程序,只不过SFB和SFC是集成在S7
CPU中的功能块,用户能直接调用不需自已写程序。
SFC与FC不具有储存功能,FB和SFB具有储存功能
。
的应用。(要求会正确排序) 早期的信息传播工具:烽
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询