桃花源qm花论坛(品茶),凤楼阁论坛官网入口网址,一品楼品凤楼论坛最新动态,风楼阁全国信息2024登录入口

你的位置:首页 > RF/微波 > 正文

RFID 收费系统设计新方法:CAN总线克服传统缺陷

发布时间:2013-07-31 责任编辑:eliane

【导读】由于传统的射频识别(RFID)收费系统具有实时性差和通讯效率低等缺点,本文将提出一种新型RFID收费系统设计方案,采用CAN 总线同时还使用了无线技术,克服了传统RFID 收费系统的缺陷,具有较强的使用价值。

针对传统基于RS-485 总线的射频识别技术(RFID)收费系统具有实时性差和通讯效率低的缺点,提出了一种基于CAN 总线和2.4G 无线网络的新型RFID 收费系统。该系统采用2.4G 无线网络环境,使一个CAN 节点能够控制六个RFID 收费终端的数据传输。应用温度模块获取的数据的无线传输对该系统进行测试,测试结果表明该方案设计的正确性。

1 引言

RFID(Radio Frequency IDentification)技术,即射频识别技术,是一种通信技术,目前广泛应用于各种收费场合,例如:公共交通收费系统,停车场收费系统等等。目前使用RFID 技术的系统通常使用RS-485 和PC 端进行数据交互,但是RS-485 使用单主节点,采用轮询方式,因此存在实时性较低和通讯效率低的问题。

随着计算机科学水平的不断飞跃和工业发展的需要,工业控制系统经历了基地式仪表控制系统、集中式数字控制系统、集散控制系统到现在广泛使用的现场总线控制系统的转变。CAN(Controller Area Net)总线是一种基于串行通信网络的现场总线。CAN 总线采用多主工作方式,网络上的任意节点可以在任意时刻向网络上的其他节点发送信息。同时,CAN 总线采用非破坏性仲裁技术,当两个或者更多的节点同时向网络上传送数据,优先级低的节点将停止发送,直到优先级高的节点发送完数据后再发送,这样有效地避免了总线竞争。CAN 通信距离最远可达10km/5kbps,通信速率最高可大1Mbps.CAN 的每帧数据都有CRC校验或者其它检测方式,保证了数据通信的可靠性。

当一个CAN 节点发生严重错误时,该节点会自动关闭,从而不影响其它节点的正常工作。因此,CAN 总线具有可靠性强,实时性高和效率高等优势,完全能够取代RS 485 总线。

考虑到在实际应用环境中,为了减少大量的布线工作,使用2.4G 无线网络作为数据从RFID 到CAN总线之间传输的中转站。无线技术具有成本低、灵活性高、可靠性高和安装时间短等特点。本次设计使用选用nRF24L01 组建无线通信网络,该芯片支持多点通信,在接受模式下可以接收6 路不同通道的数据。也就是无线网络的接收端可以接收6 个不同发送端的数据,发送端的数据是通过RFID 模块获得。

基于以上的讨论,本文将给出一种基于CAN 总线和2.4G 无线网络的新型RFID 收费系统。

2 硬件系统设计

2.1 系统拓扑结构和系统组成

2.1.1 系统拓扑结构

如图1 所示,RFID设备的相关数据将通过无线网络传送至CAN收发器,后者再将数据通过CAN总线传送至PC机,PC 机采用带有CAN接口的PCI-E扩展卡。此外,无线通讯芯片nRF24L01在接受模式下可以接收6路不同通道的数据,以此来实现一个CAN节点最多控制6 个RFID终端设备的数据传送。在6个RFID收费终端不能满足需求的情况下,可以添加更多的节点,所有节点挂载在CAN总线上,通过CAN总线,每个节点将数据传送至PC端。
图1 系统拓扑结构图
图1:系统拓扑结构图 

2.1.2 系统组成

