这些PLC的用户程序由主程序、子程序和中断程序组成。在每一个扫描循环周期,CPU都要调用一次主程序。主程序可以调用子程序,小型控制系统可以只有主程序。中断程序用于快速响应中断事件。在中断事件发生时,CPU将停止执行当时正在处理的程序或任务,去执行用户编写的中断程序。执行完中断程序后,继续执行被暂停执行的程序或任务。它们的子程序和中断程序没有局部变量,子程序没有输入、输出参数。
2.西门子的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。
IC697ACC730
IC697ACC732
IC697ACC735
IC697ACC744
IC697ACC775
IC697ACC800
IC697ACC801
IC697ACC802
IC697ACC803
IC697ACC804
IC697ACC805
IC697ACC820
IC697ACC821
IC697ACC822
IC697ADC701
IC697ADC701RR
IC697ADS701
IC697ALG230
IC697ALG230RR
IC697ALG234
IC697ALG320
IC697ALG320RR
IC697ALG324
IC697ALG440
IC697ALG440RR
IC697ALG441
IC697ALG441RR
IC697ALG444
IC697ALG445
IC697BEM711
IC697BEM711RR
IC697BEM713
IC697BEM713RR
IC697BEM715RR
IC697BEM721
IC697BEM721RR
IC697BEM731
IC697BEM731RR
IC697BEM733
IC697BEM733RR
IC697BEM741
IC697BEM741RR
IC697BEM761
IC697BEM761RR
IC697BEM763RR
IC697BEM764RR
IC697CBL700
IC697CBL709
IC697CBL803
IC697CBL811
IC697CBL826
IC697CGR772
IC697CGR935
IC697CGR935RR