发明内容
有鉴于此,本发明提供了一种射频识别中间件的实现系统和方法。通过降低读写器读取的数据量,减少射频识别中间件接收的数据量,降低射频识别中间件的工作量,提高射频识别中间件的工作效率。
本发明提供了的一种射频识别中间件的实现系统,包括:
数据采集模块,用于采集读写器读取到的电子标签数据;
数据过滤模块,用于过滤所述数据采集模块采集到的电子标签数据中的冗余数据;
数据处理模块,用于对经所述数据过滤模块过滤后的电子标签数据进行解密和/或翻译;
数据传输模块,用于向应用系统传输所述数据处理模块解密和/或翻译后得到的数据;
其中,所述数据采集模块包括:
连接单元,用于与目标读写器建立连接;
清点单元,用于当所述连接单元与目标读写器建立连接之后,控制目标读写器获取电子标签上存放的厂商代码和定制代码,并根据目标读写器获取的厂商代码和定制代码对电子标签进行合法性判断;
读/写单元,用于控制目标读写器对经清点单元判断合法的电子标签进行读/写操作;
断连单元,用于当所述目标读写器完成读/写操作后,断开所述连接单元与所述目标读写器的连接。
进一步,所述数据处理模块包括:
多个解密单元,用于同时分别对经所述数据过滤模块过滤后的电子标签数据中的加密数据的不同部分进行解密;
翻译单元,用于对经所述数据过滤模块过滤后的电子标签数据中未加密数据进行翻译;
数据组装单元,用于对所述翻译单元和多个解密单元输出的数据进行重组,并将重组的数据输出给所述数据传输模块。
进一步,所述读/写单元,具体用于在控制目标读写器对经清点单元判断合法的电子标签进行读/写操作时,控制所述目标读写器一次性读取电子标签上的所有数据,或者分多次读取电子标签上的特定数据。
进一步,所述连接单元包括:
读取子单元,用于读取预置的各种不同类型的读写器的配置文件;
获取子单元,用于获取所述目标读写器的版本信息;
判断子单元,用于根据获取子单元获取的版本信息,判断所述目标读写器是否合法;
设置子单元,用于当所述判断子单元判断所述目标读写器合法时,为所述目标读写器设置版本标志;
连接子单元,用于在所述设置子单元为所述目标读写器设置版本标志后,与所述目标读写器建立连接。
进一步,所述数据过滤模块包括:
第一过滤单元,用于对单台读写器采集到的重复数据进行过滤;
第二过滤单元,用于对不同读写器采集到的重复数据进行过滤。
相应地,本发明还提供了一种射频识别中间件的实现系统,包括如下步骤:
a、采集读写器读取到的电子标签数据;
b、过滤采集到的电子标签数据中的冗余数据;
c、对经过滤后的电子标签数据进行解密和/或翻译;
d、向应用系统传输解密和/或翻译后得到的数据;
其中,所述步骤a包括:
a1、与目标读写器建立连接;
a2、控制目标读写器获取电子标签上存放的厂商代码和定制代码,并根据目标读写器获取的厂商代码和定制代码对电子标签进行合法性判断;
a3、控制所述目标读写器对经判断合法的电子标签进行读/写操作;
a4、当所述目标读写器完成读/写操作后,断开所述连接单元与所述目标读写器的连接。
进一步,所述步骤c包括:
c1、同时分别对经过滤后的电子标签数据中的加密数据的不同部分进行解密,和/或,对经过滤后的电子标签数据中未加密数据进行翻译;
c2、对解密和/或翻译后输出的数据进行重组。
进一步,所述步骤a3包括:控制所述目标读写器一次性读取电子标签上的所有数据,或者分多次读取电子标签上的特定数据。
进一步,所述步骤a1包括:
a11、读取预置的各种不同类型的读写器的配置文件;
a12、获取所述目标读写器的版本信息;
a13、根据获取的版本信息,判断所述目标读写器是否合法;
a14、当判断所述目标读写器合法时,为所述目标读写器设置版本标志;
a15、与所述目标读写器建立连接。
进一步,所述步骤b包括:对单台读写器采集到的重复数据进行过滤和/或对不同读写器采集到的重复数据进行过滤。
本发明的有益效果:
本发明提供的射频识别中间件的实现系统和方法,在控制目标读写器对电子标签进行读/写操作之前,首先控制目标读写器读取电子标签上的厂商代码和定制代码,然后根据厂商代码和定制代码判断电子标签是否合法,并在判断到电子标签合法后才继续控制目标读写器对电子标签进行读/写操作,从而在正式读取电子标签的数据之前,过滤掉根本不可能含有有用信息的电子标签上数据,减少读写器读取到的数据量,进而减少射频识别中间件接收和处理的数据量,降低射频识别中间件的工作量,进而提高射频识别中间件的工作效率。
具体实施方式
请参考图1,是本发明提供的射频识别中间件的实现系统的实施例的结构示意图。其包括:数据采集模块11、数据过滤模块12、数据处理模块13和数据传输模块14。上述模块依次实现电子标签数据的采集、过滤、处理(主要包括:解密,翻译,或者解密和翻译)以及传输。
其中,数据采集模块11,主要用于采集读写器读取到的电子标签数据。其通过为不同类型的读写器提供统一的API,隔离不同类型的读写器对应用系统造成的影响,使得应用系统可以与不同类型的读写器配合工作,增加读写器、应用系统的可移植性。
此处,数据采集模块11可以实际工作的需要进行数据采集方法固化,对所有接入的不同厂商、不同版本的读写器设备进行采集方法最优化,保证所有接入的读写器均具备高效、可控的采集工作效率。
其中,数据过滤模块12用于过滤数据采集模块11采集到的电子标签数据中的冗余数据,以剔除重复的数据,减少上报给应用系统的数据量。
其中,数据处理模块13用于对经数据过滤模块12过滤后的电子标签数据进行解密和/或翻译。此处解密和/或翻译可以在不同的处理通道内同时进行,以提高处理效率。
此外,数据处理模块13还可以读写器输入的数据进行筛选处理,根据应用系统的识别提示直接输出应用系统所需的数据,可以提高数据处理速度,增加用户体验。
其中,数据传输模块14,用于向应用系统传输数据处理模块13解密和/或翻译后得到的数据。此处,为了提高传输质量,避免传输过程中的干扰,数据传输模块14可以采用提高信噪比和/或增加传输功率的传输方式。
下面对上述结构进行更进一步的说明。
在一种实施方式中,如图2所示,数据采集模块11包括:连接单元21、清点单元22、读/写单元23和断连单元24。
其中,连接单元21主要用于与目标读写器建立连接,其完成的内容包括:加载目标读写器的配置文件,调用目标读写器的动态连接库,从而加载目标读写器的驱动,实现与目标读写器的连接。
其中,清点单元22主要用于在连接单元21与目标读写器建立连接后,控制目标读写器获取电子标签上存放的厂商代码和定制代码,并根据目标读写器获取的厂商代码和定制代码对电子标签进行合法性判断。通常厂商代码和定制代码存放在电子标签的TID(TagIdentifier,标签标识)区,其可以唯一地标识电子标签。清点单元22在工作时,驱使目标读写器仅从电子标签的TID区读取数据,而不从电子标签的诸如通用信息区,用户信息区等区域读取数据,待目标读写器上报读取到的厂商代码和定制代码之后,在判断合法性时,判断该应用系统中的合法电子标签记录中是否有具有该厂商代码和定制代码的电子标签;如果有,则说明当前的电子标签合法,否则说明当前的电子标签非法。上述的合法电子标签记录可以预先配置在射频识别中间件系统中,且用表的形式存储,直接通过查表的方式就中以判断当前的电子标签是否合法。
其中,读/写单元23用于控制目标读写器对经清点单元22判断合法的电子标签进行读/写操作。其中,读操作是指从电子标签中读出电子标签数据,写操作是指将电子标签数据写入电子标签中。由于读/写单元23仅控制目标读写器对合法的电子标签中的数据进行读取,而对于非法的电子标签,则直接忽略,因此在硬件层面上实现了对电子标签的过滤,减少目标读写器读取的数据量,进而减少射频识别中间件的实现系统所接收的数据量和处理的数据量。
此处,读/写单元23在对合法的电子标签中的数据进行读取时,其可以采用现有中的读取方式,即一次性地将电子标签中的所有数据读取出来。或者采用下面的读取方式:从电子标签中读取应用系统需要的数据,对于不需要的数据,不读取;以交通管理系统中的电子标签为例,其通常将车辆管理的通用信息存储在一个区,将车主的个人信息存储在一个区,当系统仅需要通用信息时,读/写单元23可以控制目标读写器令读取通用信息,而不读取个人信息,从而减少目标读写器读取的数据量。当然,对于通用信息和个人信息可以进行更细致的划分,当将某种更具体的信息在电子标签中的存储位置固定之后,读/写单元23可以控制目标读写器从电子标签中读取到具体信息。对于哪些才是应用系统需要的数据,可以预先在射频识别中间件的实现系统中配置。
其中,断连单元24用于当读/写单元23控制目标读写器完成读/写操作后,断开连接单元21与目标读写器的连接。
在另一种实施方式中,如图3所示,连接单元21包括:读取子单元31、获取子单元32、判断子单元33、设置子单元34和连接子单元35。
其中,读取子单元31主要用于读取各种不同类型的读写器的配置文件。一般在配置文件中有读写器的工作方式等内容,可以根据配置文件对目标读写器进行配置,控制其工作方式。
其中,获取子单元32主要用于获取目标读写器的版本信息。
其中,判断子单元33主要用于判断获取子单元32获取的版本信息是否合法。也就是说,判断是否存在与目标读写器的版本信息相应的版本信息,如果存在,则说明目标读写器合法,存在目标读密致器的配置文件;如果不存在,则说明目标读写器非法,可以进行诸如报错提示等操作。
其中,设置子单元34主要用于当判断子单元34的判断结果为是时,为目标读写器设置版本标志。此处的版本标志具有唯一性,其可以用射频识别卡的卡片序列号实现,这是由于射频识别卡在制造时具有唯一的卡片序列号,该序列号无法复制,在市面上不会有重复的两张RFID卡片,具有很高的防伪装性。
此处,设置版本标志的作用是对读写器进行区分,以方便管理。
其中,连接子单元35主要用于在设置子单元34为目标读写器设置版本标志后,与目标读写器建立连接。
在另一种实施方式中,如图4所示,数据过滤模块12包括:第一过滤单元41,用于对单台读写器采集到的重复数据进行过滤。
其中,第一过滤单元42,用于对单台读写器采集到的重复数据进行过滤。
其中,第二过滤单元,用于对多台读写器采集到的重复数据进行过滤。
具体地,第一过滤单元41和第二过滤单元42进行数据过滤时,可以采用时间戳或队列的方式进行过滤。具体地,采用时间戳进行过滤时,对于过滤模块12接收到的数据,在接收到时均打上一时间戳;然后判断在预设的时间(例如:10s)范围内,是否接收到两相同的数据;如果判断结果为是,则认为数据重复,将后接收到的数据丢弃。采用队列进行过滤时,在过滤模块12在设置一先入先出队列,该队列的长度存储5至15个数据为宜,当队列中存在相同的数据时,则认为数据重复,将靠近队尾的相同数据丢弃。
在另一种实施方式中,如图5所示,数据处理模块13包括:多个解密单元51、翻译单元52和数据组装单元53。
其中,数据采集模块11接收的目标读写器发来的电子标签数据中可能有些数据是加密的,有些数据是没加密的。或者仅包括加密数据。或者仅包括非加密数据。因此:
多个解密单元51形成多个解密通道,主要用于同时分别对经数据过滤模块12过滤后的电子标签数据中的加密数据的不同部分进行解密。
此处,当读/写单元23控制目标读写器只对同一电子标签读取一次时,可以先将目标读取器读取到的电子标签数据中的加密数据进行拆分,然后将拆分后的加密数据分发给不同的解密单元51进行解密处理,由于各解密单元51同时工作,因此可以提高提高解密效率。
此处,当读/写单元23控制目标读写器分多次读取同一电子标签上的数据时,由于读取的过程实质已完成了对加密数据的拆分,则直接将多次读取的加密数据分别送到不同的电子标签中进解密处理。
翻译单元52,用于对经数据过滤模块12过滤后的电子标签数据中未加密数据进行翻译。一般地,电子标签中的有些数据是加密的(如用户信息),有些信息是非加密的(如通用信息),对于非加密数据则直接由翻译单元52进行翻译处理。
数据组装单元53,用于将多个解密单元51和翻译单元52输出的数据重组后,输出给数据传输模块14。进一步,数据组装单元53在重组数据时,还向重组后的数据中添加校验码,以保证数据在传输过程中的准确性。
需要说明的是,根据本发明提供的射频识别中间件的实现系统并不限于以上所公开的系统构造,而是可根据实际需要重新配置(例如,合并或拆分)上述的各功能模块。
相应于上述系统,本发明还提供了一种RFID中间件的实现方法。该方法的具体细节已在上述的系统实施例中说明,因此下述仅对梳理方法的主干。
请参考图6,是本发明的射频识别中间件的实现方法,包括:
步骤S11、采集读写器读取到的电子标签数据。
步骤S12、过滤采集到的电子标签数据中的冗余数据。此处,过滤包括:对单台读写器采集到的重复数据进行过滤和/或对不同读写器采集到的重复数据进行过滤。
步骤S13、对经过滤后的电子标签数据进行解密和/或翻译。此处,步骤S12包括:同时分别对经过滤后的电子标签数据中的加密数据的不同部分进行解密,和/或,对经过滤后的电子标签数据中未加密数据进行翻译;对解密和/或翻译后输出的数据进行重组。
步骤S14、向应用系统传输解密和/或翻译后得到的数据。
具体地,如图7所示,步骤S11包括:
步骤S111、与目标读写器建立连接。此处,包括:读取预置的各种不同类型的读写器的配置文件;获取所述目标读写器的版本信息;根据获取的版本信息,判断所述目标读写器是否合法;当判断所述目标读写器合法时,为所述目标读写器设置版本标志;与所述目标读写器建立连接。
步骤S112、控制目标读写器获取电子标签上存放的厂商代码和定制代码,并根据目标读写器获取的厂商代码和定制代码对电子标签进行合法性判断。
步骤S113、控制所述目标读写器对经判断合法的电子标签进行读/写操作。此处,可以控制所述目标读写器一次性读取电子标签上的所有数据,或者分多次读取电子标签上的特定数据。
步骤S114、当所述目标读写器完成读/写操作后,断开所述连接单元与所述目标读写器的连接。
最后说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的宗旨和范围,其均应涵盖在本发明的权利要求范围当中。