您现在的位置是:首页 > PLC技术 > PLC技术

STEP 7中交通灯控制的结构化编程

来源:艾特贸易2017-06-04

简介完成某项控制任务时,要根据控制任务的规模和要求,选择合理的编程方法和程序结构。现代 PLC 控制系统都比较复杂,控制系统的程序如果单纯采用线性化编程方法来实现,程序庞大

    完成某项控制任务时,要根据控制任务的规模和要求,选择合理的编程方法和程序结构。现代PLC控制系统都比较复杂,控制系统的程序如果单纯采用线性化编程方法来实现,程序庞大、复杂、可维护性差。通过对PLC的线性化程序进行结构化设计,使一个复杂的线性化程序分解为各个简单的程序结构,从而使复杂的问题简单化。这种方法也使组织多人同时完成复杂控制系统项目成为可能。下面通过两个实际控制系统的结构化程序设计的例子,进一步体会结构化编程方法的好处。    1.任务描述    这是一个非常简单的控制任务,在一个无人值守的有4个行车方向的车道上,分别用红灯、黄灯和绿灯指挥车的运行状态,同时在人行道上用红灯和绿灯表示允许或禁止行人通过车道。交通信号灯有两种运行方式,可以通过选择开关选择白天或者夜间两种运行方式。白天运行方式的时序图,如图6-18所示。
交通灯运行方式时序图
    6-18    交通灯运行方式时序图    交通信号灯夜间的运行方式为:只有黄灯以0.5Hz的时钟频率闪烁,其他灯灭。    2.编程元件地址分配    6-4给出了输入/输出继电器地址分配。    6-4    输入/输出继电器地址分配
输入/输出继电器地址分配
    3.交通灯控制程序结构设计    (1)控制程序结构分解    根据交通灯控制任务要求,该系统的控制程序可分解为以下几个模块:白天车行道控制模块、白天人行道控制模块、夜间控制模块、模式切换模块。    1)白天车行道控制模块:根据白天运行方式的时序图,控制两个行车方向的车道上的红灯、绿灯、黄灯。    2)白天人行道控制模块:根据白天运行方式的时序图,控制两个行车方向的人行道上的红灯、绿灯。    3)夜间控制模块:只有黄灯以0.5Hz的时钟频率闪烁,其他灯灭。    4)模式切换模块:根据时间完成白天/夜间模式的切换。    (2)控制程序总体结构    控制程序总体结构如图6-19所示。    (3)模块接口设计    1)白天车行道控制模块( FC2)的设计,见表6-5。程序处理流程如图6-20所示。
交通灯控制程序结构图
    6-19    交通灯控制程序结构图
FC2程序处理流程图
    6-20    FC2程序处理流程图    6-5    FC2输入变量、输出变量、中间变量及其绝对地址表
FC2输入变量、输出变量、中间变量及其绝对地址表
    2)白天人行道控制模块( FC3)的设计,见表6-6。程序处理流程设计如图6-21所示。    6-6    FC3输入变量、输出变量、中间变量及其绝对地址表
FC3输入变量、输出变量、中间变量及其绝对地址表
FC3程序处理流程图
    6-21    FC3程序处理流程图    3)夜间控制模块(FC4)的设计,见表6-7。程序处理流程设计如图6-22所示。    6-7    FC4输入变量、输出变量、中间变量及其绝对地址表
FC4输入变量、输出变量、中间变量及其绝对地址表
    4)模式切换模块( FCl)设计。FC1程序处理流程如图6-23所示。
FC4程序处理流程图
    6-22     FC4程序处理流程图
FC1程序处理流程图
    6-23     FC1程序处理流程图    (4)各模块例程    1)白天车行道控制例程。    白天车行道控制例程接口及其调用( FC2)代码如下:
白天车行道控制例程接口及其调用( FC2)代码
    白天车行道控制例程梯形图代码( FC2)如下:
白天车行道控制例程梯形图代码( FC2)
白天车行道控制例程梯形图代码( FC2)
白天车行道控制例程梯形图代码( FC2)
白天车行道控制例程梯形图代码( FC2)
    2)白天人行道控制例程。    白天人行道控制例程接口及其调用(FC3)
白天人行道控制例程接口及其调用(FC3
    白天人行道控制例程LAD代码(FC3)
白天人行道控制例程LAD代码(FC3)
    3)夜间控制例程。    夜间控制例程接口及其调用(FC4)
夜间控制例程接口及其调用(FC4):
    夜间控制例程代码(FC4)
夜间控制例程代码(FC4):
    4)模式切换例程。    模式切换例程接口及其调用(FC1)
模式切换例程接口及其调用(FC1):
    模式切换例程代码(FC1)
模式切换例程代码(FC1):