文獻(xiàn)標(biāo)識(shí)碼: B
文章編號(hào): 0258-7998(2013)12-0052-03
隨著人們生活水平的提高和汽車工業(yè)的快速發(fā)展,汽車已經(jīng)走進(jìn)千家萬戶。停車難、亂停車成了一個(gè)普遍且急需解決的社會(huì)問題。為保護(hù)好自己的車位不被他人占用,車位鎖非常必要。已有的車位鎖主要存在以下幾個(gè)問題:
(1)傳統(tǒng)的車位鎖大多是人工操作實(shí)現(xiàn)翻轉(zhuǎn)臂的起落,使用起來極不便利;
(2)利用紅外方式遙控,其對(duì)方向性要求高,不具有穿透性,使遙控距離和角度方面受到限制[1];
(3)在一些遙控車位鎖中,更多的是采用PT2262/2272、MC145026/145027等固定編解碼芯片進(jìn)行加密和解密。但此類編解碼芯片的編碼長(zhǎng)度有限,系統(tǒng)每次發(fā)送的數(shù)據(jù)格式固定不變,容易通過空中捕獲和掃描跟蹤的方法識(shí)別代碼,安全性得不到保障[2]。
基于上述考慮,本文設(shè)計(jì)了一個(gè)基于KEELOQ技術(shù)[3-4]的無線遙控車位鎖系統(tǒng)。無線遙控采用美國Microchip公司基于KEELOQ算法的系統(tǒng)滾動(dòng)碼技術(shù),使數(shù)據(jù)傳輸具有極高的保密性,每次傳輸?shù)拇a都是唯一的、不規(guī)則的,且不重復(fù),以此來防止密碼破譯。同時(shí),與無線射頻技術(shù)相結(jié)合,使用戶在一定范圍內(nèi)的任何位置都能對(duì)車位鎖進(jìn)行控制,有效克服了上述系統(tǒng)的缺點(diǎn)。
1 系統(tǒng)總體結(jié)構(gòu)
遙控車位鎖系統(tǒng)結(jié)構(gòu)圖如圖1所示。用戶利用遙控器輸入功能按鍵,將信號(hào)經(jīng)編碼后通過無線射頻方式發(fā)送給無線接收模塊;MCU通過無線接收模塊監(jiān)測(cè)遠(yuǎn)程用戶遙控器的按鍵操作,根據(jù)用戶的按鍵邏輯驅(qū)動(dòng)電機(jī)對(duì)車位鎖進(jìn)行上鎖或解鎖的操作,限位開關(guān)限制鎖上升或下降的高度。系統(tǒng)同時(shí)提供聲光報(bào)警電路,用于提示車位鎖的動(dòng)作情況以及低電量等異常情況。
2 無線發(fā)射與接收模塊
無線發(fā)射模塊通過無線射頻技術(shù)在頻率為315 MHz的條件下實(shí)現(xiàn)點(diǎn)對(duì)點(diǎn)傳輸,具有發(fā)射功率低、穿透性強(qiáng)、信號(hào)傳輸抗干擾性好、成本低等優(yōu)點(diǎn)。無線接收電路主要由超外差接收模塊J05U來完成,相比超再生接收模塊,它在穩(wěn)定性方面具有優(yōu)勢(shì)。J05U是一款特小體積、超低功耗、高靈敏度的OOK/ASK超外差接收模塊,工作在315.0 MHz/433.92 MHz固定頻點(diǎn),能有效地將射頻電路發(fā)射過來的信息進(jìn)行解調(diào)后傳送給解碼器。
為降低車位編碼的重復(fù)率,提高遙控功能安全性,無線遙控過程采用KEELOQ滾動(dòng)加密技術(shù)。KEELOQ滾動(dòng)加密算法對(duì)功能信息、識(shí)別碼和同步計(jì)數(shù)值進(jìn)行加密后,產(chǎn)生32 bit高度保密的滾動(dòng)碼,并與34 bit固定碼一起形成66 bit的編碼信息。由于KEELOQ算法的復(fù)雜性以及同步計(jì)數(shù)值每次都要加1,使編碼信息每次都要發(fā)生變化,有效解決了編碼重碼的難題。若以每天傳輸10次代碼計(jì)算,可保證在KEELOQ技術(shù)下同一遙控器發(fā)送重復(fù)碼的概率18年不重復(fù),以此來防止密碼破譯。解碼器需要“學(xué)習(xí)”編碼器的序列號(hào)、識(shí)別碼和同步計(jì)數(shù)值后,解碼器才能有效地解碼編碼信息[3-4]。
遙控器的KEELOQ編碼由HCS301發(fā)出,電路如圖2所示。它是一塊8引腳的編碼IC芯片,帶有4個(gè)按鍵接口,實(shí)現(xiàn)15 bit的功能/命令碼,內(nèi)置192 bit EEPROM。HCS301在使用之前,需利用芯片燒寫軟件KEELOQ Evaluation Kit設(shè)置好制造商代碼、序列號(hào)、識(shí)別碼以及波特率等參數(shù)信息,并燒寫到HCS301的EEPROM中。同時(shí),解碼器的EEPROM中也需要存儲(chǔ)相同的制造商代碼、序列號(hào)和識(shí)別碼,使得編碼器與解碼器之間配對(duì)唯一。每當(dāng)有按鍵按下時(shí),HCS301會(huì)發(fā)送一組66 bit的編碼數(shù)據(jù),這時(shí)HCS301的LED端口會(huì)以5次/s的頻率輸出低電平,使指示燈閃爍,提示編碼信息發(fā)送。完整的編碼信息由PWM端(TX)輸出到射頻電路進(jìn)行無線發(fā)射[3-4]。
3 主控制模塊
主控制模塊用于KEELOQ數(shù)據(jù)解碼和實(shí)現(xiàn)車位鎖動(dòng)作的邏輯控制,系統(tǒng)控制電路圖如圖3所示。該模塊選用PIC16F630作為主控制器,外圍配備車位鎖驅(qū)動(dòng)電機(jī)、限位開關(guān)和聲光報(bào)警電路。當(dāng)超外差無線接收模塊接收到遠(yuǎn)程用戶的按鍵后,由MCU解碼后獲取用戶的按鍵信息,根據(jù)按鍵功能,I/O口經(jīng)L298N H橋驅(qū)動(dòng)電機(jī)工作,控制車位鎖撐桿的上升與下降。在電機(jī)工作過程中,PIC16F630通過限位開關(guān)實(shí)時(shí)判斷撐桿是否到達(dá)上限位或者下限位,并以蜂鳴器發(fā)單一長(zhǎng)聲來提示動(dòng)作到位。
本設(shè)計(jì)的供電系統(tǒng)由12 V、7 AH的蓄電池提供,采用高效率的開關(guān)電源芯片LM2596,將12 V電源轉(zhuǎn)換為5 V電壓給控制系統(tǒng)供電。為降低系統(tǒng)功耗, PIC16F630單片機(jī)定時(shí)處于SLEEP睡眠狀態(tài),每隔500 ms喚醒,喚醒后使能J05U的CE端口,啟動(dòng)超外差無線接收模塊工作,檢查有無無線編碼進(jìn)入,若無則單片機(jī)繼續(xù)進(jìn)入SLEEP睡眠狀態(tài),CE置低電平,關(guān)閉無線接收模塊,從而有效減少了系統(tǒng)功耗。
電池電量主要通過CAT809T進(jìn)行實(shí)時(shí)檢測(cè),若電量不足則使CAT809T產(chǎn)生低電平信號(hào),單片機(jī)檢測(cè)到該低電平信號(hào)時(shí),控制蜂鳴器定時(shí)發(fā)兩次短促報(bào)警聲通知用戶。為實(shí)現(xiàn)電機(jī)過流保護(hù),在L298N輸出與電機(jī)控制接口之間串聯(lián)0.5 Ω電阻,以實(shí)時(shí)檢測(cè)電機(jī)的工作電流。當(dāng)過電流超過4 A,即在采樣電阻兩端產(chǎn)生壓降超過TTL高電平最低電壓2 V時(shí),單片機(jī)通過I/O口檢測(cè)到該變化電平信息,馬上停止電機(jī)運(yùn)轉(zhuǎn),并進(jìn)行聲光提示告知用戶。
4 系統(tǒng)工作流程
系統(tǒng)工作流程主要實(shí)現(xiàn)KEELOQ軟件解碼[4-5]、電路檢測(cè)和外圍電路控制功能。系統(tǒng)主程序流程圖如圖4所示。當(dāng)單片機(jī)上電時(shí),系統(tǒng)不斷執(zhí)行循環(huán)主程序,對(duì)電源電量以及電機(jī)電流進(jìn)行檢測(cè),并實(shí)時(shí)判斷是否有本地學(xué)習(xí)按鍵和遠(yuǎn)程用戶遙控輸入。若接收到遠(yuǎn)程用戶的按鍵輸入,則進(jìn)行用戶信息的解碼過程,并對(duì)解碼后的按鍵值進(jìn)行判斷,控制電機(jī)的正轉(zhuǎn)或反轉(zhuǎn);若電機(jī)運(yùn)轉(zhuǎn)超時(shí)則進(jìn)行報(bào)警;若有學(xué)習(xí)按鍵按下,則執(zhí)行學(xué)習(xí)子程序。
在PIC16F630進(jìn)行正確解碼之前,用戶需通過觸發(fā)接收電路的學(xué)習(xí)按鍵,使接收模塊獲取識(shí)別碼、序列號(hào)和同步計(jì)數(shù)值,并存儲(chǔ)在解碼器的EEPROM中供以后解密使用[6]。當(dāng)接收端解密密匙(即制造商代碼)與發(fā)送方的一致時(shí),即可對(duì)遙控器的發(fā)送命令進(jìn)行正確解碼。其學(xué)習(xí)程序流程圖如圖5所示。
5 系統(tǒng)測(cè)試
經(jīng)測(cè)試,系統(tǒng)遙控距離可以達(dá)到30 m,系統(tǒng)從睡眠到喚醒的時(shí)間在0.5 s以內(nèi)。系統(tǒng)靜態(tài)電流(無機(jī)械動(dòng)作)為0.022 A,動(dòng)態(tài)電流(有機(jī)械動(dòng)作)約為0.35 A,則一天的靜態(tài)損耗為0.022×12×24=6.336 W。動(dòng)態(tài)損耗主要在控制電機(jī)正反轉(zhuǎn)時(shí)消耗,每次運(yùn)轉(zhuǎn)時(shí)間約3 s,若每天升
參考文獻(xiàn)
[1] 胥萌,何廣軍,劉彬,等.基于單片機(jī)的智能遙控車位鎖研究[J].電腦知識(shí)與技術(shù),2012,8(19):4712-4714.
[2] 趙春紅,楊勇.基于單片機(jī)和無線電遙控技術(shù)的密碼鎖設(shè)計(jì)[J].測(cè)控技術(shù),2005,24(9):9-11,31.
[3] Microchip Technology Inc.HCS301 KEELOQ code hopping encoder(DS21143C)[EB/OL].(2011)[2013-08-06].http://www.microchip.com.
[4] Microchip Technology Inc.使用KEELOQ產(chǎn)生跳碼密碼(DS00665A_CN)[EB/OL].(2007)[2013-08-06].http://www.mirochip.com.
[5] 李榮正,王成杰,戴國銀.PIC單片機(jī)原理及應(yīng)用(第四版)[M].北京:北京航空航天大學(xué)出版社,2010.
[6] 薛巨峰,喬鵬.基于KEELOQ技術(shù)的遙控門禁系統(tǒng)的實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2013,39(2):45-47.