引 言
汽車輪胎壓力監測系統(TPMS)主要用于汽車行駛時對輪胎氣壓進行實時自動監測,對輪胎漏氣和低氣壓進行報警,以保障行車安全。就TPMS系統構造而言,其采集的溫度壓力數據需要通過一種無線方式進行發送和接收,而且該收發電路要安裝在輪胎里。這就必須要求其組成電路的芯片能夠耐高溫。要解決這兩個問題,可以利用Motorola公司研制的發射芯片MC33493和接收芯片MC33594。該兩款芯片都達到了汽車級溫度(發射芯片為125℃,接收芯片為105℃)完全可以解決耐高溫的問題,且工作性能極好。它們與單片機一起構成的接口電路成為TPMS系統中無線數據傳輸的重要組成部分。
1 TPMS系統總體設計
1.1系統工作原理
TPMS系統主要由安裝在汽車輪胎內的壓力、溫度傳感器,信號處理單元、RF發射器組成的TPMS發射模塊,安裝在汽車駕駛臺上的包括數字信號處理單元的RF接收器以及LCD組成。
一般情況下,一輛轎車需要4個TPMS發射模塊和1個TPMS接收器;而一輛卡車需要6~12個TPMS發射模塊。為了提高系統的接收能力和抗干擾能力,系統安裝時需要在汽車底盤安裝接收天線。由SP12傳感器、微控制器、MC33493發射模塊、MC33594接收模塊等主要芯片組成的TPMS系統方案結構框圖如圖1所示。
?
圖1中,溫度壓力傳感器將采集到的溫度壓力數據通過I2C總線或RS232接口送到單片機,單片機發送一使能信號ENABLE給發射器。當為高電平時,發射機開始工作,產生一個數據時鐘信號給單片機,用于信號的同步。此時,單片機發送數據給發射機,發射機將得到的數據通過天線發射出去。接收機通過天線接收到信號后,首先置RESET引腳(用于設置主從模式)為一低電平,此時微控制器為主機,通過MOSI線來設置作為從機的接收器內的寄存器,設置好以后置RESET腳為高電平。此后微控制器為從機,而接收器就變為主機。它產生時鐘信號,通過MOSI線將接收到的數據發送給單片機。此時單片機(帶有SPI接口)通過SPI接口與PC機實現簡單的連接,以達到在PC機上顯示報警的作用。
1.2系統設計的幾點考慮
①由于TPMS發射模塊工作在劇烈振動、環境溫差變化大和不便于即時檢修的條件下,因此要求所有的器件要有很好的可靠性和穩定性,能適應工作在-40~+125℃溫度范圍。為了縮小TPMS發射模塊的體積、節省功耗和增強功能,需要盡可能地選用具有多種功能的小型射頻收發芯片。
②隨著能源問題越來越被重視,系統節能成為本設計考慮的一個重點問題。為了提高TPMS發射模塊在一節鋰電池下的工作時間,應該在大多數時間內讓系統進入睡眠狀態。喚醒TPMS系統中的發射部分,可采用這樣一種方法:在傳感器模塊中增加加速度傳感器,利用其對運動的敏感性,實現汽車啟動時自動開機進入系統自檢;汽車高速行駛時按運動速度自動智能確定檢測時間周期,利用軟件設定安全期、敏感期和危險期,以逐漸縮短巡回檢測周期和提高預警能力。喚醒TPMS系統的接收部分,可以利用接收機的一個引腳STROBE。在一個周期內,當檢測到有效的ID時,STROBE置高電平,此時接收芯片就由休眠狀態轉為運行狀態。
2. 1 TPMS系統主要硬件組成
TPMS系統主要由TPMS傳感器、微控制器和無線射頻收發模塊幾個部分組成。
(1) TPMS傳感器
TPMS傳感器是一個集成了半導體壓力傳感器、溫度傳感器、數字信號處理單元和電源管理器的SoC模塊。為了強化胎壓檢測功能,有不少TPMS傳感器模塊內還增加了加速度傳感器、電壓檢測、內部時鐘、看門狗和帶12位ADC、4KB Flash、2KB ROM、128 B RAM、128 BEEPROM及其他功能的ASIC數字信號處理單元。這些功能單元使得TPMS傳感器不僅能實時檢測汽車開動中的輪胎壓力和胎內溫度的變化,而且還能實現汽車移動即時開機、自動喚醒和省電等功能。
(2)微控制器
這里微控制器采用Atmel公司推出的一種小型單片機89C205l,片內含有2KB的Flash程序存儲器和128 B的片內 RAM。89C2051共20引腳。其中P1口8腳,可以作為一般的準雙向端口,在引腳的驅動能力上,具有很強的下拉能力。工作電壓為2.7~6V。當工作電壓在3V時,電流相當于6V工作時的1/4,空閑時為1mA,掉電時僅為20mA。這樣小的功耗很適合于電池供電的小型控制系統。主要特點為采用Flash存儲器技術,其軟件、硬件與MCS-5l完全兼容。其片內程序的電可擦寫特性,使得開發與試驗比較容易。
(3)無線射頻發射芯片MC33493
摩托羅拉的MC33493器件是高溫集成UHF無線電發送模塊。可進行OOK(On-Off Keying)或者FSK(Frequency Shift Keying)兩種調制方式。該芯片采用TSSOP-14封裝,工作在300~450 MHz頻段;具有FSK和OOK調制和解調能力,抗干擾能力強,適合工業控制應用;采用PLL頻率合成技術,頻率穩定性好;具有較小的發射功率,最大發射功率達O.18mW;數據速率可達9.6kb/s;1.9~3.6V低工作電壓;功耗低,發射時電流11.6mA,發射待機狀態僅為O.8μA(工作溫度在125℃)。
(4)無線射頻接收芯片MC33594
摩托羅拉的MC33594器件是高溫集成UHF超外差無線電接收模塊。該芯片采用LQFP-24封裝,工作頻率在300~450MHz頻段,電壓在4.5~5.5V范圍內;接收靈敏度高達-103dBm。芯片最大的特點是帶有一串行外設接口SPI(Serial Peripheral Intelface)。通過SPI,它允許CPU與各種外圍接口器件以串行方式進行通信,交換信息。SPI接口使用四條線:串行時鐘線(SCK),主機輸入/從機輸出數據線MISO,主機輸出/從機輸入數據線MOSI和低電平有效的從機選擇線RESET。
?
2.2 TPMS系統中的無線接口電路硬件設計
TPMS系統設計中較關鍵的一點是數據的傳輸部分。整個數據傳輸部分由兩部分組成:一是駕駛室中的無線接收部分,另外一部分是輪胎中的無線發射部分。這兩部分數據傳輸的準確性、穩定性,將是系統優良性能的重要體現。
(1)無線發射接口電路設計
無線發射電路由發射芯片MC33493、AT89C2051單片機和電平轉換電路構成,如圖2所示。發射模塊中,引腳3(BAND引腳)接3V高電平,表示系統發射頻率為434MHz,用于選擇工作頻率;引腳14(MODE引腳)接高電平,表示系統選擇FSK調制模式。FSK調制方式定義為一個信號的兩個不同的頻移值分別表示數字高、低兩種電平。在這個系統中,低頻移表示數字高電平,高頻移表示數字低電平。發射芯片的FSK調制方式由與晶振串聯的下拉負載電容C1來實現。與CFSK引腳相連的有一內部開關,用以選通下拉電容C1。當DATA=O時(MODE引腳置高電平),開關關閉,此時輸出高頻移;當DATA=1時,開關接通,此時輸出低頻移,這就實現了FSK調制方式,也就是說,如果載波頻率是433.92MHz而且總的頻偏是士△f(MHz),則數字高電平表示為433.92MHz-△f,數字低電平表示為433.92 MHz+△f。
由于MC33493工作電平最大為3V,而微控制器89C2051工作電平最大為5V,要實現連接就必須進行電平轉換。系統供電為5V,通過電平轉換電路為發射芯片供電。其發射芯片MC33493通過電平轉換芯片與單片機相連,實現數據的雙向傳送。它與89C2051單片機及接收機一起構成無線數據發射系統。
(2)無線接收接口電路設計
無線接收接口電路主要由接收芯片MC33594與AT89C2051單片機構成,如圖3所示。接收芯片MC33594通過SPI接接口與單片機AT89C2051的I/O口相連。該電路中,利用AT89C2051單片機的I/O口模擬SPI接口,通過用軟件控制的方式來進行數據的傳送;利用并口P1.1來模擬SPI的SCK輸出端,P1.2模擬MCU的數據輸出端(MOSI),P1.3模擬SPI的數據輸入端(MISO),P1.4模擬SPI的從機選擇端RESET。在接收之前,首先置RESET引腳為低電平,使接收機變為從機,而單片機變為主機。單片機通過MOSI信號線將單片機內的程序寫入接收機的配置寄存器里對接收機進行配置,配置好后再置:RESET引腳為高電平。此時單片機變為從機,而接收機變為主機,它產生時鐘信號,同時數據由RFIN端接入,經低噪聲放大器放大后送入混頻器,使其變換成中頻。在中頻級,經變換的信號在送入解調器之前被放大和濾波。
?
為了與MC33594接收機所設定的SPI工作狀態在邏輯時序上協調一致,要使串行時鐘輸出P1.1的初始狀態為1,在選通MC33594后,置P1.1為O。此時AT89C2051單片機輸出1位SCK時鐘,同時,使MC33594串行左移,從而輸出1位數據至AT80C2051單片機的P1.3(模擬MCU的MISO線),再置Pl.1為1,使AT89C2051單片機從P1.O輸出1位數據(先為高位)至AT89C2051單片機。至此模擬1位數據輸入輸出完成。以后再置P1.1為0,模擬下一位的輸入輸出。依此循環8次,可完成1次通過SPI傳輸8位數據的操作。其程序包括MCU串行輸入、串行輸出和串行輸入/輸出3個子程序。MCU串行輸入是從接收機的MISO線上接收8位數據并放入寄存器R0中;串行輸出是將AT80C51單片機中R0寄存器的內容傳送到接收機的MOSI線上;串行輸入/輸出將AT89C2051單片機R0寄存器的內容傳送到MC33594的MOSI線上,同時從MC33594的MISO線上接收8位數據。由MOSI引腳將接收到的數據送入到單片機,這樣數據就可以在PC機上進行顯示了。
3 系統軟件流程設計
3. 1通信協議
為了實現4個輪胎模塊與中央接收模塊進行無線通信的目的,發射機和接收機都需要按要求支持一個簡單的通信協議。數據以9600bps的速率傳送,采用FSK調制時,其發射方必須采用曼徹斯特編碼方式,只有這樣的碼型接收機才能夠接收。曼徹斯特編碼就是一個數字信號值在每一個比特位周期內作高、低電平之間切換。前半周期低電平后半周期高電平表示數字O,而先高后低表示數字1。輪胎模塊以數據包(幀)的形式發送數據,當輪胎模塊中的MCU決定要發送數據(由傳感器采集到的溫度、壓力數據)時,通過發送數據幀的前導位喚醒接收模塊,隨后發送數據幀,其數據幀格式如下:
?
①前導位。前同步碼的長度為16位位且總設置為0xFB86。這樣處理有三個目的:
◇0xF(1111)——Romeo2至少需要4位的前同步碼來喚醒它,并讓它的內部電路穩定。
◇0xB8(1100 1000)——Rome02中的寄存器2被編程為0xB8,這樣使前同步碼中的0xB8數據被驗證并接通數據管理器。
◇0x6(0110)——Romeo2中報頭被使能,它指示有實際的數據跟隨(以設備ID開始)。
②設備ID。設備ID長度為32位。當每一個TPM輪胎模塊MCU(RF2)被刷新,設備ID被編程地址為0x7800~0x7803。這個lD在實際中有很多用處,比如制造商的信息等;但是在這個演示模塊中,它僅被用來專門表示辨認輪胎的信息,所以ID的4個字節在每一個數據幀接收后都要被檢測。如果ID不匹配,數據幀就會被忽略。當接收機發現某個ID匹配,它就修改狀態字節來指示輪胎的位置。
③壓力值。壓力數據占8位,代表測量的輪胎壓力值。
④溫度值。溫度數據占8位,代表被測量的輪胎溫度值。
⑤狀態位。狀態位長度為8位,用以表示輪胎模塊的電源電壓的變化及對應輪胎ID匹配的位,目的是不需要接收機的MCU重復檢查輪胎ID。
⑥校驗和。校驗和長度為8位,它的內容取決于傳輸數據,主要是為了提高傳輸數據的可靠性。
⑦停止位。停止位的長度為2位,用來指示數據幀的結束。
3. 2輪胎模塊傳輸程序流程
因為輪胎模塊要適應長期工作,考慮到輪胎運轉的平衡等因素又不能選擇大的電池,因此輪胎模塊傳輸程序的算法選擇不但要保證數據的可靠傳輸,同時還要保證最低的電能消耗。
(1)發射模塊發射程序流程
關閉中斷后,進行電源檢測。若壓力差值△1大于存儲在ROM里設定的最大壓差值△2,則說明輪胎的壓力超限,需要報警。此時為增加接收機接收數據的可靠性,連續發送255幀。若其△1<△2,只發送1次數據幀。發射程序流程如圖4所示。
?
(2)接收模塊接收程序流程
接通電源后,接收機先后自行初始化和配置。一旦確認接收機配置完成,所有的LED就閃爍一次告知使用者模塊準備就緒。在收到一個數據幀后,就要重新計算校驗并與已經接收到的數據幀進行比較。數據幀經過確認后,某個輪胎和ID則要與存儲在KX8存儲器中的4個ID值比較。如果發現一個相配的ID,則數據就被處理并點亮相應的LED。最后,數據幀通過串行口發送出去以供外部數據接收和存儲。接收程序流程如圖5所示。
?
由于每個輪胎模塊要發送相同格式的數據,接收機控制器能在收到全部數據幀后中斷,這樣它可以在大部分時間都處于低能耗睡眠狀態。它還有許多節能選項,即使汽車停很長時間,也不會消耗完一塊電池。
4 結論
該系統在低功耗、收發距離與可靠性以及安全性方面具有明顯的優勢。此外,也可用于單片機數據采集、遙測遙控、監測等系統中,如遠距離無線抄表、無線鑰匙等。
評論
查看更多