魏 秀,韋宏利,劉艷杰,郭嘉豪
(西安工業大學 電子信息工程學院,陜西 西安 710021)
隨著科技的不斷發展,人們對于儀器的監測以及控制提出了全新以及更高的要求,同時,對于檢測的傳感器精度也隨之增高了要求,但由于傳統的測量方法精度較低,更沒有實現智能化,因此在檢測儀器中注入單片機技術,這樣不僅使得檢測儀器具有智能化而且檢測精度也大大提高了。該系統是以雙軸傾角傳感器SCA100T-D01和STM32F103為控制元件設計的一款測量系統,該系統支持多種輸出接口。同時,由于電路元件在溫度和時間上存在著一定程度的漂移,從而影響了傾角傳感器的準確性。因此,為了保證工程項目的合格性、產品的可靠性以及測量結果的準確性,有必要對傳感器進行標定處理,以期獲得滿意的效果[1-3]。
傾角傳感器一般用來進行系統的水平測量,其理論基礎是牛頓第二定律[4]。到目前為止,已經有了單軸與雙軸角度傳感器,一些場景下還需要測量三個軸向的信息量,因此,三軸傳感器也隨之出現了,它們的測量范圍也有所不同。從工作原理上將其劃為分固體擺式傳感器、液體擺式傳感器以及氣體擺式傳感器等三大類[5];該系統采用的傾角傳感器SCA100T-D01是由芬蘭 VTI 生產的雙軸傾角傳感器的系列產品,它屬于固擺式傾角傳感器,該種類型的傳感器主要是把測量到的靜態重力加速度的變化量轉換為傾角信息量的變化,如下圖1所示為固體擺式的示意圖,它是由擺錘、擺線和支架組成的。
圖1 固體擺式原理示意圖
擺錘受重力G和擺拉力T的作用,根據平行四邊形法則,其合外力F為:
F=Gsinθ=mgsinθ
(1)
其中:擺線與垂直方向的夾角為θ,在角度范圍較小的測量中,可以認為F與θ呈線性關系。
整個系統包含電源電路,角度測量電路、主控電路、A/D模塊電路、數據采集與輸出電路。整個設計以傳感器為前端測量元件,輸出的信號通過A/D模塊和微處理器處理模塊進行處理并輸出。
系統采用寬電源供電(12~24 V),經電源變換后分為兩路,一路是由精密穩壓芯片REF195輸出高穩定的5 V電壓,專為傳感器供電,以提高傳感器的輸出穩定性;另一路是由 LM2594經過穩壓電路轉換后,輸出的3.3 V電源,為單片機系統提供工作電源。
系統中設計了工業上常用的兩種輸出接口電路,方便用戶選擇其一進行數據輸出。
系統的整體結構框圖如圖2所示。
圖2 系統整體結構框圖
該系統的處理器采用的是ARM公司生產的32位的 Cortext M3內核的STM32F103C8T6微處理器,該款處理器具有2.0~3.6 V的寬電壓供電范圍,還具有容量為64 KB的FLash 存儲器和容量為20 KB的SRAM 存儲器,與此同時,該款處理器具有豐富的接口資源(定時器、DMA 控制器、SPI、IIC、USB等接口)以及中斷系統,性能穩定,處理速度快,因此,保障了系統的穩定并高效的運行[6-7]。
其原理圖如圖3所示。
圖3 STM32F103原理圖
系統采用的加速度計是由芬蘭 VTI 公司開發的一種基于3D-MEMS 技術的雙軸加速度計SCA100T-D01,其實物圖如下圖4所示,加計電路原理圖如下圖5所示。
圖4 SCA100T-D01傾角傳感器實物圖
圖5 加計電路原理圖
加計所需電壓為直流5 V電壓,其工作電流約為4 mA,片內集成了11位的A/D轉換器,轉換時間150 μs,溫度的工作范圍為-40 ℃~+125 ℃ ,其內部含有的溫度傳感器可以對溫度進行補償[8-10],輸出的X0與Y0分別與A/D轉換模塊的11和12引腳通過100R的電阻相連,系統所用的SCA100T-D01的靈敏度為4 V/g,它的輸出電壓值與角度值之間有如下的關系式:
(2)
其中:Dout為傳感器的數字量輸出;Sens為傳感器的靈敏度。
由于該系統支持寬的供電電壓范圍,當外電源提供12 V的供電電壓時,LM2594通過穩壓電路1117-5 V與1117-3.3 V轉換后,為微處理器MCU供電;采用精密電源 REF195 為傳感器供電,與此同時,對于電源設計需要加入過壓保護以及反向保護。
REF195部分電路原理圖如下圖6所示。
圖6 REF195原理圖
考慮到角度輸出范圍以及精度的要求,A/D 轉換芯片選擇 24 位的 A/D 轉換芯片AD7190,采用TSSOP24進行封裝并支持兩路差分輸入或四路偽差分的輸入,ADC的信號時鐘源是片內的4.92 MHz的時鐘信號產生的,其引腳圖如下圖7所示。
圖7 AD7190引腳圖
該模塊選用的芯片為MAX3483,所需電源為3.3 V,MAX3483原理圖如下圖8所示。
圖8 MAX3483原理圖
系統的程序設計使用 Keil uVision5軟件進行編程,主要包括控制部分、初始化部分、信號收集部分與轉換部分以及通信部分。
(1)控制部分主要對SCA100T進行控制;
(2)系統初始化部分就是在系統運行之前進行檢查,排除一切可能影響到正常工作的因素,并對控制系統進行復位;
(3)信號收集及轉化部分是讀取雙軸測量數據和內部溫度值、完成電壓值-角度的變換、輸出數據的修正、接收串口命令,輸出測量數據;
(4)通信部分,其通信傳輸幀結構定義如表1所示。
表1 幀結構定義(單位:字節)
表1中:
報文長度:含報文頭和校驗位;
通訊地址2個字節,第1個字節為傳感器類型(雙軸傾角傳感器為:0x02),第2個為傳感器地址字節;
幀類型:0x01為設備到傳感器,0x02為傳感器到設備;
報文類型:0x01為設置地址,0x02為查詢地址,0x03為設置工作方式,0x04為查詢工作方式,0x05讀取即時數據;
報文內容:長度不定;
校驗位:累加和校驗。
系統軟件流程圖如下圖9所示。
圖9 系統軟件流程圖
A/D子模塊流程圖如下圖10所示。
圖10 A/D子模塊流程圖
系統中,采用手動的方式對傳感器進行標定,其標定方法是將傾角傳感器裝配好,并放到水平分度校準臺上,注意安裝時一定要與水平面相切,不能有傾斜,否則會有偏差影響校準值,該方法是通過串口發送串口命令來進行操作的,為了得到較好的校準值,可以進行多次重復;同時,在標定的過程中要考慮雙軸傳感器兩個軸之間存在的交叉耦合的影響。
由于自身的測量精度是沒法改變的,因此,就需要將其他外部影響因素,如焊接誤差、安裝誤差、以及標定過程中產生的這些誤差降低到較小值,以保證測量結果的精準性。在系統中,將-30°~+30°的角度范圍內,通過采用不同的角度步長對X軸和Y軸的有限個數據點進行標定測驗,所得的X軸和Y軸的數據結果如表2所示。
表2 標定結果數據(單位:°)
由表2可知,測量精度滿足±2%范圍內,將實測角度值與給定角度值之間的關系繪制成曲線圖,如下圖11和圖12所示。
圖11 X軸對應曲線圖
圖12 Y軸對應曲線圖
論文采用了 SCA100T-D01型加速度計,選用了24 位的A/D 轉換器 AD7190 進行采樣輸出,通過STM32F103微處理器實現傾角傳感器的角度換算,,通過標定可得數據精度小于±2%,滿足精度設計要求。