长距离通信器s1503的应用编程原理
来源:杂志发表网时间:2015-12-21 所属栏目:电信技术
摘要:S1503是瑞典TagMaster AB公司生产的长距离通信器,在自动识别系统中有广泛的应用。本文重点介绍S1503系统结构和应用编程原理,并说明其特点和应用前景。 关键词:S1503 通信器 事件 射频识别S1503是瑞典TagMaster AB公司生产的长距离通信器,工作频率为2.45GHz,具有圆极化天线波速的读/写工作站;用于读/定CONFIDENT系统中射频识别标签,在车辆收费管理、车场车辆进出口管理以及列车车次识别等系统中有广泛的应用。其主要特点是:①具有6m的长阅读距离;②能进行5m范围内的运动监测;③提供C、Delphi以及VB的驱动接口程序;④具有闪速EEPROM的数据库;⑤提供DTMF及LED接口;⑥提供与主机通信的RS232和2/4线制RS485接口;⑦具有抗EMI的DC/DC转换器;⑧采用24V/12V的工作电源。
图1为S1503的内部结构示意图。1 系统结构(1)硬件结构CONFIDENT自动识别系统一般包括标签(如S1251)、通信器(S1503)以及一台主机。通信器通过RS232/485与主机连接实现通信。通信器与标签 是通过微波实现通信的。(2)软件结构
图2为软件系统结构示意图。Confilib:CONFIDENT函数库名。该库中包含几百个通信器管理函数以及ConfiTalk通信协议接口函数,同时提供适合于DOS、Windows3.1以及Windows 95/NT的不同平台要求的Confilib版本。PC平台的Confilib应用程序接口是以C/C++动态连接库DLL的形式提供的,同时也提供Visual Basic、Delphi语言接口,适用于通信器的Confilib是C语言库。这些函数库包含诸如阅读、写入、格式化标签,读、写、检索数据库,软、硬件设置,读、写I/O接口,发送、接收ConfiTalk命令,定时器,缓存区管理和邮件管理等函数。ConfiTalk:标准通信协议。该协议规定通信器传送和接收数据、处理数据流、重复传送、校验以及数据透明的方式。该协议还可用于点对点通信和多点网络通信,并采用查询方式。信息帧结构为:STXADRMESSAGECSETXSTX:起始符;ADR:地址及序列;MESSAGE:需要传送的数据;CS:校验和;ETX:结束符。用户可自己编写通信协议来替代ConfiTalk。Pyramid:S1503出厂时预装的标准应用程序。安装了Pyramid的S1503在阅读到标签或检测到运动时,能够自己作出判断和决定;同时S1503也可以通过串行接口接收并执行CohnfiTalk命令。Paramid有四个运动模式:On、Off、Read beep以及Program beep。在On模式下,S1503可单机运行,内置在S1503中的数据库保存着注册标签的信息,当阅读到标签或检测到运动时,应用程序改变继电器、发光管和蜂鸣器的状态。应用程度同时还可以将记录信息通过邮件发送到主机。Off模式时,通信器处于被动运行状态,这时由主机利用ConfiTalk命令控制通信器S1503,Pyramid总是听取主机的ConfiTalk命令和邮件信息。通信器不产生记录内容,不作任何动作。当需要主机通过串行口利用Confilib命令(远程函数调用)控制通信器时,采用这种模式。Read beep模式是用来在安装通信器时确定其阅读区域的。在Read beep模式下,通信器每读到一个标签,就发了同一个短暂的蜂鸣,但阅读的标签不会被记录。Program beep模式是用来确定通信器的写标签区域。在该模式下,Pyramid不断地尝试给标签写信息,每写完一组信息后,程序发出短暂的蜂鸣。2 编程控制原理开发S1503系统软件的工具包括编译器、装载器、驱动程序和函数库等。利用交叉编译器Conficomp,可以在PC平台上开发、调试通信器应用程序,然后利用Confiload下载软件,将通信器应用程序下载。PC机应用程序可以利用任何软件进行开发,包括使用Confilib函数库。在CONFIDENT系统中,如何编程控制通信器是关键,有四种控制方式可供参考。(1)通信器应用程序该方式是用用户在Confilib库函数基础上编写的应用程序取代标准通信器应用程序Pyramid,所有逻辑判断均由用户所编写的通信器应用程序完成。主机可不定期地连接到通信器上读取通信器记录信息,并更新通信器数据库。该方式的优点是运行速度快,可单机运行;缺点是需要PROM写入器,缺少方便的界面。(2)利用Confilib命令的主机应用程序在该方式中,通信器S1503完全由利用Confilib库函数或其它软件开发的主机程序控制,系统智能部分在主机,通信器不做任何逻辑判断。当主机应用程序调用Confilib函数时,自动将Confilib命令翻译成ConfiTalk命令,然后传递给S1503。S1503根据该命令招待对应的Confilib命令。这种方式的优点是:与通信器应用程序Pyramid控制方式相比,拥有更加方便的界面,主机应用程序更加便于开发、调试;缺点是执行速度慢。(3)主机应用程序与Pyramid通信这种方式与第二种方式相似。主要区别在于主机与S1503的标准应用程序Pyramid通信,而不是直接同Confilib通信。主机程序与通信器标准应用程序通过互送邮件实现通信。采用这种方式的优点是:主机应用程序简单,部分逻辑判断可交给通信器应用程序,从而获得较快的运行速度;缺点是:Pyramid邮件不支持写标签和数据库管理功能,不过,这些功能可通过Confilib/Confitalk命令实现。(4)用户协议这种方式除了通信器中的Confilib之外,所有软件均由用户编写,当系统使用ConfiTalk以外的协议时,采用这种方式。该方式的优点是:可实现通信器ConfiTalk以外的协议通信;缺点是编写程序量大,开发周期长。3 应用编程事件是指正常程序运行以外不定期发生的事情。事件可 外部(如按键),也可以 内部(如定时器)。S1503程序库的核心是一个称作事件器的模块,其绝大部分应用是由事件驱动的。Confilib库中有七个模块产生事件,可能产生的事件包括:DTMF(双音多频接口输入)、Push_Button(通信器控制盘上的按键被按下)、Doppler_Radar(多谱勒雷达检测到运动物体)、Par_In(并行输入口输入)、Timer(设置的计时器到达时间)、Tag(成功阅读到一个标签)、Tamper_Switch(防护开关动作)、Null_Event(自上次查询后,没有事件发生)、Reset_Event(系统复位)。防护开关除外,其它所 有事件模块必须经过初始化后才能够产生事件。当事件产生时,系统及时响应并存入通信器事件处理器,应用程序通信调用Bsw_Event_Handler_Get_Event()从通信器读取事件;若有事件发生,调用以上函数返回其事件类型、相应数据;若无事件发生,返回Null_Event。因此,应用程序应是一个等待事件的死循环。当事件发生时,应用程序调用适当的事件处理程序来响应该事件。应用程序流程如图3所示。4 通信编程通信器S1503与主机进行通信交换信息,有三种方法:①利用CONFIDENT库函数所支持的动态缓冲区;②利用公司所提供的串行通信接口字节级设备驱动函数 定义的通信协议;③利用CONFIDENT软件库提供的邮件交换系统。在S1503的实际应用中,邮件交换系统应用十分广泛。
长距离通信器s1503的应用编程原理 :
通信器通过调用函数Msw_Mail_Init、Msw_Mail_Send以及Msw_Mail_Receive等来使用邮件交换系统。使用邮件交换系统的前提是系统至少有一个空闲的动态缓冲区。在初始化邮件系统时,函数将占据编号最高的动态缓冲区。使用邮件交换系统包括两部分:主机通信流程(图4)和通信器通信流程(图5),其它现功能是主机接收通信器发送来的邮件,并将邮件内容显示在屏幕上;同时,每当空格键被按下时,改变通信器的安静模式;通信器阅读标签事件,并将标签数据通过邮件发送给主机。主机可通过邮件将通信器设置为安静模式,主机在通信器为非安静模式时读取标签数据邮件。在实际应用中,可选择合适的系统结构和控制方式。应用编程也很灵活,用户可根据自己的特点来选择合适的语言。因此,S1503及其同类产品在自动识别控制系统中有广泛的应用前景。
长距离通信器s1503的应用编程原理 :
点此咨询学术顾问 快人一步得到答案