《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于KEELOQ技術的遙控門禁系統的實現
基于KEELOQ技術的遙控門禁系統的實現
來源:電子技術應用2013年第2期
薛巨峰,喬 鵬
東北林業大學 機電工程學院,黑龍江 哈爾濱150040
摘要: 基于KEELOQ技術的解碼運算,采用滾動碼技術,通過HCS301進行跳碼編碼并對其進行解碼,同時采用芯片PIC16F630,設計了一個遙控門禁系統。給出了系統流程圖和部分硬件原理圖,詳細描述了密鑰的產生和解碼的過程。本系統具有保密性高、使用方便、成本低的特點。
中圖分類號: TN409
文獻標識碼: B
文章編號: 0258-7998(2013)02-0045-03
Realization of remote access system based on the KEELOQ technology
Xue Jufeng,Qiao Peng
College of Machinery and Electricity Engineering,Northeast Forestry University,Harbin 150040,China
Abstract: A remote access system is designed by using rolling code technology,with the HCS301 for size coding and the decoding,and using the PIC16F630 chip,which are based on the operation of the KEELOQ technology decoding arithmetic. The system flow chart and part of the hardware principle diagram are given. And the key generation and decoding process are detailed. This system has characteristics of high confidentiality, easy to use and low cost.
Key words : HCS301;PIC16F630;rolling code;KEELOQ technology

    目前,大部分家庭門禁系統都是采用機械式開鎖,操作比較麻煩,給家里有老人的家庭帶來了諸多不便,且安全性也不能得到很高的保障。近年來RF遙控器件的價格越來越便宜,且電子式遙控開鎖更加方便、安全,從而使其市場有了更大的提升空間,利用其特點已開發出了一些重要的應用,遙控門禁就是其中之一。機械式開鎖的最大缺點就是不安全,采用滾動碼技術的遙控門禁系統則大大改變了這一現狀,因為其每次發出的編碼信息不同、不規則,而且重復出現同一編碼信息被視為無效,傳輸代碼采用了非線性位加密技術,使其產生了具有很高保密性的滾動碼,使得一些非法的裝置不能在一定的時間內破解其密碼。本文主要介紹KEELOQ技術在遙控門禁系統中的應用,并且利用PIC16F630進行控鎖和軟件解碼。

1 編碼器的工作原理
    本設計的遙控門禁系統[1]通過按鍵遙控器就能開關家門,其工作流程如圖1所示。當系統按鈕被按下時,HCS301將開始準備工作,為使按鈕抖動平息,大約要延遲10 ms。信息將以跳碼的形式進行傳輸,跳碼包括識別碼、按鈕信息和徒步計數值。跳碼就是跳動的代碼,在每次發送時都將產生變化,即便同一個按鈕被按下多次,它也會發生變化。因此,發送的編碼字在超過64 000次的傳輸中都不會重復。以每天執行10次操作為例,跳碼可以保證在18年之內編碼字不會重復。溢出信息可用來將唯一發送的次數提高超過192 000次。在發送代碼過程中,如果有按鈕被按下,則會產生復位的效果,并且當前編碼字的傳輸將不會被完成。只要有按鈕處于按下狀態,松開按鈕就不會對編碼字產生任何影響。在這樣正常的情況下,編碼字將完成并在隨后斷電[2]。

2 KEELOQ技術介紹
    KEELOQ技術[3]實際上是一個關于“ASIC”的特別設計,它包括解碼技術和加密技術,并提出了一種實用可靠的KEELOQ算法,適用于遙控或命令辨別的場合。它的加密、解密技術安全,具有變化多、不容易被截獲的特點,KEELOQ技術可應用在車庫門遙控、秘密通信、被動式感應控制、停車場管制、安全鎖等場合,用途廣泛。KEELOQ的傳送可經由公共頻道,內含一組64 bit的編碼密碼,編碼器將把該編碼密碼傳輸到解碼器,其中有32 bit的編碼密碼是不知道的,從而可保證該技術的保密性,并且傳送資料不唯一和不重復。KEELOQ技術的重點在于它獨特的演算法(即數學推算公式),當資料進入這演算法并進行運算時,其輸入與輸出是一一對應的,不存在重復。
