RFID_R420 C# ImpinjSDK参数详解

摘要:
本文主要记录与RFID设备制造商和Impinj.OctaneSdk相关的说明和功能说明。读者AntennaChanged+=…ReaderStarted当读卡器启动时,此事件将触发读卡器。ReaderStarted+=…ReaderStopped当读取器暂停时,此事件将触发读取器。ReaderStopped+=…TagOpComplete用户向读取器分发事件,以提供操作已完成的通知,包括操作结果。reader.TagOpComplete+=…AddOpSequenceader。AddOpSequence;//TagOpSequence:表示一种操作类型,通过参数传递给读取器。

本文主要记录关于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坐标参数的值)

免责声明:文章转载自《RFID_R420 C# ImpinjSDK参数详解》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇MMD4Mecanim介绍Flask配置Cors跨域下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

随便看看

IIS 中 "另一个程序正在使用此文件,进程无法访问!"

然而,自从昨晚重新启动机器后,发现iis无法启动。手动启动并提示:“另一个程序正在使用此文件,进程无法访问它!”百度得知这是由港口冲突造成的。什么软件使用端口80?同时,我更改了iis的默认端口80,没问题。接下来,我想知道是哪一方秘密占用了端口80。但是,在执行上述命令后,我没有找到占用端口80的程序。我惊讶地发现没有人占用端口80。...

可用的rtmp互联网地址

Rtmp:vlc使用ffmpeg获取Rtmp网络流。代码文件路径:vlc-2.2.1 modulesassesavio。hvlc-2.2.1模块。c在模块的开放回调函数OpenAvio中,使用以下代码打开rtmp网络流。avio_打开(&avio_FLAG_READ);//或者这个avio_open2(&sys-&gt...

Innodb_large_prefix

但是,索引列的总长度不能超过3072字节的限制仍然存在...

vue的富文本编辑器使用,并且添加显示当前输入字数

{模块:{工具栏:{标题:{script://indent〔{direction:text align:background:}.editor{line-height:}.ql editor{line-high:content:padding right:...

AcWing算法基础课

第二行包含n个整数,表示整数序列。输出格式对于每个输出指令PM,输出表示当前集合中最小值的结果。每个结果占据一行。数据范围1≤ N≤ 105109≤ x(x)≤ 109是合法的。输入示例:8I-10PMI-10D1C28I6PMDM输出示例:-106分析:对于向上和向下操作,请注意ph和hp的应用,这相当于指针ph[k]=t;插入堆中的Kth的位置为t;hp...

C# Task详解

1.任务线程池的优点与线程相比有很多优点,但线程池不方便使用。例如:◆ ThreadPool不支持线程取消、完成和失败通知等交互操作;◆ ThreadPool不支持线程执行顺序;在过去,如果开发人员想要实现上述功能,他们需要完成大量额外的工作。现在,FCL提供了一个更强大的概念:任务。任务基于线程池执行...