1.一種基于無(wú)線傳感器的胎壓監(jiān)測(cè)方法,其特征在于,包括:
胎壓傳感器模塊采集車輛中的胎壓信息,經(jīng)路由器發(fā)送給WSN協(xié)調(diào)器,當(dāng)接收到WSN協(xié)調(diào)器的喚醒命令后,立即檢測(cè)接收數(shù)據(jù),將采集后的測(cè)量值以進(jìn)行存儲(chǔ),并將數(shù)據(jù)封裝后通過(guò)WSN協(xié)調(diào)器發(fā)送給監(jiān)控總平臺(tái)。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述胎壓傳感器模塊在上電初始化后掃描信道,確定是否存在網(wǎng)絡(luò)和協(xié)調(diào)器的位置,發(fā)現(xiàn)后立即與WSN協(xié)調(diào)器進(jìn)行連接確認(rèn),按照WSN協(xié)調(diào)器發(fā)送的指令采集各類車載數(shù)據(jù),然后將數(shù)據(jù)信息上傳至協(xié)調(diào)器中,胎壓傳感器模塊空閑時(shí)處于睡眠狀態(tài)等待喚醒命令,在完成加入網(wǎng)絡(luò)后,節(jié)點(diǎn)進(jìn)入睡眠等待模式,一旦接收到WSN協(xié)調(diào)器的喚醒命令后,立即檢測(cè)接收數(shù)據(jù),先對(duì)接收的數(shù)據(jù)幀頭和命令頭進(jìn)行判斷,根據(jù)命令頭執(zhí)行相應(yīng)的操作,將采集后的測(cè)量值以進(jìn)行存儲(chǔ),并將數(shù)據(jù)封裝后發(fā)送給監(jiān)控總平臺(tái);
所述WSN協(xié)調(diào)器上電后,首先進(jìn)行硬件和協(xié)議棧操作系統(tǒng)的初始化,然后執(zhí)行網(wǎng)絡(luò)建立操作,建立網(wǎng)絡(luò)的過(guò)程中包括信道掃描,選擇信道、節(jié)點(diǎn)地址分配操作,啟動(dòng)協(xié)調(diào)器建立一個(gè)新的IEEE 802.15.4無(wú)線網(wǎng)絡(luò);在路由器和胎壓傳感器模塊順利加入網(wǎng)絡(luò)后,胎壓傳感器模塊先發(fā)送一個(gè)請(qǐng)求命令,協(xié)調(diào)器接到請(qǐng)求命令后監(jiān)聽(tīng)所分配的數(shù)據(jù)信道,確保信道空閑后返回允許命令,胎壓傳感器模塊接到允許命令后才能開(kāi)始發(fā)送數(shù)據(jù)信息;
路由器作為無(wú)線網(wǎng)絡(luò)中數(shù)據(jù)的跳轉(zhuǎn)節(jié)點(diǎn),接收終端傳感器節(jié)點(diǎn)數(shù)據(jù)信息,整理數(shù)據(jù)信息后將數(shù)據(jù)轉(zhuǎn)發(fā)給WSN協(xié)調(diào)器,路由器工作過(guò)程可分為路由搜索初始化、接收路由命令幀、接收應(yīng)答命令幀,數(shù)據(jù)接收、數(shù)據(jù)壓縮、丟包檢測(cè)、選擇最佳路徑以防止造成數(shù)據(jù)阻塞;
胎壓傳感器模塊采用兩個(gè)MCU即MCU1和MCU2,MCU1負(fù)責(zé)采集傳感器數(shù)據(jù),MCU2負(fù)責(zé)無(wú)線傳輸,然后同時(shí)將所有數(shù)據(jù)通過(guò)無(wú)線協(xié)議發(fā)送至協(xié)調(diào)器;MCU1和MCU2之間通過(guò)串口相連,MCU1定時(shí)將期間采集到的所有胎壓傳感器數(shù)據(jù)一次性發(fā)送給MCU2,然后MCU2負(fù)責(zé)將其發(fā)送至協(xié)調(diào)器;胎壓傳感器模塊獨(dú)占MCU1的一個(gè)串口收發(fā)對(duì);MCU1和MCU2的通信分別占用MCU1的串口的發(fā)送端和MCU2的串口的接收端;
MCU1的完整操作為:被動(dòng)接收胎壓監(jiān)測(cè)采集數(shù)據(jù),然后統(tǒng)一將數(shù)據(jù)發(fā)送給MCU2,建立數(shù)據(jù)池,將傳感器數(shù)據(jù)采集程序作為主程序,保持循環(huán)采集,然后按照幀格式順序,依次寫(xiě)入數(shù)據(jù)池,每10次傳感器實(shí)時(shí)數(shù)據(jù)采集完畢,啟動(dòng)一次發(fā)送程序,一起發(fā)送給MCU2;對(duì)于異步胎壓數(shù)據(jù),占用額外單獨(dú)的數(shù)據(jù)區(qū),以中斷方式接收到的胎壓變化數(shù)據(jù)先放入胎壓數(shù)據(jù)區(qū),并設(shè)置胎壓數(shù)據(jù)標(biāo)志位;然后,在每次數(shù)據(jù)發(fā)送給MCU2之前,主程序先檢查胎壓數(shù)據(jù)標(biāo)志位是否被置位;如果置位,則有胎壓數(shù)據(jù)完整接收,則就將胎壓數(shù)據(jù)區(qū)數(shù)據(jù)拷貝至程序數(shù)據(jù)區(qū),然后清除胎壓數(shù)據(jù)標(biāo)志位,最后將配置好傳感器數(shù)據(jù)和胎壓數(shù)據(jù)的數(shù)據(jù)區(qū)發(fā)送到MCU2;如果胎壓數(shù)據(jù)標(biāo)志位沒(méi)有置位,則不做處理,數(shù)據(jù)區(qū)相應(yīng)段的信息是上一次胎壓傳感器的數(shù)據(jù)值;
MCU2進(jìn)行無(wú)線協(xié)議模塊的初始化,發(fā)送配置命令,進(jìn)行編程參數(shù)、網(wǎng)絡(luò)參數(shù)的配置和網(wǎng)絡(luò)連接;初始化無(wú)線協(xié)議模塊并在收到MCU1發(fā)送來(lái)的傳感器數(shù)據(jù)后,開(kāi)始進(jìn)行無(wú)線協(xié)議傳送;同樣采用中斷異步的方式接收MCU1的數(shù)據(jù);當(dāng)異步收到MCU1的數(shù)據(jù)后,設(shè)置數(shù)據(jù)接收標(biāo)志位,主程序循環(huán)查看是否收到MCU1發(fā)來(lái)的傳感器數(shù)據(jù),如果是,則就將傳感器數(shù)據(jù)拷貝至數(shù)據(jù)區(qū),然后發(fā)送至協(xié)調(diào)器。