• #">本文主要记录关于RFID设备商以及Impinj.OctaneSdk相关的使用说明以及功能解释。#
    • #">Reader本身的API核心方法和配置#
      • #">Connect(启用连接)#
      • #">Start (开启阅读器)#
      • #">Stop (暂停阅读器)#
      • #">Disconnect (关闭阅读器连接)#
      • #">TagsReported (标签阅读器订阅事件)#
      • #">AntennaChanged (天线订阅事件)#
      • #">ReaderStarted (启动事件)#
      • #">ReaderStopped (暂停事件)#
      • #">TagOpComplete (标记完成事件)#
      • #">AddOpSequence (向读取器添加一系列标签操作)#
      • #">DeleteAllOpSequences(删除所有动作)#
      • #">DeleteOpSequence (根据ID删除某个动作)#
      • #">EnableOpSequence (根据ID启用某个动作)#
      • #">QueryDefaultSettings (获取阅读器的默认配置)#
    • #">Tag的核心返回参数说明#

    本文主要记录关于RFID设备商以及Impinj.OctaneSdk相关的使用说明以及功能解释。#

    Reader本身的API核心方法和配置#

    Connect(启用连接)#

    该方法主要用于启动阅读器, 该方法包含多个重载,

    1. Connect(); //默认连接
    2. Connect(string address); //带IP地址的连接
    3. Connect(string address, int port, bool useTLS); //带IP地址与端口 和TLS加密连接
    4. Connect(string address, bool useTLS); //带IP地址 和TLS加密连接
    5. Connect(string address, int port); //带IP地址和端口的连接
    6. ConnectAsync(string address, int port, bool useTLS); //异步 带IP地址与端口 和TLS加密连接
    7. ConnectAsync(string address, bool useTLS); //异步 带IP地址 和TLS加密连接
    8. ConnectAsync(string address, int port); //异步 带IP地址和端口的连接
    9. ConnectAsync(string address); //异步 //带IP地址的连接
    10. ConnectAsync(); //异步连接

    Start (开启阅读器)#

    reader.Start();

    Stop (暂停阅读器)#

    reader.Stop();

    Disconnect (关闭阅读器连接)#

    reader.Disconnect();

    TagsReported (标签阅读器订阅事件)#

    reader.TagReported+=…
    通过订阅该事件, 当阅读器检测范围标签, 将触发该事件

    AntennaChanged (天线订阅事件)#

    发生天线更改事件时提供通知的事件。
    reader.AntennaChanged +=…

    ReaderStarted (启动事件)#

    当阅读器启动时, 触发该事件
    reader.ReaderStarted +=…

    ReaderStopped (暂停事件)#

    当阅读器暂停时, 触发该事件
    reader.ReaderStopped +=…

    TagOpComplete (标记完成事件)#

    使用者向阅读器分发一个操作(可以是read, write, lock, kill等)提供标记操作已完成的通知的事件,包括运算结果。
    reader.TagOpComplete +=…

    AddOpSequence (向读取器添加一系列标签操作)#

    Copy

    1. reader.AddOpSequence(TagOpSequence sequence); //TagOpSequence: 代表一类操作, 通过参数传递到阅读器当中。

    下图示例为给阅读器当中添加一个修改动作(TagWriteOp)和杀死动作(TagKillOp)。

    1. TagOpSequence seq = new TagOpSequence();
    2. var target = new TargetTag();
    3. target.MemoryBank = MemoryBank.Epc;
    4. target.BitPointer = BitPointers.Epc;
    5. target.Data = epc;
    6. seq.TargetTag = target;
    7. TagWriteOp writeOp = new TagWriteOp();
    8. writeOp.AccessPassword = null;
    9. writeOp.MemoryBank = MemoryBank.Reserved;
    10. writeOp.WordPointer = WordPointers.KillPassword;
    11. writeOp.Data = TagData.FromHexString(KILL_PW);
    12. seq.Ops.Add(writeOp);
    13. // Define a tag kill operation.
    14. TagKillOp killOp = new TagKillOp();
    15. // Specify the kill password for this tag.
    16. // The kill password cannot be zero.
    17. killOp.KillPassword = TagData.FromHexString(KILL_PW);
    18. // Add this tag write op to the tag operation sequence.
    19. seq.Ops.Add(killOp);
    20. reader.AddOpSequence(seq);
    1. 1. TagWriteOp (标签写入动作)
    2. 2. TagReadOp (标签读取动作)
    3. 3. TagKillOp (标签销毁动作)
    4. 4. TagLockOp (标签锁定动作)
    5. 5. TagFilterOp (标签过滤动作)
    6. 6. ...

    DeleteAllOpSequences(删除所有动作)#

    reader.DeleteAllOpSequences();

    DeleteOpSequence (根据ID删除某个动作)#

    reader.DeleteOpSequence(sequenceId);

    EnableOpSequence (根据ID启用某个动作)#

    reader.EnableOpSequence(sequenceId);

    QueryDefaultSettings (获取阅读器的默认配置)#

    var settings=reader.QueryDefaultSettings();
    settings.ReaderMode //阅读器的工作模式
    settings.SearchMode //阅读器的搜索模式
    settings.Session //阅读器的Session值
    settings.Antennas.GetAntenna(X).TxPowerInDbm //阅读器的天线值

    Tag的核心返回参数说明#

    Copy

    1. # Tid (标签唯一序列)
    2. # Epc (标签EPC区)
    3. # ReadOperationResults (阅读器优化后的读取结果)
    4. # TagSeenCount (标签的读取次数)
    5. # LastSeenTime (最后的读取时间)
    6. # FirstSeenTime (最早的读取时间)
    7. # AntennaPortNumber (天线的序号)
    8. # GpsCoodinates (GPS坐标参数的值)