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

?

基于RS—485總線的指紋鎖監(jiān)控管理系統(tǒng)設(shè)計(jì)

2012-04-29 08:45:24宋志強(qiáng)
計(jì)算機(jī)時(shí)代 2012年11期
關(guān)鍵詞:指紋鎖串口通信監(jiān)控

宋志強(qiáng)

摘要: 對基于RS-485總線的指紋鎖監(jiān)控管理系統(tǒng)進(jìn)行了研究,實(shí)現(xiàn)了與指紋鎖相關(guān)的通信協(xié)議。介紹了主要功能模塊,給出了顯式調(diào)用動(dòng)態(tài)鏈接庫的方法,使用Victor串口VCL控件與指紋鎖進(jìn)行通信。主機(jī)軟件采用C++ Builder 6開發(fā),數(shù)據(jù)庫采用InterBase 6.5。通過軟硬件結(jié)合的模塊化設(shè)計(jì),使系統(tǒng)能以主從模式或?qū)Φ饶J竭M(jìn)行節(jié)點(diǎn)間通信。實(shí)際應(yīng)用結(jié)果表明,該系統(tǒng)運(yùn)行穩(wěn)定可靠,具有一定的實(shí)用性和推廣價(jià)值。

關(guān)鍵詞: 指紋鎖; C++ Builder; 串口通信; 監(jiān)控

中圖分類號:TP311.52文獻(xiàn)標(biāo)志碼:A 文章編號:1006-8228(2012)11-21-02

Design of monitoring and control system for fingerprint locks based on RS-485 bus

Song Zhiqiang

(Department of Information, Suzhou Institute of Trade & Commerce, Suzhou, Jiangsu 215009, China)

Abstract: The monitoring and control system for fingerprint locks based on RS-485 bus is investigated. The communication protocol relevant to fingerprint locks is realized. The main function modules are introduced. The host software is developed by using C++ Builder 6 and the database by InterBase 6.5. Because of module design of hardware and software, the system can work at master-slave mode or peer-to-peer mode. The real application shows that this system runs stably and accurately. The technology and methods adopted in this system are practical and worthy to be promoted.

Key words: fingerprint lock; C++ Builder; serial communication; monitoring and control

0 引言

指紋鎖是一種以人體指紋為識別載體和手段的智能鎖具,它是計(jì)算機(jī)信息技術(shù)、電子技術(shù)、機(jī)械技術(shù)和現(xiàn)代五金工藝的完美結(jié)合體。指紋鎖一般由電子識別與控制、機(jī)械聯(lián)動(dòng)系統(tǒng)兩部分組成。指紋的惟一性和不可復(fù)制性決定了指紋鎖是目前所有鎖具中最為安全的鎖種[1]。隨著人們生活水平的不斷提高,人們對生活品質(zhì)的追求也日益提高,越來越多的人過上了智能化的生活,只需手指輕觸一下,便能開門。指紋鎖安全、方便、實(shí)用,非常適合寫字樓、辦公室、物業(yè)、賓館、酒店等集中統(tǒng)一管理。

1 系統(tǒng)總體結(jié)構(gòu)

本指紋鎖的核心為Analog Devices公司生產(chǎn)的嵌入式微處理器ADSP-BF533,指紋鎖與主機(jī)通過RS-485總線相連,系統(tǒng)結(jié)構(gòu)框圖如圖1所示,RS-485接口連接成半雙工通信方式[2]。由于PC機(jī)只帶有RS232接口,故采用Moxa公司的TCC-80I作為RS-232/RS-485轉(zhuǎn)換器。在單片機(jī)端通過MAX487芯片將485信號轉(zhuǎn)換成單片機(jī)需要的串口信號,系統(tǒng)中可連接的下位機(jī)最多可擴(kuò)展至128個(gè)[3]。

2 指紋鎖工作原理

指紋鎖是基于RS-485總線的聯(lián)網(wǎng)型指紋鎖,采用鋰電池供電,既可以獨(dú)立工作,又可以聯(lián)網(wǎng)使用。首次使用時(shí),可以通過指紋鎖或主機(jī)監(jiān)控管理軟件進(jìn)行指紋登錄。之后,當(dāng)用戶需要開門時(shí),只需將手指平壓在指紋采集窗口上,系統(tǒng)便自動(dòng)完成指紋圖像的采集和特征提取,與存儲在Flash中的指紋特征進(jìn)行1:N比對,若比對通過,則指紋鎖控制電機(jī)轉(zhuǎn)動(dòng)開門,同時(shí)指紋鎖記錄下開門信息,如時(shí)間、指紋ID等,以便主機(jī)進(jìn)行查詢。

圖1系統(tǒng)結(jié)構(gòu)框圖

