a&s专业的自动化&安全生态服务平台
公众号
安全自动化

安全自动化

安防知识网

安防知识网

手机站
手机站

手机站

大安防供需平台
大安防供需平台

大安防供需平台

资讯频道横幅A1
首页 > 资讯 > 正文

基于ZigBee无线通信网络的指纹考勤系统

在生物体上有很多可识别性、唯一性和终生不变性的体征,如指纹、虹膜等。指纹检测和识别是当前计算机应用方面的热点研究课题,且在现实生活中也有着广泛的应用,如应用于身份识别等。
资讯频道文章B
安防知识网】在生物体上有很多可识别性、唯一性和终生不变性的体征,如指纹、虹膜等。指纹检测和识别是当前计算机应用方面的热点研究课题,且在现实生活中也有着广泛的应用,如应用于身份识别等。目前指纹识别技术发展已经相当成熟,在市场上也能看到很多相关产品,如指纹锁等。在实际应用中,往往需要在多点进行指纹识别,因此将多点构建为一个网络具有很大的实际应用价值。在本文中,设计了一种星型ZigBee无线数据通信网络,并在ZigBee终端连接指纹识别模块,实现了多点的指纹考勤。

  一、整体方案设计

  (一)星型ZigBee无线通信网络方案

  在指纹识别过程中,指纹终端产生的数据是很少的,通常为几十个字节,因此对通信系统的带宽要求较低。ZigBee可实现250kbps的,通信距离一般介于10—100m间,以及低成本、高容量使其成为恰当的选择。

  在ZigBee无线通信网络中设备单元有3种:协调器、路由器和终端。在本文中,我们组建包括一个协调器、多个终端的小型ZigBee网络。协调器通过串口与上位机(或另一网络端)相连{zigBee终端接到指纹识别模块,并配合液晶扩展板实现对IDWD5002模块的控制。指纹考勤结果的各信息在上位机管理软件中显示。

  (二)硬件模块方案

  在网络中需要使用的模块有:ZigBee无线网络模块和指纹识别模块。ZigBee无线通信模块选择为RF一2430。RF一2430提供SPI和UART与外部通信,其中UART可高达115.2kbps。指纹识别模块选择为IDWD5002,其通讯接口为RS232。该模块作为从设备,由主设备发送相关命令对其进行控制,可调节安全等级、指纹特征数据的读/写和1:N识别及1:l验证等。

  使用ZigBee无线通信模块配套的液晶扩展板,通过RS232与指纹识别模块IDWD5002相连接。

  二、指纹考勤网络方案实现

  在网络软件开发中,使用的是IAR7.3OB平台,ZigBee网络协议为Ziggee2006协议栈。 在协议安装完成后,路径C:\TexasInstrument\zstack一1.4.3—1.21\Project\zstack\utilities下有的SerialApp工程实现了简单的无线数据传输功能。全双工通信和流量控制,在数据发送超时或丢包时,具有数据重发功能。因此,在此工程基础上修改,可以实现需要的ZigBee网络。

  (一)配置网络参数

  在本文中需要构建的是一个一层的星型网络,首先是设定网络的类型。在nwk—globals.h文件中,STACK PROFILE ID的定义就是网络的类型,将其定义为GENERIC STAR;最大网络深度MAX NODE DEPTH改为t。网络中最大设备数是由NwK—MAX DEVICE—LIST确定的,而且通常都会留有一定的余量,将其改为需要的数量。在文件nwk~globals.C中,数组CskipRtrs和数组CskipChldrn确定网络的结构,将其改为需要的值。同时,在f8wConfig.cfg中设定信道、PAN_ID、绑定表最大记录数和单个记录绑定族ID最大数,并加入REFLECTOR编译标志。

  (二)主体程序设计

  对于给定的SerialApp.c中,主体的框架已经有了基本的轮廓;同时在文件0SAL—SerialApp.c中任务初始化合事件添加都已经完成。我们通过对SerialApp.C和其头文件的添加和修改就可以完成程序。网络中的数据通信时通过命令来识别发送目的地的。'这样可以不必注意终端网络地址变动,而实现数据的通信。[nextpage]

  1.设备绑定实现

  在ZigBee2006协议中,数据通信是基于命令绑定方式实现的。绑定允许应用层发送信息需要带目的地址,APS层确定目的地址从它的绑定表格中,然后在信息前端加一h这个目的地址或组。在设备绑定中有多种绑定方式,如源绑定等。本文中采用的是源绑定方式,这需要在编译选项中加入REFLECTOR。绑定过程是由用户终端发起的。首先终端向协调器发送描述符匹配请求,协调器接到描述符匹配请求后,在ZDO消息处理函数中给命令输出列表中添加输出命令,并初始化该命令对应的管理数据单元。终端接到匹配响应后完成命令绑定。接着向协调器发送带有绑定命令的数据帧到协调器,协调器接收到绑定命令数据帧后,重复上面的操作。这样就完成了终端和协调器的双向绑定,当终端接收到描述符匹配请求后,向协调器发送数据帧并传送到上位机,通知终端加入网络。

  2.程序实现

  在本文中阐述的网络是单层的星型数据网络,需要为每个加入网络的终端分配资源。在SerialApp.C中添加数据接收序列号数组和发送序列号数组,数据接收存储结构体和数据发送结构体,修改接收和发送族数组。

  协调器从串口接收到上位机传来的数据,必须根据数据中包含的命令发送到对应的终端。根据约定的数据帧格式,从数据帧中提取命令并赋给当前发送终端参数。当数据帧接收完毕,启动OTA发送任务将接收到的数据帧以绑定的方式发送;在接收到确认消息后继续发送剩余的数据。如果上位机是连续发送数据,则还需要一个接收存储结构体,使得已经接收到的数据能完整的发送给终端。对于数据的接收就相对发送就简单得多了。指纹识别模块向ZigBee终端发送的数据通常都是很小的,为几卜个字节。因此协调器接收到数据后,可直接通过串口发送到上位机。

  相对于协调器,用户终端是一个精简的ZigBee网络单元。在指纹考勤网络中,ZigBee终端有两个主要功能。其?,完成数据的通信:其二,实现对指纹识别模块的控制。由于指纹模板比较大,这就需要对从协调器接收的数据整合成一个完整的数据包。它包括指纹识别的命令包和数据包。上位机将指纹模板分割成几个数据帧发送,这样是为了适应协调器串口接收要求。因此,在终端接收数据时,就必须将原来完整的数据恢复,然后发送到指纹模块。指纹模块实现指纹识别需要外部发送指令进行控制。在ZigBee终端的液晶扩展板上有4个按键可用于对指纹模块的控制。在终端的程序中加入对按键的响应和指纹模块响应处理就可实现对IDWD5002指纹模块的控制。最后在程序中将指纹识别模块识别结果打包发送到协调器,至此完成ZigBee终端的程序设计。

  (三)IDM5002指纹识别模块控制

  IDWD5002指纹识别模块与zi ee终端液晶扩展板连接后,通过按下上面的按键,实现对其控制。从按键按下后,指纹采集时间约3秒,这可以通过指纹模块进行更改。在指纹采集的过程中,光学采集仪会有紫色背景光。登记手指按下后,紫光消失。这时可以在上位机上看到识别结果。

  三、调试和实际测试

  在调试时需要注意对上位机通信速率进行控制。虽然ZigBee在2.4G时理论上可以达到250kbps,但是协调器从串口接收数据到收到终端确认返回是需要一段时间的。因此上位机发送数据时需要给定一个间隔的。第二,上位机发送数据必须是在协调器和终端绑定完成后才能进行。

  首先运行上位机管理程序,接着给协调器加上电源,最后分别给zigBee终端和指纹识别模块加上电源。在ZigBee终端绑定结束后,从上位机管理程序下载指纹模板数据到指纹识别模块。这样就可以进行指纹考勤了。

参与评论
回复:
0/300
文明上网理性发言,评论区仅供其表达个人看法,并不表明a&s观点。
0
关于我们

a&s是国际知名展览公司——德国法兰克福展览集团旗下专业的自动化&安全生态服务平台,为智慧安防、智慧生活、智能交通、智能建筑、IT通讯&网络等从业者提供市场分析、技术资讯、方案评估、行业预测等,为读者搭建专业的行业交流平台。

免责声明:本站所使用的字体和图片文字等素材部分来源于互联网共享平台。如使用任何字体和图片文字有冒犯其版权所有方的,皆为无意。如您是字体厂商、图片文字厂商等版权方,且不允许本站使用您的字体和图片文字等素材,请联系我们,本站核实后将立即删除!任何版权方从未通知联系本站管理者停止使用,并索要赔偿或上诉法院的,均视为新型网络碰瓷及敲诈勒索,将不予任何的法律和经济赔偿!敬请谅解!
© 2020 Messe Frankfurt (Shenzhen) Co., Ltd, All rights reserved.
法兰克福展览(深圳)有限公司版权所有 粤ICP备12072668号 粤公网安备 44030402000264号
用户
反馈