对同类型的设备或生产线编程时,结构化编程将用户编写的程序和程序所需的数据放置在块中,使单个程序部件标准化。通过块与块之间的调用,使用户程序结构化,可以简化程序组织,使程序易于修改、查错和调试。
很多块可以作为“标准”块,在不同的控制系统中使用,这就是块的移植。
功能如果有执行完后需要保存的数据,只能用全局数据区(例如共享数据块和M区)来保存,但是这样会影响功能的可移植性。如果块的内部使用了全局变量,在移植时需要重新统一分配所有的块内部使用的全局变量的地址,以保证不会出现地址冲突。当程序很复杂,逻辑块很多时,这种重新分配全局变量地址的工作量非常大,也很容易出错。
如果FC或FB的内部不使用全局变量,只使用局部变量,不需要作任何修改,就可以将块移植到其他项目。
如果逻辑块有执行完后需要保存的数据,显然应使用功能块,而不是功能。