本文采用了軟硬件結(jié)合的方法實(shí)現(xiàn)了載波監(jiān)聽多點(diǎn)接入/沖突檢測[4-6],如果系統(tǒng)檢測到不少于2個(gè)的指紋鎖同時(shí)使用總線時(shí),則令讓出總線避障。指紋鎖根據(jù)各自的優(yōu)先級,在等待一段隨機(jī)時(shí)延后,再重新偵聽。這樣就能解決因?yàn)槎嘀鞫鴰淼目偩€沖突問題,優(yōu)先級較高的指紋鎖可優(yōu)先發(fā)送數(shù)據(jù)。

3 通信協(xié)議設(shè)計(jì)

PC機(jī)(上位機(jī))與指紋鎖(下位機(jī))通信采用自定義的通信協(xié)議,波特率為9600bps,8位數(shù)據(jù),1位停止位,無校驗(yàn)。協(xié)議的幀格式如表1所示。

表1通信協(xié)議的幀格式

[[STX\&SID\&DID\&FC\&CMD/ACK\&Len_L\&Len_H\&DATA\&DES\&CRC8\&ETX\&1B\&1B\&1B\&1B\&1B\&1B\&1B\&不定\&1B\&1B\&1B\&]]

STX:幀首,固定為0XA0;

SID:源地址;

DID:目的地址,0XFF時(shí),表示任意節(jié)點(diǎn)都需響應(yīng);

FC:幀計(jì)數(shù)位,重發(fā)幀標(biāo)志;

CMD/ACK:命令/應(yīng)答標(biāo)志;

Len_L:數(shù)據(jù)長度低位;

Len_H:數(shù)據(jù)長度高位;

DATA:要傳送的參數(shù)或數(shù)據(jù)。數(shù)據(jù)長度不定,若傳輸指紋特征數(shù)據(jù)時(shí),最多可達(dá)512個(gè)字節(jié);

DES:0X00:數(shù)據(jù)未加密;0X01:表示數(shù)據(jù)采用DES加密,接收方收到數(shù)據(jù)后要先進(jìn)行解密;

CRC8:CRC類型為CRC-8-Dallas/Maxim,多項(xiàng)式為x8+x5+x4+1。其值是對“SID”、“DID”、“FC”、“CMD/ACK”、“Len_L”、“Len_H”、“DATA”、“LEN”,“DES”校驗(yàn)得到的。幀首和幀尾不參與校驗(yàn);

ETX:幀尾,固定為0XA1。

4 監(jiān)控管理系統(tǒng)軟件設(shè)計(jì)

系統(tǒng)采用面向?qū)ο蟮脑O(shè)計(jì)思想和面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,采用Borland C++ Builder 6作為開發(fā)工具,操作系統(tǒng)為Windows XP Professional,數(shù)據(jù)庫選用InterBase 6.5。

4.1 系統(tǒng)主要模塊

監(jiān)控管理系統(tǒng)主要由系統(tǒng)設(shè)置、指紋登錄、指紋下載、串口設(shè)置、用戶管理、查詢、報(bào)警、下載程序等模塊組成。

系統(tǒng)設(shè)置:主要用于指紋鎖地址與房間號的設(shè)置、指紋鎖安全級別設(shè)置等。

指紋登錄:完成用戶指紋圖像的采集、提取、比對、存儲等操作,根據(jù)特定需要可對用戶的開門權(quán)限進(jìn)行設(shè)置,如對允許的開門時(shí)間段進(jìn)行設(shè)置,登記成功的指紋特征信息存儲在數(shù)據(jù)庫中。

查詢:管理系統(tǒng)存儲了所有的進(jìn)出記錄、狀態(tài)記錄,管理員可以按不同的條件進(jìn)行查詢,對查詢結(jié)果可以生成報(bào)表,同時(shí)該模塊也具備考勤功能。

報(bào)警:指紋鎖具有自動(dòng)檢測功能,非法侵入或低電壓時(shí),指紋鎖會發(fā)出報(bào)警提示音,同時(shí)將報(bào)警信息傳送給PC端的監(jiān)控管理系統(tǒng),以便管理人員及時(shí)作出響應(yīng)。

4.2 動(dòng)態(tài)鏈接庫調(diào)用

本文通過Windows的API函數(shù)來顯式調(diào)用動(dòng)態(tài)鏈接庫(DLL),步驟如下:

⑴ 調(diào)用LoadLibrary函數(shù)裝載DLL獲得句柄;

⑵ 調(diào)用GetProcAddress函數(shù)獲取導(dǎo)出函數(shù)的指針;

⑶ 用函數(shù)的指針調(diào)用函數(shù);

⑷ 使用完成后,用FreeLibrary釋放DLL。

顯式調(diào)用DLL不需要在工程中加入lib庫和相應(yīng)的頭文件,只需把動(dòng)態(tài)庫放入指定的目錄下即可。本系統(tǒng)的核心調(diào)用代碼如下:

HINSTANCE hLIBFinger; //定義句柄變量

//指向FeatureExtraction函數(shù)的指針

Short (*FeatureExtraction1)(unsigned char *idata,

unsigned char *fdata,unsigned char *var);

