在构建带有参数的子程序时,局部变量是bukehuoque的。通常,我们在PLC变量表和DB块中定义的变量被称作全局变量,它们在整个程序范围内都保持有效性。相对而言,那些在特定块的变量声明表中定义的变量,我们称之为局部变量,它们仅在其所属的块内具有效用。
为了提升代码的通用性和易于迁移到其他项目,子程序FC和FB中更倾向于仅使用局部变量。在局部变量表中,我们通过名称列来赋予局部变量一个符号名,而数据类型列则用于指定这些变量的数据类型。
在FC和FB的变量声明表中,形式变量——也就是形式参数,用于在子程序块和调用它的程序块之间传递数据。形式参数中的INPUT表示传入子程序块的参数,仅允许在子程序块中读取这些值。而OUTPUT则代表从子程序块传出的参数,在子程序块中只能写入这些返回值。INOUT则是既传入又传出的参数,允许在子程序块中读写操作,其输入值和返回值使用同一地址。FC中的RETURN返回值作为单一的数据通道,主要用于FC与调用它的其他程序进行数据交换,反映FC的执行状态。在TEMP行下定义的变量被称作临时变量,它们用于在程序块执行期间临时存储数据,当程序块退出时,这些数据将不再保留。
请注意,临时变量不可设定初始值。若某些变量在调用结束后仍需保持其值,则应将其定义为静态变量,即在STATIC行下定义的变量,但静态变量仅适用于FB。

