首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
RFID中间件数据的过滤方法的研究和分析
来源:本站整理  作者:佚名  2010-01-11 11:05:22



 首先是为标签构建一个TagEvent类,该类包含的关键参数和方法为:

    public class TagEvent imp lements Runnable{
    int value;
    boolean detecStauts = false;
    int fmax;
    int fmin;
    public void run ( ) {
    while ( value > 0) {
    try{
    Thread. currentThread ( ). sleep (1000) ;
    } catch ( Interrup tedExcep tion e) { }
    if ( value > = fmax&&! detecStauts) {
    (触发标签出现记录)
    detecStauts = true;
    }
    else if ( value < = fmin&&detecStauts) {  
    (触发标签消失记录)
 detecStauts = false;
 }
 value - - ;
    } }

 当过滤模块主程序检测到一个新标签的时候,便为其建立一个Tag Event类的对象new Tag,并对各个关键字段赋初值,同时启动该对象内部的计时器线程:

 new Thread ( newTag). start ( ) ;该计时器线程的作用是每个报告周期对标签权值value进行检查并触发相应操作. 每次检查后将标签权值value减1,以实现当标签未被报告时其权值的逐步下降. 当权值value减到0的时候,计时器线程停止,这时可以销毁该对象。

 当过滤算法主模块发现报告的标签已存在时,对该标签对象的value值进行累加:

    newTag. value + = valueStep;
    if ( newTag. value > = newTag. fmax) {
 newTag. value = newtag. fmax;
    }

 其中valueStep就是算法中定义的累加权值. 如果权值value已经达到阀值fm ax,则将其保持在该值,防止经过多个上报周期后标签权值过高,影响后继判断。

 3. 2 实验验证

 在验证的过程中模拟了2 种应用场景: 第1种是带读写器的货架,该场景要求达到货架读写器能稳定识别放入的带标签物品,不会因为信号波动而误报货品离开信息,并对经过货架的其他物品保持较低的敏感度;第2种是门禁系统,要求对出现在读写范围内的标签立刻做出反应,但在一定时间内不能重复上报同一个标签。

 在第1种货架系统场景中,设置valueS tep = 3,fapp = 10, fdisp = 0,当标签进入读写器范围后,经过5 s左右的时间过滤模块触发标签出现操作,人为将标签多次短时间移出读写器范围,模拟信号干扰和波动的情况,并将另一标签从读写器范围内移过,读写器均未触发多余的标签出现和消失操作。

 在第2 种门禁系统场景中,设置valueS tep =10, fapp = 10, fd isp = 0,当标签进入读写器范围内,过滤模块立即触发了标签出现操作,当标签消失后, 10 s内不再重新触发。

    4 结束语

 本文中通过对RFID中间件实际应用场景的分析和现有过滤算法的研究,设计并实现了一种适用范围广,带有噪点抑制功能的RFID数据过滤算法, 通过一个java程序在模拟场景中对算法进行了实验。结果表明,该算法具有良好的抑噪和去冗能力,在不同参数的组合下,可以适应各种实际应用需求, 该过滤算法为更高层的业务规则过滤模块奠定了很好的数据基础,对于RFID中间件的设计和开发有一定的实用价值。

上一页  [1] [2] [3] [4]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:61,480.47000 毫秒