国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于指紋IC卡門禁系統(tǒng)的實現(xiàn)

2013-04-29 05:25:03彭佩
電腦知識與技術(shù) 2013年9期
關(guān)鍵詞:門禁系統(tǒng)IC卡指紋

彭佩

摘要:該文以VB為編程語言和ACCESS數(shù)據(jù)庫平臺,解決傳統(tǒng)C/S模式下單純利用指紋驗證時,數(shù)據(jù)庫中一對多查詢的低效率驗證身份的問題,同時解決了單純利用IC卡的身份驗證不可靠的問題。

關(guān)鍵詞:指紋;門禁系統(tǒng);IC卡;身份識別

中圖分類號:TP311 文獻標(biāo)識碼:A 文章編號:1009-3044(2013)09-2169-03

指紋IC卡系統(tǒng)是利用指紋的唯一性和不可替代性來保證使用人身份的正確性,以IC卡的數(shù)據(jù)儲存和加密功能作為使用人與使用單位的信息連接橋梁,實現(xiàn)使用人身份的驗證。通過指紋IC卡設(shè)備實現(xiàn)指紋的采集、驗證和讀寫IC卡的功能,根據(jù)結(jié)果發(fā)送信號至單片機控制電插鎖,達到門禁自動化目的。

1 數(shù)據(jù)庫實現(xiàn)

1.1數(shù)據(jù)庫建立

使用Microsoft Access創(chuàng)建數(shù)據(jù)庫,首先是用戶數(shù)據(jù)表,包括用戶編號(UserID),姓名(Name),性別(Sex),備注(fpc),指紋特征(Purv),有效期(vValid)等字段。其次是日志表(log),包括日志流水ID(recordID),用戶編號(UserID),進入時間(userData),是否通行(result)等字段。最后是用戶表的UserID和日志表的userID對應(yīng)。

1.2數(shù)據(jù)庫函數(shù)創(chuàng)建

1)創(chuàng)建Public Function exesql(ByVal sql As String) As ADODB.Recordset函數(shù)

2)利用ADODB建立數(shù)據(jù)連接

3)打開數(shù)據(jù)庫

4)數(shù)據(jù)庫的讀寫操作:可直接調(diào)用exesql(ByVal sql As String)函數(shù)進行操作。

2 指紋數(shù)據(jù)采集實現(xiàn)

指紋的采集主要依靠URU4000指紋采集儀進行,URU4000可以通過BiokeySDK控件進行操作。

2.1指紋儀初始化連接

使用BiokeySD的InitEngine()方法可以初始化指紋儀,此函數(shù)支持同個終端下多個指紋儀同時使用,初始化時必須指定指紋儀的編號進行連接,如: ZKFPEng X1. SensorIndex=0,即可對編號為0的指紋儀進行連接,通過ZKFPEngX1.InitEngine的返回值能判斷指紋儀是否連接成功,其中返回0為成功,1為指紋識別驅(qū)動加載失敗,2為沒有連接指紋儀,3為指定的SensorIndex對應(yīng)的指紋儀不存在。

2.2使用指紋儀進行指紋登記

當(dāng)指紋儀連接成功后可對指紋進行掃描登記。掃描前必須設(shè)置登記指紋的取樣次數(shù),原則上不少于3次。在Biokey的ActiveX控件中提供了EnrollCount屬性來設(shè)置采樣次數(shù),本系統(tǒng)將此屬性設(shè)置為3。另外進行指紋3次采樣時,還必須知道成功的次數(shù),防止由于軟硬件問題導(dǎo)致無限次取樣。同樣Biokey控件返回相應(yīng)的只讀屬性EnrollIndex確定成功的次數(shù)。

2.3 指紋數(shù)據(jù)調(diào)用驗證

采集完畢的指紋系統(tǒng)將信息寫入數(shù)據(jù)庫,為保證數(shù)據(jù)正確性,Biokey提供方法Function VerFinger(byval regTemplate, verTemplate, AdoLearning As Boolean, byval AregFeatureChanged As Boolean) As Boolean,可以比對兩枚指紋的特征模版是否匹配。

3 IC卡數(shù)據(jù)讀寫實現(xiàn)

數(shù)據(jù)的讀寫由RUK-200IC實現(xiàn),使用動態(tài)庫OUR_MIFARE.dll,用VC6.0++開發(fā),編譯成Release實體,適用于WIN2003、XP環(huán)境。

3.1 IC卡讀卡

動態(tài)庫提供了讀卡函數(shù)piccreadex,可一次性讀整個區(qū)的第0塊、第1塊、第2塊共3塊的信息,并返回卡序列號。其原始聲明為:

其中ctrlword讀卡的控制字,ctrlword是一個字節(jié),相當(dāng)于八個位,每個位只有0和1兩種狀態(tài)??啥x以下常量:

讀塊0、塊1、塊2,僅讀指定序列號的卡,需要每次指定密碼:

Ctrlword = BLOCK0_EN + BLOCK1_EN + BLOCK2_EN + NEEDSERIAL+ EXTERNKEY

serial只需指向一個至少已分配了4個char空間的可寫數(shù)組 unsigned char *指針,serial的下標(biāo)由0開始。keyA1B0為0時以B密碼來認證,為非0時以A密碼來認證。系統(tǒng)中使用A密碼來認證。

