《电子技术应用》
您所在的位置:首页 > 嵌入式技术 > 业界动态 > 出租车多功能计费器的设计

出租车多功能计费器的设计

2009-01-04
作者:黄再银

    摘  要: 介绍了出租车多功能计费器的设计方法,阐述了MAX813和DS1244Y的使用方法,同时提出了防止计费器死机和防止司机作弊的解决方法。 

    关键词: 出租车计费器  防作弊  看门狗  MAX813  DS1244Y

 

    随着出租车行业的发展,对出租车计费器的要求也越来越高,用户不仅要求计费器性能稳定,计费准确,有防作弊功能;同时还要求其具有车票资料打印、IC卡付费、语言报话和电脑串行通信税控功能。不同国家和地区的计费方式存在差异,如有些地区有夜间收费及郊区收费等,而有些地区则无夜间收费和郊区收费;目前国内有些大城市要求计费器有税控功能,而有些城市则无此要求;即使同一地区,不同车型的出租车其计费方式也有差别;而且出租车还面临几年一次的调价或调整计费方式等问题。为此,我们设计了一款计费器。该计费器内设置了多达64个选项(1表示有某项功能,0表示没有),几乎涵盖了大多数国家和地区的出租车计费方式,无需更改计费器的硬件,只需更改相应的选项资料,便可适用于不同的国家和地区,且计费资料的传送可由电脑通过RS-232或专用的手持式资料传输器来完成,非常方便。目前该计费器已在我国大陆的一些大中城市,香港、澳门和台湾地区以及越南使用。 

1 原理框图 

    计费器组成方框图如图1所示。 

 

 

1.1 主控模块 

    主控模块如图2所示。

 

 

    CPU选89C51RC2,它的主要特点是:ROM为32K FLASH,RAM为512byte;具有双DPTR寄存器、一个硬件看门狗定时器、3个16位定时/计数器、7个中断源,其它与MCS-51基本相同。双DPTR寄存器给软件编程带来了很大的方便。 

    复位、看门狗及电源监控由MAX813芯片来完成。计费器在营运过程中,由于干扰等各种因素的影响。有可能出现死机现象导致出租车无法正常营运。为了克服这一现象,除了充分利用CPU本身的看门狗定时器外,还需外加看门狗电路。MAX813的主要特点如下: 

    (1)系统上电、掉电以及供电电压降低时,第7脚产生复位输出,复位脉冲宽度的典型值为200ms,高电平有效,复位门限为4.65V。 

    (2)如果在1.6s内没有触发该电路(即第6脚无脉冲输入),则第8脚输出一个低电平信号,即看门狗电路输出信号。 

    (3)手动复位输入,低电平有效,即第1脚输入一个低电平,则第7脚产生复位输出。 

    (4)具有1.25V门限值检测器,第4脚为输入,第5脚为输出。 

    实际应用时,将第1脚与第8脚相连,第7脚接CPU的复位脚(89C51RC2的第9脚),第6脚与CPU的P1.0相连。在营运过程中,P1.0不断输出脉冲信号。如果因某种原因CPU进入死循环,则P1.0无脉冲输出。于是1.6秒后在MAX813的第8脚输出低电平,该低电平加到第1脚,使MAX813产生复位输出,使CPU有效复位,摆脱死循环的困境。另外,当电源电压低于门限值4.65V时,MAX813也产生复位输出,CPU处于复位状态,不执行任何指令,直至电源电压恢复正常,因此可有效防止因电源电压较低时CPU产生错误的动作。 

    时钟及存储器由芯片DS1244Y来完成,该芯片是一具有幽灵式(Phantom)时钟的32K×8NVSRAM,第1脚为复位脚,其余和一般SRAM兼容。它提供嵌入式RTC和全静态非挥发性RAM,含有内芷式锂电池和控制电路。此控制电路不断监视Vcc,当Vcc>4.5V时,DS1244Y提供全部功能;当Vcc<4.0V时,写保护有效,所有的输入变成“Don′t Care”,所有的输出处于高阻态;当Vcc≤3.0V时,电源自动切到内部的锂电池。NVSRAM的操作和原来的SRAM一模一样,但时钟操作有区别。一次完整的时钟操作由D0脚串行输入预定的8个字节(即64个bit)给DS1244Y,DS1244Y收到8个字节后,再通过D0脚串行写入或读出8个字节(即时钟数据)。编程时可将NVSRAM的最后一个字节地址(7FFFH)定义为时钟地址。因此,NVSRAM的最后一个字节空间不能作RAM用。实际设计电路时,将DS1244Y的第1脚与CPU的P1.1相连。CPU复位后,由软件通过P1.1给出一个低电平使DS1244Y复位。须特别注意的是DS1244Y的第1脚不要与Vcc相连。假如与Vcc相连,当CPU产生复位时(此复位可由看门狗或手动产生),如果此时CPU正在对时钟进行读写,则CPU复位后,会对RAM或时钟进行读写操作,导致意料不到的错误。有关DS1244Y的具体用法请见参考文献[1]。 

    打印功能,可通过选项设定,也可选择税控打印。各种打印命令及资料均由电脑通过RS-232或手持式资料传输器传给计费器,存储在DS1244Y中。以何种格式打印何种数据完全由用户自行选择,因此可适用不同地区、不同客户之需要。 

    计费器可使用司机卡、采集卡、收费卡及税控卡等四种IC卡,究竟使用哪种卡可由选项控制。司机卡表示每次开机均要插入对应卡(一台出租车对应两张司机卡),计费器才能正常工作;采集卡可采集计费器中存储的各种营运资料;收费卡表示乘客可使用该卡支付车资;税控卡由税务部门发行,只有税控计费器才需要此卡。 

    计费器通过一条I/O线控制语言接口电路。乘客上车时,CPU给出50ms的低脉冲使语音接口电路说一段话。乘客下车时,CPU给出20ms的低脉冲使语音接口电路说另一段话。 

    计费器可通过RS-232与电脑进行串行通信,通过电脑设置计费器的各种参数及采集计费器里存储的各种数据。 

