关 闭

新闻中心

EEPW首页 > 工控自动化 > 设计应用 > SCA100t 和MCU在数字倾角传感器中的应用

SCA100t 和MCU在数字倾角传感器中的应用

作者:时间:2012-12-03来源:网络收藏

3 系统软件设计

整个系统使用C51 进行程序设计,使用模块化结构,条理清楚。主要功能有控制SCA100T,读取双轴测量数据和内部温度值;完成电压值-角度的变换;输出数据的修正;数据输出的软件滤波;接收串口命令,输出测量数据。软件流程如图2 所示。

根据器件手册可以看到, 输出的电压值与角度有以下关系:

α=arcsin((Dout-1024)/Sens)

系统软件流程图

图2 系统软件流程图

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 温度补偿

传感器的输出值同样受到温度的影响。它的内部带有温度传感器,在大多数情况下不需要进行温度补偿。当传感器工作在极限温度附近时,可由 根据其内温进行补偿。温度的实际值由下式算出:

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

式中Counts 为传感器的输出值。

4.4 模拟量输出

Sca100t 还带有模拟量输出,其精度要比SPI 输出的11BitAD 转换结果高。可以用12Bit或16Bit 的AD 芯片或带有更高精度AD 单片机(如C80051F060)的进行测量得到电压后,再进行计算得到更高的测量精度。

4.5 零点校正

传感器在焊接或安装时,不可避免的会有一些倾斜角度,从而造成零点误差。传感器在安装固定好后,在三维转台上进行标定,测出它两个方向的零点误差值,作为一个常数值存入Flash 芯片中。 把得到的测量值减去零点误差再输出,基本消除了零点误差引起的测量误差。

5 小结

经过多次实验改进后,传感器工作可靠、稳定,测量精度高,便于嵌入到其它的测量系统中,已经在无人机姿态测量等多个项目中得到了


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