基于跳頻通信的汽車智能防盜器設(shè)計(jì)
3.1.2 nRF905 的無(wú)線收發(fā)過(guò)程
1) 發(fā)射模式設(shè)置及過(guò)程
a) 上電以后MCU 首先配置nRF905 模式,先將PWR_UP,TX_EN,TRX_CE 設(shè)為(10X)配置模式。
b) MCU 通過(guò)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)通過(guò)SPI 接口傳送給nRF905。
d) MCU 設(shè)置TRX_CE,TX_EN 為高啟動(dòng)傳輸。
e) nRF905 內(nèi)部處理:無(wú)線系統(tǒng)自動(dò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 通過(guò)SPI 將RF 寄存器的頻率配置數(shù)據(jù),配置數(shù)據(jù)移入nRF905 模塊。
c) 設(shè)置TRX_CE 高,TX_EN 低來(lái)選擇RX 模式,nRF905 監(jiān)測(cè)空中的信息。
d) 當(dāng)nRF905 發(fā)現(xiàn)和接收頻率相同的載波時(shí),載波檢測(cè)(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 可以以合適的速率通過(guò)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)安全性
為了增加安全性,每對(duì)密碼鎖除具有唯一對(duì)應(yīng)的32 位加密地址外還增加了一一對(duì)應(yīng)的隨機(jī)跳頻表,第一次使用時(shí),將車機(jī)、人機(jī)對(duì)應(yīng)的設(shè)置開關(guān)打開,人持終端可以產(chǎn)生一個(gè)隨機(jī)的跳頻表,并將該跳頻表通過(guò)握手頻率發(fā)送給車載終端,經(jīng)返回校驗(yàn)無(wú)誤時(shí)將該跳頻表存儲(chǔ)在掉電保護(hù)的非易失FLASH 存儲(chǔ)器中,關(guān)閉設(shè)置開關(guān),在保證兩機(jī)有一一對(duì)應(yīng)的跳頻頻率表的同時(shí)又很好地保護(hù)了頻率表的安全性,只要雙方按照事先約定的與跳頻表對(duì)應(yīng)設(shè)置一致的CH_NO 和HEFREQ_PLL 的數(shù)值便可實(shí)現(xiàn)跳頻通信,增加了無(wú)線通信的可靠性、安全性。
3.2.2 設(shè)定握手及出錯(cuò)、丟包回歸頻率,保證通信可靠
跳頻通信的一個(gè)突出問(wèn)題就是盡管可靠性高,但一旦通信雙方通信錯(cuò)誤,引發(fā)跳頻表讀取數(shù)據(jù)不一致, 系統(tǒng)將發(fā)生混亂,無(wú)法通信。為解決這一問(wèn)題,提高防盜器安全性和可靠性,系統(tǒng)設(shè)定了一個(gè)固定頻率作為握手頻率,人機(jī)和車機(jī)之間的通信是先從一個(gè)雙方設(shè)定的握手頻率來(lái)進(jìn)行握手連接,該頻率僅攜帶目標(biāo)地址和握手請(qǐng)求或應(yīng)答信號(hào),即使被截獲也不影響系統(tǒng)的安全性。當(dāng)系統(tǒng)出現(xiàn)問(wèn)題雙方通信不成功時(shí),馬上回到握手頻率,從跳頻表初始值重新開始通信。在一次指令信息傳輸進(jìn)行過(guò)程中屏蔽中斷,保證信息的可靠傳輸。
3.2.3 系統(tǒng)工作過(guò)程
系統(tǒng)上電初始化跳頻表后,人機(jī)和車機(jī)都通過(guò)設(shè)定系統(tǒng)的工作模式(Set nRF905 Mode),配置nRF905 的寄存器(Configure Register),使其工作在握手頻率,接收模式(RX Mode)。當(dāng)其中一端收到中斷請(qǐng)求時(shí)(車主指令/報(bào)警信息等),便發(fā)起握手請(qǐng)求,握手完成后,進(jìn)行兩次跳頻通信過(guò)程,完成信息的發(fā)送及反饋,在發(fā)送過(guò)程中,發(fā)送方發(fā)出握手請(qǐng)求或指令后等待響應(yīng)或反饋的時(shí)間不超過(guò)200 ms,否則便認(rèn)為通信出錯(cuò),發(fā)起方重新發(fā)起請(qǐng)求。
以車主發(fā)出上鎖指令為例,系統(tǒng)整個(gè)工作過(guò)程如圖3,其他車主指令發(fā)送、車載報(bào)警信息的發(fā)送過(guò)程類似。
圖3 防盜器工作流程圖
4 結(jié)論
經(jīng)測(cè)試該系統(tǒng)在小區(qū)內(nèi)的可靠通信距離可達(dá)到150 m,滿足一般汽車防盜器的實(shí)際應(yīng)用要求,采用跳頻通信保證了防盜器不易被截獲破解,通過(guò)通信方案的優(yōu)化設(shè)計(jì),保證了跳頻的通信可靠性,進(jìn)一步提高了防盜器的安全性和可靠性。將該系統(tǒng)簡(jiǎn)化外圍電路設(shè)計(jì)后也可用于摩托車防盜及其他防盜系統(tǒng)。
評(píng)論