*picckey 指向存放卡密碼的數(shù)組(6個char的密碼數(shù)組)。

*piccdata0_2是指向下標(biāo)個數(shù)大于48的字節(jié)數(shù)組,用于存放3個塊的數(shù)據(jù),其中下標(biāo)0~15存放作為讀出塊0的數(shù)據(jù),下標(biāo)16~31存放作為讀出塊1的數(shù)據(jù),下標(biāo)32~47存放作為讀出塊2的數(shù)據(jù)。在執(zhí)行完上面的函數(shù)后,如果返回0,則表示操作成功,可以在VB中使用msgbox提示操作成功。

3.2 IC卡寫卡

動態(tài)庫提供了寫卡函數(shù):Piccwriteex,可一次性寫整個區(qū)的塊信息。其原始聲明如下:

其中ctrlword讀卡的控制字,ctrlword是一個字節(jié),相當(dāng)于八個位,每個位只有0和1兩種狀態(tài)??梢韵榷x以下常量:

與讀塊0、塊1、塊2一樣,當(dāng)寫指定序列號的卡,需要每次指定密碼,成功后休眠卡

Ctrlword = BLOCK0_EN+BLOCK1_EN + BLOCK2_EN + NEEDSERIAL+ EXTERNKEY + NEEDHALT

4門禁控制與網(wǎng)絡(luò)傳輸日志的實現(xiàn)

4.1門禁控制

提供12V電壓電插鎖鎖上,斷電則打開,所以只需一個繼電器便可實現(xiàn)以上功能,而繼電器的控制,則需要51單片機做PC機的下位機,對繼電器進行控制。51單片機提供了RS232轉(zhuǎn)USB接口與PC機對接,在Microsoft Visual Basic中添加MScomm控件可通過USB接口與51單片機進行通訊。通過C語言定義繼電器對應(yīng)單片機管腳sbit RELAY = P1^4;并允許串行接口處于接受狀態(tài),寫一循環(huán)程序,當(dāng)P1^4收到數(shù)據(jù)0時,繼電器打開,否則繼電器合并。

4.2網(wǎng)絡(luò)傳輸日志

VB提供了Winsock控件,通過Protoclo設(shè)置為TCP協(xié)議,用Bind方法綁定一個指定的端口,發(fā)卡端使用listen方法監(jiān)聽檢測連接狀態(tài),在驗證端將IP地址賦值給RemoteHost屬性,當(dāng)發(fā)卡端的ConnectRequest事件觸發(fā)后,發(fā)卡端的IP地址就賦給了這個屬性。

5 結(jié)束語

本文介紹了指紋特征采集實現(xiàn)和IC卡的讀寫實現(xiàn),指紋的采集依靠URU4000指紋采集儀進行,URU4000可以通過BiokeySDK控件進行操作。數(shù)據(jù)卡數(shù)據(jù)的讀寫由RUK-200IC實現(xiàn),動態(tài)庫OUR_MIFARE.dll用VC6.0++開發(fā)。

參考文獻:

[1] 佟雨兵,張其善. USB型指紋采集儀的設(shè)計與實現(xiàn)[J].光電技術(shù)應(yīng)用, 2010(1).

[2] 梁楚樵.基于Miarfe非接觸式IC卡的射頻識別系統(tǒng)研究與實現(xiàn)[D].武漢:武漢理工大學(xué)圖書館,2010.

[3] 蘇兵,左敦穩(wěn),徐松源.存儲器IC卡數(shù)據(jù)傳輸?shù)募用苎芯縖J].哈爾濱理工大學(xué)學(xué)報,2011,8(5).

猜你喜歡
門禁系統(tǒng)IC卡指紋
基于多種生物特征識別的RFID門禁系統(tǒng)設(shè)計
工商業(yè)IC卡控制器改造為物聯(lián)網(wǎng)控制器實踐
像偵探一樣提取指紋
為什么每個人的指紋都不一樣
基于單片機的安全門禁系統(tǒng)研究設(shè)計
電子制作(2019年11期)2019-07-04 00:34:32
在用電梯加裝外接式IC卡運行控制系統(tǒng)設(shè)計改進
一種新的無觸點IC卡的檢測方法
電子測試(2017年15期)2017-12-18 07:19:05
解析社區(qū)藍牙門禁系統(tǒng)
基于單片機的小區(qū)門禁系統(tǒng)設(shè)計
基于自適應(yīng)稀疏變換的指紋圖像壓縮
高唐县| 新田县| 张家川| 波密县| 南阳市| 综艺| 威信县| 玉田县| 松阳县| 胶南市| 临桂县| 海淀区| 大名县| 阿城市| 常熟市| 永康市| 洞头县| 阿巴嘎旗| 鄂托克前旗| 贵阳市| 开平市| 繁昌县| 宝山区| 吴忠市| 凤冈县| 文登市| 子洲县| 襄城县| 永靖县| 缙云县| 泸西县| 鞍山市| 渝北区| 宁蒗| 滁州市| 夏河县| 土默特左旗| 凭祥市| 永定县| 双辽市| 顺义区|