1、引言
近年來,隨著計算機和單片機的日益普及,數字傳感器系統已得到廣泛應用。數字式傳感器是該系統的重要組成部分。選擇高性能、具有數字接口的信號調理器是數字傳感器設計的關鍵。ZMD31050是一款高精度橋式傳感器信號處理CMOS集成電路,以它為核心的數字傳感器可以在多個方面實現對測量信號的補償與校正,并可將測量信號以數字信號方式輸出,且外圍電路簡單。ZMD31050幾乎適用于所有橋式傳感器。
2、ZMD31050介紹
2.1基本性能指標
電源電壓:+2.7 V~+5.5 V;
輸入信號:1 mV/V~275 mV/V;
多種輸出方式可供選擇:電壓(0 V~5 V),電流(4 mA~20 mA),PWM,I[sup]2[/sup]C,SPI,ZACwire[sup]TM[/sup](一線接口),報警輸出;
橋式傳感器的激勵源可選:比例電壓、恒壓模式或恒流模式;
高精度:~25℃+85℃時的誤差為0.1%,-40℃~+125℃時的誤差為0.25%;
可對傳感器的偏移、靈敏度、溫漂和非線性進行數字補償;
輸出分辨率最高為15位,可選擇相對應的采樣頻率(最多3.9 kHz);
PC通過數字接口實現器件的配置和校準。
2.2工作原理
圖1為ZMD31050的工作原理圖,各模塊功能如下:

PGA:可編程增益放大器:
MUX:多路器:
ADC:A/D轉換器:
CMC:校準控制器:
DAC:D/A轉換器:
FIOI:可選101:模擬輸出(電壓/電流),PWM2
(脈寬調制)ZACwire[sup]TM[/sup](一線接口);
F102:可選102:PWMl.SPI.SPI從機選擇.
Alarml、Alarm2串行接(I[sup]2[/sup]C.時鐘):
PCOMP:可編程比較器;
EEPROM:用于校準參數設置和校準配置:
TS:片上溫度傳感器:
ROM:存放校準模式:
PWM:脈寬調制模式。
ZMD31050具有內部EEPROM,共包含32個16位地址空間。ZMD31050工作所必需的32個參數存儲在EEPROM中。其中。22個校準常量用于傳感器信號的計算校準,7個參數用于配置應用程序,1個CRC字(word)用于檢查EEPROM內容的正確性,另外還有2個16位的字供用戶自由使用。
每次上電后:EEPROM中的內容被復制到RAM中。根據RAM中的配置,器件自動完成信號調理過程。首先,橋式傳感器傳遞出的信號在PGA中進行預放大,MUX將該信號與外部二極管或分立溫度傳感器信號按照某種序列傳送給ADC單元,ADC單元對這些信號進行A/D轉換。然后,CMC根據ROM中存放的校正公式和EEPROM中存放的校準參數對數字信號進行校正。根據配置,傳感器信號以模擬量、數字量或PWM的形式輸出,輸出信號由串行接口及FIO1、FIO2提供。
表1為:EEPROM和RAM中的參數分配與指令。數據配置和參數校準可以通過數字接口實現。
2.3引腳功能
圖2為ZMD31050的引腳排列。其引腳功能描述如表2所列。
3、數字式氣壓傳感器系統應用
3.1硬件設計
ZMD31050接收來自前端橋式傳感器的微弱模擬信號,將這一信號放大,經A/D轉換、補償與校正后以數字信號形式傳給后端微處理器。微處理器獲取信號并進行處理。串口電平轉換器MAX232完成電平轉換。從而實現系統與PC機的通信。
圖3所示為基于ZMD31050的數字式氣壓傳感器應用系統框圖。J1為橋式壓力傳感器與ZMD31050的接口,J2是系統供電電源接口,J3為系統與PC機接口。橋式壓力傳感器與ZMD31050簡單連接即構成了數字式氣壓傳感器,主要應用于觀測氣體壓力的變化。其中,橋式壓力傳感器選用美國Silicon Microstructures公司的SMI5502-015一A。該器件量程為1標準大氣壓,滿足目標測量要求。采用恒壓源供電,輸出微弱的電壓信號,便于整個系統設計。本數字式氣壓傳感器對溫度無特殊要求,溫度測量選擇內置溫度二極管。經ZMD31050調理過的信號通過數字串口以15位數字信號的形式輸出。

外接的微控制器與其外圍的晶體振蕩器、看門狗、MAX232構成微控制系統。其中,外接微控制器為51系列單片機中的AT89C4051,可滿足全部數據處理和通信的要求。晶振Y1選擇11.0592 MHz,為AT89C4051提供時鐘信號。X5045為AT89C4051工作產生復位信號。MAX232完成電平轉換,實現AT89C4051與上位機通信。
數字式氣壓傳感器與微控制系統構成數字式氣壓傳感器應用系統,整個系統采用+5 V電源供電。數字式氣壓傳感器支持I2C通信模式,由SDA、SCL線經上拉后與后端微控制器系統連接。通信過程中,ZMD31050為從機模式,其默認通訊地址為0x78。
3.2軟件設計
數字式氣壓傳感器應用系統選用AT89C4051為外部微控制器。由于AT89C4051內部沒有I2C模塊,因此,需要通過I/O口模擬I2C與數字式氣壓傳感器中的ZMD31050進行通信。
傳感器系統的軟件設計主要包括三個部分:內部EEPROM的配置、測量值的讀取和處理、與上位機通信。而這三部分功能都由外接控制器編寫程序來實現。
在AT89C4051中編程,向ZMD31050發送相關指令(詳見表1),可以配置和修改EEPROM或RAM中的各項參數。配置和修改完成后,須發送特定指令激活所做的配置和修改,并開始測量循環。ZMD31050就可以根據最新配置的參數對傳感器采集到的模擬氣壓信號進行放大、A/D轉換、校正和補償。傳感器的最終測量結果為按照配置處理好的數據,它們將被不間斷地送到ZMD31050的串口寄存器。
在AT89C4051中編寫"讀操作"程序,可獲得串口寄存器的測量值。先得到數據的高字節,再得到低字節。除非ZMD31050接收到配置EEPROM或RAM內容的指令,否則,只要"讀操作"不停止,就可以不間斷讀取測量值。在AT89C4051中可以編寫簡單的軟件濾波程序處理讀取的數據。
另外。在AT89C4051中還要編寫程序將處理過程的數據通過串口送出,并接收來自上位機的指令,即通過串口實現與PC機的通信。
4、結束語
數字傳感器是傳感器發展的趨勢,ZMD31050作為一款高效的信號調理可將傳感器信號以數字形式輸出,更重要的是,傳感器信號的偏移、靈敏度、溫漂和非線性可以有效進行補償和校正,目前基于ZMD31050的數字式氣壓傳感器系統已經在地震前兆輔助觀測領域中投入使用,其設計經驗值得在其他橋式傳感器設計中推廣應用。