APP下载

基于单片机与ZigBee的不停车收费系统研究与设计

2020-09-23杨涛杨博雄尹萍翁名键余俊

电子产品世界 2020年2期
关键词:单片机

杨涛 杨博雄 尹萍 翁名键 余俊

摘要:设计了一个基于ZigBee与MCU技术的用户友好型不停车收费系统。该系统的通信模块以TI公司的Z-Stackl.4.3为基础,实现了车辆的自动识别和不停车收费功能;控制模块以宏晶公司生产的89C54为核心,利用按键、LCD和ISDl700实现了友好的信息查询和语音提示等功能。通过对车载单元和车道ZigBee通信模块实验,验证了本系统的可行性和可靠性。

关键词:不停车收费系统;车载单元;zigBee;单片机

1ETG系统

国外应用ETC(电子不停车收费系统或电子收费系统)始于20世纪70年代,国内从1995年开始引进国外技术。

国外ETC技术主要分为三个分支。①以E-Zpass系统为代表的美国技术。②以瑞典AUTOPASs和葡萄牙Via Varde系统为代表的欧洲技术。③以接触式CPU卡加两片式电子标签和双ETC天线的方案为代表的日本技术。

国内的ETC系统主要以引进为主,各高速公路管理公司引进的ETC系统互不兼容,用户所购买的车载设备只能在一条公路上使用。为此,2007年5月国家标准化管理委员会批准了ETC & DSRC中国国家标准GB/T20851 2007,2007年10月国家交通部颁布了《收费公路联网收费技术要求》。这种收费方式在我国随着区域性收费转向联网收费的过程中也存在着一定的问题,主要是没有路由器、自组网等功能,也没有协议栈的支持,导致人机交互、网络应用等功能无法实现。

2系统设计

ETC系统包括ETC收费车道子系统、ETC管理中心和车载单元(OBU)。

2.1车载单元的硬件设计

该系统的硬件部分包括:电源模块、掉电检测模块、RFID读写模块、复位电路、由CC2430芯片及外围电路组成的主通信电路、显示模块、语音模块、键盘模块、储存电路、串口模块、由STC89C54芯片及外围电路组成的主控制电路。系统的硬件结构图如图1所示。

掉电检测模块采用了EMMicroelectronic-Marin公司生产的EM6353,可以在应用终端配置中实现最大的灵活性。它能够在1.5~5.5 v正常工作,可以监视电子系统的供电电压,从而保证系统具有良好的功能。在本系统中用来监视主通讯系统的供电电压,保证与车道子系统之间通信的正常进行。

RFID读写模块采用了NXP(恩智浦半导体)公司生产的MFRC522。该芯片是一个高度集成及非接触读/写的芯片,工作在13 56 MHz,利用了先进的调制和解调概念,支持CRYPT01加密算法。工作电压为3.3 V,通过SPI接口由CC2430的8051微控制器(MCU)控制对Ic卡进行读写操作,完成相应的扣費工作。

主通信电路由cc2430芯片及外围电路组成,CC2430芯片集成了1个RF收发器和1个增强型的8051MCU。并且内置了ZigBee协议栈,能够以很低的费用构成ZigBee节点,实现自组网功能。它还有多种运行模式,不同运行模式间的转换时间非常快,这保证了它始终以最低的功率工作,适合需要超低功耗的系统。该系统通过ZigBee协议栈完成车载终端与车道路由器组网的工作,传输车辆的信息,实现车辆的自动识别,完成相应的收费任务。

电源模块采用了车载电源供电和车载系统自带电池供电两种模式。通过单刀双掷开关控制供电单元,充分保障系统正常工作。车载电源一般为24 V或12 V直流电,降压芯片采用的是LM7805,通过前级330 nF和后级100nF的电解电容滤波得到5 V的直流电,供控制电路使用。再经过AMS1117-3.3V降压芯片产生3.3 V的直流电,供通信电路使用。

显示模块采用了LCD12864,是一种具有4位/8位并行、3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;内置8192个16X16点汉字,和1 28个1 6X8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文的人机交互图形界面。使用户能随时查看车辆的消费记录,方便了用户的同时,也降低了ETC管理中心的雪运成本。

