




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、天然气发电机组PLC控制系统杨英俊1.1天然气发电机组监控系统介绍在当前能源紧张的局势下,为了响应国家节约能源的号召,人们开始研究煤矿伴生天然气发电机组。以往的小型发电机组大都以柴油机为动力,但是目前柴油供应紧张,而且价格大幅提升,用柴油发电成本很高。而大部分煤矿产生的天然气,又仅仅通过燃烧的方式处理掉,无法有效进行利用。针对以上情况,国内某柴油机厂开发了以天然气为原料的天然气发电机组。本设计基于和利时G3系列的天然气发电机组监控系统。改天然气发电机组监控系统要求上位机通过通信的方式,采集现场的温度、压力等参据,要求现场控制设备对以上参数作出判断,产生相应的报警信号或停机信号,对于各个参数报警
2、值,要求能够通过上位机进行修改和保存。该天然气发电机组监控系统以前采用单片机进行数据采集和控制。单片机程序的可读性差,系统不易维护,程序更改复杂。而且由于单片机控制系统的可靠性和抗干扰能力较差,在现场恶劣的环境下,该控制系统经常出现故障。我们对运行环境进行了现场考察和反复研究,在可靠性、稳定性、方便性等方面做了大量工作,采用先进、实用、可靠的PLC做数据采集和控制,提出了基于和利时G3系列PLC的解决方案。1.2PLC选型与I/O分配天然气发电机组PLC监控系统如图1.1所示,由PLC和上位机组成。PLC完成数据的采集与控制,上位机完成画面显示和数据输入。PLC与上位机通过RS232串行口,采
3、用ModbusRTU协议进行通信,可以方便地监控和修改PLC的数据,简化了用户管理层,提高了设备可靠性。RS232LM3109LM3312LM3312LM3311LM3311图1.1天然气发电机组监控系统配置图现场共有14路模拟量输入信号。在模拟量输入信号中,9路为热电阻输入信号,5路为热电偶输入信号。PLC的CPU模块选用LM3109。9路热电偶输入信号选用3块热电阻输入模块LM3312。5路热电偶输入信号选用2块热电偶输入模块LM3311。系统的模拟量输入信号I/O分配如表4.1所示。表1.1PLC控制系统的模拟量输入信号I/O分配模块名称信号名称变量名称PLC地址信号量程热电阻输入信号L
4、M3312发动机出水温度T0%IW20120C发动机进水温度T1%IW40120C中冷进水温度T2%IW60120C油冷器进水温度T3%IW80120C油冷器出水温度T4%IW100120C润滑油温度T5%IW120120C进气温度T6%IW140120C供气温度T7%IW160120C环境温度T8%IW180120C热电偶输入信号LM3311绕组温度1T9%IW260120C绕组温度2T10%IW280120C绕组温度3T11%IW300120C轴承温度1T12%IW320120C轴承温度2T13%IW340120C1.3PLC控制系统程序设计(1)变量声明。PROGRAMPLC_PRGVA
5、RSetModbus:Se七丄0。&1_人宀宀九$;(*设置modbus从站地址*)Se七皿0宀5口$0匕200;(*设置modbus从站地址成功*)AIO:Analog_IN;(*设置模拟量数输入模块0*)AIl:Analog_IN;(*设置模拟量数输入模块1*)AI2:Analog_IN;(*设置模拟量数输入模块2*)AI3:Analog_IN;(*设置模拟量数输入模块3*)AI4:Analog_IN;(*设置模拟量数输入模块4*)AI0_0K:B00L;(*设置模拟量输入模块0成功*)AIl_0K:B00L;(*设置模拟量输入模块1成功*)AI2_0K:B00L;(*设置模拟量输入模块2
6、成功*)AI3_0K:B00L;(*设置模拟量输入模块3成功*)AI4_0K:B00L;(*设置模拟量输入模块4成功*)T0AT%IW2:WORD;(*动机出水温度*)T1AT%IW4:WORD;(*动机进水温度*)T2AT%IW6:W0RD;(*中冷进水温度*)T3AT%IW8:WORD;(*i冷器进水温度*)T4AT%IW10:WORD;(*i冷器出水温度*)T5AT%IW12:WORD;(*滑油温度*)T6AT%IW14:WORD;(*M气温度*)T7AT%IW16:闻0只。;(*供气温度*)T8AT%IW18:WORD;(*境温度*)T9AT%IW26:WORD;(*组温度1*)T10
7、AT%IW28:WORD;(*组温度2*)TilAT%IW30:WORD;(*组温度3*)TilAT%IW32:WORD;(*tt承温度1*)T12AT%IW34:WORD;(*tt承温度2*)LT0AT%MW1000:WORD;(*动机出水温度限定值*)LT1AT%MW1002:WORD;(*动机进水温度限定值*)LT2AT%MW1004:WORD;(*中冷进水温度限定值*)LT3AT%MW1006:WORD;(*i冷器进水温度限定值*)LT4AT%MW1008:WORD;(*i冷器出水温度限定值*)LT5AT%MW1010:WORD;(*滑油温度限定值*)LT6AT%MW1012:WORD
8、;(*M气温度限定值*)LT7AT%MW1014:闻0只。;(*供气温度限定值*)LT8AT%MW1016:WORD;(*境温度限定值*)LT9AT%MW1018:WORD;(*绕组温度1限定值*)LT10AT%MW1020:WORD;(*组温度2限定值*)LT11AT%MW1022:WORD;(*组温度3限定值*)LT12AT%MW1024:WORD;(*ft承温度1限定值*)LT13AT%MW1026:WORD;(*ft承温度2限定值*)LMTALM0:LIMITALARM;(*动机出水温度上下限报警*)OVERO:BOOL;(*发动机出水温度超过上限,报警*)UDNDERO:BOOL(*
9、发动机出水温度超过下限,报警*)IL0:BOOL(*发动机进水温度正常不报警*)LMTALM1:LIMITALARM;(*动机进水温度超过上限,报警*)0VER1:B00L;(*发动机进水温度超过上限,不报警*)UDNDER1:BOOL;(*发动机进水温度超过下限,报警*)IL1:B00L;(*发动机进水温度正常,不报警*)LMTALM2:LIMITALARM;(*中冷进水温度上下限报警*)0VER2:B00L;(*中冷进水温度超过上限,报警*)UDER2:BOOL;(*中冷进水温度超过下限,报警*)IL2:B00L;(*中冷进水温度正常,不报警*)LMTALM3:LIMITALARM;(*S
10、冷器进水温度上下限报警*)0VER3:B00L;(*油冷器进水温度超过上限,报警*)UDNDER3:B00L;(*油冷器进水温度超过下限,报警*)IL3:B00L;(*油冷器进水温度正常,不报警*)LMTALM4:LIMITALARM;(*S冷器出水温度上下限报警*)0VER4:B00L;(*油冷器出水温度超过上限,报警*)UDNDER4:BOOL;(*油冷器出水温度超过下限,报警*)IL4:B00L;(*油冷器出水温度正常,不报警*)LMTALM5:LIMITALARM;(*滑油温度上下限报警*)UDNDER5:B00L;(*润滑油温度超过下限,报警*)0VER5:B00L;(*润滑油温度超
11、过上限,报警*)IL5:B00L;(*润滑油温度正常,不报警*)LMTALM6:LIMITALARM;(*气温度上下限报警*)UDNDER6:BOOL;(*进气温度超过下限,报警*)0VER6:B00L;(*进气温度超过上限,报警*)IL6:B00L;(*进气温度正常,不报警*)气温度上下限报警*)UDNDER7:B00L;(*供气温度超过下限,报警*)0VER7:B00L;(*供气温度超过上限,报警*)IL7:B00L;(*供气温度正常,不报警*)LMTALM8:LIMITALARM;(*境温度上下限报警*)UDNDER8:B00L;(*环境温度超过下限,报警*)0VER8:B00L;(*环
12、境温度超过上限,报警*)IL8:B00L;(*环境温度正常,不报警*)LMTALM9:LIMITALARM;(*组温度1上下限报警*)UDNDER9:B00L;(*绕组温度1超过下限,报警*)0VER9:B00L;(*绕组温度1超过上限,报警*)IL9:B00L;(*绕组温度1正常,不报警*)LMTALM10:LIMITALARM;(*绕组温度2上下限报警*)UDNDER10:B00L;(*绕组温度2超过下限,报警*)0VER10:B00L;(*绕组温度2超过上限,报警*)IL10:B00L;(*绕组温度2正常,不报警*)LMTALM11:LIMITALARM;(*绕组温度3上下限报警*)UD
13、NDER11:BOOL;(*绕组温度3超过下限,报警*)OVER11:BOOL;(*绕组温度3超过上限,报警*)IL11:B00L;(*绕组温度3正常,不报警*)LMTALM12:LIMITALARM;(*轴承温度1上下限报警*)UDNDER12:B00L;(*轴承温度1超过下限,报警*)0VER12:B00L;(*轴承温度1超过上限,报警*)IL12:B00L;(*轴承温度1正常,不报警*)LMTALM13:LIMITALARM;(*轴承温度2上下限报警*)UDNDER13:B00L;(*轴承温度2超过下限,报警*)0VER13:B00L;(*轴承温度2超过上限,报警*)IL13:B00L;
14、(*轴承温度2正常,不报警*)END_VAR(2)梯形图0001设置上位机与C的通讯参数:波特8率00数据位位,无校验nodbi从站地址为SETMODBUSOKSETMODBUSSetModbusSet_Local_AddrENeSSBOO*设置nodbi从站地址成功Set_Local_Addr设Sfoodbi从站地址SetM(d)usOK0002使能模拟量输入模块AI0_OKAI0BOO*设置模拟量输入模成功=)Analog(*设置模拟量输入模AI0AnalogINENAddressAI0_OK0Q()0003使能模拟量输入模块AI1_OKBOO置模拟量输入模块AI1AnalOjg_IN模拟
15、量输入模块AI1Analog_INENAddressAI1_OKG-0004使能模拟量输入模块AI2_OKBO设置模拟量输入模块AI2AnalO设置模拟量输入模块1AI21Analog_INZENQ2AddressAI2_OK()-0005使能模拟量输入模块AI3_OKBO设置模拟量输3成模块AI3AnalO设置模拟量输入模块,AI3,AnalogINZENQ3AddressAI3_OK()-0006使能模拟量输入模块AI4_OKBO设置模拟量输入模块AI4AnalO设置模拟量输入模块AI4Analog_INZENQ4AddressAI4_OKG-0007设定发动机出水温度的量氏度T0%IW2
16、发动机出水温度LT0%MW1(发动WOR水温度限定值LIMITENLT00-T0-120012000008设定发动机进水温度的量氏度T1%IW4发动机进水温度LT1%MW1发动机进水温度限定值00090_T11200LIMITENLT1设定中冷进水温度的量程氏度0010T2LT2%IW6中冷进水RS度(*%MW1中冷进水R温度限定值LIMITEN0_T21200LT2设定油冷器进水温度的量氏度T3%IW8油冷器进水温度LT3%MW1油冷器进水温度限定值00110_T31200LIMITENLT3设定油冷器出水温度的量氏度T4%IW10油冷器出水温度LT4%MW1油冷器出R水温度限定值0_T4_
17、LIMITENLT412000012T5LT5设定润滑油温度的氏度%r润滑油温Word(*%MW滑油温W*限定值*LIMIENLT5T512000013LT60014T7设定供气温度的量程度LT7%I供气温度WORD(*%M气温度限定值D(*T7LIMITENLT7设定绕组温度程:摄氏度T11%IW绕组温度WORD(*LT11%M绕组温度定S&D(*LIMITEN0-T1T12000018LT11 LMTALM3LT14000-0023OOVER1-UNDER1_ILL检测发动机进水温度是否迢上度下限UDNDER1BOOL发动机进水温度超过下限,报警LT1%MW1发动机进水温度限定值OVER1
18、BOOL*发动机进水温度超过上限,报警LMTALM1LIMTALARM动机进冰温度上下限报警IL1BOOL*发动机进水温度正常,不报警LMTALMLIMITALARMENINHIGHLOWLT24000-0024-OOVER2-UNDER2_ILL检测中冷进水温度是否超限。度。艮UDNDER2-BOOL中冷进水温度超过下限,报警LT2%MW100冷进水温度限定值OVER2BOOL*中冷进水温度超过上限,报警LMTALM2LIMTALARM冷进水(温度上下限报警IL2-BOOL*中冷进水温度正常)不报警LMTALM2LIMITALARMENINHIGHLOW检测油冷器进水温度是0度,上度下限UD
19、NDER3BOOL油冷器进水温度超过下限,报警(LT3%MW1油冷器进水温度限定值OVER3BOOL*油冷器进水温度超过上限,报警LMTALM3LIMTALARM冷器进冰温度上下限报警IL3BOOL*油冷器进水温度正常,不报警LIMITALARMLT340002_OOVER3-UNDER3_ILLENINHIGHLOW0025LMTALM6OVER 检测油冷器出水温度是否超卩限。下限UDNDER4B00L油冷器进水温度超过下限,报警(LT4%MW1008l冷器进水温度限定值OVER4BOOL*油冷器进水温度超过上限,报警LMTALM4LIMTALARJ油冷器进水温度上下限报警IL4BOOL(油
20、冷器进水温度正常)不报警LIMITALARMENLT4INO800-HIGH-UNDER40LOW-IL4LMTALM4OVER40026检测润滑油温度是否0度限上度。UDNDER5BOOL润滑油温度超过下限,报警LT5%MW10润滑油温度限定值OVER5BOOL*润滑油温度超过上限,报警LMTALM5LIMTALAR润滑油温度上下邙限报警IL5BOOL*润滑油温度正常,不报警LMTALM5LIMITALAIENLT5INOOVER5400-HIGH-UUDER50-LOW一ILL0027检测进气温度是否超限。上度。UDNDER6-BOOL进气温度超过下限,报警(LT6%MW1C进气温度限定值
21、*OVER6BOOL*进气温度超过上限,报警LMTALM6LIMTALAR进气温度上下限报警IL6BOOL*进气温度正常,*)不报警LIMITALAIENINOHIGHUUDER6LOW-ILLLT640000028LMTALM9OVER 检测供气温度是否超度。:上度。UDNDER7B00L供气温度超过下限),报警,LT7%MW101供WORD限淀值,OVER7BOOL(供气温度超过上限),报警(LMTALM7limtalarM气温度上下限报警IL7BOOL(供气温度正常,*不报警0029检测润滑油温度是否超限。上下度。1UDNDER8BOOL润滑油温度超过下限,报警,LT8%MW101润WO
22、R温度限定值OVER8-BOOL(润滑油温度超过上限,报警LMTALM8LIMTALARM可滑油温度上下限报警IL8BOOL(润滑油温度正常,*)不报警LMTALM8LIMITALARMENLT8INOOVER8600-HIGH-UNDER80LOW-IL80030检测绕组温度超限。0下限上度。UDNDER9-BOOL绕组温超过下限,*)报警(LT9%MW1绕组温限定值(*OVER9BOOL*绕组温超过上限,*)艮警LMTALM9limtalarM组温度下限报警IL9BOOL(*绕组温度常,不报警LIMITALARMENLT7INO400-HIGHUNDER70LOW_IL7LMTALM7OVER7LIMITALARMENLT9INO600-H
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 医疗领域的新机遇区块链技术的市场应用与前景
- 医疗设备操作规范与质量控制
- 医疗大数据分析在医疗服务中的应用
- 2025年试用期转正工作总结模版
- 医疗大数据下的患者满意度分析
- AI技术在手术辅助系统中的伦理边界探讨
- 医学伦理在中药治疗技术传播中的作用研究
- 生产部门2025年度工作总结模版
- 代课老师聘用合同范例
- 医患沟通艺术与销售沟通技巧共通点解析
- DBJ03-107-2019 房屋建筑和市政工程施工危险性较大的分部分项工程安全管理规范
- 小学四年级阅读训练10篇+答案-四年级阅读理解
- 2025年贵州中考二轮道德与法治专题复习 题型三 判断与分析
- 机关财务课件
- 2024年11月时事政治热点(国内+国际)
- 《烈士陵园游》课件
- 现在医疗现状
- 《零星工程项目监理方案》
- 2024年度电子烟产品OEM定制与合作协议
- 矿山植被恢复治理方案
- 年度污水处理托管服务 投标方案(技术标 )
评论
0/150
提交评论