本文3.1节介绍了Alien RFID系统的组成以及基本的工作原理,这一节我们设计基于Alien RFID系统的接口软件,实现检测、连接、配置和操作Alien RFID Reader的功能。Alien RFID Reader给我们提供了一个软件开发工具包,其中包含了一个名为AlienRFID2.dll的动态链接库,我们根据这个库文件可以方便地与Alien RFID Reader进行通信。
4.4.1.Alien RFID Reader的检测与发现
Alien RFID Reader提供来两种发现阅读器的方式,一种叫做“Serial Interrogation”,即串行询问,另一种就是3.1节介绍的“Heartsbeat”机制。“Serial Interrogation”方式需要将主机与阅读器通过RS-232端口连接起来,然后通过“IPAddress”命令获得阅读器的IP地址,但是这种方式需要在主机和阅读器之间建立一条物理链接。所以本文通过“Heartsbeat”机制来发现网络中的阅读器。关键代码如下:
private clsReaderMonitor mDiscovery = new clsReaderMonitor();
mDiscovery.ReaderAddedOnNetwork += new
clsReaderMonitor.ReaderAddedOnNetworkEventHandler(mDiscovery_ReaderAddedOnNetwork);
mDiscovery.StartListening();
其中clsReaderMonitor类定义了一些属性、方法、事件用来监测和发现Alien RFID Reader。代码第1行创建了一个clsReaderMonitor类的对象mDiscovery。代码第2,3,4行注册了clsReaderMonitor类的一个ReaderAddedOnNetwork事件。ReaderAddedOnNetwork事件通过在网络上监听阅读器发出的“heartsbeat”信息来发现阅读器并将其加入到Reader队列中。代码第5行开始事件的监听。
4.4.2.Alien RFID Reader的连接与登录
通过“heartsbeat”机制我们可以在网络上监测和发现阅读器,并可以获得阅读器的IP地址等信息。接下来我们可以通过TCP/IP协议来实现主机与指定IP地址的阅读器之间的连接与登录。关键代码如下:
clsReader mReader = new clsReader();
mReader.ConnectAndLogin(IP,Port,“Alien”,“password”);
mReader.Disconnect();
其中clsReader类定义了一些属性、方法来描述Alien RFID Reader自身的信息。代码第1行创建了一个clsReader类的对象mReader.代码第2行调用了clsReader类的一个ConnectAndLogin方法来实现主机与指定IP地址的阅读器之间的连接与登录。ConnectAndLogin方法中四个参数分别为主机的IP地址,端口号,默认的用户名和密码。代码第3行通过调用Disconnect的方法断开主机与阅读器的连接。
4.4.3.Alien RFID Reader的配置
主机与阅读器建立连接并登录后,我们可以配置阅读器的一些信息来使阅读工作在指定的模式或者环境下。Alien RFID Reader的配置操作非常方便,只需要选择或输入相应的配置命令即可完成。我们可以通过调用clsReader类中的SendReceive方法将命令结果返回到指定位置。例如:
clsReader mReader = new clsReader();
string name = mReader.SendReceive(“Get ReaderName”,false);
代码执行后变量name中将存放阅读器的名称信息。
来源:我是码农,转载请保留出处和链接!
评论专区