EPCglobal Gen2协议被设计为适应各种各样的应用程序,因此几乎可以调整其操作的每个方面,以优化其针对特定需求集的行为。在开箱即用的情况下,ThingMagic阅读器被配置为在一般环境下表现良好,许多用户从来不用接触第2代设置。对于那些必须这样做的人,这里提供的信息将使读者的性能优化成为一个简单的一步一步的过程。
EPCglobal Gen2技术的新用户通常会惊讶于他们不能立即实现阅读器和标签供应商的文献中承诺的性能。虽然有些差异可能是由于供应商在仔细控制的条件下测量了它们的性能,但更有可能的原因是读取器设置不理想,特别是与EPCglobal Gen2(“Gen2”)协议有关的设置。知道Gen2设置选项并可以调优它们以优化总体系统性能的用户几乎总是可以复制供应商的结果。本应用笔记将解释每个相关第2代设置的目的和影响,然后逐步优化它们以获得最佳结果。
为了理解第二代设置的相关性,有必要对超高频RFID如何工作有一个基本的了解。在最基本的层次上,阅读器在与标签通信的同时激活标签。对于这类系统,一个很好的类比是,如果两个人试图在夜间从一个山顶向另一个山顶发送消息,其中一个只有手电筒(代表阅读器),另一个有镜子(代表标签)。有手电筒的人可以通过打开和关闭手电筒来发送信息,但当他想要得到回应时,他必须保持手电筒开着,这样他的同伴就可以用镜子回信号。在这一层之上,可能有很多人在其他山顶上,也有镜子,准备将消息发送回“阅读器”,您就有了Gen2协议设计用来处理的通信挑战的想法。
控制标签行为的设置都由阅读器通过与一个或多个标签通信时发送的消息来控制。这些设置不会长期有效。有些会与读取器进行一次交换,有些会一直持续到所有标签都响应,有些会一直持续到标签断电,还有一些会持续一段固定的时间。然而,几分钟后,Gen2协议希望所有标记恢复到默认状态,这样第二个阅读器在遇到标记时就会自动知道它们处于什么初始状态
有相当多的第2代设置,但它们可以分为3类:
1. 控制阅读器如何与标签通信的设置
2. 控制标签如何与读取器通信的设置
3.控制标签之间何时相对响应以避免通信的设置
碰撞
另外,在了解更多关于Gen2选项的信息时,请记住希望为应用程序优化RFID性能的哪些方面。典型的选择是:
1. 最大阅读距离
2. 最少的时间读取每个标签在字段至少一次
3.最短的时间读取单个标签通过现场
4. 在最短的时间内,任何标签的最大响应数
最后一种情况(4)在实际应用中很少用到,但它与其他情况一起被提到,因为它通常是用户在实验室环境中测试阅读器时首先尝试做的事情。你的目标可能还包括最小化对性能的负面影响,比如当许多读者都在很近的地方时,减少读者对读者的干扰。第2代设置也有帮助。
- Reader-to-Tag设置
- 虽然与第2代设置没有直接关系,但传输功率的作用对成功的RFID应用非常重要,这里必须说几句。为了在读取器和标签之间成功地通信,标签必须能够被读取器的信号启动。如果标签保持休眠状态,不响应阅读器,则根本不发生通信。为了达到最大的性能,总是将阅读器配置为以最高允许功率向当地规定允许的最高允许增益天线发射。(在FCC法规管辖的地区,如果圆极化,这将是+30 dBm的功率水平到天线的最大增益9 dBiC,和6dBiL,如果线极化。)
第2代有两个主要的设置来控制阅读器到标签的通信,“Tari”和“链接速率”。在我们的手电筒和镜子的类比中,如果通信“协议”是莫尔斯码,“Tari”将控制一个点(或破折号)的长度,连接速率将控制点和破折号发送的速度。就像摩尔斯电码一样,文字发送的最大速度受到点和横线长度的限制。ThingMagic会同时调整这两种设置,所以当用户选择一个较小的Tari时,链接率会自动增加。Tari值提供6.25 usec, 12.5 usec,和25 usec,这是自动配对的链接速率为40kbps, 80kbps和160kbps的ThingMagic阅读器。
在选择Tari值(即连接速率)时,应考虑以下因素:
1. 我是否会经常向标签写入数据?Gen2协议被设计成最小化从读取器到标签的通信(在库存周期中,发送的消息非常短)。如果获得标签的EPC基本上就是所有需要的,那么Tari/linkrate可以针对其他因素进行优化——它们不会对性能产生太大的影响。如果正在写入标签,那么降低Tari(以提高链接率)可能有明显的好处。
2. 这个地区还有很多其他的读者吗?无需过多解释,一个信道上更快的通信可能会导致相邻信道之间的干扰,如果信道间隔太近的话。如果在该区域有其他阅读器,并且随着更多阅读器的打开,第一个阅读器的性能似乎降低了,那么系统可能会在阅读器之间经历相邻的信道干扰。这种情况在北美(FCC)地区很少见,因为它包含50个间隔良好的频道,但在只有4个频道的欧盟地区,这可能会成为一个问题。在这种情况下,您可能希望尝试增加Tari以降低链接速率,并查看第一个阅读器的性能是否有所改善。
- Tag-to-Reader设置
- 与读取器与标记通信相比,标记使用一种稍微不同的信令方法来与读取器通信。有两个设置可以用来控制标签到阅读器的通信方法,链接频率(称为“Backscatter链接频率”,以清楚地与阅读器的链接速率区分)和“M”值。后向散射链路频率(通常缩写为“BLF”)和“M”值都修改了标签返回给读取器的通信方式。BLF为原始信令速率。ThingMagic阅读器支持的数据频率为250 kHz和640 kHz。M值实际上控制一个符号重复的次数。M(2)表示每个符号重复两次。ThingMagic reader支持M值1 (FM0)、2、4和8。当没有重复(M=1)时,这种模式被称为“FM0”,因为其他一些细微的区别与本讨论无关。Gen2协议提供了重复符号的选项,以最大限度地提高读取器解码来自标签的非常微弱信号的机会。就像一个人在嘈杂的房间里重复几遍自己说的话会更容易理解他在说什么一样,如果“M”大于等于2,RFID阅读器就能更可靠地解码微弱信号
- ThingMagic阅读器目前支持640 kHz的BLF和“M”值FM0,以实现最高的标签到阅读器的数据速率,约为每秒400个标签。另外,250khz的BLF可以与FM0, 2, 4,或8的“M”选项结合。在BLF=250 kHz和M=8时,标签的读取速率下降到大约每秒100个标签,但是增加的灵敏度可以使读取距离增加一倍
与敏感的电池辅助标签设置为640 kHz/FM0相比 - 在选择这些值时,还需要考虑一个额外的权衡。正如读写器与标签之间的高数据速率增加了许多读写器存在时读写器之间干扰的可能性一样,标记与读取器之间的高数据速率也会导致不必要的相邻信道干扰。如何平衡这些关注点将在优化一节中讨论。
- Tag碰撞设置
- 其余的第2代设置控制标签响应阅读器的速度和频率。如果字段中的所有标签都立即响应阅读器,它们的响应就会发生碰撞,阅读器几乎无法解码来自任何标签的响应
- 为了避免这种情况,Gen2协议提供了可变数量的标签可以响应的时隙。读取器向标记填充宣布它将给它们的响应机会的数量(根据它发送的值“Q”计算)。每个标签在这个范围内随机选择一个数字,阅读器开始宣布响应槽
- 从本质上讲,读者会宣布一轮游戏的开始,然后反复呼喊“下一轮”。每个标签都会计算有多少个“下一个”,并在选定的插槽出现时做出响应。所宣布的“Q”值是一个从0到15的数字。槽的数量是2^Q的功率。槽的数量随着“Q”的值迅速增加:1、2、4、8、16等。
- 如果“Q”太大,许多回应机会将得不到答复,库存周期将花费比它应该花费的时间更长。如果“Q”太小,一个或多个标签更有可能在同一时间段内响应,导致在所有标签响应之前必须运行几轮库存。在极端的情况下,字段中的标签比可用的插槽多得多,响应冲突总是会发生,库存轮永远不会成功完成
- 理想的插槽数量被确定为该领域中标签数量的1.5倍左右。如果标签的数量是可变的,用户可以设置ThingMagic reader根据连续轮的结果自动确定Q(碰撞多则增加Q,未答复的响应槽过多则减少Q)。
- 有两个额外的Gen2设置,控制标签是否和多久参加一次库存轮。当初始设置响应队列时,读取器还向所有标签发送另外两条信息:(1)他们应该延迟多长时间才能重新响应(称为“会话”值),(2)他们应该处于什么样的状态(“A”或“B”)才能参与库存回合。“A”状态表示标签还没有对库存轮做出响应。“B”状态表示它有。会话设置决定标签在返回到“A”状态之前在“B”状态中等待多长时间,以便它们可以再次参与。
- “会话”设置(控制标签对库存回合的响应频率)有4个选项,但有两个行为相同。
会话“0”:准备在射频电源下降时再次响应
会话“1”:在第一次响应后0.5秒到5秒之间准备再次响应
会话“2”或“3”:至少2秒内不要再次响应 - 会话设置的选择几乎总是基于字段中预期的标记数量。您通常希望在第一个标记再次开始响应之前,字段中的所有标记都有机会响应一次。对于ThingMagic的默认设置,标签读取速率约为每秒200个标签。通过这些设置,您希望在字段中使用会话0最多100个标记,使用会话1最多400个标记,使用会话“2”(或“3”)最多400个标记。
- ThingMagic的“目标”设置只有在你想让标签更频繁地重新响应时才重要。有两个相关的选择,“A”和“A然后B”。“A”意味着读取器总是寻找处于“A”状态的标记。由会话计时器保持在“B”状态的标记将被忽略。“A然后B”告诉读取器读取处于“A”状态的所有标签,然后读取处于“B”状态的所有标签,并不断重复这个过程。处于“B”状态的标记将响应“B”查询,并立即返回到它们的“a”状态,无论它们的会话计时器上是否还有剩余时间。这种加速的读取速率只在两种情况下有用: (1)应用程序需要多次读取相同的标签,以确定更多的标签的身份,例如,如果一个尝试正在进行,以确定标签是否移动向天线或远离监测标签的返回信号水平。(2)用户试图通过反复阅读较少的标签来评估阅读器在存在许多标签的情况下的性能。
- Gen2设置优化
- 如果关于第2代设置的前面的信息对您来说是新信息,那么同时优化所有这些设置的任务在这一点上可能会让您望而生畏。幸运的是,我们已经创建了一个逐步实现预期结果的过程
- (1)在预期的传输电平(除非必须限制读域大小,否则通常是规定允许的最高电平)上设置阅读器,使其达到可能的最大读距离(Tari=6.25 usec, BLF=250 kHz, M=8)。将标签放置在应用程序所需的最大读取距离,并确保所有标签都能可靠地读取。
- (2)为预期的标签填充设置你的“Q”和会话值(2^Q应大于标签数量的1.5倍)。如果标签数量变化很大,使用ThingMagic“自动”设置。
- (3)设置会话值。最大距离BLF和M设置将每秒读取大约100个标记,所以如果您预期有50个标记,那么会话应该设置为“0”,“1”表示有200个标记,如果您预期字段中有更多标记,则应该设置为“2”(或“3”)。
- (4)现在确定这些设置是否满足您对标签读率的要求(或读取穿过字段的标签的能力)。如果读率(或单标签读时间)太慢,开始降低“M”值(保持BLF在250khz),直到达到所需的读率。(如果FM0和250 kHz不够,尝试FM0和640 kHz。)现在在需要的距离再次检查系统性能,以确保标签仍然可以可靠地读取。如果仍然可以,请保留这些设置。如果没有,您就必须决定M和BLF的最佳折衷值,以平衡读距离和读速率
- (5)如果应用程序调用它,增加相同设置的读取器。当其他读取器运行时,检查第一个读取器的性能。如果它没有改变,不要改变它的设置。如果它的性能下降了,那么阅读器对阅读器的干扰可能正在发生。首先增加所有读取器上的Tari,看看是否有帮助(这个变化对其他性能因素的影响最小)。如果不奏效,试着减少BLF并增加M值,看看是否能消除问题。如果是这样,您必须选择BLF和M值,使您可以接受的水平,减少读者对读者的干扰,读率和读距离。
- (6)如果你的应用程序需要一些标签来重复响应,使用session= " 0 "和留下target= " a "设置单独。如果字段中有足够的标记需要使用会话“1”或“2”,但您需要标记以比会话计时器允许的更快的速度重新响应,则使用target=“A then B”设置。
- 此时,您的第2代设置将得到优化,您的系统将以最佳性能运行。如果你仍然遇到困难,可以从ThingMagic获得额外的资源