1 引言
微處理器帶來(lái)的數(shù)字化革命到虛擬儀器的飛速發(fā)展.對(duì)傳感器的綜合精度、穩(wěn)定可靠性和響應(yīng)要求越來(lái)越高,傳統(tǒng)的傳感器已不能適應(yīng)多種測(cè)試要求,隨著微處理智能技術(shù)和微機(jī)械加工技術(shù)在傳感器上的應(yīng)用,智能傳感器(Smart Sen—sor)誕生了。所謂智能傳感器,就是帶微處理器、兼有信息檢測(cè)和信息處理功能的傳感器。智能傳感器實(shí)現(xiàn)的途徑一般有3種方式:①非集成化實(shí)現(xiàn)是將傳統(tǒng)的經(jīng)典傳感器、信號(hào)調(diào)理電路、帶數(shù)字接口的微處理器組合為一整體,而構(gòu)成的一個(gè)智能傳感器系統(tǒng)。②集成化實(shí)現(xiàn)的傳感器系統(tǒng)是采用微機(jī)械加工技術(shù)和大規(guī)模集成電路工藝技術(shù),利用硅作為基本材料制作敏感元件、信號(hào)調(diào)理電路、微處理單元,并把其集成到一塊芯片上構(gòu)成。固又稱(chēng)為集成智能傳感器。③混合實(shí)現(xiàn)是根據(jù)需要,將系統(tǒng)各個(gè)集成化環(huán)節(jié),如:敏感單元、信號(hào)調(diào)理電路、微處理單元、數(shù)字總線(xiàn)接口,以不同的組合方式集成在兩塊或三塊芯片上,并裝在一個(gè)外殼里。這里采用非集成化實(shí)現(xiàn)的方式。
IEEE1451是一種新的通用智能化傳感器接口標(biāo)準(zhǔn)。IEEE1451標(biāo)準(zhǔn)為即插即用智能傳感器與現(xiàn)有的各種總線(xiàn)提供了通用的接口標(biāo)準(zhǔn)。IEEE標(biāo)準(zhǔn)的提出,為提高全球范圍內(nèi)傳感器技術(shù)水平提供了堅(jiān)實(shí)的基礎(chǔ),為測(cè)試系統(tǒng)的智能化提供了基本前提。在設(shè)計(jì)中,基于IEEEl45l.4標(biāo)準(zhǔn)提出了一種新的接口,使傳感器既可以輸出模擬信號(hào)也可也輸出數(shù)字信號(hào),使得普通的傳感器可以實(shí)現(xiàn)智能化。
2 智能傳感器的硬件設(shè)計(jì)
硬件設(shè)計(jì)主要介紹信號(hào)調(diào)理模塊、A/D轉(zhuǎn)換模塊、數(shù)據(jù)通信模塊3個(gè)模塊。傳感器采用加速度傳感器ADXL250,ADXL250是ADI公司推出的低噪聲、低功耗的二維加速度計(jì)。它是利用ADI公司創(chuàng)始的微電子機(jī)械系統(tǒng)MEMS技術(shù)制造的。中央微處理器采用C805lF060,其內(nèi)部集成2個(gè)16位 SAR(逐次逼近型)A/D轉(zhuǎn)換器,8通道10位SAR A/D轉(zhuǎn)換器,可完成模擬信號(hào)模數(shù)轉(zhuǎn)換功能,是整個(gè)系統(tǒng)的控制、通訊核心。一方面它對(duì)傳感器輸出的信號(hào)進(jìn)行采集、轉(zhuǎn)換,另一方面中央處理器對(duì)EEPROM實(shí)現(xiàn)數(shù)據(jù)傳輸。中央微處理器包含一個(gè)可編程內(nèi)部振蕩器和一個(gè)外部振蕩器驅(qū)動(dòng)電路,為了減小系統(tǒng)功耗和體積,采用可編程內(nèi)部振蕩器。大多數(shù)情況下,從傳感器中輸出的電信號(hào)不能直接送入模數(shù)轉(zhuǎn)換器,要經(jīng)過(guò)必要的信號(hào)調(diào)理電路進(jìn)行適當(dāng)?shù)恼{(diào)理,使信號(hào)在模數(shù)轉(zhuǎn)換電壓范圍之內(nèi),然后經(jīng)過(guò)信號(hào)濾波電路,濾掉信號(hào)中的雜波成分,才能使其在形式、幅度、信噪比、轉(zhuǎn)換靈敏度和精度等方面達(dá)到中央處理器的要求,以提高傳感器數(shù)字化后的精度。智能傳感器硬件設(shè)計(jì)中,加速度模擬信號(hào)經(jīng)過(guò)分壓、跟隨及濾波等處理后,再進(jìn)入A/D轉(zhuǎn)換器進(jìn)行A/D轉(zhuǎn)換,其調(diào)理電路框圖如圖1所示。
加速度計(jì)輸出電壓為:
式中:Vs為供電電壓,單位為V;Sensitivity為輸出的加速度靈敏度,單位為mV/g。ADXL250的靈敏度為38 mV/g;a為輸入的加速度,單位為g。
經(jīng)過(guò)計(jì)算輸出電壓范圍為0.9~4.4 V。因?yàn)锳/D轉(zhuǎn)換器所能采集的電壓范圍為0~2.4 V,所以必須對(duì)加速度信號(hào)進(jìn)行分壓,才能正確地被A/D轉(zhuǎn)換器進(jìn)行模數(shù)轉(zhuǎn)換。分壓電路采用簡(jiǎn)單的電阻分壓,并用運(yùn)算放大器進(jìn)行跟隨。分壓處理后,輸出的加速度信號(hào)范圍為0.45~2.2V,滿(mǎn)足A/D轉(zhuǎn)換器的采集范圍。設(shè)計(jì)中選擇了1 MΩ的分壓大電阻進(jìn)行分壓,這樣做的好處是能提高系統(tǒng)的輸入阻抗,減小由于輸入阻抗過(guò)低對(duì)加速度信號(hào)的影響。
濾波是對(duì)傳感器信號(hào)分壓后進(jìn)行的模擬濾波處理。設(shè)計(jì)中采用集成開(kāi)關(guān)電容濾波器MAX291對(duì)傳感器信號(hào)進(jìn)行模擬濾波。MAX291是MAXIM公司生產(chǎn)的8階巴特沃斯型開(kāi)關(guān)電容式有源低通濾波器。MAX291的可靠性和穩(wěn)定性高,避免了分立元件的各種誤差、漂移影響。它的3 dB截止頻率可在0.1~25 Hz之間選擇,具有固定的歸一化頻率響應(yīng)。時(shí)鐘頻率fCLK與截止頻率fC的比值為100:1;噪聲低,典型值為一70 dB THD+Noise。如果直接利用MAX291的內(nèi)部時(shí)鐘振蕩器,只需外接一只電容,其電容值和3 dB截止頻率則滿(mǎn)足:
設(shè)計(jì)中直接采用MAX291內(nèi)部振蕩器,外接0.1μF的電容。圖2是濾波電路的濾波效果對(duì)比圖。
在設(shè)計(jì)中由于系統(tǒng)緊湊性設(shè)計(jì)的特殊需要,選用微處理器集成的模數(shù)轉(zhuǎn)換器,同時(shí)也節(jié)約了成本。C8051F060的A/D轉(zhuǎn)換器系統(tǒng)包括兩個(gè)lMs/s、16位分辨率的逐次逼近寄存器型A/D轉(zhuǎn)換器,A/D轉(zhuǎn)換器中集成了跟蹤保持電路、可編程窗口檢測(cè)器和DMA接口。為了提高傳感器信號(hào)采集精度,這里A/D轉(zhuǎn)換采用內(nèi)部電壓基準(zhǔn),可以通過(guò)相應(yīng)的控制寄存器進(jìn)行配置。內(nèi)部電壓基準(zhǔn)電路由一個(gè)溫度穩(wěn)定性好的1.2 V帶隙電壓基準(zhǔn)發(fā)生器和一個(gè)2倍增益的輸出緩沖放大器組成。ADCO的電壓基準(zhǔn)電路由基準(zhǔn)控制寄存器REFOCN控制。REFOCN寄存器用于獨(dú)立地使能/禁止ADCO的內(nèi)部基準(zhǔn)和偏置發(fā)生器電路。BIASE0位使能ADC0的內(nèi)部偏置發(fā)生器。該位為‘1’時(shí),ADC0內(nèi)部偏壓發(fā)生器工作。設(shè)計(jì)中使用的是ADC0內(nèi)部電壓基準(zhǔn),則必須使ADC0所對(duì)應(yīng)的BLASE0和REFBEO位都被置‘1’,內(nèi)部2.4 V電壓基準(zhǔn)輸出到VREFO引腳。VREF0引腳對(duì)AGND的最大負(fù)載必須小于100μA,應(yīng)在VREF0引腳與VRGND0之間接入0.1μF和47μF的旁路電容。使用ADC0時(shí),應(yīng)將ADCO電壓基準(zhǔn)接地引腳VRGNDO接地.經(jīng)過(guò)上述合理的設(shè)計(jì)后,系統(tǒng)中測(cè)得的電壓基準(zhǔn)約為2.44 V。ADCO的最高轉(zhuǎn)換速度為1 Ms/s,轉(zhuǎn)換時(shí)鐘來(lái)自系統(tǒng)時(shí)鐘分頻,寄存器ADCOCF中的ADCOSC位決定每個(gè)轉(zhuǎn)換時(shí)鐘為多少個(gè)系統(tǒng)時(shí)鐘(1~16)。ADCO有4種轉(zhuǎn)換啟動(dòng)方式,由ADCOCN中的ADC0啟動(dòng)轉(zhuǎn)換方式位(ADOCMl,AD0CM0)的狀態(tài)決定。轉(zhuǎn)換觸發(fā)源有:
①向ADCOCN的AD0BUSY位寫(xiě)1;
②定時(shí)器3溢出(即定時(shí)的連續(xù)轉(zhuǎn)換);
③外部A/D轉(zhuǎn)換器轉(zhuǎn)換啟動(dòng)信號(hào)CNVSTR0的上升沿;
④定時(shí)器2溢出(即定時(shí)的連續(xù)轉(zhuǎn)換)。
其中第3種為外部觸發(fā)源,另外3種為內(nèi)部觸發(fā)源。ADOBUSY位在轉(zhuǎn)換期間被置‘1’,轉(zhuǎn)換結(jié)束后復(fù)‘O’。ADOBUSY位的下降沿觸發(fā)中斷并將中斷標(biāo)志ADOINT(ADCOCN.5)置‘1’。在單端方式下,ADC0的轉(zhuǎn)換數(shù)據(jù)被保存在ADC0數(shù)據(jù)字的MSB和LSB寄存器:ADCOH和ADCOL。當(dāng)通過(guò)向ADOBUSY寫(xiě)‘1’啟動(dòng)數(shù)據(jù)轉(zhuǎn)換時(shí),應(yīng)查詢(xún)ADOINT。位以確定轉(zhuǎn)換何時(shí)結(jié)束。A/D轉(zhuǎn)換流程如圖3所示。
在設(shè)計(jì)中,數(shù)據(jù)的通信是創(chuàng)新點(diǎn)。IEEEl451.4標(biāo)準(zhǔn)的接口要求既能輸出模擬信號(hào),又能輸出數(shù)字信號(hào)。同時(shí)能自動(dòng)識(shí)別傳感器的類(lèi)型,通過(guò)軟件的控制可以對(duì)傳感器進(jìn)行校準(zhǔn)。根據(jù)這個(gè)要求,設(shè)計(jì)了另外一種混合接口,如圖4所示。通過(guò)這個(gè)接口,既能輸出模擬信號(hào),又能輸出數(shù)字信號(hào)。模擬信號(hào)即傳感器直接輸出經(jīng)過(guò)調(diào)理后的信號(hào)。數(shù)字信號(hào)包括兩種信號(hào),一種是RS422電平的信號(hào),用D+,D-表示,另外一種數(shù)字信號(hào)是C8051F060從EEPROM中讀出的TEDS信號(hào),在此用DAT表示。EEPROM采用Dallas Semiconductor生產(chǎn)的DS2431作為T(mén)EDS的信息存儲(chǔ)器,DS2431為1024位可編程只讀存儲(chǔ)器,可識(shí)別和儲(chǔ)存與之相適應(yīng)產(chǎn)品的有關(guān)信息。這些系列或產(chǎn)品的指定信息能通過(guò)最小的接口訪(fǎng)問(wèn),比如微控制器的一個(gè)端口引腳。在設(shè)計(jì)中,DS243l的DAT引腳與C8051F060的P2.7口相連。通信過(guò)程中,C8051F060與DS2431的通訊通過(guò)單線(xiàn)協(xié)議進(jìn)行。DS2431的主要作用是向微處理器提供儲(chǔ)存在其內(nèi)部的TEDS。要實(shí)現(xiàn)與DS2431的通信,核心是掌握好1一Wire器件信號(hào)收發(fā)時(shí)序的問(wèn)題。為了保證數(shù)據(jù)的完整性,DS243l對(duì)通信協(xié)議有很?chē)?yán)格的要求。DS2431的通信協(xié)議主要包括4種信號(hào)類(lèi)型:初始化信號(hào)(包括1個(gè)復(fù)位脈沖和1個(gè)應(yīng)答脈沖),寫(xiě)O,寫(xiě)1,讀數(shù)據(jù)。這些信號(hào)中,除了應(yīng)答脈沖以外,都是由總線(xiàn)控制單元發(fā)出。為保證數(shù)據(jù)可靠的傳輸,任何時(shí)刻單總線(xiàn)上只能有一個(gè)數(shù)據(jù),每次數(shù)據(jù)和命令傳輸通常從復(fù)位命令開(kāi)始,隨后是ROM命令和RAM命令,最后進(jìn)行數(shù)據(jù)交換,必須嚴(yán)格遵守這個(gè)命令序列,才能保證數(shù)據(jù)的正確傳輸。
3 結(jié)語(yǔ)
在充分研究IEEEl451.4標(biāo)準(zhǔn)接口的基礎(chǔ)上,完成了智能傳感器的硬件電路設(shè)計(jì)。通過(guò)實(shí)驗(yàn),從控制軟件上可以收到傳感器輸出的信號(hào),所提出電路設(shè)計(jì)方案切實(shí)可行。