西门子的S7-200的程序结构
过程映像输入/输出(I/Q)、变量存储器V、内部存储器位M、定时器T、计数器C等属于全局变量。S7-200的程序组织单元(ProgramOrganizationalUnit,简称为POU)包括主程序、子程序和中断程序。每个POU均有自己的64字节局部变量,局部变量只能在它所在的POU中使用。与此相反,全局变量可以在各POU中使用。
下面是子程序可以使用的局部变量:
1)TEMP(临时变量)是暂时保存在局部数据区中的变量。只有在执行该POU时,定义的临时变量才被使用,POU执行完后,不再保存临时变量的数值。
2)IN是由调用它的POU提供的输入参数。
3)OUT是返回给调用它的POU的输出参数(子程序的执行结果)。
4)IN_OUT是输入_输出参数,其初始值由调用它的POU传送给子程序,并用同一变量将子程序的执行结果返回给调用它的POU。
主程序和中断程序的局部变量中只有临时变量TEMP。
具有输入、输出参数和局部变量的子程序易于实现结构化编程,对于长期生产同类设备或生产线的厂家尤为有用。这些厂家的编程人员为设备的各组件或工艺功能编写了大量的通用的子程序。即使不知道子程序的内部代码,只要知道子程序的功能和输入、输出参数的意义,就可以通过程序之间的调用快速“组装”出满足不同用户要求的控制程序。就好像用数字集成电路芯片组成复杂的数字电路一样。
子程序如果没有输入、输出参数,它和调用它的程序之间没有清晰的接口,很难实现结构化编程。
子程序如果没有局部变量,它和调用它的程序之间只能通过全局变量来交换数据,子程序内部也只能使用全局变量。将子程序和中断程序移植到别的项目时,需要重新统一安排它们使用的全局变量,以不会出现地址冲突。当程序很复杂,子程序和中断程序很多时,这种重新分配地址的工作量非常大。
如果子程序和中断程序有局部变量,并且它们内部只使用局部变量,不使用全局变量,因为与其他POU没有地址冲突,不需作任何改动,就可以将子程序移植到别的项目中去。
STAINLESS STEEL REMOTE I/O CABINET WITH ALLEN-BRADLEY SLC500 PLC
STAINLESS STEEL REMOTE I/O CABINET THERMOCOUPLE CONTROL ALLEN-BRADLEY PLC SLC500
SET OF ALLEN BRADLEY LIGHT CURTAINS 442L-TA41214CACD A / 442L-RA41214CBCD A
Rockwell Automation VTAC9 70HP HVAC Drive - Enclosure with Allen Bradley Parts
REMANUFACTURED ALLEN-BRADLEY 40HP DC CONTROLLER 1395-A72-C3-PZ-X1 SERIES A
RELIANCE A-C MOTOR S2000 DUTY MASTER 3PH 1/2HP 3450RPM
NIB ALLEN BRADLEY 1785-LT2A PROCESSOR MODULE 1785LT2A
Sealed Allen Bradley 2711P-T15C4A9 /A 2711PT15C4A9 PanelView Plus MFG:2014
Sealed Allen Bradley 1756-L73S /B GuardLogix Logix5573S Safety Processor 8MB
IN BOX ALLEN-BRADLEY SERVO MOTOR F-6200-R-H04AA SER.A NEVER OUT OF BOX!!
IN BOX ALLEN-BRADLEY PANELVIEW PLUS TERMINAL 2711P-B15C15D2 SER.A
IN BOX ALLEN BRADLEY135A TWO-SPEED 520VE-EOD-XXX STARTER SIZE 4
IN BOX ALLEN BRADLEY 1756-L62 SERIES B CONTROLLOGIX 5562 PROCESSOR LOGIX PAC
CUTLER HAMMER 600A MAIN BREAKER HLDB3600FT33W ALLEN BRADLEY 2193M W/BUCKET
CUTLER HAMMER 400A FEEDER BREAKER HLDB3600FT33W ALLEN BRADLEY 2193F W/BUCKET
ALLEN BRADLEY PV1000 2711-K10C1 SER D FRN 4.20 2711K10C1 NIB
ALLEN BRADLEY PV1000 2711-K10C1 FRN 3.30 2711K10C1 REMOTE I/O NIB
Allen Bradley Panelview 550 2711-B5A8L1 Ser H FRN 4.46 In Original Packaging
Allen Bradley Motor Controller 150-B360NBR
ALLEN BRADLEY 803-PL6 ROTARY CAM LIMIT SWITCH SER. A, SHAFT SPEED 0-400RPM
Allen Bradley 2711P-T15C1D2 /A PanelView Plus 1500 Touch/RIO/ENet/RS232
Allen Bradley 2711P-B15C4A8 Panelview Plus 1500 Color Touch Keypad Warranty
ALLEN BRADLEY 1785-L80C15 SER F REV E 1785L80C15 CONTROLNET 1785L80C15/F
Allen Bradley 1785-L40E /E PLC-5/40E EtherNet Controller 48K Word FW K.3
Allen Bradley 1785-L40E /E PLC-5/40E EtherNet Controller 48K Word FW J