ADISl6300四自由度IMU在姿态测量中的应用
扫描二维码
随时随地手机看文章
近年来,微机电系统(MEMS)技术广泛用于汽车的系统和稳定系统、医学系统、便携式照相机、运动装置和三维鼠标等领域。简单和小体积的惯性测量系统尤其受到关注,因此,基于MEMS的高精度、重量轻、小体积的姿态测量系统将得到广泛的应用。本文将介绍一种ADI公司的惯性传感器以及由其组成的微小姿态测量系统。
1 ADISl6300简介
ADISl6300四自由度(4DoF)IMU是一个完整的惯性测量传感器,其内置单轴陀螺仪和三轴加速计,每个传感器都实现了iMEMS(Motion Sig-nal Processing Technology)技术与信号调理技术的完美结合,可提供最优化的动态性能。工厂校准为每个传感器提供灵敏度、偏置、对准和线性加速度特性。因此,每个传感器都拥有自身的动态补偿,从而可以在4.75~5.25 V的电源范围内进行精确的传感器测量。由于AD-ISl6300所有必要的运动检测与校准都是在工厂完成,大幅缩短了系统集成时间,并降低了测试设备成本。ADISl6300采用改进的SPI接口,可提供更快的数据收集与配置控制,用户实现就像供电及连接SPI(串行外设接口)端口一样简单。ADISl6300采用23 mmx31 mmX7.5 mm封装,具有2 000 g额定耐冲强度,并提供了一个标准的连接接口,使其能方便水平或垂直安装。
ADISl6300角速度检测的动态范围具有±75、±150以及±300(°)/s 3种选项,三轴加速度的动态范围为±3 g,可提供350 Hz带宽,高达1 200次/秒的采样速率,并具有嵌入式与可编程数字滤波功能。ADISl6300其价格仅为其他同级产品的1/10,可广泛应用于医疗仪器、机器人、惯性测量单元、导航控制等领域。
2 ADISl6300结构功能
温度传感器、MEMS角速度传感器和三轴MEMS加速度传感器分别感知环境温度、器件所受角速度和三维加速度,将信号调理并转换,经校准和数字信号处理后将数据存入输出寄存器供外部SPI主控器件读取。ADISl6300是一个智能的传感器,传感器上电后便自动以819.2次/秒采样速率进行惯性测量。每个采样周期结束后,传感器测量结果存放至输出寄存器,并且DI01引脚向器件外产生一个脉冲,表示一个完整的新惯性测量数据已经采集准备好,可供外部SPI主控器件读取。
3 ADISl6300基本操作
3.1 ADISl6300的SPI连接
ADISl6300是一个全数字接口的智能传感器系统,其SPI接口与各种微处理器SPI主控制器件接线如图3所示。微处理器作为SPI主器件各引脚功能分别为:为从器件选择;IRQ为中断请求;MOSI为主器件输出,从器件输入;MISO为器件输入,从器件输出;SCLK为连续时钟。AD-ISl6300对SPI时钟需满足:正常模式下SCLK不高于2 MHz:数据进发模式下SCLK不高于1 MHz;在低电压模式下SCLK不高于300 kHz。
3.2 传感器数据读取
通过ADISl6300的SPI接口可读取其传感器的供电电压,陀螺仪值,X,Y,Z轴加速度值,温度值,纵摇角,横摇角等数据。根据ADISl63 00读取数据时序,读取每个寄存器的内容分为两步,即2个16位的时序:第1个16位时序向ADISl6300写入读取命令和寄存器地址;第2个16位时序将对应寄存器内容发送至DOUT数据线上。例如:如果第1个16位时序DIN=0x0A00,那么第2个时序时,XACCL_OUT(X轴加速度值)将被发送到DOUT数据线上。
数据进发模式是连续读取ADISl6300数据的最好方式。在10个连续的时序周期内,9个常用寄存器数据可方便读到,它们分别是:SUPPLY _0UT(供电电压)、GYRO_OUT(陀螺仪)、XACCL_OUT(X轴加速度)、YACCL_0UT(Y轴加速度)、ZACCL_0UT(Z轴加速度)、TEMP_0UT(温度)、PITCH_ 0UT(俯仰角)、0LL_OUT(横滚角)和AUX_ADC(ADC转换结果)。数据进发模式操作为:在连续10个时序周期内,DIN引脚对应的10个输入数据以0011 111O 0000 0000(Ox3E00)开始,之后9个数据可任选,同时在DOUT引脚上依次输出如上所述9个输出寄存器内的数据。
3.3 数据处理
表1说明了ADISl6300数据输出的格式和比例因子。从表1中可知,SUPPLY_0UT和AUX_ADC数据格式都为12位的二进制数据,各惯性传感器输出的数据格式均为14位2的补码,温度传感器输出数据格式和AUX_ADC数据格式都是12位2的补码,而横摇角和纵摇角数据格式为13位的2的补码。也就是说0x0000是0LSB.0x0001是+1 LSB,2n-1(n=12,13,14)为-1 LSB,LSB为满量程输入范围的最小单位。若为GYRO_0UT时,1 LSB=O.05(°)/s。下式可用来将输出数据转换成浮点形式的姿态数据。
式中,DATA_OUTi为表1中输出数据,OUTi为转换后浮点形式的姿态数据,Scale为表1中最小单位,n为表1中数据位数。
例如:GYR0_0UT=0x384A,由于,则角速率Rate=(0x4000-Ox384A)×(-0.05)(°)/s=1206x(-0.05)(°)/s=-60.3(°)/s。因此,根据传感器方向坐标定义,当GYRO 0UT为0x384A时,表示传感器z轴以60.3(°)/s的角速率逆时钟旋转。