文章内容
IC卡的油耗记录管理系统
2003年11月(1)
摘要 介绍一种基于IC卡的内燃机车燃油消耗的记录管理系统。在该系统中,现场测试仪担任油耗率-功率的现场测试,而且能自动指示异常情况,自动记录半年的数据,且进行分析、处理、存档、对内燃机车的运行质量进行评估和管理。
关键词 油耗率 功率 内燃机车 记录 管理 IC卡
内燃机车的燃油消耗是铁路系统运输成本的主要部分。内燃机车的油耗量与机车的牵引重量、运行里程有关,此外还与燃油的品质、发动机的工作状态、司机人员的操作水平有关。对这样一个重要的运行参数,铁路部门需要进行有效的测试和管理。本人设计的基于IC卡的油耗记录管理系统,不仅实现了燃油率-功率的现场测试,而且能自动指示异常情况,自动记录半年的数据。记录的数据可以送到PC中进行分析、处理、存档。这对于内燃机车的运行质量的正确评估和管理,具有重要意义。
内燃机的燃油消耗是用油耗率来表示的。油耗率等于燃油消耗量与输出功率之比,单位为g/kWh。为了计算油耗率,应对单位时间燃油流量和内燃机的功率进行测试。在本系统中,现场数据的采集,油耗率的计算、显示,都是在以AT89C52单片机为核心的现场测试仪上进行的。该仪器安装在机车上。记录的数据存放在E2PROM中。机务段管理人员定期将所记录的数据取出,送到机务段的PC中,在PC中进行统一管理。
这样的控制管理系统,按常规应采用串行通信进行数据传送。但在实际上是行不通的。因为从机车到机务段一般都有相当长的距离,若用导线连结是不现实的。在本系统里,采用了IC卡作为上位机和下位机之间数据传输的媒体,通过IC卡将测试仪内的记录数据送到PC中。也可将测试仪的有关参数,例如燃油比重,该台机车的标准油耗率-功率曲线等送到测试仪中。这样,测试仪就成了一个数据采集和记录的黑盒子,黑盒子里的数据可以用IC卡方便地取出。系统的总体结构如图1所示。
测试仪装在内燃机车上。实际燃油量等于进油量与回油量之差,采用LWGY型涡轮流量传感器测试流量。该传感器输出的是脉冲信号。
设燃油管流量为q/s,流量计每秒钟发出脉冲数为n,燃油比重为 ,流量计的仪表常数为C(脉冲数/升),则有如下关系:
若P为机车功率(kW),则油耗率:
(g/kWh)
柴油机组的输出功率是通过测定主整流器的输出电压和电流获得。由于电流、电压信号取自主电气回路的不同部分,必须通过电量传感器进行电气隔离。电压和电流信号经过放大整形后,通过V/F转换器,转换成频率信号,再经光电隔离后进入计数器。
测试仪的主要功能是数据采集,计算油耗率,记录各个时刻的油耗率-功率数据,并与本台机车的标准油耗率-功率曲线比较,如果超差11%~12%,则认为出现异常油耗,给出指示,这时操作人员应检查有无严重燃烧不良或漏油现象。
主电压和主电流由压控振荡器LM331转换成脉冲信号。所有的输入量,包括主电压、主电流、进油流量、回油流量都转换成为脉冲信号。仪器采用AT89C52中的两个内部计数据器和8253的两个计数器,在定时中断的控制下定时对以上信号计数,即可测出以上数据。
实时时钟由DALLAS公司的DS12887电路提供。该电路可在外部停电的情况下由内部电池供电维持正常走时,可提供年、月、日、时、分、秒等日期时间信息,并可通过编程作为定时中断源向AT89C52发中断请求,该定时时间就是各输入通道进行数据采集的采样周期。仪器对采集到的数据进行计算。各个时间对应的油耗率数据和功率数据以及其它数据,记录在仪器的E2PROM中。
仪器配有IC卡读写接口。所用IC卡是ATMEL公司的E2PROM 24C256。该电路采用I2C总线,总线上最多可寻址4块24C256,如采用页写入的方法,读写32k字节的时间需10s左右。测试仪采用EDM1079段码式液晶显示器显示读数。可分别显示如下项目:内燃机车号、当前油耗率(g/kWh)、当前功率(kW)、当前日期(年、月、日)、当前时间(时、分、秒)、上次读卡日期(年、月、日)、上次读卡时间(时、分、秒)、上次读卡至今的总油耗(t)、上次读卡至今的总能耗(kW·h)。
以上所有数据均存储在仪器的E2PROM当中,在插入IC卡时一次性读入。仪器内部的E2PROM也是用的24C256。由于机车大部分运行时间为稳定运行时间,这时的功率,油耗率的变化不大。对没有变化的数据,可不加记录。采取压缩算法,可将半年左右的数据压缩在30KB的范围内。
管理人员到现场用IC卡取出所有的数据,回机务段以后将IC卡插入PC所带的IC卡读写器,将数据送入PC进行处理。该PC管理全段的所有内燃机车,各台机车应在PC中进行编号登记。
在用PC对IC卡进行读写时,如在I/O扩展槽插入接口板,需要打开机箱,使用不便。可以利用PC的并行打印口来完成IC卡的读写。
现行的PC,一般都配有一个单向的并行打印接口,其硬件连接如图2所示。打印适配器虽然接有输出锁存器的输出缓冲器,但由于输出锁存器的控制端接地接死,输入缓冲器只能作为打印输出校对之用,而不能进行双向数据传送。而对24C256的SDA线的操作则必须是双向的。为此本人设计了图示线路,在输出打印口上加了一个三态门74HC125,即可使SDA线实现双向数据传送。
图2 硬件连接
在PC向24C256传送数据时,三态门导通,PC的DATA3送出的数据通过三态门写入24C256。当PC从24C256读取数据时,三态门截止,24C256的SDA脚上的信息通过打印口的15脚输入PC。
读写器的电源取自PC。PC打印插头没有电源脚,但由于读写器电流很小,可利用打印适配器中的数据输出脚供电。采用这样的措施可以省去读写器电源的设计。
读写程序用VC++6.0编制。
从图2可以看出,PC的输出控制锁存器的一位接到了SCL线上,其口地址为37AH,PC的输出数据锁存器的两位接到三态门控制端和SDA线上,其口地址为378H。当三态门截止时,SDA线上的数据从输入缓冲器输入PC,其口地址为379H。