本系统(CAN 节点)有两个子系统组成。B 子系统由单片机、RFID ??椤⑽尴吣??、看门狗、液晶屏、时钟模块、按键和EEPROM 组成。微控制器(MCU)控制RFID ??槎訫ifare 1 卡进行读写操作,无线??榻泄氐氖莘⑺透鳤 子系统。A 子系统由单片机、无线??椤⒖疵殴泛虲AN ??樽槌?。MCU 将经由无线??榻邮盏降氖萃ü鼵AN ??榉⑺椭罰C 端。由于一个节点最多可以控制6 个RFID 设备终端,因此在一个完整的系统里,A 子系统只有1 个,而B 子系统最多可以有6 个。

图2:子系统A 组成框图
图2:子系统A 组成框图
图3 子系统B 组成框图
图3:子系统B 组成框图。
 
2.2 微控制器

微控制器选用STC89LE58RD+,它具有4 个8 位并行I/O 端口P0~P3,1 个4 位并行端口P4,32KB FLASHROM,1280 字节RAM,3 个定时器,8 个中断源和4个中断优先级的中断系统。其性能完全满足设计所需。
[page]
2.3 CAN ???br />
CAN 总线的硬件实现选用飞利浦公司的SJA1000和PCA82C250。

2.3.1 SJA1000 芯片介绍

SJA1000 是一个独立的 CAN 控制器。它支持PeliCAN 模式扩展功能(采用CAN2.0B 协议),具有11 位或 29 位标识符,64 字节的接收FIFO,具有仲裁机制和强大的检错能力等。

2.3.2 PCA82C250 芯片介绍

PCA82C250 是CAN 总线收发器,它主要是为汽车中高速通讯(高达 1Mbps)应用而设计。它可以抗宽范围的工模干扰和电磁干扰(EMI),降低射频干扰(RFI),具有热保护功能。最多可以连接110 个节点。

2.3.3 硬件接口连接

如图4,P1口作为复用的地址/数据总线连接SJA1000的AD口,P2.0和SJA1000的片选段CS相连,使得SJA1000作为单片机外围存储器映射的I/O器件。此外,SJA1000的RX0、TX0和PCA82C250的RXD、TXD相连。
图4 SJA1000 和PCA82C250 接口连接示意图
图4:SJA1000 和PCA82C250 接口连接示意图
 
2.4 无线???br />
2.4.1 nRF24L01 芯片介绍

无线芯片选用nRF24L01.它是2.4GHz 无线射频收发芯片,传送速率高达2Mbps,支持125 个可选工作频率,具有地址和CRC 校验功能,提供SPI 接口。

有专用的中断管脚,支持3 个中断源,可向MCU 发出中断信号。具有自动应答功能,在确认收到数据后记录地址,并以此地址为目标地址发送应答信号。支持ShockBurstTM 模式,在此模式下,nRF24L01 可以与低速MCU 相连。nRF24L01 在接收模式下可以接收6 路不同通道的数据。

2.4.2 nRF24L01 硬件接口连接

如图5 所示,单片机通过模拟SPI 总线时序和nRF24L01 进行通信。其外部中断管脚IRQ 和单片机的P3.2(外部中断0)相连。
图5 nRF24L01 接口连接示意图
图5:nRF24L01 接口连接示意图

2.5 RFID ???br />
2.5.1 MF RC500 芯片介绍。
RFID ??檠∮梅衫止镜腗F RC500,它是目前广泛使用的RFID 芯片之一。MF RC500 支持ISO14443A协议,支持MIFARE 双接口卡,内部有高集成度模拟电路用于应答卡的解调和解码,具有64 字节收发FIFO 缓冲区和非易失性密钥存储器。此外,有专用的中断管脚,支持6 个中断源,可向MCU 发出中断信号。

2.5.2 MF RC500 硬件接口连接。

由图6 所示, MCU 将MF RC500 中的寄存器作为外部RAM进行访问。INT 管脚悬空,不使用中断功能。
图6 MF RC500 接口连接示意图
图6:MF RC500 接口连接示意图

3 软件系统设计

