王利恒,李聯(lián)中,王祥力,王斯寧
(武漢工程大學(xué)電氣信息學(xué)院,湖北 武漢 430205)
傾角傳感器用來測量儀器相對于水平面的傾角,在航空航天[1]、太陽能[2]、自動調(diào)平儀[3]、軍事[4-5]、高精密科學(xué)設(shè)備等方面都具有重要的地位.傳統(tǒng)的傾角傳感器以其可靠性強、測量精度高,在水平、垂直度檢測以及角度測量領(lǐng)域占有重要的地位,已經(jīng)作為配套儀器在許多專業(yè)領(lǐng)域得到廣泛的應(yīng)用.但在比較惡劣的環(huán)境條件以及無市電供應(yīng)狀態(tài)下,該類傳感器產(chǎn)品不能進行測量工作.因此,研究可適應(yīng)惡劣環(huán)境以及小體積、輕重量、電池供電、使用方便靈活的傾角傳感器產(chǎn)品成為一個亟待解決的問題.筆者設(shè)計了一種基于C8051F310單片機的傾角測量系統(tǒng),經(jīng)過實驗驗證,該傾角傳感器的最小分辨率為0.1°,其重復(fù)性和線性度都比較理想,可以應(yīng)用在各種高精度儀器的調(diào)平與角度測量系統(tǒng)中,具有很高的應(yīng)用價值.
傾角傳感器敏感元件SCA60C的輸出電壓信號與角度成正弦關(guān)系變化,通過模數(shù)(Analog to Digital,以下簡稱:A/D)轉(zhuǎn)換將其轉(zhuǎn)變?yōu)閿?shù)字信號并將數(shù)字信號傳送入微處理器C8051F310中進行濾波、限幅、角度化等處理,使之變?yōu)閷?yīng)的角度實時信號,通過顯示模塊進行顯示以實現(xiàn)人機接口.另外還配置了RS-232信號通信模塊,系統(tǒng)可以通過該模塊進行數(shù)據(jù)傳輸,實現(xiàn)與上位機的通訊.電路系統(tǒng)設(shè)計采用了模塊化設(shè)計的方法,系統(tǒng)結(jié)構(gòu)如圖1所示.經(jīng)過分析將傾角傳感器分為以下6個主要模塊:傳感器敏感元件模塊、電源供電模塊、 A/D 轉(zhuǎn)換模塊、微處理器模塊、顯示模塊和 RS-232 信號傳輸模塊.
圖1 系統(tǒng)結(jié)構(gòu)Fig.1 System architecture
SCA60C是芬蘭VTI科技公司推出的一種分辨率高、噪聲低、穩(wěn)定性好、抗沖擊能力強的單軸傾角傳感器芯片.該芯片可用來測量物體是否處于水平、垂直位置或與水平成一定的角度, 它實際上是一個加速度計, 其內(nèi)部由敏感元件、測量電路、增益放大和濾波模塊組成,它通過測量地球引力在測量方向上的分量, 將其轉(zhuǎn)換為傾斜角度.采用公式(1)將角度轉(zhuǎn)化為模擬輸出量:
Vout=VSsinα+Vf
(1)
式(1)中:Vout為角度敏感元件輸出電壓;α為輸入角度;Vf為模塊在水平位置時的輸出電壓(輸出值一般為2.5V);VS為模塊的靈敏度(其靈敏度為每重力加速度2 V).為了得到更好的精確度,應(yīng)使用實際輸出值代替通常值.該傳感器反應(yīng)靈敏,在較小的角度范圍內(nèi),其傾斜所產(chǎn)生的電導(dǎo)信號與實際角度成很好的線性關(guān)系,利用此原理可以實現(xiàn)精確的角度測量.傳感器對溫度變化的響應(yīng)不靈敏,因此溫度變化對測量精確度產(chǎn)生的影響很小[6].
為了給電路中的傾角傳感器SCA60C和通信轉(zhuǎn)換芯片MAX232cep提供+5V電壓,筆者采用了LM78L05ACZ穩(wěn)壓芯片,通過此芯片可以為系統(tǒng)提供穩(wěn)定的+5V電壓,電源采用9V干電池.為了給C8051F310單片機提供+3.3V電壓,筆者采用了AMS1117芯片,通過此芯片可以為單片機提供穩(wěn)定的+3.3V電壓.考慮到選取的電源變換芯片屬于開關(guān)電源芯片,輸出端處有較大的紋波,因此需要在電壓輸出端外接適當?shù)呐月窞V波電容,以消除電源輸出紋波對系統(tǒng)中元器件的干擾[7],設(shè)計電路如圖2所示.
圖2 電源模塊Fig.2 Power supply module
本電路采用了以C8051F310單片機為核心的微處理器主控模塊單元.C8051F310單片機應(yīng)用非常廣泛,有較多的源程序代碼可以借鑒,從而減少了工作量,縮短了開發(fā)時間.C8051F310單片機具有8*1024字節(jié)的程序存儲器,其提供的程序存儲器以其較大的容量和方便靈活的輸入輸出接口受到廣大工控設(shè)計人員的青睞[8].
選擇了模擬信號以后,要把模擬信號轉(zhuǎn)換成微處理器可以識別的數(shù)字信號,必須采用模數(shù)轉(zhuǎn)換.本系統(tǒng)的模擬信號為電壓信號,通過模數(shù)轉(zhuǎn)換以后,每一個角度對應(yīng)的電壓值都被轉(zhuǎn)化為唯一確定的二進制數(shù)字量信號,這個數(shù)字量是微處理器可以識別處理的信號.
C8051F310單片機的模數(shù)轉(zhuǎn)換器(Analog to Digital Converter,以下簡稱:ADC)集成了兩個25通道模擬多路選擇器和一個每秒采樣200千次的10位逐次逼近型ADC.ADC可以工作在單端方式或差分方式,模擬多路選擇器選擇去ADC的正輸入和負輸入,P1.0-P3.4和GND中的任何一路都可以被選擇為負向輸入,P1.0-P3.4、片內(nèi)溫度傳感器輸出和正電源中的任何一路都可以被選擇為正向輸入,如圖3所示.只有當ADC控制寄存器中的AD0EN位被置‘1’時,ADC子系統(tǒng)才能啟動;當AD0EN位被置為‘0’時,ADC0子系統(tǒng)處于關(guān)閉方式.當GND被選擇為負輸入時,ADC工作在單端模式下;在所有其它模式下,ADC工作在差分模式.ADC的輸入通道是通過調(diào)整寄存器AMX0P和AMX0N的值來實現(xiàn)的.每次轉(zhuǎn)換結(jié)束后,在寄存器ADC0H和ADC0L中保存ADC轉(zhuǎn)換結(jié)果的高字節(jié)和低字節(jié).在本設(shè)計中,筆者采用了單端工作模式,選擇P2.0端口為ADC模塊的正輸入,GND為ADC模塊的負向輸入.
圖3 A/D模塊Fig.3 A/D module
液晶顯示器具有體積小、功率低、顯示內(nèi)容豐富、超薄輕巧等諸多優(yōu)點,因而在各種儀表和低功耗應(yīng)用系統(tǒng)中得到越來越廣泛的應(yīng)用.設(shè)計中采用常用的2行16個字的SMC1602A液晶模塊來顯示測量角度.SMC1602A液晶模塊與單片機的連接圖如圖4所示.
圖4 單片機與SMC1602A液晶模塊連接圖Fig.4 SCM and LCD module connection diagram
單片機P1口與SMC1602A液晶模塊的數(shù)據(jù)口連接,用于傳輸數(shù)據(jù)和命令.P2口分別控制RS、R/W和使能端E.RS為數(shù)據(jù)/命令選擇端,高電平時傳遞數(shù),低電平時傳遞指令.R/W為讀寫控制端,高電平時進行讀操作,低電平時進行寫操作.當RS和R/W共同為低電平時,可以寫入指令或者顯示地址;當RS為低電平且R/W為高電平時,可以讀取忙信號;當RS為高電平且R/W為低電平時,可以寫入數(shù)據(jù).E為使能端,當E由高電平跳變成為低電平時,液晶模塊執(zhí)行命令.D0-D7為8位數(shù)據(jù)線.VL為液晶模塊的對比度調(diào)整端,接正電源時對比度最弱,接地時對比度最高,對比度過高時會產(chǎn)生“鬼影”,可以通過一個10千歐的電位器調(diào)整對比度.
系統(tǒng)還提供了與上位機通訊的RS-232模塊,因此需要將單片機TXD端口輸出的晶體管-晶體管邏輯電平轉(zhuǎn)換為上位機可接收的RS-232電平信號.在RS-232通信模塊中,主控芯片選用的是MAXIM公司的MAX232CPE芯片.此芯片可以將晶體管-晶體管邏輯電平轉(zhuǎn)換成RS-232電平,也可以將RS-232電平轉(zhuǎn)換成晶體管-晶體管邏輯電平,屬于雙向驅(qū)動接收器[8].系統(tǒng)通過此芯片作為與上位機相連接的處理單元,將系統(tǒng)信號數(shù)據(jù)傳送到上位機中,用戶可以在RS-232協(xié)議允許的距離內(nèi)通過上位機采集傾角傳感器系統(tǒng)的數(shù)據(jù),也可以方便的利用此數(shù)據(jù)來進行后向處理,電路如圖5所示.
圖5 RS-232 通信模塊Fig.5 RS-232 communication module
軟件設(shè)計也采用了模塊化設(shè)計的原理.將實現(xiàn)各個功能的模塊程序做成子程序,然后在主程序中進行調(diào)用.根據(jù)水平傾角測量儀系統(tǒng)的需要,分為以下5個子模塊:單片機輸入輸出初始化模塊、A/D 轉(zhuǎn)換器初始化模塊、A/D 轉(zhuǎn)換器采集數(shù)據(jù)并送交單片機模塊、向液晶模塊傳送數(shù)據(jù)并顯示模塊、RS-232 數(shù)據(jù)傳輸模塊.軟件流程圖如圖6所示,具體的程序代碼在此不再贅述.
圖6 軟件流程圖Fig.6 Flow diagram of program
為了測試系統(tǒng)的性能,利用角度發(fā)生器設(shè)置儀器傾斜角度,每傾斜1°記錄一次數(shù)據(jù),在0-90°范圍內(nèi)正反各做一次測試并記錄, 最后得到兩組數(shù)據(jù),如表1所示.由此可對傳感器進行重復(fù)性和線性度測試.由于使用最小二乘法擬合直線可使擬合精度最高,所以采用最小二乘法擬合直線.擬合直線方程為:Y=X+0.181,系統(tǒng)的線性度為:Δmax/YFS=0.279/90=0.0031(Δmax為實際特性曲線與擬合直線的最大偏差,YFS為傳感器滿量程輸出).最小分辨率為0.1°,靈敏度為2/90≈0.02 V /°.
表1 系統(tǒng)性能測試Table 1 System performance testing
筆者設(shè)計的新型便攜式傾角傳感器系統(tǒng)通過電源管理模塊改變了電源的供電方式,實現(xiàn)了干電池供電;通過微處理器主控單元控制了顯示、RS-232 數(shù)據(jù)傳輸?shù)确绞降娜藱C接口,改造了原有傳感器產(chǎn)品只具備模擬量輸出的接口方式,縮小了產(chǎn)品體積,機體外殼采用長方體形狀,機體外殼長×寬×高=120mm×80mm×40mm,安裝板測量面長×寬×高=110mm×60mm×35mm.本機的結(jié)構(gòu)外形尺寸比原有的一體化結(jié)構(gòu)的傳統(tǒng)儀器要小許多,其體積比文獻[9]中的體積更小,更便于攜帶.傾角傳感器技術(shù)的應(yīng)用給水平傾角測量領(lǐng)域提供了更多新的選擇,滿足工業(yè)現(xiàn)場對角度測量的廣泛應(yīng)用需求.
參考文獻:
[1] 盧衛(wèi)平,黃鳴豐,孫永榮.傾角傳感器在太陽能跟蹤系統(tǒng)中的應(yīng)用研究[J].現(xiàn)代電子技術(shù),2012,35(1):129-131.
[2] 李曉紅.基于單片機的衛(wèi)星天線自動定位控制系統(tǒng)開發(fā)與研究[D].上海:華東師范大學(xué),2008.
[3] 楊興瑤,劉行景.高精度電子傾角傳感器及其在自動調(diào)平儀中的應(yīng)用[J].江蘇機械制造與自動化,1994,(6):34-35.
[4] 郭俊岑, 周浚哲, 唐健.基于單片機的坦克火控調(diào)試臺自動調(diào)平系統(tǒng)研究[J].沈陽理工大學(xué)學(xué)報,2006,25(3):71-73.
[5] 譚青.自動調(diào)平系統(tǒng)在防空炮火中的應(yīng)用[J].武器裝備自動化,2004,23(4): 10-11.
[6] Cheng Y, Winterflood J, Ju L,et al. Tilt sensor and servo control system for gravitational wave detection[J]. Quantum Gravity.2001,7(10):1723-1729.
[7] Lee Y Y, Lam K C, Yuen K K. Active vibration control of an aircraft cabin panel using piezoelectric sensors and actuators[J].IEEE,2003,3(1):131-141.
[8] Chen Y L. Application of Tilt Sensor in Human-Computer Mouse Interface for People With Disablities[J].IEEE,2001,9(3):289-294.
[9] 劉軍勝, 左謹平,高菁.基于單片機的便攜角度測量儀[J].電子技術(shù),2008,45(4):29-32.