基于51單片機與MXA2500GL傳感器的振動信號分布式檢測方法
引言
由于加速度傳感器及電荷放大器的連接線纜的距離限制,采用集中的數(shù)據(jù)采集和處理系統(tǒng)在空間距離較遠的場合很難實現(xiàn),其可靠性和抗干擾問題很難解決。常采用分布式檢測方法:即設置多個數(shù)據(jù)采集站點,每個站點采用一套單獨的數(shù)據(jù)采集和處理系統(tǒng),通過網(wǎng)絡通信將各站點相互連結(jié)起來,然后由一臺系統(tǒng)機進行集中數(shù)據(jù)處理,提取相關(guān)特征信息。
C8051F020單片機性能特點
CYGNAL的C8051F020是集成模擬、數(shù)字信號的混合信號系統(tǒng)級SOC(System On Chip)單片機,與目前常用的51系列單片機指令集完全兼容。采用100腳TQFP封裝,體積小,運算速度快。它采用CYGNAL公司的專利CIP- 5l微處理器內(nèi)核。CIP-5l在提升805l速度上采取了新的途徑,即設法在保持CISC結(jié)構(gòu)及指令系統(tǒng)不變的情況下,對指令運行實行流水作業(yè)。在這種模式中,廢除了機器周期的概念,指令以時鐘周期為運行單位。平均每個時鐘可以執(zhí)行完l條單周期指令,從而大大提高了指令運行速度。
與805l相比,C8051F020在相同時鐘下單周期指令運行速度為原來的12倍,整個指令集平均運行速度為原來805l的9.5倍,使CYGNAL 單片機系列進入了8位高速單片機行列。同時,C805lF020單片機延續(xù)了C805lF系列特有的優(yōu)先權(quán)數(shù)字交叉開關(guān)配置技術(shù)。這項技術(shù)的核心就是以硬件方式為內(nèi)部的數(shù)字資源配置端口I/O引腳。與標準復用數(shù)字I/O不同,這種結(jié)構(gòu)可支持更多的功能組合。PCA、比較器、定時器等按優(yōu)先級別分配到所選擇端口上。使用者也可以只為所用到的數(shù)字資源分配I/O引腳。任何未配置使用的端口I/O被組合在一起,作為GPIO。
MXA2500GL加速度傳感器的性能特點
MXA2500GL是MEMSIC公司專利技術(shù)生產(chǎn)的雙軸式絕對模擬輸出加速度傳感器。它根據(jù)熱對流原理在兩個軸線都可以進行動態(tài)加速度(例如振動)和靜態(tài)加速度(例如重力加速度)的測量,因此廣泛應用于汽車穩(wěn)定性控制、安全性控制、接近角控制、血壓監(jiān)視器、電子羅盤傾斜校正、數(shù)碼相機、電梯等領(lǐng)域。與普通壓電式加速度傳感器不同的是,MXA2500GL實際是按照標準CMOS工藝制造的單片集成電路,它的輸出是0.1~4.9V(5V電源的情況)的電壓信號,無需電荷放大器就可以直接與A/D卡相連,因此會使整個測試系統(tǒng)不僅結(jié)構(gòu)緊湊,而且抗干擾性非常強。
基本工作原理是:在硅片中心的空腔中懸掛一個氣體熱源,同時在熱源的4個對角(即2個軸線方向)處,均勻放置鋁/多晶硅溫差電堆(熱電偶)。當加速度為零時,熱源的溫度梯度是對稱的,所以4個溫差電堆的溫度相同,因此這2個軸線方向輸出相同的電壓。而任何方向的加速度都會擾亂這種平衡的溫度形式,使熱源的溫度梯度不對稱。根據(jù)熱傳導的自由對流原理,4個溫差電堆的溫度及其輸出信號—電壓都是不同的。但是這些電壓信號與加速度是成比例變化的。這樣通過測量電壓就可以確定加速度的值。在傳感器上有兩個相同加速度信號通道,一個測量X方向,另一個測量Y方向。
圖1給出了它的基本結(jié)構(gòu)。
圖1 MXA2500GL加速度傳感器的結(jié)構(gòu)圖
系統(tǒng)以C8051F020單片機為從機,PC為主機。由于單片機體積小、功能強、價格低廉,因此性價比非常高。目前主流的PC有2個標準的RS-232 串行口,采用的是EIA電平,而C8051F020單片機的TX引腳(發(fā)送數(shù)據(jù))、RX引腳(接收數(shù)據(jù))使用的是TTL電平,兩者之間進行可靠通信必須要用電平轉(zhuǎn)換芯片,系統(tǒng)采用MAX232/MAX485芯片。為了實現(xiàn)資源共享,任務分擔的目標,在分布式計算機系統(tǒng)中關(guān)鍵就是確保主機和各從機之間數(shù)據(jù)通信的準確可靠。
由于PC機本身并不具備多機通信功能,所以目前普遍采用的通信方式有兩種:一種是利用“橋梁”硬件—多機通信卡。通信卡一般有兩種形式,應用最廣的是以51單片機為核心,結(jié)合8255、6116、2716等芯片構(gòu)成的通信卡。該卡可以插在PC的擴展槽中,各從機與通信卡中單片機進行串行通信,而PC通過8255芯片與卡上的單片機進行并行通信。另外一種通信卡僅僅由單片機構(gòu)成(也就是犧牲一個單片機做通信中轉(zhuǎn)),從機與通信卡及PC與通信卡之間都是串行通信;另一種方式是在PC的串口上軟件模擬51系列單片機串口可編程第9位數(shù)據(jù)功能實現(xiàn)多機通信,系統(tǒng)采用的是后一種方式。另外由于遠距離傳輸,系統(tǒng)中使用了MAX485芯片,同時還使用了光電隔離來提高系統(tǒng)的抗干擾能力。
圖2給出了整體硬件架構(gòu)。
圖2 分布式檢測系統(tǒng)的硬件架構(gòu)
C8051F020單片機具有適于多機通信的特殊功能,即方式2(3)。在這2個方式里,接收的第9位進入RB8,然后為停止位。串行口可程控為:當接收到停止位,只有當RB8=1時才產(chǎn)生串行口中斷。這個特性可由置位SCON中的SM2控制。多機通信中使用這種特性的方法是:當主機要發(fā)送一個數(shù)據(jù)塊給幾個從機之一時,它先發(fā)送一個目標從機的地址字節(jié),地址字節(jié)第9位為1而數(shù)據(jù)字節(jié)第9位為0。當SM2=1時,數(shù)據(jù)字節(jié)不會中斷任何從機,然而,地址字節(jié)會中斷所有從機,這樣每一個從機可檢查接收到的地址,看是否為尋址自己。被尋址的從機將SM2位清0,準備接收傳送過來的數(shù)據(jù)字節(jié),沒被尋址的從機保持 SM2為置位狀態(tài),繼續(xù)處理其它工作。C8051F020單片機方式3下的信息楨格式見圖3。
圖3 C8051F020單片機在方式3下的信息楨格式
圖4 通信線路控制寄存器LCR
主機和從機遵循主從原則,主機用呼叫方式選擇從機,數(shù)據(jù)在主機和從機之間雙向傳遞,各從機之間的相互通信需通過主機作為中介。主從機之間還應傳送一些供它們識別的命令和狀態(tài)字,如以00H表示主機發(fā)送從機接收命令,以01H表示從機發(fā)送主機接收命令等。
PC主機通信程序的實現(xiàn)方法
對PC機UART的編程是主機通信程序的核心。一般可以通過兩種方式實現(xiàn)對UART的操作。一種是直接訪問底層地址實現(xiàn)對LCR、LSR、波特率因子寄存器的操作,這種方法只適用于Windows9X.在WindowsNT環(huán)境下系統(tǒng)禁止用戶程序直接訪問硬件和物理地址,因此該方法不可取。具體過程是通過調(diào)用標準通信函數(shù)inp()、outp()實現(xiàn)的。另一種方式是通過通信控件或WindowsAPI函數(shù)間接對LCR、LSR、波特率因子寄存器進行相關(guān)操作。因此本系統(tǒng)也使用MSComm控件,而WindowsAPI函數(shù)更適合在多現(xiàn)程領(lǐng)域應用。
結(jié)束語
實踐證明基于C8051F020單片機與MXA2500GL傳感器的振動信號分布式檢測系統(tǒng)性能可靠,大大的節(jié)約了成本,因此該系統(tǒng)在汽車整車及零部件的測試與診斷過程極具推廣價值。
評論