Siemens/西门子 品牌
经销商厂商性质
上海市所在地
回收西门子模块6ES76772AA310EB0 总线电缆
面议回收西门子模块6ES76772AA410FB0 总线电缆
面议回收西门子模块6ES76772AA410FK0 总线电缆
面议回收西门子模块6ES76772AA410FL0 总线电缆
面议回收西门子模块6ES76772AA410FM0 总线电缆
面议回收西门子模块6ES78062CD000YA0 总线电缆
面议回收西门子模块6ES71936AR000AA0 总线电缆
面议回收西门子模块6ES71936AF000AA0 总线电缆
面议回收西门子模块6ES71936AP000AA0 总线电缆
面议回收西门子模块6ES75455DA000AB0 总线电缆
面议回收西门子模块6ES79548LC020AA0 总线电缆
面议回收西门子模块6ES79548LE020AA0 总线电缆
面议回收西门子模块6ES75901AF300AA0 回收西门子模块6ES75901AF300AA0
表中声明变量的顺序和变量在内存中的存储顺序。在逻辑块中不需使用的局部数据类型,可以不必在变量声明表中声明。
表5.1 局部数据类型
变 量 名 类 型 说 明
输入参数 In 由调用逻辑块的块提供数据,输入给逻辑块的指令
输出参数 Out 向调用逻辑块的块返回参数,即从逻辑块输出结果数据
IO参数 In_Out 参数的值由调用块的块提供,由逻辑块处理修改,然后返回
静态变量 Stat 静态变量存储在背景数据块中,块调用结束后,其内容被保留
临时变量 Temp 临时变量存储在L堆栈中,块执行结束变量的值因被其它内容覆盖而丢掉
对于功能块FB,操作系统为参数及静态变量分配的存储空间是背景数据块。这样参数变量在背景数据块中留有运行结果备份。在调用FB时,若没有提供实参,则功能块使用背景数据块中的数值。操作系统在L堆栈中给FB的临时变量分配存储空间。
对于功能块FC,操作系统在L堆栈中给FC的临时变量分配存储空间。由于没有背景数据块,因而FC不能使用静态变量。输入、输出、IO参数以指向实参的指针形式存储在操作系统为参数传递而保留的额外空间中。
对于组织块OB来说,其调用是由操作系统管理的,用户不能参与。因此,OB只有定义在L堆栈中的临时变量。
1) 形参
为保证功能块对同一类设备控制的通用性,用户在编程时就不能使用具体设备对应的存储区地址参数(如不能使用I1.0等),而是使用这类设备的抽象地址参数。这些抽象参数称为形式参数,简称形参。将该设备的相应实际存储区地址参数(简称实参)传递给功能块,功能块在运行时以实参替代形参,从而可通过调用功能块实现对具体设备的控制。当对另一设备控制时,同样也可通过调用实参将其传递给功能块。
形参需在功能块的变量声明表中定义,实参在调用功能块时给出。在功能块的不同调用处,可为形参提供不同的实参,但实参的数据类型必须与形参*。用户程序可定义功能块的输入值参数或输出值参数,也可定义一参数作为输入输出值。参数传递可将调用块的信息传递给被调用块,也能把被调用块的运行结果返回给调用块。
2) 静态变量
静态变量在PLC运行期间始终被存储。S7将静态变量定义在背景数据块中,当被调用块运行时,能读出或修改静态变量;被调用块运行结束后,静态变量保留在数据块中。由于只有功能块FB有关联的背景数据块,因此只能为FB定义静态变量。功能块FC不能有静态变量。
3) 临时变量
临时变量仅在逻辑块运行时有效,逻辑块结束时存储临时变量的内存被操作系统另行 分配。S7将临时变量定义在L堆栈中,L堆栈是为存储逻辑块的临时变量而专设的。当块程序运行时,在L堆栈中建立该块的临时变量,一旦块执行结束,堆栈重新分配,因而信息丢失。