//裝載XTYDSP.dll

hLIBFinger=LoadLibrary("XTYDSP.dll");

//得到指向特征提取函數(shù)FeatureExtraction的指針

FeatureExtraction1=(short(*)(unsigned char*, unsigned char*,

unsigned char*))GetProcAddress (hLIBFinger,

"FeatureExtraction");

//調(diào)用特征提取函數(shù)提取指紋特征值

k=FeatureExtraction1(Buffer,F(xiàn)eatureData,var);

//將XTYDSP.dl從程序中卸載

FreeLibrary(hLIBFinger);

4.3 串口通信實(shí)現(xiàn)

C++ Builder 6可以利用 Windows的API函數(shù)或控件來實(shí)現(xiàn)串口通信。本文采用的控件為Victor串口通信控件,該控件功能較為強(qiáng)大。

對于一些正常的開門信息,實(shí)時(shí)性要求不高,系統(tǒng)采用主從模式,由主機(jī)通過定時(shí)器控件循環(huán)輪詢各指紋鎖,各指紋鎖收到數(shù)據(jù)幀后將自身的地址與數(shù)據(jù)幀中的地址對比,若相同則作出響應(yīng)。對于非法侵入、低電壓報(bào)警等信息,則由指紋鎖以多主模式發(fā)送,這樣提高了系統(tǒng)的實(shí)時(shí)性和快速響應(yīng)性。

5 實(shí)際運(yùn)用案例

該監(jiān)控管理系統(tǒng)已經(jīng)投入到多個(gè)科技園的寫字樓中試運(yùn)行,管理系統(tǒng)連續(xù)不間斷運(yùn)行了近6個(gè)月,沒有出現(xiàn)死機(jī)等異?,F(xiàn)象,效果良好。指紋鎖監(jiān)控管理系統(tǒng)界面如圖2所示。

圖2指紋鎖監(jiān)控管理系統(tǒng)界面

6 結(jié)束語

本文利用C++ Builder通過串口通信控件獲取數(shù)據(jù),該系統(tǒng)已經(jīng)通過實(shí)驗(yàn)驗(yàn)證,完全達(dá)到了所提出的技術(shù)要求。開發(fā)的基于RS-485總線的指紋鎖監(jiān)控管理系統(tǒng)軟件運(yùn)行穩(wěn)定可靠,使用方便。目前該系統(tǒng)已成功交付用戶使用并得到用戶好評,證明了其適用性和可靠性。

參考文獻(xiàn):

[1] 中國指紋產(chǎn)品網(wǎng).指紋鎖[EB/OL].http://www.zhiwenwangcn.com/

zhiwensuo/.

[2] B&B Electronics.RS-422 and RS-485 Application Notes[EB/OL].

http://www.bb-elec.com,2001.

[3] 吳秋明,和衛(wèi)星,陳曉平,黃孟波,吉奕.基于RS-485總線的PC與多

單片機(jī)間的串行通信[J].微計(jì)算機(jī)信息,2006.22(23):143-145

[4] 徐煒,尤佳,王治祥.具有硬件CSMA/CD的RS-485總線控制網(wǎng)設(shè)

計(jì)[J].武漢理工大學(xué)學(xué)報(bào),2003.25(8):60-62

[5] 胡興剛.基于差別延時(shí)解決RS-485總線沖突的一種方法[J].測控技

術(shù),2008.27(2):57-59

[6] Jia H,Guo Z.Research on the technology of RS485 over Ethernet

[C].Henan,China:IEEE Computer Society,2010.

猜你喜歡
指紋鎖串口通信監(jiān)控
The Great Barrier Reef shows coral comeback
你被監(jiān)控了嗎?
Zabbix在ATS系統(tǒng)集中監(jiān)控中的應(yīng)用
ATM設(shè)備中加鈔機(jī)芯鈔箱的技術(shù)研究
先進(jìn)的指紋鎖
指紋鎖、電子鎖應(yīng)急快速開啟的研究
看監(jiān)控?cái)z像機(jī)的4K之道
基于Qt和Flash的嵌入式Linux軟件架構(gòu)設(shè)計(jì)
串口通信在智能家居監(jiān)控系統(tǒng)中的應(yīng)用
基于OpenCV的室內(nèi)照明智能控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)
科技視界(2016年13期)2016-06-13 22:01:19
吉隆县| 军事| 克东县| 平阴县| 佳木斯市| 天台县| 昌江| 凌源市| 石棉县| 常山县| 炎陵县| 天祝| 绥化市| 灯塔市| 盱眙县| 蓬莱市| 张家界市| 道孚县| 陕西省| 绥德县| 乃东县| 富民县| 怀来县| 抚松县| 宿松县| 鹤岗市| 疏勒县| 吉首市| 温州市| 涞源县| 陆河县| 贡山| 平顶山市| 固阳县| 仁化县| 山西省| 寿光市| 长汀县| 滁州市| 舟山市| 上犹县|