新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 基于C8051F單片機的數字傾角傳感器設計

        基于C8051F單片機的數字傾角傳感器設計

        作者: 時間:2011-11-19 來源:網絡 收藏

          Dout 為傳感器的數字量輸出;

          Sens 是傳感器的靈敏度,根據測量范圍不同,分別為819(4V/g)或 1638(2V/g)。單片機通過SPI 口讀取SCA100T 內的兩路傳感器的A/D 轉換結果,在單片機機內進行處理后,通過串行口輸出。同時利用SPI 接口讀出內部溫度傳感器,進行測量值的溫度補償。

          4 提高精度措施

          SCA100T 非常敏感,電源的波動或是器件的振動對輸出值的精度都有很大的影響;溫度對輸出值也有一定的影響;在焊接時可能焊接面不平,安裝在機殼內或嵌入在其它系統中時也可能與基準面存在一定的角度,這些都會造成測量值的零點偏差。經過實驗和分析,主要通過以下方法來提高它的穩定性和可靠性:

          4.1 供電電路設計

          供電電壓不穩定可直接造成輸出的比例誤差,最大值可達到2%。如果電源過載則使傳感器供電不足而造成輸出波動。系統加了電源輸入保護電路,防止電源輸入過載。采用高精度電壓源REF195 單獨給傳感器供電,有效地減小電源的波動對輸出的影響。在電路板設計時,傳感器的電源和地之間加上10nF 的濾波電容,在模擬輸出端加上10uF 濾波電容,也可以減小了紋波,從而減小了輸出誤差;工作在嵌入系統中時,給這一部分電路加上鐵殼進行電磁屏蔽,減小其它工作電路或周圍環境對它的影響。

          4.2 軟件濾波

          在單片機片內RAM 中設定一個數組,用來存貯解算后的角度值。利用堆棧的原理將數組中新的測量值更新,對數據的數據進行加權求和平均后輸出。這樣可以減小輸出波動,但輸出有一定的滯后,通過實驗最終選用5 個數據處理滿足了系統的設計要求。

          4.3 溫度補償

          傳感器的輸出值同樣受到溫度的影響。它的內部帶有溫度傳感器,在大多數情況下不需要進行溫度補償。當傳感器工作在極限溫度附近時,可由MCU 根據其內溫進行補償。溫度的實際值由下式算出:

          Treal=(Counts-197)/(-1.083)

          式中Counts 為傳感器的輸出值。

          4.4 模擬量輸出

          Sca100t 還帶有模擬量輸出,其精度要比SPI 輸出的11BitAD 轉換結果高??梢杂?2Bit或16Bit 的AD 芯片或帶有更高精度AD 單片機(如C80051F060)的進行測量得到電壓后,再進行計算得到更高的測量精度。

          4.5 零點校正

          傳感器在焊接或安裝時,不可避免的會有一些傾斜角度,從而造成零點誤差。傳感器在安裝固定好后,在三維轉臺上進行標定,測出它兩個方向的零點誤差值,作為一個常數值存入Flash 芯片中。MCU 把得到的測量值減去零點誤差再輸出,基本消除了零點誤差引起的測量誤差。

          5 小結

          經過多次實驗改進后,工作可靠、穩定,測量精度高,便于嵌入到其它的測量系統中,已經在無人機姿態測量等多個項目中得到了應用。


        上一頁 1 2 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 关岭| 英山县| 信宜市| 东明县| 潮州市| 曲阳县| 道真| 惠水县| 内江市| 桃江县| 二连浩特市| 鄂州市| 巴马| 太湖县| 临沧市| 大宁县| 雷波县| 赞皇县| 安阳市| 同德县| 塔河县| 会同县| 宽甸| 包头市| 鄂托克前旗| 临洮县| 栾城县| 呼玛县| 浦城县| 当涂县| 济南市| 宜春市| 松江区| 石家庄市| 博野县| 仁寿县| 兴国县| 景宁| 海南省| 巴彦淖尔市| 马边|