RFID_R420 C# ImpinjSDK参数详解

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

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

Connect(启用连接)

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

 Connect();   //默认连接
 Connect(string address);  //带IP地址的连接
 Connect(string address, int port, bool useTLS);  //带IP地址与端口 和TLS加密连接
 Connect(string address, bool useTLS);  //带IP地址 和TLS加密连接
 Connect(string address, int port);     //带IP地址和端口的连接
 ConnectAsync(string address, int port, bool useTLS);  //异步 带IP地址与端口 和TLS加密连接
 ConnectAsync(string address, bool useTLS);  //异步 带IP地址 和TLS加密连接
 ConnectAsync(string address, int port); //异步 带IP地址和端口的连接
 ConnectAsync(string address);  //异步 //带IP地址的连接
 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 (向读取器添加一系列标签操作)

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

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

TagOpSequence seq = new TagOpSequence();
            var target = new TargetTag();
            target.MemoryBank = MemoryBank.Epc;
            target.BitPointer = BitPointers.Epc;
            target.Data = epc;
            seq.TargetTag = target;
            TagWriteOp writeOp = new TagWriteOp();
            writeOp.AccessPassword = null;
            writeOp.MemoryBank = MemoryBank.Reserved;
            writeOp.WordPointer = WordPointers.KillPassword;
            writeOp.Data = TagData.FromHexString(KILL_PW);
            seq.Ops.Add(writeOp);
            // Define a tag kill operation.
            TagKillOp killOp = new TagKillOp();
            // Specify the kill password for this tag. 
            // The kill password cannot be zero.
            killOp.KillPassword = TagData.FromHexString(KILL_PW);
            // Add this tag write op to the tag operation sequence.
            seq.Ops.Add(killOp);
            reader.AddOpSequence(seq);
1. TagWriteOp    (标签写入动作)
2. TagReadOp     (标签读取动作)
3. TagKillOp     (标签销毁动作)
4. TagLockOp     (标签锁定动作)
5. TagFilterOp  (标签过滤动作)
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的核心返回参数说明

# Tid (标签唯一序列)
# Epc (标签EPC区)
# ReadOperationResults (阅读器优化后的读取结果)
# TagSeenCount (标签的读取次数)
# LastSeenTime (最后的读取时间) 
# FirstSeenTime (最早的读取时间)
# AntennaPortNumber (天线的序号)
# GpsCoodinates (GPS坐标参数的值)
原文地址:https://www.cnblogs.com/zh7791/p/12603770.html