天然气发电机组plc控制系统.docx
- 文档编号:2056695
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:15
- 大小:668.88KB
天然气发电机组plc控制系统.docx
《天然气发电机组plc控制系统.docx》由会员分享,可在线阅读,更多相关《天然气发电机组plc控制系统.docx(15页珍藏版)》请在冰点文库上搜索。
天然气发电机组plc控制系统
天然气发电机组PLC控制系统
杨英俊
1.1天然气发电机组监控系统介绍
在当前能源紧张的局势下,为了响应国家节约能源的号召,人们开始研究煤矿伴生天然气发电机组。
以往的小型发电机组大都以柴油机为动力,但是目前柴油供应紧张,而且价格大幅提升,用柴油发电成本很高。
而大部分煤矿产生的天然气,又仅仅通过燃烧的方式处理掉,无法有效进行利用。
针对以上情况,国内某柴油机厂开发了以天然气为原料的天然气发电机组。
本设计基于和利时G3系列的天然气发电机组监控系统。
改天然气发电机组监控系统要求上位机通过通信的方式,采集现场的温度、压力等参据,要求现场控制设备对以上参数作出判断,产生相应的报警信号或停机信号,对于各个参数报警值,要求能够通过上位机进行修改和保存。
该天然气发电机组监控系统以前采用单片机进行数据采集和控制。
单片机程序的可读性差,系统不易维护,程序更改复杂。
而且由于单片机控制系统的可靠性和抗干扰能力较差,在现场恶劣的环境下,该控制系统经常出现故障。
我们对运行环境进行了现场考察和反复研究,在可靠性、稳定性、方便性等方面做了大量工作,采用先进、实用、可靠的PLC做数据采集和控制,提出了基于和利时G3系列PLC的解决方案。
1.2PLC选型与I/O分配
天然气发电机组PLC监控系统如图1.1所示,由PLC和上位机组成。
PLC完成数据的采集与控制,上位机完成画面显示和数据输入。
PLC与上位机通过RS232串行口,采用ModbusRTU协议进行通信,可以方便地监控和修改PLC的数据,简化了用户管理层,提高了设备可靠性。
图1.1天然气发电机组监控系统配置图
现场共有14路模拟量输入信号。
在模拟量输入信号中,9路为热电阻输入信号,5路为热电偶输入信号。
PLC的CPU模块选用LM3109。
9路热电偶输入信号选用3块热电阻输入模块LM3312。
5路热电偶输入信号选用2块热电偶输入模块LM3311。
系统的模拟量输入信号I/O分配如表4.1所示。
表1.1PLC控制系统的模拟量输入信号I/O分配
模块名称
信号名称
变量名称
PLC地址
信号量程
热电阻输入信号LM3312
发动机出水温度
T0
%IW2
0~120℃
发动机进水温度
T1
%IW4
0~120℃
中冷进水温度
T2
%IW6
0~120℃
油冷器进水温度
T3
%IW8
0~120℃
油冷器出水温度
T4
%IW10
0~120℃
润滑油温度
T5
%IW12
0~120℃
进气温度
T6
%IW14
0~120℃
供气温度
T7
%IW16
0~120℃
环境温度
T8
%IW18
0~120℃
热电偶输入信号LM3311
绕组温度1
T9
%IW26
0~120℃
绕组温度2
T10
%IW28
0~120℃
绕组温度3
T11
%IW30
0~120℃
轴承温度1
T12
%IW32
0~120℃
轴承温度2
T13
%IW34
0~120℃
1.3PLC控制系统程序设计
(1)变量声明。
PROGRAMPLC_PRG
VAR
SetModbus:
Set_Local_Address;(*设置modbus从站地址*)
SetModbusOk:
BOOL;(*设置modbus从站地址成功*)
AI0:
Analog_IN;(*设置模拟量数输入模块0*)
AI1:
Analog_IN;(*设置模拟量数输入模块1*)
AI2:
Analog_IN;(*设置模拟量数输入模块2*)
AI3:
Analog_IN;(*设置模拟量数输入模块3*)
AI4:
Analog_IN;(*设置模拟量数输入模块4*)
AI0_OK:
BOOL;(*设置模拟量输入模块0成功*)
AI1_OK:
BOOL;(*设置模拟量输入模块1成功*)
AI2_OK:
BOOL;(*设置模拟量输入模块2成功*)
AI3_OK:
BOOL;(*设置模拟量输入模块3成功*)
AI4_OK:
BOOL;(*设置模拟量输入模块4成功*)
T0AT%IW2:
WORD;(*发动机出水温度*)
T1AT%IW4:
WORD;(*发动机进水温度*)
T2AT%IW6:
WORD;(*中冷进水温度*)
T3AT%IW8:
WORD;(*油冷器进水温度*)
T4AT%IW10:
WORD;(*油冷器出水温度*)
T5AT%IW12:
WORD;(*润滑油温度*)
T6AT%IW14:
WORD;(*进气温度*)
T7AT%IW16:
WORD;(*供气温度*)
T8AT%IW18:
WORD;(*环境温度*)
T9AT%IW26:
WORD;(*绕组温度1*)
T10AT%IW28:
WORD;(*绕组温度2*)
T11AT%IW30:
WORD;(*绕组温度3*)
T11AT%IW32:
WORD;(*轴承温度1*)
T12AT%IW34:
WORD;(*轴承温度2*)
LT0AT%MW1000:
WORD;(*发动机出水温度限定值*)
LT1AT%MW1002:
WORD;(*发动机进水温度限定值*)
LT2AT%MW1004:
WORD;(*中冷进水温度限定值*)
LT3AT%MW1006:
WORD;(*油冷器进水温度限定值*)
LT4AT%MW1008:
WORD;(*油冷器出水温度限定值*)
LT5AT%MW1010:
WORD;(*润滑油温度限定值*)
LT6AT%MW1012:
WORD;(*进气温度限定值*)
LT7AT%MW1014:
WORD;(*供气温度限定值*)
LT8AT%MW1016:
WORD;(*环境温度限定值*)
LT9AT%MW1018:
WORD;(*绕组温度1限定值*)
LT10AT%MW1020:
WORD;(*绕组温度2限定值*)
LT11AT%MW1022:
WORD;(*绕组温度3限定值*)
LT12AT%MW1024:
WORD;(*轴承温度1限定值*)
LT13AT%MW1026:
WORD;(*轴承温度2限定值*)
LMTALM0:
LIMITALARM;(*发动机出水温度上下限报警*)
OVER0:
BOOL;(*发动机出水温度超过上限,报警*)
UDNDER0:
BOOL(*发动机出水温度超过下限,报警*)
IL0:
BOOL(*发动机进水温度正常不报警*)
LMTALM1:
LIMITALARM;(*发动机进水温度超过上限,报警*)
OVER1:
BOOL;(*发动机进水温度超过上限,不报警*)
UDNDER1:
BOOL;(*发动机进水温度超过下限,报警*)
IL1:
BOOL;(*发动机进水温度正常,不报警*)
LMTALM2:
LIMITALARM;(*中冷进水温度上下限报警*)
OVER2:
BOOL;(*中冷进水温度超过上限,报警*)
UDER2:
BOOL;(*中冷进水温度超过下限,报警*)
IL2:
BOOL;(*中冷进水温度正常,不报警*)
LMTALM3:
LIMITALARM;(*油冷器进水温度上下限报警*)
OVER3:
BOOL;(*油冷器进水温度超过上限,报警*)
UDNDER3:
BOOL;(*油冷器进水温度超过下限,报警*)
IL3:
BOOL;(*油冷器进水温度正常,不报警*)
LMTALM4:
LIMITALARM;(*油冷器出水温度上下限报警*)
OVER4:
BOOL;(*油冷器出水温度超过上限,报警*)
UDNDER4:
BOOL;(*油冷器出水温度超过下限,报警*)
IL4:
BOOL;(*油冷器出水温度正常,不报警*)
LMTALM5:
LIMITALARM;(*润滑油温度上下限报警*)
UDNDER5:
BOOL;(*润滑油温度超过下限,报警*)
OVER5:
BOOL;(*润滑油温度超过上限,报警*)
IL5:
BOOL;(*润滑油温度正常,不报警*)
LMTALM6:
LIMITALARM;(*进气温度上下限报警*)
UDNDER6:
BOOL;(*进气温度超过下限,报警*)
OVER6:
BOOL;(*进气温度超过上限,报警*)
IL6:
BOOL;(*进气温度正常,不报警*)
LMTALM7:
LIMITALARM;(*供气温度上下限报警*)
UDNDER7:
BOOL;(*供气温度超过下限,报警*)
OVER7:
BOOL;(*供气温度超过上限,报警*)
IL7:
BOOL;(*供气温度正常,不报警*)
LMTALM8:
LIMITALARM;(*环境温度上下限报警*)
UDNDER8:
BOOL;(*环境温度超过下限,报警*)
OVER8:
BOOL;(*环境温度超过上限,报警*)
IL8:
BOOL;(*环境温度正常,不报警*)
LMTALM9:
LIMITALARM;(*绕组温度1上下限报警*)
UDNDER9:
BOOL;(*绕组温度1超过下限,报警*)
OVER9:
BOOL;(*绕组温度1超过上限,报警*)
IL9:
BOOL;(*绕组温度1正常,不报警*)
LMTALM10:
LIMITALARM;(*绕组温度2上下限报警*)
UDNDER10:
BOOL;(*绕组温度2超过下限,报警*)
OVER10:
BOOL;(*绕组温度2超过上限,报警*)
IL10:
BOOL;(*绕组温度2正常,不报警*)
LMTALM11:
LIMITALARM;(*绕组温度3上下限报警*)
UDNDER11:
BOOL;(*绕组温度3超过下限,报警*)
OVER11:
BOOL;(*绕组温度3超过上限,报警*)
IL11:
BOOL;(*绕组温度3正常,不报警*)
LMTALM12:
LIMITALARM;(*轴承温度1上下限报警*)
UDNDER12:
BOOL;(*轴承温度1超过下限,报警*)
OVER12:
BOOL;(*轴承温度1超过上限,报警*)
IL12:
BOOL;(*轴承温度1正常,不报警*)
LMTALM13:
LIMITALARM;(*轴承温度2上下限报警*)
UDNDER13:
BOOL;(*轴承温度2超过下限,报警*)
OVER13:
BOOL;(*轴承温度2超过上限,报警*)
IL13:
BOOL;(*轴承温度2正常,不报警*)
END_VAR
(2)梯形图
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 天然气 发电 机组 plc 控制系统