基于語音報警的雙向遙控車門開關系統(tǒng)設計
系統(tǒng)軟件設計
通信協(xié)議
雙向RKE主要由上位機和下位機組成,要實現(xiàn)上鎖/開鎖功能及安全報警功能,就必須完成上位機和下位機之間的無線數(shù)據(jù)通信。整個系統(tǒng)的各個部分都是服務于無線數(shù)據(jù)傳輸這個目的。所以,在整個系統(tǒng)的軟件設計中,無線數(shù)據(jù)的傳輸為最主要部分。無線傳輸以數(shù)據(jù)幀的方式進行,數(shù)據(jù)幀的格式如表1所示。
前導碼主要是用于防止有用數(shù)據(jù)被干擾;車子ID主要用來標志特定車子的信息,以便正確的辨認,如果ID不匹配,數(shù)據(jù)幀就會被忽略;信息碼是用來表示用戶的操作,這些操作包括上鎖、開鎖、顯示警報等。當用戶發(fā)送相應命令時,就分別執(zhí)行上鎖、開鎖,而當用戶超出收發(fā)范圍時,主收發(fā)器能夠自動的發(fā)送警告信息;校驗和則用于檢驗接收的數(shù)據(jù)是否正確,當不正確時,需重發(fā)數(shù)據(jù)幀。
系統(tǒng)軟件流程設計
由于整個RKE系統(tǒng)為一雙向進行的系統(tǒng),數(shù)據(jù)終端和主收發(fā)器之間的通信是雙工的,所以在實際系統(tǒng)運行時,數(shù)據(jù)的傳輸方向也是不斷變化的。為此,要實現(xiàn)雙方協(xié)調(diào)通信,就必須設計出一個比較適合的收發(fā)次序。其上位機收發(fā)流程圖如圖4所示。系統(tǒng)上電后,上位機處于待機狀態(tài)。當檢測到上位機發(fā)射一個按鍵命令時,就表示用戶要進行某種特定的操作,同時將操作信息送到揚聲器,通過聲音的方式向用戶告知要進行的操作,此時上位機就打開發(fā)射器,發(fā)送相應的信息碼 (如開鎖、上鎖等),而其它時候上位機都處于接收狀態(tài),如果沒有接收到下位機發(fā)送過來的地址碼,上位機此時就可以判斷用戶此時處于發(fā)送接收范圍之外,于是通過P1.7讀入放音地址將要預先存儲在上位機中的報警信息,由揚聲器發(fā)出語音信號向用戶告警。如果上位機沒有收到下位機發(fā)送回來的ACK(正確回應信號),此時上位機會要求用戶再次按鍵,知道收到ACK命令,此時下位機才執(zhí)行相應操作。
而下位機在系統(tǒng)上電后,首先進行初始化,然后就打開接收機以判斷是否有用戶在按鍵發(fā)布命令,如果沒有檢測到按鍵命令,下位機就打開發(fā)射機,不斷的發(fā)送地址碼給上位機,以確定雙方是否在通信范圍之內(nèi),用以提示用戶。而當檢測到按鍵命令時,下位機首先將上位機發(fā)送過來的操作信息碼進行校驗,如果檢驗不正確,就要求用戶重新按鍵;如果檢驗正確,就發(fā)送ACK命令,以確認用戶的操作是有效的。通過這種方式,可以有效的實現(xiàn)上位機和下位機的雙向通信,這樣雙向RKE系統(tǒng)就可以穩(wěn)定的工作,其下位機收發(fā)流程圖如圖5所示。
結語
采用射頻芯片nRF401、AT89C52 MCU及語音芯片ISD4004構成的雙向RKE系統(tǒng),可以更直觀的讓用戶通過語音的一種方式來表達所執(zhí)行的命令,使系統(tǒng)變得方便實用。同時,系統(tǒng)中所選用的芯片都是功耗較低的,這對于用電池供電的上位機來講非常重要。此外,所選用的芯片的尺寸都非常的小,MCU與nRF401以及ISD4004之間的接口都非常的簡單,不需要太多的外圍電路,這在某種程度上有利于系統(tǒng)的集成,方便用戶的隨身攜帶。在此系統(tǒng)基礎上,如果在車門里再加一個壓力傳感器,這樣就可以極大的防止車子遭到人為的破壞,更一步的提高車子的安全性。此外該系統(tǒng)還可應用在其它的場合,如數(shù)字語音通信、無線遙控防盜門、智能無線抄表等等領域,可以得到極大的推廣。
評論