1.2 税控模块 

    该模块由税控部门专门提供,税控计费器需要此模块,非税控计费器则不需要此模块。主控模块与税控模块实行串行通信。计费器正常工作时,主控模块按要求将各种数据串行传送到税控模块,税控模块将收到的数据存储或显示。 

1.3 电源模块 

    该模块为一开关电源,将输入的12V直流电源变为稳定的5V电源。由于12V电源由出租车上的电瓶提供,其电压有一定的离散性,当电瓶质量不好时12V电源较低。而开关电源的适用范围较广,且驱动能力较强,使用开关电源可有效防止因输入电压过低而产生的各种故障现象。设计电源模块应注意电源的抗干扰能力。 

1.4 按键显示模块 

    按键显示模块如图3所示,共需4片4511、1片4028、1片2003、20个数码管及一些发光二极管(作为指示灯,如计程、计时收费指示灯)。计费器提供6个按键功能,但税控计费器不需要6个按键,只需要3个按键,因而无需4028译码器,利用CPU的三条I/O线即可实现三个按键的功能。 

 

 

1.5 防作弊及脉冲输入模块 

    防作弊及脉冲输入模块如图4所示。为了提高计费器的防作弊功能,采用了两片PIC508,传感器中装一片PIC508,计费器中装一片PIC508。其工作原理如下:每次计费器复位后,计费器中的PIC508送一随机数(1个字节)作为密码给传感器中的PIC508,车辆每产生一个脉冲,传感器中的PIC508均要将此密码送回到计费器中的PIC508。只有密码正确,计费器中的PIC508才发正确信息给CPU,表示输入了一脉冲,否则发错误信息给CPU。当CPU收到三次错误信息(次数可任意设置)时,CPU报警表示有作弊现象。由于在不同的时刻,即使同一个计费器的密码也不相同且是随机的,因此采用该方法能有效地防止司机作弊。 

2 软件设计应注意的问题 

    由于计费器的选项多达64个,功能齐全,能适应不同地区的需要,软件编程及调试比较复杂,需要特别小心。为了使计费器稳定、可靠地工作,软件设计主要考虑了以下几个方面: 

    (1)为了防止计费器死机,软件编程时采用了指令冗余技术、软件陷阱技术以及软件看门狗技术。请参见参考文献[2]。 

    (2)为了防止程序“乱飞”而非法修改计费器所设置好的各种参数,从软件的角度对计费器的各种参数进行了多重保护。必须通过“合法”的途径才能修改参数,而程序“乱飞”也不能修改计费器所设置好的参数。 

    (3)司机卡、采集卡、收费卡、税控卡共用一个IC卡接口,税控模块优先访问插入的IC卡并进行判断,直接与税控初始化卡税务信息卡和税务稽查卡交换信息。如果不是税控卡,则将控制权交给主控模块,主控模块要注意区分卡的类型,按照IC卡的有关控制命令正确编程。 

    (4)对DS1244Y时钟操作时,串行输入数据的第5字节的第5位须置0,以便DS1244Y能接收复位信号。每次上电后,由软件对其复位。 

    (5)任何时候均要注意保存好计费器所处的状态及各种数据,复位后计费器能够回到原来的状态。如计费器处于载客状态,复位后计费器仍然回到载客状态,且车资、收费里程、收费时间及单价同复位前一样。 

    (6)计费器与PC机串行通信时,PC机最好选用VB6.0语言。VB6.0提供了串行通讯MSComm控件来为应用程序提供串行通信,其良好的用户界面、简单方便的串行通信和实用性强的优点,无须借用其它语言就可以开发出优秀的通信软件。 

    目前,该计费器在使用过程中用户反应良好,返修率很低。另外,个别地方要求计费器能存储2000条客次记录,而每条客次记录约占50byte,这样选用DS-1244Y显然不够。此时,可改用DS1248,该芯片的容量为128K byte,其它与DS1244Y完全一样。 

参考文献 

1 薛栋梁.MCS-51/151/251 单片机原理与应用(二).北京: 中国水利水电出版社, 2001 

2 王幸之,王 雷.单片机应用系统抗干扰技术.北京:北京航空航天大学出版社,2001 

3 范逸之. Visual Basic与RS232 串行通讯控制.北京:中国青年出版社, 2001(1) 

4 李东星.PIC16C5X系列单片机应用设计. 北京:电子工业出版社, 1996

本站内容除特别声明的原创文章之外,转载内容只为传递更多信息,并不代表本网站赞同其观点。转载的所有的文章、图片、音/视频文件等资料的版权归版权所有权人所有。本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如涉及作品内容、版权和其它问题,请及时通过电子邮件或电话通知我们,以便迅速采取适当措施,避免给双方造成不必要的经济损失。联系电话:010-82306118;邮箱:aet@chinaaet.com。