2.1 KEELOQ技術的密碼編碼和存儲[4]
    密鑰的產生是由64 bit廠家代碼和28 bit發送序列號在密鑰生成算法中實現,并把其生成的密鑰存儲在HCS301中的EEPROM中,如圖2所示。

2.3 PWM的接收
    發送的信息包括32 bit跳碼和34 bit固定碼,由圖3可知,該固定碼包括識別碼、功能鍵和溢出指示位。首先進入前導資料并進行準備;然后開始接收所傳輸的資料,利用Sync.Header 10 TE來改變接收的速率,會得到TE的時間。當檢測到有上升沿上升時,過一半TE時間后,開始進行取樣并檢測其結果。如果為1,則接收成功;如果為0,則接收失敗,需要等待1 TE時間,然后立即取樣,并把采樣結果作為資料位元再重復以上動作,重新采樣并進行測試;如果重測結果為1則失敗。當下一個上升沿出現時,如果等待時間大于1 TE,則可以斷定其結果為失敗。重復以上步驟,直到把這66 bit編碼密碼接收完成[5],如圖4所示。

3 PIC16F630的軟解和控鎖
    跳碼編碼可用專用芯片進行硬件解碼。由于專用芯片的價格很貴,因此本設計采用PIC系列的單片機芯片PIC16F630進行軟件解碼[6]。當接收器接收到信號時,把信號傳輸到單片機中,然后PIC16F630進行軟件解碼,產生控制信號D0、D1、D2、D3。其原理圖如圖5所示。

    主機接DC12 V變壓器,+12 V為正極輸入端,GND為負極輸入端,JP1~JP5為短路帽,第一組控制信號由跳線端JP4控制:如果JP4跳到A端,則只有按遙控器A鍵,L1才有開鎖信號;如果JP4跳到D端,則只有按遙控器D鍵,L1才有控制信號輸出。第二組控制信號由跳線端JP3控制:如果JP3跳到B端,則只有按遙控器B鍵,L2才有開鎖信號;如果JP3跳到C端,則只有按遙控器C鍵,L2才有控制信號輸出。
4 KEELOQ技術的學習模式
    為使生產配對方便、管理簡單,KEELOQ系統要進行學習。解碼器在沒工作時,僅知道其制造商代碼,剩下的都不知道;解碼資訊存儲在EEPROM中,具體包括:序列號(Serial Number)、同步計數值(Current Sync.Counter Value)、識別碼(Discrimination Value)、編碼密碼(Encrypion Key)[7]。
4.1 簡易學習模式

 


    如果使用簡易學習模式,則編碼密碼就是制造商代碼。此模式的特點是簡單和容易明白,不足之處是假如制造商代碼被知道,則當有兩個使用相同制造商代碼的系統時,這個系統的編碼密碼就很容易被知道,因此安全性被降低。在簡易學習模式下,接收到資料,然后進行解碼,判斷是否與制造商代碼一致。如果超過時間,則學習失敗;如果解碼正確,則判斷識別碼與所接收的序列號中較低的10位元是否相等以及功能鍵與所接收資料中的固定碼按鍵值是否相等,如果不相等,則學習失敗,如果相等則把學習到的3種資料記錄在EEPROM中,作為解碼資料庫用。
4.2 標準學習模式
    標準學習模式與簡易學習模式的解碼方式其實是一樣的,只是使用不同的解碼密碼(Encrypion Key)。在標準模式中,解碼密碼是通過序列號、制造商代碼經過運算后得到的,前后共經過兩次,并得到64 bit的編碼密碼。第一次運算,先取得32 bit(LSB),第二次運算,再取得32 bit(MSB)。進入標準學習模式下,將第一次接收的資料進行解碼后,得到序列號、識別碼、同步技術值,并判斷識別碼是否與序列號相等;將第二次接收的資料進行解碼后,判斷識別碼與序列號是否相等,并檢查同步技術值是否加1,如果都正確,則存儲學習結果到EERPROM中。
