任勇峰,朱澤琿,賈興中
(中北大學(xué)電子測(cè)試技術(shù)國(guó)家重點(diǎn)實(shí)驗(yàn)室,山西太原 030051)
現(xiàn)代工業(yè)和自動(dòng)化領(lǐng)域中,溫度和濕度的測(cè)量與采集都是非常重要的。溫濕度信號(hào)的測(cè)量結(jié)果都需要轉(zhuǎn)換成模擬量信號(hào)才能傳輸?shù)綆装倜淄獾臏y(cè)試設(shè)備或者采集設(shè)備上,與傳送電壓調(diào)制信號(hào)的方式相比,4~20 mA 電流環(huán)具有很強(qiáng)的抗干擾能力[1],并且信號(hào)的傳輸距離長(zhǎng),且不需考慮噪聲干擾、線長(zhǎng)、壓降和線路阻抗等影響[2],極大地提高了電路的傳輸性能。該設(shè)計(jì)采用C8051F410 單片機(jī)驅(qū)動(dòng)控制SHT15 芯片測(cè)量溫濕度,并通過搭建V/I 轉(zhuǎn)換電路實(shí)現(xiàn)高精度的4~20 mA 電流輸出,完成測(cè)量。
溫濕度傳感器硬件電路由SHT15 接口電路、C8051F410 單片機(jī)外圍控制電路、V/I 轉(zhuǎn)換電路組成,如圖1 所示。C8051F410 單片機(jī)控制SHT15 測(cè)量溫濕度并將溫濕度信號(hào)的數(shù)字量通過IDAC 功能轉(zhuǎn)換成微小電流量[3],通過接地電阻轉(zhuǎn)換成理想的電壓值,再通過V/I 轉(zhuǎn)換電路輸出4~20 mA 的電流信號(hào)。
圖1 電路組成
SHT15 傳感器是一款含有已校準(zhǔn)數(shù)字信號(hào)輸出的溫濕度復(fù)合傳感器[4]。它包括一個(gè)電容式聚合體測(cè)濕元件和一個(gè)能隙性測(cè)溫元件[5],并與一個(gè)14 位的A/D 轉(zhuǎn)換器以及串行接口電路在同一芯片上實(shí)現(xiàn)無(wú)縫鏈接。因此,這款芯片具有品質(zhì)卓越、超快響應(yīng)、抗干擾能力強(qiáng)、性價(jià)比極高等優(yōu)點(diǎn)[6]。
SHT15 與C8051F410 單片機(jī)的接口電路如圖2所示,SHT15 和單片機(jī)之間的通信采用串行二線接口DATA 和SCK 實(shí)現(xiàn)[6],其中DATA 為數(shù)據(jù)線,SCK 為時(shí)鐘線,分別與單片機(jī)的P0.2、P0.3 的I/O 口連接。DATA 數(shù)據(jù)傳輸為三態(tài)門,為保證信號(hào)傳輸和數(shù)據(jù)讀取穩(wěn)定,DATA 和SCK 均需要接入一個(gè)外部上拉電阻(一般為10 kΩ電阻)。同時(shí)VCC 和GND 之間也可添加一個(gè)0.1 μF 的電容,用于去耦濾波。
圖2 SHT15接口電路原理圖
C8051F410 單片機(jī)是完全集成的低功耗混合信號(hào)片上系統(tǒng)型MCU。內(nèi)部最大時(shí)鐘頻率最高可達(dá)24.5 MHz,片上資源豐富,能最大限度地減少外圍電路,提高系統(tǒng)的集成度和抗干擾功能[7]。
C8051F410 單片機(jī)使用3.3 V 電壓供電,包含兩路12 位電流輸出DAC(P0.0 和P0.1),IDAC 的最大輸出電流可以有4 種不同的設(shè)置:0.25 mA、0.5 mA、1.0 mA、2.0 mA。用IDAC 寄存器(IDA0CN 和IDAC1CN)中的對(duì)應(yīng)位來(lái)分別使能或者禁止IDAC 功能。同時(shí)IDAC 的滿量度輸出電流由IDAnOMD 位(IDAnCN[1:0])選擇。具體配置方法見表1。
表1 IDAC滿量度輸出電流與IDAnOMD位設(shè)置
根據(jù)設(shè)計(jì)要求,設(shè)置滿量度輸出電流為2 mA,程序設(shè)計(jì)為:
圖3 C8051F410單片機(jī)外圍控制電路
C8051F410 單片機(jī)的P0.2 口和P0.3 口與SHT15的DATA 數(shù)據(jù)線和SCK 時(shí)鐘線相連,SCK 為SHT15和單片機(jī)提供同步時(shí)鐘,DATA 數(shù)據(jù)線進(jìn)行數(shù)據(jù)的雙向傳輸,需要注意的是,I2C 協(xié)議與該二線串行通信協(xié)議是不兼容的。所以在程序開始時(shí),單片機(jī)需要按照SHT15 芯片的啟動(dòng)傳輸時(shí)序來(lái)啟動(dòng)數(shù)據(jù)傳輸,啟動(dòng)傳輸時(shí)序見圖4。它包括當(dāng)SCK 時(shí)鐘為高電平時(shí),DATA 翻轉(zhuǎn)為低電平,緊接著SCK 變?yōu)榈碗娖?,隨后是在SCK 時(shí)鐘為高電平時(shí),DATA 翻轉(zhuǎn)為高電平。
圖4 SHT15啟動(dòng)傳輸時(shí)序
SHT15 測(cè)得的溫濕度是以數(shù)字量的形式轉(zhuǎn)換為溫濕度值的,并且濕度的數(shù)字量轉(zhuǎn)換到濕度值是非線性的,若直接利用濕度的數(shù)字量進(jìn)行DA 轉(zhuǎn)換,必然會(huì)導(dǎo)致濕度測(cè)量的線性度比較差。為改善溫濕度信號(hào)測(cè)量與最后4~20 mA 電流輸出的線性度,同時(shí)為將溫濕度數(shù)值轉(zhuǎn)換成后續(xù)可以處理的模擬量。將具體的溫濕度值線性映射到進(jìn)行DA 轉(zhuǎn)換的數(shù)字量[8],映射關(guān)系見圖5,溫度映射關(guān)系同理。
圖5 濕度值與DA轉(zhuǎn)換數(shù)字量映射關(guān)系
溫濕度值映射的數(shù)字量范圍可以根據(jù)設(shè)計(jì)要求測(cè)量的溫濕度范圍進(jìn)行映射,由于最后傳感器輸出的是4~20 mA 的電流信號(hào),故映射的數(shù)字量下限應(yīng)該大于0x000。若映射的數(shù)字量從0x000 開始,則需要后端電路加上適當(dāng)?shù)钠秒妷喝ヌЦ遃/I 轉(zhuǎn)換電路前的電壓值,使得電路的設(shè)計(jì)較為繁瑣,故該設(shè)計(jì)不采用這種方法。
從溫濕度量到DA 轉(zhuǎn)換數(shù)字量直接進(jìn)行線性映射,保證了溫濕度信號(hào)測(cè)量具有良好的線性度和穩(wěn)定性。該設(shè)計(jì)中,電流滿量度輸出設(shè)置為2 mA,通過IDAC 功能轉(zhuǎn)換的模擬電流量根據(jù)映射的數(shù)字量范圍來(lái)確定,例如,映射的數(shù)字量范圍是400~3 400,則轉(zhuǎn)換出的電流量范圍0.195~1.661 mA。P0.0 和P0.1 端口輸出的電流值通過對(duì)地電阻R22和R11轉(zhuǎn)換成適當(dāng)?shù)碾妷褐?,以便進(jìn)行下一步的V/I 轉(zhuǎn)換。
為了將電壓信號(hào)轉(zhuǎn)換成4~20 mA 的電流信號(hào),且需要保證電流信號(hào)的輸出與負(fù)載無(wú)關(guān)。初步設(shè)計(jì)了如圖6 所示的V/I 轉(zhuǎn)換電路。
圖6 初步設(shè)計(jì)的V/I轉(zhuǎn)換電路
在該電路的設(shè)計(jì)應(yīng)用中,使用了兩路運(yùn)算放大器,U2運(yùn)放做電壓跟隨器,起阻抗變換的作用[9];U1運(yùn)放為一個(gè)同相加法器。對(duì)運(yùn)算放大器有以下要求:必須具有較小的輸入失調(diào)電壓和輸入偏置電流,減少運(yùn)放自身參數(shù)對(duì)電路平衡性和對(duì)稱性的影響[10]。要求不高的場(chǎng)合,運(yùn)放可以選用通用運(yùn)算放大器LM358,要求高的場(chǎng)合可以選用高精度、低噪聲的OPA228。
電路原理可做如下簡(jiǎn)單推導(dǎo):
令K=R5/R8=R12/R13,若選用運(yùn)算放大器的輸入失調(diào)電壓和輸入偏置電流足夠小,達(dá)到微伏或者微安級(jí)。按照理想運(yùn)算放大器推算,滿足U1+=U1-。
其自由度為1,保證了小曲拐的正常運(yùn)動(dòng),從小曲拐四桿機(jī)構(gòu)可以看出3個(gè)小曲拐的運(yùn)動(dòng)規(guī)律一致,且與偏心主軸的運(yùn)動(dòng)一致,使得動(dòng)盤公轉(zhuǎn)運(yùn)動(dòng)而不發(fā)生自轉(zhuǎn),因此滿足渦旋壓縮機(jī)防自轉(zhuǎn)的要求。
則整理化簡(jiǎn)得:
可見,輸出電流與外接負(fù)載電阻無(wú)關(guān),只與輸入電壓、V/I 轉(zhuǎn)換電阻R20以及電阻阻值之比K有關(guān)。在給定的電路中,R20與K值恒定,若輸入電壓不變,可實(shí)現(xiàn)恒流輸出。
為增強(qiáng)電路的輸出電流驅(qū)動(dòng)能力,電路設(shè)計(jì)中加入了一個(gè)NPN 三極管,改進(jìn)的電路見圖7。利用NPN 三極管實(shí)現(xiàn)了擴(kuò)流的作用,增強(qiáng)電流的輸出能力[11]。并通過Multisim13.0 軟件仿真可知,三極管不僅增強(qiáng)了電流的驅(qū)動(dòng)能力,并且由于基極電流較小,減少了對(duì)運(yùn)算放大器負(fù)載電流能力的要求,同時(shí)承擔(dān)了主要的電壓壓降[12-13]。D2 為肖特基整流二極管,在對(duì)電路進(jìn)行保護(hù)的同時(shí),也能提高電流的傳輸性能。
圖7 改進(jìn)的I/V轉(zhuǎn)換電路
因此在選用三極管時(shí),不僅要滿足功率電壓等要求,更要考察三極管的驅(qū)動(dòng)電流能力。小電流可使用S8050,電流可以達(dá)到1.5 A;大電流可使用TIP41,電流可達(dá)到6 A。
利用上述電路,根據(jù)自己的使用需求,選擇適當(dāng)?shù)碾娮枧浔戎礙,可將單片機(jī)外圍電路輸出的電壓轉(zhuǎn)換成4~20 mA 電流輸出。輸出電流不受外接負(fù)載影響的特點(diǎn),也為電流信號(hào)進(jìn)行后續(xù)的轉(zhuǎn)換與采集提供了高精度的保證。
在完成硬件電路設(shè)計(jì)和軟件程序編寫后,為驗(yàn)證和測(cè)試溫濕度傳感器的測(cè)量精度,使用OMEGA 公司的熱電偶溫度校準(zhǔn)儀(測(cè)溫精度可達(dá)0.5 ℃)和瑞士羅卓尼克標(biāo)準(zhǔn)溫濕度探頭(測(cè)濕精度可達(dá)1.0%RH)分別對(duì)溫濕度傳感器的溫度和濕度測(cè)量進(jìn)行試驗(yàn)測(cè)試分析和數(shù)據(jù)處理。
將溫濕度傳感器和熱電偶溫度校準(zhǔn)儀感應(yīng)探頭同時(shí)置于高低溫箱中,改變高低溫箱中的溫度[14],并在溫度穩(wěn)定后記錄校準(zhǔn)儀顯示溫度和溫濕度傳感器測(cè)溫端輸出電流,測(cè)量結(jié)果見表2。
表2 溫度標(biāo)定測(cè)量結(jié)果
對(duì)測(cè)量的數(shù)據(jù)作最小二乘法直線擬合,結(jié)果見圖8。
圖8 溫度值與輸出電流擬合直線
由擬合直線求解到非線性度為0.41%,非線性度小于1%,滿足設(shè)計(jì)要求。再由輸出電流值根據(jù)擬合直線公式反推溫度測(cè)量值,考察溫度測(cè)量的實(shí)際值和測(cè)量值之間的誤差,反映溫度測(cè)量精度[15],結(jié)果見表3。
表3 溫度測(cè)量精度分析
由數(shù)據(jù)分析結(jié)果,在溫度測(cè)量范圍-40~40 ℃中,傳感器的溫度測(cè)量與電流輸出不僅有著良好的線性關(guān)系,而且同熱電偶溫度校準(zhǔn)儀相比,測(cè)量精度不超過0.5 ℃。
在溫濕度快速變化試驗(yàn)箱中對(duì)傳感器進(jìn)行濕度測(cè)量[16]。通過標(biāo)準(zhǔn)溫濕度探頭測(cè)量當(dāng)前濕度,并在濕度環(huán)境穩(wěn)定后記錄當(dāng)前濕度值和溫濕度傳感器的測(cè)濕端輸出電流。測(cè)量結(jié)果見表4。
表4 濕度標(biāo)定測(cè)量結(jié)果
對(duì)測(cè)量的數(shù)據(jù)作最小二乘法直線擬合,結(jié)果見圖9。
圖9 濕度值與輸出電流擬合直線
由擬合直線求解到非線性度為0.75%,非線性度小于1%,滿足設(shè)計(jì)要求。再由輸出電流值根據(jù)擬合直線公式反推濕度測(cè)量值,考察濕度測(cè)量的實(shí)際值和測(cè)量值之間的誤差,反映濕度測(cè)量精度,結(jié)果見表5。
表5 濕度測(cè)量精度分析
由數(shù)據(jù)分析結(jié)果可知,在濕度測(cè)量范圍0~100%RH中,傳感器的濕度測(cè)量與電流輸出不僅有著良好的線性關(guān)系,而且同標(biāo)準(zhǔn)溫濕度探頭相比,傳感器測(cè)濕的測(cè)量精度不超過±0.721%RH。
文中設(shè)計(jì)的溫濕度傳感器測(cè)試電路,以C8051F410 單片機(jī)和SHT15 敏感芯片為核心,根據(jù)傳感器自身的設(shè)計(jì)測(cè)量范圍和性能要求,通過程序設(shè)計(jì)和改進(jìn)型V/I 轉(zhuǎn)換電路的搭建,為傳感器測(cè)量信號(hào)遠(yuǎn)距離傳輸提供了可選方案,并且有效地改善了SHT15 芯片自身濕度測(cè)量的非線性,提高了測(cè)量精度。最后通過試驗(yàn)測(cè)試驗(yàn)證了該設(shè)計(jì)是合理可行的,可以用于精度較高場(chǎng)合下的測(cè)量。