1、污染源在线自动监控系统数据传输和接口标准技术规范FIX超时重发机制:请求回应的超时,在一个请求命令发出后在规定的时间内未收到回应,认为超时。超时后重发,重发规定次数后仍未收到回应认为通讯不可用,通讯结束。超时时间根据具体的通讯方式和任务性质可自定义。超时重发次数根据具体的通讯方式和任务性质可自定义。执行超时请求方在收到请求回应(或一个分包)后规定时间内未收到返回数据或命令执行结果,认为超时,命令执行失败,结束。缺省超时定义表(可扩充):通讯类型缺省超时定义(秒)重发次数GPRS103PSTN53CDMA103ADSL53短信303通讯协议数据结构所有的通讯包都是由ACSII码字符组成(CRC校
2、验码除外)。通讯包结构组成:名称类型长度描述包头字符2固定为#数据段长度十进制整数4数据段的ASCII字符数例如:长255,则写为“0255数据段(见7。3。3)字符0=n=1024变长的数据(短信为140)CRC校验十六进制整数4数据段的校验结果,如CRC错,即执行超时包尾字符2固定为CRLF(回车、换行)数据段结构组成名称类型长度描述请求编号QN字符20精确到毫秒的时间戳:QN=YYYYMMDDHHMMSSZZZ,用来唯一标识一个命令请求,用于请求命令或通知命令总包号PNUM字符4PNUM指示本次通讯总共包含的包数包号PNO字符4PNO指示当前数据包的包号系统编号ST字符5ST=系统编号,
3、 系统编号见7。5中系统编码表命令编号CN字符7CN=命令编号, 命令编号见7.5中命令列表访问密码字符6PW=访问密码设备唯一标识MN字符14MN=监测点编号,这个编号下端设备需固化到相应存储器中,用作身份识别。编码规则:前7位是设备制造商组织机构代码的后7位,后7位是设备制造商的此类设备的唯一编码)是否拆分包及应答标志Flag字符3目前只用两个Bit;000000DAA:数据是否应答;Bit:1-应答,0不应答D:是否有数据序号;Bit:1数据包中包含包序号和总包号两部分,0数据包中不包含包序号和总包号两部分。如:Flag=3表示拆分包并且需要应答指令参数CP字符0=n=960CP=&数据
4、区&,数据区定义见7。3.3字段对照表其中:xxx:代表某个污染物编号,见附录B.SB1:设备编号字段名描述字符集宽度取值及描述SystemTime系统时间09N14YYYYMMDDHHMMSSUpValue污染物报警上限值, 0-9N14.210。11LowValue污染物报警下限值,0-9N14.210.11QN请求编号,见7.3。2QnRtn请求回应代码,见7.509N3ExeRtn执行结果回应代码,见7.509N3RtdInterval实时采样数据上报间隔0-9N430另以秒为单位xxxRtd污染物实时采样数据09N14.210.11,“xxx”是污染物代码xxxMin污染物指定时间内
5、最小值0-9N14.210.11xxx-Avg污染物指定时间内平均值0-9N14.210.11xxxMax污染物指定时间内最大值09N14.210。11xxx-Cou污染物指定时间内累计值0-9N14。210.11xxxRS设备运行状态实时采样值0-9N10:设备关,1:设备开xxxRT设备指定时间内运行时间09N14。210。11且0=n=24xxxAla污染物报警期间内采样值09N14。210.11AlarmTime超标开始时间0-9N14YYYYMMDDHHMMSSAlarmType报警事件类型09N11:超标,0:恢复正常ReportTarget上位机地址标识0-9N20通讯地址标识P
6、olId污染物的编号09N3见附录BBeginTime开始时间09N14YYYYMMDDHHMMSSEndTime截止时间09N14YYYYMMDDHHMMSSDataTime数据时间信息09N14YYYYMMDDHHMMSSxxxData噪声污染物监测值09N14。210。11DataTime数据时间信息09N14YYYYMMDDHHMMSSReportTime数据上报时间信息09N140100DayStdValue噪声白天标准值09N14NightStdValue噪声夜晚标准值09N14Flag通讯标志1C1目前只用两个Bit;000000DAA:数据是否应答;Bit:1-应答,0不应答;
7、D:是否有数据序号;Bit:1数据包中包含包序号和总包号两部分,0数据包中不包含包序号和总包号两部分PNO包序号09N4取值范围为00019999PNUM总包号0-9N4取值范围为00019999PW访问密码09,az,A-ZC6代码定义系统编码表(可扩充)(GB/T16706-1996)见环境信息标准化手册第一卷第236页系统名称系统编号描述大气环境污染源31地表水体环境污染源32地下水体环境污染源33海洋环境污染源34土壤环境污染源35声环境污染源36振动环境污染源37放射性环境污染源38电磁环境污染源41系统交互91用于现场机和上位机的交互执行结果定义表(可扩充)编号描述备注1执行成功2
8、执行失败,但不知道原因100没有数据请求返回表(可扩充)编号描述备注1准备执行请求2请求被拒绝3密码错误命令列表(可扩充)命令名称命令编号命令类型描述上位向现场现场向上位参数命令提取现场机时间1011请求命令用于同步上位机和现场机的系统时间上传现场机时间1011上传命令设置现场机时间1012请求命令用于同步上位机和现场机的系统时间提取污染物报警门限值1021请求命令用于污染物超标报警上传污染物报警门限值1021上传命令设置污染物报警门限值1022请求命令提取上位机地址1031请求命令提取上位机地址上传上位机地址1031上传命令上传上位机地址设置上位机地址1032请求命令指定上位机地址提取数据上
9、报时间1041请求命令提取数据上报时间上传数据上报时间1041上传命令上传数据上报时间设置数据上报时间1042请求命令指定数据上报时间提取实时数据间隔1061请求命令提取实时数据间隔上传实时数据间隔1061上传命令上传实时数据间隔设置实时数据间隔1062请求命令指定实时数据间隔设置访问密码1072请求命令交互命令请求应答9011用于现场机回应上位机的请求。例如是否执行请求操作执行结果9012用于现场机回应上位机的请求的执行结果通知应答90139013回应通知命令数据应答90149014数据应答命令数据命令实时数据取污染物实时数据2011请求命令上传污染物实时数据2011上传命令停止察看实时数据
10、2012通知命令告诉现场机停止发送实时数据设备状态取设备运行状态数据2021请求命令上传设备运行状态数据2021上传命令停止察看设备运行状态2022通知命令告诉现场机停止发送设备运行状态数据历史数据取污染物日历史数据2031请求命令上传污染物日历史数据2031上传命令取设备运行时间日历史数据2041请求命令上传设备运行时间日历史数据2041上传命令分钟数据(可以自定义分钟间隔数,例如5或10分钟)取污染物分钟数据2051请求命令上传污染物分钟数据2051上传命令小时数据取污染物小时数据2061请求命令上传污染物小时数据2061上传命令报警数据取污染物报警记录2071请求命令上传污染物报警记录2
11、071上传命令上传报警事件2072通知命令用于现场机采样值超过报警门限时向上位机报警反控命令校零校满3011请求命令即时采样命令3012请求命令设备操作命令3013请求命令附录A:循环冗余校验(CRC)算法CRC校验(Cyclic Redundancy Check)是一种数据传输错误检查方法,CRC码两个字节,包含一16位的二进制值。它由传输设备计算后加入到消息中。接收设备重新计算收到消息的CRC,并与接收到的CRC域中的值比较,如果两值不同,则有误。CRC是先调入一值是全“1的16位寄存器,然后调用一过程将消息中连续的8位字节各当前寄存器中的值进行处理。仅每个字符中的8Bit数据对CRC有效
12、,起始位和停止位以及奇偶校验位均无效。CRC校验字节的生成步骤如下:装一个16位寄存器,所有数位均为1.取被校验串的一个字节与16位寄存器的高位字节进行“异或”运算。运算结果放入这个16位寄存器. 把这个16寄存器向右移一位。 若向右(标记位)移出的数位是1,则生成多项式1010 0000 0000 0001和这个寄存器进行“异或”运算;若向右移出的数位是0,则返回. 重复和,直至移出8位。 取被校验串的下一个字节重复,直至被校验串的所有字节均与16位寄存器进行“异或”运算,并移位8次. 这个16位寄存器的内容即2字节CRC错误校验码。校验码按照先高字节后低字节的顺序存放。附录B:常用部分污染
13、物编码表(引自中国环境标准化手册第三卷)编码名称缩写应用范围单位数据类型L10累计百分声级L10L10噪声dBN3.1L5 累计百分声级L5L5噪声dBN3.1L50累计百分声级L50L50噪声dBN3。1L90累计百分声计L90L90噪声dBN3。1L95累计百分声级L95L95噪声dBN3。1Ld 夜间等效声级LdLd噪声dBN3。1Ldn昼夜等效声级LdnLdn噪声dBN3.1Leq30秒等效声级LeqLeq噪声dBN3。1LMn最小的瞬时声级LMin噪声dBN3。1LMx最大的瞬时声级LMax噪声dBN3。1Ln 昼间等效声级LnLn噪声dBN3。1S01O2含量废气S02烟气流速废气
14、S03烟气温度废气S04烟气动压废气S05烟气湿度废气S06制冷温度废气S07烟道截面积废气S08烟气压力废气B02废气废气 01烟尘废气 02二氧化硫SO2废气mg/M3N2.3 03氮氧化物NOX废气mg/M3N2.3 04一氧化碳CO废气mg/M3N2。3 05硫化氢废气 06氟化物Fluride废气mg/M3N2.3 07氰化物(含氰化氢)废气 08氯化氢废气 09沥青烟废气 10氨废气 11氯气废气 12二硫化碳废气 13硫醇废气 14硫酸雾废气 15铬酸雾废气 16苯系物废气 17甲苯Tol废气mg/lN8。5 18二甲苯Xyl废气mg/lN8。5 19甲醛废气 20苯并(a)芘A
15、Bena废气g/M3N2。3 21苯胺类废气 22硝基苯类NB废气mg/lN8。5 23氯苯类废气 24光气废气 25碳氢化合物(含非甲烷总烃)废气 26乙醛废气 27酚类废气 28甲醇废气 29氯乙烯CV废气mg/lN8.5 30二氧化碳废气 31汞及其化合物废气 32铅及其化合物废气 33镉及其化合物废气 34锡及其化合物废气 35镍及其化合物废气 36铍及其化合物废气 37林格曼黑度废气 99其他气污染物废气001PH值R-PH污水N2.2002色度Color污水色度单位N2.1003悬浮物WSus污水mg/lN6。1010生化需氧量(BOD5)BOD5污水mg/lN4.2011化学需氧
16、量(CODcr)CODcr污水mg/lN8。2015总有机碳TOC污水mg/lN3。2020总汞Hg*污水mg/lN2。5021烷基汞污水022总镉Cd污水mg/lN2.5023总铬污水024六价铬Cr+6污水mg/lN3。3025三价铬污水026总砷污水027总铅Pb*污水mg/lN3。3028总镍污水029总铜Cu*污水mg/lN8。3030总锌Zn*污水mg/lN8。3031总锰Mn*污水mg/lN8。3032总铁污水033总银污水034总铍污水035总硒污水036锡污水037硼污水038钼污水039钡污水040钴污水041铊污水060氨氮NH4N污水mg/lN4.3061有机氮污水附录
17、C:各条指令通讯过程示例以下的命令示例都是无需数据应答和拆分包的实例(其中6实例中,对拆分包和应答进行了具体描述).对于上传数据QN,PNO,PNUM为可选项。举例数据说明:以下例子QN是在2004年5月16日1点1分1秒1毫秒时建立连接,即20040516010101001,ST是32表示地表水污染源,设备唯一标识号是88888880000001,表示设备制造商组织机构代码的后7位是8888888,设备的序号是0000001,验证密码是123456。设置现场机访问密码类别项目示例/说明使用命令上位机设置现场机访问密码QN=20040516010101001;ST=32;CN=1072; PW
18、=123456;MN=88888880000001; Flag=3;CP=&PW=654321现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=&QN=20040516010101001; QnRtn =1现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=&QN=20040516010101001;ExeRtn =1&使用字段QN请求编号QnRtn请求返回结果PW上位机要设置的现场机访问密码ExeRtn请求执行结果执行过程上位机发送设置现场机访问密码命令后等待
19、现场机应答,上位机收到应答后通过判断应答代码中QnRtn值决定是否等待执行结果,现场机执行设置时钟请求,返回执行结束命令,请求执行完毕。提取现场机系统时间类别项目示例/说明使用命令上位机提取现场机时间QN=20040516010101001;ST=32;CN=1011; PW=123456;MN=88888880000001;Flag=3;CP=&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=QN=20040516010101001; QnRtn =1现场机上传现场机时间ST=32;CN=1011; PW=123456
20、;MN=88888880000001;CP=& QN=20040516010101001;SystemTime=20040516010102&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=&QN=20040516010101001; ExeRtn =1&使用字段QN请求编号QnRtn请求返回结果SystemTime现场机上传的系统时间ExeRtn执行结果执行过程说明上位机发送提取现场机时间命令后等待现场机应答,收到应答后通过判断应答代码中QnRtn值决定是否等待接收现场机时间,现场机执行请求,返回执行结束命令,请求执行完毕.例
21、子中返回现场机系统时间2004年5月16日1点1分2秒设置现场机系统时间类别项目示例/说明使用命令上位机设置现场机时间QN=20040516010101001;ST=32;CN=1012; PW=123456;MN=88888880000001; Flag=3;CP= SystemTime=20040516010101&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=&QN=20040516010101001; QnRtn =1&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=8888888
22、0000001;CP=QN=20040516010101001;ExeRtn =1&使用字段QN请求编号QnRtn请求返回结果SystemTime上位机要设置的系统时间ExeRtn请求执行结果执行过程上位机发送设置现场机时间命令后等待现场机应答,上位机收到应答后通过判断应答代码中QnRtn值决定是否等待执行结果,现场机执行设置时钟请求,返回执行结束命令,请求执行完毕.实时数据采集类别项目示例/说明使用命令上位机取污染物实时数据QN=20040516010101001;ST=32;CN=2011; PW=123456;MN=88888880000001; Flag=3;CP=&现场机请求应答ST
23、=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=&QN=20040516010101001; QnRtn =1现场机上传污染物实时数据ST=32;CN=2011; PW=123456;MN=88888880000001;CP=DataTime=20040516020111; 101 Rtd =1.1; 102 Rtd =2。2&上位机停止察看实时数据QN=20040516010101001;ST=32;CN=2012; PW=123456;MN=88888880000001;CP=&现场机通知应答ST=91;CN=9013; PW=123
24、456;MN=88888880000001;CP=QN=20040516010101001&使用字段QN停止察看实时数据中的QN等于取污染物实时数据中的QN 101-Rtd污染物101的实时采样数据DataTime数据时间,精确到秒QnRtn请求返回结果执行过程上位机发送取污染物实时数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收实时数据,接收需要的实时数据后发送停止察看实时数据通知命令,收到现场机的应答后,结束实时数据采集.污染治理设施运行状态类别项目示例/说明使用命令上位机取设施运行状态数据QN=20040516010101001;ST=32;CN=2021; PW=123
25、456;MN=88888880000001; Flag=3;CP=&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=&QN=20040516010101001;QnRtn=1现场机上传设施运行状态数据ST=32;CN=2021; PW=123456;MN=88888880000001;CP=&DataTime=20040516020111;SB1RS =1;SB2-RS =0&上位机停止察看设施运行状态QN=20040516010101001;ST=32;CN=2022; PW=123456;MN=88888880000
26、001;CP=&现场机通知应答ST=91;CN=9013; PW=123456;MN=88888880000001;CP=&QN=20040516010101001&使用字段QN停止察看设施运行状态中的QN等于取设施运行状态中的QN SB1-RS设施SB1的状态DataTime数据时间,精确到秒QnRtn请求返回结果执行过程上位机发送取设施运行状态数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收设施运行状态数据,接收需要的设施运行状态数据后发送停止察看设施运行状态数据通知命令,收到现场机的应答后,结束设施运行状态数据采集.污染物分钟数据污染物分钟数据(无应答和拆分包)类别项目示
27、例/说明使用命令上位机取污染物分钟数据QN=20040516010101001;ST=32;CN=2051; PW=123456;MN=88888880000001; Flag=3;CP=& BeginTime=20040506111000, EndTime=20040506151000&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=QN=20040516010101001;QnRtn=1现场机上传污染物分钟数据ST=32;CN=2051; PW=123456;MN=88888880000001;CP=DataTime
28、=20040516021000; 101Min =1。1, 101Avg =1。1, 101Max =1。1; 102Min =2。1, 102Avg =2.1, 102-Max =2。1&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=QN=20040516010101001; ExeRtn =1&使用字段QN请求编号QnRtn请求返回结果BeginTime采集数据的起始时间,精确到分钟信息EndTime采集数据的结束时间,精确到分钟信息DataTime数据时间,时间精确到分钟,且以整分钟为单位101Min污染物101分钟内的
29、最小值102-Avg污染物101分钟内的平均值101-Max污染物101分钟内的最大值ExeRtn请求执行结果执行过程上位机发送取污染物分钟数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收污染物分钟数据,现场机把所有污染物每间隔分钟数据作为一个数据包,直至发送完符合时间段内的所有包,发送完指定的数据后,现场机返回执行结束命令,此时此次请求执行完毕。污染物分钟数据(有应答、无拆分包)类别项目示例/说明使用命令上位机取污染物分钟数据QN=20040516010101001;ST=32;CN=2051; PW=123456;MN=88888880000001; Flag=3;CP=
30、BeginTime=20040506111000, EndTime=20040506151000现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=1;CP=QN=20040516010101001;QnRtn=1&现场机上传污染物分钟数据ST=32;CN=2051; QN=20040516010101001;PW=123456;MN=88888880000001;CP=&DataTime=20040516021000; 101Min =1。1, 101Avg =1.1, 101Max =1.1; 102-Min =2。1, 102A
31、vg =2。1, 102-Max =2。1&上位机数据应答ST=91;CN=9014; CP=&QN=20040516010101001; CN=2051&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=&QN=20040516010101001; ExeRtn =1&上位机结果应答ST=91;CN=9014; CP=QN=20040516010101001; CN=9012使用字段QN请求编号QnRtn请求返回结果BeginTime采集数据的起始时间,精确到分钟信息EndTime采集数据的结束时间,精确到分钟信息DataTim
32、e数据时间,时间精确到分钟,且以整分钟为单位101-Min污染物101分钟内的最小值102Avg污染物101分钟内的平均值101Max污染物101分钟内的最大值ExeRtn请求执行结果执行过程上位机发送取污染物分钟数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收污染物分钟数据,现场机把所有污染物每分钟间隔数据作为一个数据包,直至发送完符合时间段内的所有包,发送完指定的数据后,现场机返回执行结束命令,此时此次请求执行完毕。污染物分钟数据(带数据应答的拆分包)类别项目示例/说明使用命令上位机取污染物分钟数据QN=20040516010101001;ST=32;CN=2051; PW
33、=123456;MN=88888880000001; Flag=3;CP=& BeginTime=20040506111000, EndTime=20040506151000现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=3;CP=&QN=20040516010101001;QnRtn=1&现场机上传污染物分钟数据ST=32;CN=2051; QN=20040516010101001;PW=123456;MN=88888880000001; PNO=1;PNUM=1;CP=DataTime=20040516021000; 101M
34、in =1.1, 101Avg =1。1, 101Max =1。1; 102Min =2。1, 102-Avg =2.1, 102-Max =2。1&上位机数据应答ST=91;CN=9014; CP=&QN=20040516010101001; CN=2051; PNO=1;PNUM=1;&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=&QN=20040516010101001; ExeRtn =1上位机结果应答ST=91;CN=9014; CP=&QN=20040516010101001; CN=9012&使用字段QN请求编
35、号QnRtn请求返回结果BeginTime采集数据的起始时间,精确到分钟信息EndTime采集数据的结束时间,精确到分钟信息DataTime数据时间,时间精确到分钟,且以整分钟为单位101-Min污染物101分钟内的最小值102-Avg污染物101分钟内的平均值101-Max污染物101分钟内的最大值ExeRtn请求执行结果执行过程上位机发送取污染物分钟数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收污染物分钟数据,现场机把所有污染物每分钟间隔数据作为一个数据包,直至发送完符合时间段内的所有包,发送完指定的数据后,现场机返回执行结束命令,此时此次请求执行完毕。污染物日数据类别项
36、目示例/说明使用命令上位机取污染物日数据QN=20040516010101001;ST=32;CN=2031; PW=123456;MN=88888880000001; Flag=3;CP=& BeginTime=20040506000000, EndTime=20040510000000&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=&QN=20040516010101001;QnRtn=1现场机上传污染物日数据ST=32;CN=2031; PW=123456;MN=88888880000001;CP=&DataTi
37、me=20040506000000; 101Min =1。1, 101Avg =1。1, 101Max =1.1; 102-Min =2.1, 102-Avg =2。1, 102Max =2.1现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=QN=20040516010101001; ExeRtn =1&使用字段QN请求编号QnRtn请求返回结果BeginTime采集数据的起始时间,精确到日信息EndTime采集数据的结束时间,精确到日信息DataTime数据时间,时间精确到日,且以整日为单位101-Min污染物101一日内的最
38、小值102Avg污染物101一日内的平均值101Max污染物101一日内的最大值ExeRtn请求执行结果执行过程上位机发送取污染物日数据命令后等待现场机应答,收到应答后通过判断应答代码决定是否接收污染物日数据,现场机把所有污染物每日数据作为一个数据包,直至发送完符合时间段内的所有包,发送完指定的数据后,现场机返回执行结束命令,此时此次请求执行完毕。污染治理设施运行时间日数据类别项目示例/说明使用命令上位机取污染治理设施运行时间日数据QN=20040516010101001;ST=32;CN=2041; PW=123456;MN=88888880000001; Flag=3;CP= BeginT
39、ime=20040506000000, EndTime=20040510000000&现场机请求应答ST=91;CN=9011; PW=123456;MN=88888880000001; Flag=0;CP=QN=20040516010101001;QnRtn=1&现场机上传污染治理设施运行时间日数据ST=32;CN=2041; PW=123456;MN=88888880000001;CP=&DataTime=20040506000000;SB1RT =1.1;SB2-RT =2.1&现场机返回操作执行结果ST=91;CN=9012; PW=123456;MN=88888880000001;CP=&QN=20040516010101001; ExeRtn =1使用字段QN请求编号QnRtn请求返回结果BeginTime采集数据的起始时间,精确到日信息EndTime采集数据的结束时间,精确到日信息DataTime数据时间,时间精确到日,且以整日为单位SB1-RT污染治理设施SB1一日内运行时间的累计值ExeRtn请求执行