在初始化单片机程序中,子系统A 外部中断设置为低电平触发,子系统A 的中断信号源由nRF24L01提供,当nRF24L01 收到数据后产生中断信号,通知MCU 来读取数据。子系统B 不使用中断功能。
[page]
在初始化nRF24L01 程序中,子系统B 配置为发送模式,使用16 位CRC 校验。使用自动应答功能,数据通道0 被设置为接收应答信号,其数据通道0 的接收地址必须与发送端的地址相等,以此来保证能正确的收到应答信号。一个系统最多可以有六个子系统A 组成,这6 个子系统的发送地址不能重复。子系统A 配置为接收模式,使用16 位CRC 校验,最多接收6 个通道的数据。这6 个接收地址和各子系统B 中的发送地址相等。

在初试化SJA1000 中,使用PliCAN 模式,波特率125Kbps,禁止接受和发送中断;输出控制寄存器配置如下:正常模式,TX 下拉,输出控制极性。此外,需正确配置验收代码寄存器和验收屏蔽寄存器,此配置用于CAN 总线仲裁功能的实现。

在初始化MF RC500 中,其主要设置如下:TX1和TX2 的输出配置为13.56MHz 能量载波;解码器的输入源为内部解调器;使用Q 时钟作为接收器时钟;禁止发送和接收中断;设置RxThreshold 寄存器值为0xFF,BitPhase 寄存器值为0xAD 等。

复位请求函数将在天线的有效范围内搜索Mifare1 卡,如果有卡存在,将建立通信连接并读取卡上的卡片类型号TAGTYPE.防碰撞函数使MF RC500 在多张Mifare 1 卡选择其中的一张??ㄑ≡窈芄缓鸵阎蛄泻诺目ń型ㄐ?。认证函数将Mifare 1 卡上的密码和MF RC500 的EEPROM 中的密钥进行匹配。

只有匹配正确后,才能进行对卡的读写操作。发送停机指令设置Mifare 1 卡为HALT MODE.CAN 函数用于将有关数据发送至PC 机。本次设计采用查询方式以确保数据已经发送。通过查询状态寄存器中的标志位TBS、TCS 和TS 即可确认是否数据发送完毕。类似的,在无线函数中为确保数据已经发送,通过查询状态寄存器中的TX_DS 即可。

图7 子系统A 软件流程
图7:子系统A 软件流程
图8 子系统B 软件流程图
图8:子系统B 软件流程图
 
4 系统测试

首先,对RFID ??榻辛瞬馐?。将MIFARE 1卡放入天线有效范围内,对该卡进行读写操作,并将相关数据显示在液晶屏上。经过该测试,RFID 模块读写正常。 随后,测试该系统传输网络的实时性,本文以温度数据的无线传输进行测试。测量温度的装置为DS18B20 单线温度传感器。将该温度传感器连接至子系统B 中,温度传感器每隔一秒对室内温度采样一次,微控制器读取温度数据并通过无线网络发送给A 子系统,A 子系统接收数据并通过CAN 总线发送至PC 端。

PC 端使用Visual Basic 6.0 编写上位机程序,上位机将温度数据绘制成曲线并写入文本。温度曲线如图8 所示,其中温度值的精度为1 摄氏度。通过对温度曲线图和文本数据的对比观察,发现温度数据无异常, 数据没有出现丢失情况。

图9 温度曲线图
图9:温度曲线图
 
5 结语

本文利用了CAN 总线取代RS-485 总线,克服了后者存在的缺点。同时还使用了无线技术,在减少大量布线工作的同时,充分利用了nRF24L01 多点通讯的功能。在系统搭建完成后,笔者对系统进行了长时间测试。测试结果表明:数据传输稳定,可靠,实时性高,克服了传统基于RS485 总线设计的RFID 收费系统的缺陷,具有较强的使用价值。

相关阅读:
RFID技术原理及其射频天线设计
http://www.5r3h.cn/rf-art/80005888
设计RFID系统需选择合适的频率
http://www.5r3h.cn/emc-art/80019199
射频识别技术原理分析
http://www.5r3h.cn/rf-art/80013359
要采购RFID么,点这里了解一下价格!
特别推荐
技术文章更多>>
技术白皮书下载更多>>
热门搜索

关闭

?

关闭