基于跳頻通信的汽車智能防盜器設(shè)計(jì)
0 引言
隨著社會經(jīng)濟(jì)的發(fā)展,人們生活水平的提高,汽車已逐步進(jìn)入家庭,而如何有效防止汽車被盜也成為車主比較關(guān)心的問題。目前在汽車防盜器中,普通的電子遙控防盜器由于價(jià)格便宜占有很大的市場分額。但普通的電子遙控防盜器多為固定載波頻率通信,容易被干擾、截獲和破解。有報(bào)道說一般的遙控鎖在30 s 內(nèi)就可被專用的解碼器復(fù)制,1 min 內(nèi)就可破解。普通的電子遙控防盜器多為單向通信,車主可以遙控汽車上鎖、解鎖,但汽車信息不能及時(shí)反饋給車主。
針對普通電子防盜器的不足,我們將軍事通信中應(yīng)用的跳頻通信技術(shù)應(yīng)用到汽車智能遙控防盜器的設(shè)計(jì)中。在通信過程中不斷改變雙方的通信頻率,使信息傳遞難以被跟蹤、干擾或截獲、破解,將有效提高防盜系統(tǒng)的安全性和可靠性。
1 系統(tǒng)總體方案設(shè)計(jì)
系統(tǒng)由車載終端、人持終端兩部分構(gòu)成。車載終端主要完成人機(jī)控制指令的接收執(zhí)行,執(zhí)行汽車上鎖解鎖指令,并完成對汽車防盜信息的檢測發(fā)送;人持終端主要完成車主對汽車的上鎖、解鎖的控制指令的發(fā)送,并接收車載終端發(fā)來的汽車相關(guān)報(bào)警信息及指令執(zhí)行情況信息。系統(tǒng)功能結(jié)構(gòu)如圖1 所示。
圖1 系統(tǒng)總體結(jié)構(gòu)框圖
2 系統(tǒng)的電路設(shè)計(jì)與實(shí)現(xiàn)
2.1 車載終端的電路設(shè)計(jì)
車載終端主要完成汽車防盜信息的監(jiān)測并將汽車異常狀況信息發(fā)送給車主,接收執(zhí)行人持終端控制指令如對汽車上鎖解鎖等,針對目前防盜器主要依賴振動傳感器檢測盜竊信息存在不可靠的問題,設(shè)計(jì)了多信息融合的傳感器電路,通過監(jiān)測車門、車窗、車座位來提高防盜器的可靠性,增加的備用電源管理功能保證防盜器在主電源線被剪的情況下仍能正常工作,主要由主控MCU 模塊、無線跳頻通信模塊、汽車門窗監(jiān)測、電源監(jiān)控、振動檢測、車內(nèi)是否有人監(jiān)測模塊構(gòu)成。
2.1.1 主控MCU 模塊電路
主控MCU 主要負(fù)責(zé)整個(gè)系統(tǒng)的協(xié)調(diào)控制,傳感器信息的檢測處理,跳頻通信模塊的配置、信息發(fā)送接收等,采用C8051F340 實(shí)現(xiàn)。C8051F340 是美國Cygnal 公司的混合信號系統(tǒng)級集成芯片, 具有與8051 兼容的高速CIP-51 內(nèi)核,片內(nèi)集成了數(shù)據(jù)采集和控制系統(tǒng)中常用的模擬、數(shù)字外設(shè)及其他功能部件,內(nèi)部時(shí)鐘頻率可達(dá)到48 MHz。具有增強(qiáng)型的SPI 接口,可方便實(shí)現(xiàn)對nRF905 的控制。
2.1.2 跳頻通信模塊硬件電路
跳頻通信模塊硬件電路采用Nordic 公司推出的單片射頻收發(fā)器芯片nRF905 實(shí)現(xiàn),其功耗非常低,以–10 dBm的輸出功率發(fā)射時(shí)電流只有11 mA,在接收模式時(shí)電流為12.5 mA,傳輸距離大于100 m。工作于433/868/915 MHz3 個(gè)ISM 頻道(可以免費(fèi)使用)。nRF905 可以自動完成處理字頭和循環(huán)冗余碼校驗(yàn)的工作,可由片內(nèi)硬件自動完成曼徹斯特編碼/解碼,使用SPI 接口與微控制器通信,配置非常方便,性能可靠,并可以實(shí)現(xiàn)人工載波頻率控制,具有128 個(gè)可選頻點(diǎn),頻點(diǎn)間隔100 kHz,頻點(diǎn)切換時(shí)間為650 μs,可快速實(shí)現(xiàn)頻點(diǎn)切換。使用該芯片可構(gòu)成無線跳頻通信的收發(fā)模塊,模塊電路及單片機(jī)接口電路如圖2,通過PWR_UP,TRX_CE 和TX_EN 與單片機(jī)連接實(shí)現(xiàn)工作模式配置。通過CD,AM,DR 進(jìn)行載波檢測、地址檢測、中斷檢測,通過SPI 接口與單片機(jī)通信實(shí)現(xiàn)載波頻率、通信指令數(shù)據(jù)格式的配置及數(shù)據(jù)的接收。
圖2 nRF905 與單片機(jī)接口電路
2.1.3 車門車窗監(jiān)測模塊
通過將光電檢測二極管置于車門車窗關(guān)口,當(dāng)車門或門窗沒有鎖緊時(shí),對應(yīng)的光電檢測電路會檢測到相關(guān)信息,在車內(nèi)無人時(shí)車載終端通過汽車主控接口通知汽車微處理系統(tǒng)啟動自動關(guān)門關(guān)窗電路,并提醒車主車門或車窗沒有鎖好,在防盜狀態(tài)下車門車窗被打開則發(fā)出報(bào)警信號。
2.1.4 車內(nèi)有無人檢測模塊
通過放置在汽車座位下的應(yīng)變電阻設(shè)計(jì)的壓力測量裝置,判斷車內(nèi)是否有人,如車內(nèi)無人,車防盜鎖系統(tǒng)未啟動,則延時(shí)1 min 自動上鎖;若汽車防盜鎖啟動狀態(tài)下,如若有人,即有可能是有人盜車,防盜器立刻進(jìn)行報(bào)警。
2.1.5 車外振動檢測模塊
車外振動檢測用來檢測當(dāng)車處于防盜狀態(tài)時(shí),是否有人對汽車進(jìn)行碰撞,如有則報(bào)警。它采用了振動傳感器Z04B,它是一種高靈敏振動模塊, 能檢測極其微弱的震動波;安裝簡便,不受任何角度限制;抗干擾性好,對外界聲響無反應(yīng),具有抗雷電及鞭炮干擾能力,輸出為瞬態(tài)脈沖,用來構(gòu)成可靠的汽車振動檢測模塊。
2.1.6 電源測控模塊
設(shè)計(jì)了備用電源管理功能,在汽車主電源被剪斷時(shí),備用電源供電并將該情況反饋給車主,提高防盜系統(tǒng)的安全性和可靠性。
2.2 人持終端的電路設(shè)計(jì)
人持終端完成對汽車的上鎖、解鎖等控制指令發(fā)送,并接收車機(jī)發(fā)來的汽車相關(guān)信息,如振動情況、車門車窗開關(guān)情況信息,并發(fā)出語音提示。由主控單片機(jī)電路和跳頻通信模塊、人機(jī)接口模塊構(gòu)成,其中主控單片機(jī)電路和跳頻通信模塊與車載終端部分相同。
人機(jī)交互接口模塊電路主要由按鍵電路完成人操作指令的發(fā)送,采用LCD 液晶顯示電路使操作更為方便,采用ISD1820 設(shè)計(jì)語音提示電路進(jìn)行報(bào)警提示及車載終端指令執(zhí)行情況提示。
3 系統(tǒng)的軟件設(shè)計(jì)與實(shí)現(xiàn)
3.1 nRF905 的配置過程及跳頻通信的實(shí)現(xiàn)
3.1.1nRF905 的配置過程
如圖2 所示,nRF905 通過CPU 控制nRF905 的3 個(gè)引腳PWR_UP,TRX_CE 和TX_EN 的高低電平來決定其4種工作模式(如表1所示),通過nRF905 的CD,AM,DR 三個(gè)引腳進(jìn)行載波檢測、地址檢測、中斷檢測,在表1中的前兩種模式下,MCU 通過SPI 接口配置nRF905 的5 個(gè)內(nèi)部寄存器(狀態(tài)寄存器、射頻配置寄存器、發(fā)送地址寄存器、發(fā)送數(shù)據(jù)寄存器、接收數(shù)據(jù)寄存器)。其中狀態(tài)寄存器包含數(shù)據(jù)準(zhǔn)備好引腳狀態(tài)信息和地址匹配引腳狀態(tài)信息;射頻配置寄存器包含收發(fā)器配置信息,如頻率和輸出功能等;發(fā)送地址寄存器包含接收機(jī)的地址和數(shù)據(jù)的字節(jié)數(shù);發(fā)送數(shù)據(jù)寄存器包含待發(fā)送的數(shù)據(jù)包的信息,如字節(jié)數(shù)等;接收數(shù)據(jù)寄存器包含要接收的數(shù)據(jù)的字節(jié)數(shù)等信息。
表1 nRF905 的工作模式
3.1.2 nRF905 的無線收發(fā)過程
1) 發(fā)射模式設(shè)置及過程
a) 上電以后MCU 首先配置nRF905 模式,先將PWR_UP,TX_EN,TRX_CE 設(shè)為(10X)配置模式。
b) MCU 通過SPI 將RF 寄存器的頻率配置數(shù)據(jù),配置數(shù)據(jù)移入nRF905 模塊。
c) 當(dāng)MCU 有數(shù)據(jù)需要發(fā)往規(guī)定節(jié)點(diǎn)時(shí),接收節(jié)點(diǎn)的地址(TX-address)和有效數(shù)據(jù)(TX-payload)通過SPI 接口傳送給nRF905。
d) MCU 設(shè)置TRX_CE,TX_EN 為高啟動傳輸。
e) nRF905 內(nèi)部處理:無線系統(tǒng)自動上電、數(shù)據(jù)包完成(加前導(dǎo)碼和CRC 校驗(yàn)碼)、數(shù)據(jù)包發(fā)送(1000kbps,GFSK,曼切斯特編碼)。
2) 接收模式
a) 上電以后MCU 首先配置nRF905 模式,先將PWR_UP,TX_EN,TRX_CE 設(shè)為(10X)配置模式。
b) MCU 通過SPI 將RF 寄存器的頻率配置數(shù)據(jù),配置數(shù)據(jù)移入nRF905 模塊。
c) 設(shè)置TRX_CE 高,TX_EN 低來選擇RX 模式,nRF905 監(jiān)測空中的信息。
d) 當(dāng)nRF905 發(fā)現(xiàn)和接收頻率相同的載波時(shí),載波檢測(CD)被置高。
e) 當(dāng)nRF905 接收到有效的地址時(shí),地址匹配(AM)被置高。
f) 當(dāng)nRF905 接收到有效的數(shù)據(jù)包(CRC 校驗(yàn)正確)時(shí),nRF905 去掉前導(dǎo)碼、地址和CRC 位,數(shù)據(jù)準(zhǔn)備就緒(DR)被置高。
g) MCU 設(shè)置TRX_CE 低,進(jìn)入standby 模式(待機(jī)模式)。
h) MCU 可以以合適的速率通過SPI 接口讀出有效數(shù)據(jù)。
i) 當(dāng)所有的有效數(shù)據(jù)被讀出后,nRF905 將AM 和DR 置低。
3.1.3 跳頻的實(shí)現(xiàn)
nRF905 可以實(shí)現(xiàn)人工載波頻率控制,只需要修改nRF905 的RF 工作頻率寄存器的CH_NO 和HFREQ_PLL就可以選擇不同的載波頻率,實(shí)現(xiàn)跳頻。位變量HFREQ_PLL 為0,表示工作在430 MHz 頻段,頻道差為100 kHz;為1,則表示工作在868/915 MHz 頻段,頻道差為200 kHz。因此共有1 024 種通信頻率。通信頻率(H)為H=(422.4+(CH_NO)10/10)×(1+HFREQ_PLL)。
例如CH_NO=(001001100)2=(76)10,HFREQ_PLL=0,則H=(422.4+76/10)×(1+0)=430.0 MHZ。
本系統(tǒng)統(tǒng)一設(shè)置為工作頻段為430 MHz,頻道差為100 kHz,每一個(gè)頻點(diǎn)間隔為100 kHz,隨機(jī)數(shù)產(chǎn)生于0~128之間,跳頻帶寬為12.8 MHz,完成一次跳頻時(shí)間T≤800μs 。
3.2 基于跳頻通信遙控防盜器的可靠性設(shè)計(jì)及系統(tǒng)實(shí)現(xiàn)
3.2.1 生成隨機(jī)跳頻表增強(qiáng)安全性
為了增加安全性,每對密碼鎖除具有唯一對應(yīng)的32 位加密地址外還增加了一一對應(yīng)的隨機(jī)跳頻表,第一次使用時(shí),將車機(jī)、人機(jī)對應(yīng)的設(shè)置開關(guān)打開,人持終端可以產(chǎn)生一個(gè)隨機(jī)的跳頻表,并將該跳頻表通過握手頻率發(fā)送給車載終端,經(jīng)返回校驗(yàn)無誤時(shí)將該跳頻表存儲在掉電保護(hù)的非易失FLASH 存儲器中,關(guān)閉設(shè)置開關(guān),在保證兩機(jī)有一一對應(yīng)的跳頻頻率表的同時(shí)又很好地保護(hù)了頻率表的安全性,只要雙方按照事先約定的與跳頻表對應(yīng)設(shè)置一致的CH_NO 和HEFREQ_PLL 的數(shù)值便可實(shí)現(xiàn)跳頻通信,增加了無線通信的可靠性、安全性。
3.2.2 設(shè)定握手及出錯(cuò)、丟包回歸頻率,保證通信可靠
跳頻通信的一個(gè)突出問題就是盡管可靠性高,但一旦通信雙方通信錯(cuò)誤,引發(fā)跳頻表讀取數(shù)據(jù)不一致, 系統(tǒng)將發(fā)生混亂,無法通信。為解決這一問題,提高防盜器安全性和可靠性,系統(tǒng)設(shè)定了一個(gè)固定頻率作為握手頻率,人機(jī)和車機(jī)之間的通信是先從一個(gè)雙方設(shè)定的握手頻率來進(jìn)行握手連接,該頻率僅攜帶目標(biāo)地址和握手請求或應(yīng)答信號,即使被截獲也不影響系統(tǒng)的安全性。當(dāng)系統(tǒng)出現(xiàn)問題雙方通信不成功時(shí),馬上回到握手頻率,從跳頻表初始值重新開始通信。在一次指令信息傳輸進(jìn)行過程中屏蔽中斷,保證信息的可靠傳輸。
3.2.3 系統(tǒng)工作過程
系統(tǒng)上電初始化跳頻表后,人機(jī)和車機(jī)都通過設(shè)定系統(tǒng)的工作模式(Set nRF905 Mode),配置nRF905 的寄存器(Configure Register),使其工作在握手頻率,接收模式(RX Mode)。當(dāng)其中一端收到中斷請求時(shí)(車主指令/報(bào)警信息等),便發(fā)起握手請求,握手完成后,進(jìn)行兩次跳頻通信過程,完成信息的發(fā)送及反饋,在發(fā)送過程中,發(fā)送方發(fā)出握手請求或指令后等待響應(yīng)或反饋的時(shí)間不超過200 ms,否則便認(rèn)為通信出錯(cuò),發(fā)起方重新發(fā)起請求。
以車主發(fā)出上鎖指令為例,系統(tǒng)整個(gè)工作過程如圖3,其他車主指令發(fā)送、車載報(bào)警信息的發(fā)送過程類似。
圖3 防盜器工作流程圖
4 結(jié)論
經(jīng)測試該系統(tǒng)在小區(qū)內(nèi)的可靠通信距離可達(dá)到150 m,滿足一般汽車防盜器的實(shí)際應(yīng)用要求,采用跳頻通信保證了防盜器不易被截獲破解,通過通信方案的優(yōu)化設(shè)計(jì),保證了跳頻的通信可靠性,進(jìn)一步提高了防盜器的安全性和可靠性。將該系統(tǒng)簡化外圍電路設(shè)計(jì)后也可用于摩托車防盜及其他防盜系統(tǒng)。