4.3 安全學習模式
    安全學習模式與標準學習模式的解碼方式其實是一樣的,只是解碼密碼產生的方式不同。在安全學習模式中,制造商代碼與SEED運算取得解碼密碼,并得到32 bit(LSB);然后此密碼又與序列號進行運算,運算后所取得的密碼為32 bit(MSB),即形成了64 bit的解碼密碼。當安全學習模式啟動時,將準備接收跳碼,并檢查新、舊序號是否一樣,利用新的解碼密碼與跳碼進行解碼后會得到識別碼和同步技術值,然后存儲解碼資源中的4種信息到EEPROM中。
5 KEELOQ紙上解碼
    以HCS301為例,其跳碼(Hopping Code)使用0~F的制造商代碼,以簡易編碼方式來記錄HCS301所送出的編碼作為解碼輸入。燒錄設定:序列號0001234,同步技術值0000,識別碼序號最低10 bit。把燒錄的HCS301作為編碼器,制造商代碼為0123456789ABCDEF,使用簡易編碼解碼方式將所收到的Hopping碼填入“KEELOQ Decoding Tool”中的解碼資料欄中來解碼,所得到的結果如表1所示。

    本文運用了單片機技術、無線傳輸技術、KEELOQ技術,采用DXP2004軟件繪制原理圖,設計出了一種方便、成本低、保密性高的防盜門禁系統。在實際使用時還可以適當地加設硬件(例如報警器、LED燈等)來實現更大的作用。
參考文獻
[1] Microchip Crop.AN661-Code hopping decoder using a  PIC16C56[Z].2011.
[2] 孔慧芳,丘宇寧.PKE智能鑰匙系統設計[J].微型機與應用,2010,29(20):103-106.
[3] 何此昂,周渡海.遠程無鑰匙進入系統的方案設計[J].單片機與嵌入式系統應用,2006,29(12):33-35.
[4] 王文虎,李建奇,陶曾杰.KEELOQ滾動加密技術在汽車防盜系統中的應用[J].電子測量技術,2007,30(10):197-199.
[5] 陳元.基于轎車車身控制網絡的研究和仿真[D].武漢:武漢理工大學,2008.
[6] 丁明勇.KEELOQ技術的文件加密設計與實現[J].遼寧工程技術大學學報,2005,24(5):727-729.
[7] 石幸利.基于滾動碼技術的汽車防盜系統研究[D].重慶:重慶大學,2007.

此內容為AET網站原創,未經授權禁止轉載。
主站蜘蛛池模板: 91日本在线观看亚洲精品 | 一个人看的www免费视频中文 | 99精品视频不卡在线观看免费 | 色综合天天干 | 98在线视频噜噜噜国产 | 毛片免费在线观看网址 | 成人一区二区免费中文字幕 | 国产成人亚洲精品影院 | 欧美不卡在线视频 | 亚洲欧美另类国产综合 | 日本高清三区 | 天天摸天天看天天做天天爽 | 久久精品视频网站 | 一区二区三区四区国产精品 | 免费一级毛片在线播放视频 | 男女性刺激爽爽免费视频 | 黄色在线播放网站 | 在线不卡免费视频 | 人成18亚洲资源在线 | 亚洲日韩中文字幕天堂不卡 | free嫩白的18性中国 | 在厨房被强行侵犯中文字幕 | 久久久久无码国产精品一区 | 天天拍夜夜添久久精品免费 | 精品视频一区二区 | 国产偷国产偷高清视频 | 黄色三级毛片 | 波多野结衣久久精品 | 视频黄色免费 | 中国老妇另类xxxx | 影音先锋日韩 | 日韩精品久久久久影院 | 综合自拍亚洲综合图区美腿丝袜 | 人人擦人人 | 一级片小视频 | 日韩aⅴ在线观看 | 成人免费精品视频 | 天天做人人爱夜夜爽2020 | 欧美专区在线播放 | 成人私人影院在线观看网址 | 草草线禁成18年在线视频 |