语音模块采用了华邦电子生产的ISD1700语音芯片,该芯片包括一个片上振荡器(由外部电阻控制),麦克风前置放大器,自动增益控制(AGC),辅助模拟输入,抗混叠滤波器,多级存储阵列(MLS),音量控制等。支持SPI接口控制模式和按钮操作环境,本设计采用SPI接口控制模式。在该模式下,用户具有完全控制的权限,在指定操作的起始地址和结束地址后,通过串行接口可以随机存取存储器阵列内的任何位置,还可以访问模拟通道配置寄存器(APC),它可以配置音频的通道、输入/输出和混合。利用ISD1700芯片可以实现对用户扣费等的语音提示,使系统更具人性化。

键盘模块为了减少占用MCU的I/O口资源,采用了扫描键盘结构。键盘为用户提供了查询消费历史的功能。也使用户能在车辆内与ETC管理中心交流成为可能。

储存电路采用了Atmel(注:已被Microchip收购)公司生产的AT24C64,它能够提供64 103串行电可擦除和可编程的存储空间,供通信电路和控制电路存取一些重要的数据。

串口模块采用了Maxim公司生产的MAX232芯片,该芯片是专为RS-232标准串口设计的单电源电平转换芯片。这部分主要为系统提供与上位机通信的接口。

主控制电路由STC89C54芯片及外围电路组成,STC89C54是深圳宏晶科技推出的一种低成本、高性能的8051系列单片机。该MCU用来支持LCD的显示、键盘的扫描、与CC2430的通讯、向AT24C64存取车辆的进出站以及消费情况等。

车载单元的原理简图如图2所示。

2.2车载单元的程序设计

在软件的设计当中,车载单元和ETC收费车道子系统的通信是整个系统的核心,系统采用TI公司提供的Z-Stackl.4.3开发包作为zigBee协议栈开发的基础。ETC收费车道子系统一般包括1个协调器、若干路由器和在其识别范围内的车载单元。无论是协调器还是路由器或是终端设备,其启动过程至网络形成,初始步骤均是一样的,只是不同设备的配置文件(协调器:F8wCoord.cfg,路由器:F8wRouter.cfg,终端设备:F8wRouter.cfg)在编译时有所区别。

主通信电路的程序是在z—Stack协议栈的基础上建立的,整个协议栈已经由TI公司的开发人员按功能分为若干单元.其中ZDO、MAC、MT、ZMAC、NWK和Security文件夹中的程序一般不做改动,开发过程中调用这些单元中的API就可以直接使用。Z-Stack协议栈运行在操作系统抽象层(OSAL)上,OSAL是一个简易操作系统的函数封装,每个应用程序都以操作系统(OS)的一个任务形式执行,由系统调度这些任务的执行最终实现程序的上层协议。然后按系统硬件配置主函数ZMain及硬件目录层(HAL)程序,并进入用户App编程,同时还要根据系统需要自己定义一些任务事件ID.供OSAL轮询调度。

主控制电路的程序主要包括5个程序模块:按键扫描,串口中断,I2C总线,液晶显示和SPI总线。按键扫描函数获得键码,控制液晶的显示和语音提示内容;串口中断函数负责与CC2430的通信,既向主通信电路发送指令,也接收系统收费及出入口等信息;I2C总线用于控制E2PROM的读写,用89C54的I/O口模擬I2C接口充当主机.AT24C64作为从机,以存取获得的ETC的收费及出入口信息:液晶显示模块用于信息查询和直观地显示串口获得的信息.采用8位并行驱动方式:SPI总线用于控制语音提示段的播放.ISDl700在SPI总线的控制下有单段和多段播放两种模式,其中无卡和入口提示采用单段播放模式,金额不足和缴费金额采用多段播放模式。

3结论

实验证明,本文设计的车载单元与车道的ZigBee通信模块在75 m以内通信状况良好,车辆在不高于45 km/h的速度下通过ZigBee通信模块能够完成车辆的自动识别和收费功能,基本满足ETC系统的应用要求;车载单元提供了友好的信息查询和语音提示功能,使用户在车内就能详细了解本车的缴费信息,获得更加便捷的收费服务,同时,也降低了高速公路管理公司的运营成本。随着ZigBee技术的快速发展和成本的下降,本系统将具有很好的应用前景。

猜你喜欢

单片机
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
小议PLC与单片机之间的串行通信及应用
基于单片机的平衡控制系统设计
Microchip推出两个全新PIC单片机系列