西门子的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没有地址冲突,不需作任何改动,就可以将子程序移植到别的项目中去。
NIB VEXTA C8384-9212H C83849212H STEPPING MOTOR 2 PHASE 1.8* / STEP 4.4A 2.5V
1 PC VEXTA RKD514L-C servo drive Tested
1 PC Used AXHD15K VEXTA stepper driver
1 PC Used AXHD30K VEXTA stepper driver
1 PC Used VEXTA Dongfang Motor Vibration Damper D6CL-6.3F
1 PC Used Vexta Oriental Motor UDK5107N In Good Condition
1 PC Used Vexta PCB AXHD100K In Good Condition
1 PC Used Vexta UDK5114N In Good Condition
1 PC VEXTA RKD514L-C servo drive Tested
1 PC VEXTA Servo Drive RKD514L-A Tested
1 PC VEXTA Stepper Motor Driver RC-204A Tested
1 PCS VEXTA stepper driver CSD5814N tested
1 PCS VEXTA stepper driver CSD2112-P tested
1 PCS VEXTA stepper driver CSD2120-P tested
1 PCS VEXTA stepper driver CSD2120P2 tested
1 PCS VEXTA stepper driver CSD5814N-P tested
1 PCS VEXTA stepper driver CMD2112P tested
1 PCS VEXTA stepper driver CSD5807N tested
1 PCS VEXTA stepper driver CSD5807N-P tested
1 pcs VEXTA Motor SD5107P2 tested
1 pcs VEXTA Motor PK243A1-SG10 tested
1 pcs VEXTA drive SD5107 board Tested
1PC USED VEXTA PK545-NA-C21 5-phase Stepping Motor Tested
1PC USED VEXTA PK566AW Stepping Motor #T85M YS
1PC Used VEXTA Servo Driver RKD514L-C
1PC USED VEXTA SG8030J 24V #P2389 YL
1PC USED VEXTA stepper driver CMD2109P board type
1PC Used VEXTA Stepper Driver DFC5107P Tested Good Condition
1PC Used VEXTA Stepper Driver DFC5107P Tested Good Condition
1PC used VEXTA Stepper Driver PMD07U
1PC USED VEXTA Stepping driver CSD2112-P
1PC USED VEXTA Stepping driver CSD2112-P fast ship#XR
1PC USED VEXTA stepping driver PMD07U
1PC Used VEXTA Stepping motor motor PK266-03A
1Pc Used Vexta TMP-1 ic
1pc used VEXTA UDK5107N #TT2
1pc used VEXTA UDK5107N #TT2
1PC used VEXTA UDX5114 #1
1PC used VEXTA UDX5114 #1
1pc VEXTA 5 phase stepper driver UDX5107N supporting PH569-A 10 lines #F334 CY
1Pc Vexta 2IJ3GB-A Used nc
1PC VEXTA 2phase Oriental stepper drive CSD