加速度

芯片翻译之ICM20602(一)

╄→гoц情女王★ 提交于 2019-12-01 13:44:16
高性能六轴MEMS运动跟踪装置 概述 ICM 20602是一个6轴运动跟踪装置,它结合了一个3轴陀螺仪,3轴加速度计,在一个小的3毫米×3毫米×0.75毫米(16引脚LGA)封装。 高性能规格 陀螺仪灵敏度误差:±1% 陀螺仪噪声:4 mdps/√Hz 加速度计噪声:100μg/√Hz 包括1kB FIFO以减少串行总线接口上的通信量,并通过允许系统处理器突发读取传感器数据并进入低功耗模式来降低功耗 支持EIS FSYNC CM-20602包含片上16位ADC、可编程数字滤波器、嵌入式温度传感器和可编程中断。该设备的工作电压范围低至1.71V。通信端口包括I2C和10MHz的高速SPI。 方框图 应用 智能手机和平板电脑 可穿戴传感器 物联网应用 基于运动的游戏控制器 互联网连接DTV和机顶盒、3D鼠标 特性 可编程FSR±250 dps,±500 dps,±1000 dps,±2000 dps的三轴陀螺仪 可编程FSR±2g,±4G,±8g,±16g的三轴加速度计 用户可编程中断 应用处理器低功耗运行的唤醒运动中断 1kB FIFO缓冲区使应用程序处理器能够突发式读取数据 片上16位ADC和可编程滤波器 主机接口:10 MHz SPI或400 kHz快速模式I2C 数字输出温度传感器 VDD工作范围1.71V至3.45V 在晶圆级密封和粘合MEMS结构 符合RoHS和绿色标准

[开源飞控参数学习

与世无争的帅哥 提交于 2019-11-27 18:20:43
一、 PID 调节 ATC_RAT_PIT_P 俯仰轴速率控制 P 增益 ATC_RAT_RLL_P 横滚轴速率控制 P 增益 ATC_RAT_YAW_P 航向轴速率控制 P 增益 ATC_RAT_PIT_I 俯仰轴速率控制 I 增益 ATC_RAT_RLL_I 横滚轴速率控制 I 增益 ATC_RAT_YAW_I 航向轴速率控制 I 增益 ATC_RAT_PIT_D 俯仰轴速率控制 D 增益 ATC_RAT_RLL_D 横滚轴速率控制 D 增益 ATC_RAT_YAW_D 航向轴速率控制 D 增益 先调P值再调D最后调I值 P值:飞机感应外部干扰的敏感度。 P值过低:在某个轴上缓慢的晃动,显得无力。 P值过高:在某个轴高频的抖动。 D值:可以理解为刹车 操作:在某个轴上打舵后再回中,观看飞机的反应,理想的状态是刚好回到中间的位置且不抖动。 D值过低:飞机的状态是在中立位置反复抖动震荡。 D值过高:恢复的力度很慢。 I值:反应的速度,遇见外界的干扰,恢复的速度。 I值过低:飞机恢复比较慢。 I值过高:恢复比较快,可能过冲。 经验所得:I值与P值尽量接近。 二、 调节加速度 ATC_ACCEL_P_MAX 俯仰的最大加速度 ATC_ACCEL_R_MAX 横滚的最大加速度 ATC_ACCEL_Y_MAX 偏航的最大加速度 三、 1 、设置自动航线下的机头转向动作 WP_YAW

姿态控制的ekf预测控制与结算学习

女生的网名这么多〃 提交于 2019-11-27 08:11:35
代码框架篇 代码的主要结构由ekf2_main.cpp, estimator_interface.cpp, 和ekf.cpp,ekf_helper.cpp 互相交互,在加上底层的的一系列处理文件。 事实上,之前花费了一周的时间,画的流程图意义和价值很大,这让我在程序代码分析的时候更加直观 流程图的连接见: https://download.csdn.net/download/weixin_39350416/11546415 接下来我该做什么呢,主要分析一下,updated()函数中的五个步骤 1。 预测状态 2。预测协方差 3。 控制融合模式 4。 运行地形估计 5。计算输出状态(输出状态的论文已经梳理过了,但是程序还需要再仔细琢磨) 然后我们现在从预测状态开始 predictState(); predictCovariance(); 这两个函数的主要任务就是执行主过滤器的状态和协方差预测; controlFusionModes(); 这个函数控制融合观测数据 刚刚把第一个状态预测函数过了下,这个函数在ekf.cpp中 确实是根据δ角度和δ速度,校正当前的角度和速度,然后校正垂直方向的速度,和位置信息。 现在过预测协方差,这个函数在协方差的大文件里,covariance.cpp中 这个预测协方差主要做协方差的计算,但是这个内部协方差是计算还是置位,都是有条件的

三轴加速度传感器LIS3DH使用心得

♀尐吖头ヾ 提交于 2019-11-27 02:25:27
LIS3DH是ST公司推出的一块三轴加速度计芯片,使用它能实现很多有趣的应用。接下来笔者通过例程分享下LIS3DH的一些开发心得。 首先请出我们使用的开发板:UFUN, 这是块小巧精致的开发板,内核为STM32,搭载了多种传感器,包括LIS3DH,其价格也很亲民~ 先给出LSI3DH官方文档下载地址: https://www.st.com/zh/mems-and-sensors/lis3dh.html# 然后演示下例程运行结果,PC端通过串口接收到了计算后得出的加速度和角度 要想得到加速度和角度这两个值首先要对加速度计进行一些配置,这里我们主要讨论LIS3DH,STM32的IIC等配置就不提啦。需要我们配置的有采样率、工作模式、量程、XYZ轴的使能。 采样率单位为HZ,意义是每秒采样次数,我们可配置的采样率如下图所示(来自官方文档),例程选用100HZ。 工作模式分掉电模式、正常模式、低功耗模式。掉电模式LIS3DH的全部内部块几乎都会关闭,低功耗模式下相比正常模式有更低的功耗,但是分辨率也会变低。我们选择正常模式。 量程分为±2、±4、±8、±16(如下图所示)。量程决定LIS3DH读出的加速度的极限值。也会影响我们之后的计算。 在正常模式和低功耗模式下我们可以决定X、Y、Z轴是否使能,非使能的轴生会的数据为00h。 代码如下。本例程使用的是ST官方提供的LIS3DH驱动

Android Sensor(传感器)

我与影子孤独终老i 提交于 2019-11-26 10:58:16
Android 常见传感器 在这之前,我们需要了解关于Android的坐标系: 首先,让Activity实现SensorEventListener接口(实现接口需要复写 onSensorChanged , onAccuracyChanged 方法),便于监听来刷新数据 然后创建SensorManager对象,然后为它注册加速度传感器监听器 //获取系统服务 sensorManager = (SensorManager) getSystemService(Context.SENSOR_SERVICE); // 注册事件 // * 参数1 :SensorEventListener监听器 // * 参数2 :Sensor 一个服务可能有多个Sensor实现,此处调用getDefaultSensor获取默认的Sensor // * 参数3 :模式 可选数据变化的刷新频率,多少微秒取一次。 sensorManager.registerListener(this, sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER), SensorManager.SENSOR_DELAY_NORMAL); 加速度传感器(Accelerometer) TYPE_ACCELEROMETER //加速度传感器 if (event.sensor