西门子S7-300PLC典型应用案例详解(上)!
1、S7-300 PLC在变电站中的应用
某油田有150多座变电站,承担着油田整个油区、社区及生活区部分居民的用电,油田电网的安全运行对于保证原油产量持续上升和居民安居乐业起着至关重要的作用。
油田变电站中的AEUD-WIII全自动智能免维护直流屏采用模块化设计、数字化控制,智能化程度高。该直流电源具有先进的系统监控功能,着重电池在线管理、接地选线、“四遥”通信、告警显示和事故追忆等功能进行开发,使得系统安全性、可靠性更高。
该系列全自动智能免维护直流屏采用SEIMENS公司生产的OP170B型人机界面,该监控模块具有结构紧凑、显示分辨率高、可靠性高、寿命长等优点。通过人机界面可以完成整流模块启动,充电状态显示,查看报警信息,手动电池巡检,绝缘监察、接地选线、报警试验、报警复位等直流屏的所有操作,并能显示直流屏的原理图及各个运行参数和各种故障信息。控制模块采用S7-300系列模块,进行数字和模拟信号的采集及输出。
硬件系统构成
1.PLC配置
变电站直流监控系统的PLC采用西门子公司的S7-300 PLC。根据系统要求,PLC总体配置如下:
①中央处理模块(CPU):选用CPU 314。
②数字量输入模块(DI):选用SM321,共1块(16点/块),处理4点输入信号。
③数字量输出模块(DO):选用SM322, 共4 块(16 点/块),处理56 点输入信号。
④模拟量输入模块(AI):选用SM331,共1 块(8 点/块),处理8点输入信号。
⑤模拟量输入、出模块(AI):选用SM334,共1块(4点入和2点出/块),处理2点输入和2点输出信号。
2.操作屏配置
操作屏采用两个OP170B,一个安装在控制柜;一个安装在监控中心。
监控系统软件
变电站直流监控系统的软件主要有两部分:显示单元和软件单元。
1.显示单元
操作屏采用工业级人机界面,主要完成直流系统运行监控、故障报警、记录和排除提示、参数设置、模拟键盘操作、数据记录处理、累计运行时间控制等任务。
显示单元包括主画面、电池巡检画面、电池组电压记录画面、绝缘监察、当前报警画面、历史报警画面、累计运行画面等画面。
2.控制软件单元(只给出部分功能软件)
软件单元由系统时钟读取、整流器控制、电池巡检、绝缘监察、接地选线、限流电阻控制、累计运行时间、当前报警处理、历史报警信息处理、报警试验等程序构成。①整流器控制。
给定延时
A “F1_k1”
AN “F1_k2”
= “DO_k1”
主充电机给定
A “DI_k1”
JNB _001
CALL FB21,DB21
_001: NOP 0
主充电机给定复位
AN “DI_k1”
AN “DI_k2”
= L0.0
A L0.0
BLD 102
S “float_charge”
A L0.0
JNB _004
L 0
T “ug_hm0”
_004: NOP 0
A L0.0
JNB _005
L 0
T “ug_hm1”
_005: NOP 0
A L0.0
JNB _006
L 0
T DB66.DBD580
_006: NOP 0
主浮充转换
A(
O “DI_k1”
O “DI_k2”
)
JNB _003
CALL FB20,DB20
_003: NOP 0
②巡检:能够自动(每天定时)和手动进行电池巡检(部分程序)
每天10 点自动电池巡检
A(
L MW22
L 10
==I
)
FP M15.2
AN “scan_end”
S “scan_start”
按下面板电池巡检键,手动进行电池巡检
A(
A “F3_bat_scan”
FP M15.3
O(
A “F3_bat_scan”
FN M15.4
)
)
AN “scan_end”
S “scan_start”
电池巡检开始
A “scan_start”
JNB _001
CALL FB23,DB23
_001: NOP 0
电池巡检开始,画面转到电池巡检画面
A “scan_start”
FP M17.4
JNB _002
L 2
T MW102
_002: NOP 0
电池巡检结束,复位电池组序号
L MW186
L 18
==I
= L0.0
A L0.0
JNB _003
L 0
T MW116
_003: NOP 0
A L0.0
JNB _004
L DB65.DBW100
T MW118
_004: NOP 0
A L0.0
BLD 102
L S5T#2S
SD T51
电池巡检结束,置位电池巡检标志位
A T51
= L0.0
A L0.0
JNB _005
L 0
T MW186
_005: NOP 0
A L0.0
BLD 102
S “scan_end”
电池巡检结束后,进行过、欠压判断
A “scan_end”
JNB _006
CALL FB24,DB24
_006: NOP 0
③绝缘监察及接地选线:能够自动(每天定时)和手动进行绝缘监察及接地选线(部分程序)。
判断系统时钟是否为9 点,若是,则启动自动执行绝缘监察功能
A(
L MW22
L 9
==I
)
FP M15.5
S “auto_gnd_chk”
根据绝缘监察霍尔电压采样值与设定值的大小,判断是否出现不平衡接地,若出现,则启动
AN “gnd_chk”
= L2.0
A L2.0
A(
L MW148
L MW122
>I
)
FP M15.6
S “en_unbalance”
A L2.0
A(
L MW148
L MW122
<=I
)
FP M15.7
R “en_unbalance”
使绝缘监察启动的三种条件,有任何一个满足要求,则开始绝缘监察
A(
O “auto_gnd_chk”
O(
A “en_unbalance”
FP M16.1
)
O(
A “en_unbalance”
FN M16.2
)
O(
A “F4_gnd_chk”
FP M16.3
)
O(
A “F4_gnd_chk”
FN M16.4
))
AN “gnd_chk”
S “en_chk”
进行绝缘监察时,进入绝缘监察画面
A “en_chk”
FP M17.5
JNB _001
L 4
T MW102
_001: NOP 0
监察完毕,进行监察使能复位
A M17.0
R “en_chk”
R “gnd_chk”
监察完毕,进行对地电阻值,电压值记录及进行报警
A M17.0
JNB _009
CALL FB25,DB25
_009: NOP 0
4)当前报警及历史报警信息处理(程序略)。
故障分类为二级:分为一般故障和致命故障。
一般故障包括:
当发生此类故障时,仅声光预警,不中断当前操作。根据系统中产生的各种故障实施相关的故障声光报警和记录,此刻显示屏进入故障报警画面,显示故障内容,性质,时刻,按ACK解除声音报警,但故障显示仍然存在,直至解除故障。
致命故障包括:
当发生此类故障,将禁止所有控制输出,声光报警,在显示屏上显示故障类型、内容、时刻。只有在排除故障,按人工复位键后系统恢复正常工作。
普通故障指示(K8)
L MW84
L 1
==I
= M8.4
致命故障指示(K9)
L MW84
L 2
==I
= M8.7
(5)显示画面及LED 灯指示
主充电机运行指示灯(F1)
A “DI_k1”
= M6.0
= M6.1
主充电机直流输出故障闪烁报警控制(故障)
A(
O(
L DB65.DBW202
L 1
==I
)
O(
L DB65.DBW204
L 1
==I
)
)
JNB _00f
L 1
T MW52
_00f: NOP 0
蓄电池充电状态显示控制(主充)
A “DI_bat”
AN “float_charge”
JNB _019
L 1
T MW68
_019: NOP 0
蓄电池充电状态显示控制(浮充)
A “DI_bat”
A “float_charge”
JNB _01a
L 2
T MW68
_01a: NOP 0
小结
油田变电站直流监控系统自2001年由S7-200系统改进为S7-300系统以来,正常运行证明:整个系统设计先进、合理,操作简单,可靠性高,符合用户预期的要求,成为推广项目。
2、S7-300 PLC在断路器极限电流测试系统中的应用
断路器极限电流测试系统通过工业PC串行口实现与S7-300的CP340(RS-232C)模块通信,从而实现对系统的实时监控。
极限电流测试系统介绍
断路器是一种能接通和分断正常负荷电流、过负荷电流、短路电流的开关电器。为标定断路器极限电流这一指标使其满足出厂要求,每个产品须经过极限电流测试系统的测定,以下是SZ高新区的电器设备制造企业应用IPC结合S7-300PLC实现该测试系统。
1.测试系统的框架
系统的主控由IPC承担,其负责测试的参数设定、产品的型号选择、测试信息的记录分析,S7-300通过与IPC进行ASCII方式的通信,接收IPC的指令,操控系统的接触器,固态继电器等执行设备,将测试的信息返回给IPC,为了给断路器测试提供工作环境,系统中采用电流源供电方式。考虑提高测试的效率,系统设计时为提供20路测试环境,20组被测试设备可以串联进行测试,一旦其中的某一组或某几组在测试时跳闸,其旁路接触器和旁路固态继电器(图中未画出)立即接通,保证串联电路中其他测试单元能正常供电,此处选择固态继电器和接触器并联,主要考虑回路在某组跳闸断开时及时保护电流源,防止电流源开路使用。20个单元也可通过IPC设定其中的前几组进行测试,在未设定范围工位处的接触器与固态继电器在测试开始接通旁路以便前面工位的测试,在串联回路中的接触器的三路常开点并联使用考虑增加回路的电流容量。
2.系统自动化器件配置
断路器极限电流测试系统的自动化器件有:CPU315-2DP一台、AISM321(32输入)一块、DOSM322(32输出,24V)两块、DOSM322(16输出,230V)两块、CP340一块。
选型中考虑了以下的因素:
1)考虑与IPC进行ASCII通信,选用性价比较高的CP 340(RS-232C)。
2)考虑驱动接触器和固态继电器,输出模块选择两种方式,24V晶体管输出驱动固态继电器,其工作速度比继电器要快得多,比较适合对固态的控制。
IPC采用LABWINDOWS的开发环境,提供友好的信息交换画面和管理系统。
串行通信的实现
断路器极限电流测试系统中,IPC和PLC的信息交换至关重要,其好坏直接影响测试的性能和稳定性。此处CP340选用SIEMENS提供的RS-232C模块,采用ASCII的协议,通信的设置为9600、8、1、EVEN。PLC与PC间采用异步串行方式进行通信,采用主从问答式。PC始终具有初始传送优先权,所有的通信均由IPC来启动。PLC调用FB2、FB3功能块,实现接收和发送功能,协议的格式主要分为以下两类:
1.写命令(共9个字节):
PC:“#”(Head 1字节)+“W”(类型1字节)+起始地址(2字节)+数据(4字节)+校验核(累加和)。
PLC:收到命令且校验核正确,原封不动返回接收到的全部9个字节。
命令1:PC:“#W”0x1fff 0xffff+0x000f+Check_sum;表示0-19号接触器全存在;
命令2:PC:“#W”0x10ff 0xffff+0xffff+Check_sum;开始测试;
命令3:PC:“#W”0x10f5 0x0000+0x0000+Check_sum;停止测试;
……
2.读命令(共9个字节)
PC:“#”(Head 1 字节)+“R”(类型1字节)+起始地址(2字节)+ 0x00000000(4字节)+校验核(累加和)。
PLC:收到命令且校验核正确,返回0-19号接触器的状态, “1”: 闭、“0”:开。
命令1:PC:“#R”0x2fff 0x0000 +0x0000 +Check_sum;表示读取0-19号接触器的状态;
PLC返回:“#R”0x20ff 0xffff +0x000f + Check_sum;表示0-19号接触器全部闭合。
PLC返回:“#R”0xffff 0x0000+0x1000 + Check_sum; 表示PC命令错误。
在协议中作了以下规定:
①以“#”作为起始字符,占用一个字符。
②通信类型由“W”和“R”区分。
③整个命令采用和校验的方式,每次将校验和放在后一个字节。
④测试时,不一定20个测试断路器全部存在,如不存在,必须将旁路接触器(固态继电器)接通,否则不能正常工作。在命令1中可以设定0-19号接触器的存在情况,“0xffff+ 0x000f”表示0-19号被测断路器全部存在,这样的表示方法给PLC处理带来了较大的方便。
在程序中,将4个字节存入MW中,命令中的5个16进制“f”(对应二进制20个“1”)可以分配到每一位。“1”表示被测试器存在,“0”表示不存在。
控制系统完成的功能
测试系统每路测试单元的结构相同,如下图所示。左边为每路的指示灯,正常工作为绿色,跳闸则为红色,(Q8.0~Q12.7)未选中则都不显示。右边分别为被测断路器,旁路接触器(Q16.0~Q18.3),旁路固态继电器(Q13.0~Q15.3)。辅助触点是被测断路器用来检测当前断路器的闭合还是断开(I4.0~I6.3),灯、接触器、继电器、辅助输入的地址依次增加。
程序中我们考虑用循环加上间接寻址的方法来实现:
L +20
T MB0 //循环次数
L 2#0000_0000_0010_0000 (I4.0) //辅助输入起始地址
T MD2
L 2#0000_0000_0100_0000 (Q8.0) //输出绿灯起始地址
T MD6
L 2#0000_0000_0100_0001 (Q8.1) //输出红灯起始地址
T MD10
L 2#0000_0000_0010_0000 (Q13.0) //输出接触器起始地址
T MD14
L 2#0000_0000_0010_0000 (Q16.0) //输出固态继电器起始地址
T MD18
NEXT:
L MD2
INC 1
T MD2 //辅助输入地址加1
L MD6
INC 2
T MD6 //绿灯输出地址加2
L MD10
INC 2
T MD10 //红灯输出地址加2
L MD14
INC 1
T MD14 //控制接触器输出地址加1
L MD18
INC 1
T MD18 //控制固态继电器输出地址加1
L MB0
LOOP NEXT //20组做完吗?
…
应用了此结构使得程序变得非常简洁,调试非常方便,一旦某一功能改变,修改方便,如果用实际地址的话每组的相应的地方都得修改。
小结
CP 340的应用使得西门子产品与其他设备沟通方便,STEP7间接地址编程方法非常有效,断路器极限电流测试系统统在2005年完成后实际运行效果良好。