ASM工况法排放检测设备与系统之间的连接与业务流程 v19要点Word格式.docx
《ASM工况法排放检测设备与系统之间的连接与业务流程 v19要点Word格式.docx》由会员分享,可在线阅读,更多相关《ASM工况法排放检测设备与系统之间的连接与业务流程 v19要点Word格式.docx(64页珍藏版)》请在冰点文库上搜索。
数据采用XML格式传输。
整体上说,传输协议的结构分三种,以下是简要介绍,具体的格式将在随后的各种不同操作规程中详细给出:
1.EIS请求
格式为:
ASCII空格应用服务器地址?
data=XML数据内容回车换行
开头的空格不能少,应用服务器地址为/CtrlCenter/ASM。
XML数据格式为:
<
MessageDevice="
设备编号"
>
<
RequestName="
请求命令名"
/>
/Message>
比如:
/CtrlCenter/ASM?
data=<
Message%20Device="
123"
Request%20Name="
GetTime"
注意:
●在将XML文档发送给服务器之前,需要将文档中的ASCII空格替换为%20,回车换行符替换为%0d%0a或者干脆删除。
协议开头的空格字符不要替换,保留为0x20(即ASCII码的空格)。
●最终的回车换行符为0x0d和0x0a两个字节。
2.服务器应答
服务器在处理的EIS的请求后,以XML格式应答。
按照请求命令的不同,应答会有很多类型。
如果只有一类数据,则格式如下:
RespondName="
<
Row>
返回的数据内容
/Row>
/Respond>
每个数据实例放在一个<
结点里。
如果有多类数据,则格式如下:
数据类别名1>
<
返回的数据内容
/数据类别名1>
数据类别名2>
/数据类别名2>
根据返回内容的不同,<
Message>
结点还会有其他的属性。
3.EIS传输检测结果或标定结果
格式为:
OutlookID="
外观检验号"
Request>
结果类型1>
行内容
/结果类型1>
结果类型2>
/结果类型2>
/Request>
4.EIS如何判断服务器信息包的结尾
EIS的网络连接模块在接收服务器发送的信息包时,需要判断是否已经到达信息包结束点。
这可以通过是否收到“<
”来判断。
如果收到了“<
”,则说明服务器所返回的信息已经完整接收。
5.注意事项
●由于使用应用在向服务器发送XML数据之前需要发送的空格字符不可缺少。
但服务器的应答数据中不包含任何前缀。
●向服务器请求的XML文档内容中的空格需要替换成“%20”、回车换行符需要替换为“%0d%0a”或者干脆删除。
但服务器应答数据中没有对这些特殊字符作替换(正常文本数据)。
●服务器以0x0d0x0a(\r\n)作为上传内容(或请求)的结束标记。
2.3时间同步
业务流程与发生时机:
每次EIS启动后,必须同步服务器时间。
时间同步是系统实现各种数据同步非常重要的环节。
数据格式:
EIS向服务器发送如下数据,请求服务器时间:
应答:
服务器在收到这个命令后,应答如下数据。
EIS需要根据服务器返回的时间更新自己的计算机时间。
DateTime>
YYYY-MM-DDhh:
mm:
ss<
/DateTime>
Result>
/Result>
ErrorMessage>
/ErrorMessage>
返回数据中,DateTime以YYYY-MM-DDhh:
ss格式返回服务器当前时间;
Result代表服务器状态:
●-1代表服务器异常
●其他值(0或1)代表服务器正常工作。
如果发生了错误,ErrorMessage以文本形式给出具体的错误原因,比如:
XML文件中某个字段名不正确、某个数据格式不正确等。
EIS开发者可根据此ErrorMessage中的详细描述判断问题所在。
2.4排放检测
2.4.1业务流程与发生时机
排放检测开始前,被检车辆要驶入设备固定位置。
当车辆驶入设备后,EIS可提示操作员登录。
EIS负责提供登录界面,得到操作员输入的ID号和密码,向服务器请求验证。
服务器在验证完成后,返回待检车辆信息和检测参数(包括加载功率、限值等等),EIS根据这些信息对车辆进行检测。
服务器在验证操作员登录信息后,不返回待检车辆信息,而是返回验证结果。
EIS应提供操作员输入车牌照号/VIN号的界面,并将车牌照号/VIN号等信息发送给服务器,才能得到待检车辆信息和检测参数。
汽油车检测过程中,EIS在开始检测时需要向服务器请求开始检测,5025开始检测时需要向服务器发送5025开始检测命令,2540开始检测时向服务器发送2540开始检测命令,以便作为视频和拍照的同步信号。
柴油车检测过程中,EIS在开始检测时需要向服务器请求开始检测,100%VelMaxHP点开始检测时需要向服务器发送100%VelMaxHP点开始检测命令,90%VelMaxHP点开始检测时需要向服务器发送90%VelMaxHP点开始检测命令,80%VelMaxHP点开始检测时需要向服务器发送80%VelMaxHP点开始检测命令,以便作为视频和拍照的同步信号。
检测完成后,EIS需要将检测结果和过程数据传输给服务器。
服务器在接收到过程数据内容后,会向EIS发送服务器计算后的结果数据,EIS获取检测结果数据后,将检测结果信息显示在界面上,显示的数据必须为服务器返回的数据!
!
在服务器计算检测结果不合格的情况下,由EIS在本地打印报告单。
关于报告单上的数据,汽油车HC,NO,CO的检测结果数据及是否合格数据,柴油车100%VelMaxHP点、90%VelMaxHP点、80%VelMaxHP点的光吸收系数及实测轮边功率、检测是否合格数据使用服务器返回的数据,报告单上其他数据由EIS自己提供,如温度,湿度,大气压等。
检测合格报告将由服务器对过程数据进行核实后,在服务器端统一打印。
错误的处理:
●如果设备、检测场被锁止,服务器在接收到操作员登录信息后将返回设备、检测场被锁止信息,EIS将不能得到待检车辆信息。
●如果操作员不具备检测资格,服务器在接收到操作员登录信息后将返回操作员无权限信息,EIS将不能得到待检车辆信息。
以下流程图说明了EIS在检测过程中需要和服务器进行的交互、以及处理服务器所返回的数据的过程。
2.4.2登录与车辆数据的获取
1.登录
当操作员输入ID和密码后,EIS需要连接服务器,发送如下格式的数据,验证操作员和EIS是否具备检测权限:
Verify"
User>
操作员ID<
/User>
Pwd>
操作员密码<
/Pwd>
LoginType>
0<
/LoginType>
LoginType元素是登录类型:
●0为检测登录
●1为标定登录
在检测前操作员登录时,LoginType的值为0。
服务器收到登录验证信息后,分以下几种情况:
⏹验证通过
如果操作员信息验证通过、EIS和检测场没有因违规被锁止的情况,这时服务器返回的是“应答验证数据”数据包,在此数据包中返回验证成功信息。
EIS收到验证成功信息后,应提示操作员输入待检“车牌照号、车牌类型”或者“VIN号”,而后向服务器发送车辆请求,服务器根据“车牌照号、车牌类型”或者“VIN号”查询当前车辆登录数据,如果查找成功,返回“待检车辆信息和检测参数”;
否则返回“应答验证数据”并指出错误原因。
⏹验证不通过
如果操作员信息验证失败或者EIS和检测场因违规被锁止,服务器返回“应答验证数据”。
2.请求待检车辆信息列表
⑴如果登录后验证通过,EIS需要向服务器发如下格式的内容,主动请求当天所有待检车辆信息。
>
VehicleList"
⑵服务器在收到EIS发送的通知后,如果有待检车辆,会返回以下应答信息:
<
<
Vehicle>
<
License/>
LicenseType/>
VehicleKind/>
/Vehicle>
其中:
●每一个<
节点中包含某一辆车的信息,每增加一个Vehicle节点,表示增加一辆车;
●<
License>
元素是车牌号
LicenseType>
是车牌类别:
0=蓝牌
1=黄牌
2=黑牌
3=白色
VehicleKind>
是车辆类型
0=汽油车,
1=柴油车
⑶如果无待检车辆信息,服务器会返回以下应答信息:
验证结果<
●
Result元素的值如下:
8:
系统没有查到待检车辆信息
3.获取待检车辆信息
获取完当天所有待检车辆信息后,EIS需要主动请求待检车辆信息。
EIS此时应提示操作员输入以下能标识唯一车辆的两种数据之任何一种:
●车牌照号与车牌类型
●VIN号
然后向服务器发送如下格式数据:
VehicleInfo"
VIN/>
其中:
元素是车牌照号
VIN>
是车辆VIN号
与<
必须同时存在。
如果使用<
标识车辆,则不必提供<
和<
。
4.服务器对登录和获取车辆信息的应答格式
●服务器“应答验证数据”
0:
该用户不存在
1:
该用户无此操作权限
2:
该检测线被锁
3:
检测登陆成功,请输入车牌号或者车架号查询被检车辆!
8:
系统没有查到该车的车辆信息,请确认车牌或VIN是否正确!
9:
外观检查不合格,不能检测!
10:
该车没有交费,不能检测!
11:
该车已检测,不能再次检测!
-1:
服务器故障
●服务器返回“待检车辆信息和检测参数”
外观检查编号"
Vin/>
RegisterDate/>
VehicleType/>
Model/>
GearBoxType/>
AdmissionMode/>
Volume/>
Odometer/>
FuelType/>
SupplyMode/>
RatedRev/>
RatedPower/>
DriveMode/>
Owner/>
Phone/>
Address/>
MaxMass/>
RefMass/>
HasPurge/>
IsEFI/>
MaxLoad/>
CarOrTruck/>
Cylinder/>
YellowToGreen/>
SignType/>
LimitValue>
IsUsed/>
AmbientCOUp/>
AmbientCO2Up/>
AmbientHCUp/>
AmbientNOUp/>
BackgroundCOUp/>
BackgroundCO2Up/>
BackgroundHCUp/>
BackgroundNOUp/>
ResidualHCUp/>
COAndCO2/>
CO5025/>
HC5025/>
NO5025/>
CO2540/>
HC2540/>
NO2540/>
SmokeK/>
SmokeHSU/>
DieselRevUp/>
DieselRevBelow/>
MaxPower/>
HighIdleCO/>
HighIdleHC/>
LowIdleCO/>
LowIdleHC/>
FASmokeK/>
FARev/>
/LimitValue>
待检车辆信息分两部分,一部分是车辆本身信息,位于<
节点中;
另一部分是检测参数和限值信息,位于<
节点中,<
中的内容是有冗余的,请EIS开发者按需解析即可。
比如对于汽油车检测ASM,在<
中只需要解析出和ASM有关的限值即可,其他限值都可忽略。
另外,请注意保留<
中的OutlookID属性的内容。
在检测完成向服务器发送检测结果以及检测进行中通知服务器检测开始时,都需要向服务器提供这个ID。
服务器会根据这个ID做合法性判断。
下表给出的是<
节点中的车辆信息的详细内容。
元素名称
数据格式
数据内容
License
Char(12)
车牌照号。
如果服务器未能找到指定车辆,则License元素的内容为空。
如果服务器找到了指定车辆,则License元素的内容为指定车辆的车牌照号。
VIN
Char(17)
VIN号
RegisterDate
Datetime
车辆登记日期。
Yyyy-mm-dd
VehicleType
Numeric
(1)
车辆类型。
分以下几种:
0=6座以下小型客车
1=6座以上小型客车
2=大型客车
3=小型货车
4=大型货车
5=三轮汽车和低速汽车
6=摩托车
7=三轮摩托车
Model
Char(50)
厂牌型号
GearBoxType
变速箱形式。
●0=手动
●1=自动
●2=手自一体
AdmissionMode
进气方式。
●0=自然进气
●1=涡轮增压
Volume
Numeric(5,2)
发动机排量。
以升为单位。
Odometer
Numeric(10)
里程表读数
FuelType
燃油种类。
0汽油
1柴油
2LPG
3CNG
4双燃料
5乙醇
6其他
SupplyMode
供油方式。
0=化油器
1=化油器改造
2=开环电喷
3=闭环电喷
RatedRev
Numeric(4)
发动机额定转速(r/min)
RatedPower
Numeric(6,2)
发动机额定功率(kW)
DriveMode
驱动方式。
0=前驱
1=后驱
2=四驱
3=全时四驱
Owner
Char(100)
车主姓名/单位名称
Phone
Char(20)
车主电话
Address
车主地址
MaxMass
Numeric(5)
最大总质量(kg)
RefMass
基准质量(kg)
HasPurge
是否有净化装置
0=否
1=是
IsEFI
是否是电喷发动机(采用电控高压柴油机)
MaxLoad
对于客车为准乘人数。
对于货车为额定载重(kg)
CarOrTruck
0=客车
1=货车
Cylinder
汽缸数
YellowToGreen
Char
(1)
黄改绿设置
0:
无改造
1:
已改造
2:
改造首检
SignType
黄标
绿无星
绿一星
3:
绿二星
4:
绿三星
5:
绿四星
下表给出的是<
节点中的检测参数与限值部分的详细内容:
IsUsed
检测该车是否使用此限值:
不使用
使用
AmbientCOUp
Numeric(6,3)
环境CO上限(%)
AmbientCO2Up
环境CO2上限(%)
AmbientHCUp
环境HC上限(10-6)
AmbientNOUp
环境NO上限(10-6)
BackgroundCOUp
背景CO上限(%)
BackgroundCO2Up
背景CO2上限(%)
BackgroundHCUp
背景HC上限(10-6)
BackgroundNOUp
背景NO上限(10-6)
ResidualHCUp
残留HC上限(10-6)
COAndCO2
ASM检测过程中CO+CO2浓度下限(%)
CO5025
ASM5025工况CO限值(%)
HC5025
ASM5025工况HC限值(10-6)