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