前言¶
产品版本
与本文档相对应的产品版本如下。
产品名称 |
产品版本 |
|---|---|
SS928 |
V100 |
SS927 |
V100 |
修订记录
修订记录累积了每次文档更新的说明。最新版本的文档包含以前所有文档版本的更新内容。
文档版本 |
发布日期 |
修改说明 |
|---|---|---|
00B01 |
2025-09-15 |
第1次临时版本发布。 |
概述¶
概述¶
MotionFusion即运动传感器的融合补偿,对陀螺仪、加速度计等运动测量器件的数据进行预处理,通过标定和补偿,为防抖提供校准后的陀螺仪数据。
基本概念¶
零偏
静止状态下,Gyro的角速度和ACC的加速度预期的值应该是0,但因为设备器件的工艺等问题或系统误差,在静止状态下仍然有非0的值,这个值我们称之为零偏。
温飘
不同温度下,设备器件的零偏值可能不同。不同温度下对应的零偏我们称之为温飘。
标定
使用标准的计量方法对陀螺仪或加速度计的准确度或精度进行校准的过程。标定可以消除工艺等问题引起的系统误差,改善设备的准确度或精确度,确定设备或测量系统的静态特性指标。
六面标定及校准
标定及校准陀螺仪或加速度计设备由于自身特性或者是安装引起的Sensitivity Scale Factor Error(灵敏度误差)及Crosstalk(轴间串扰)问题。
在线标定及校准
设备自标定的过程。设备在正常工作过程中,对自身计量误差的自动校准或者补偿的过程。
API参考¶
该功能模块为用户提供以下MPI:
ss_mpi_mfusion_set_attr:设置motionfusion属性。
ss_mpi_mfusion_get_attr:获取motionfusion属性。
ss_mpi_mfusion_set_gyro_drift:设置Gyro零偏。
ss_mpi_mfusion_get_gyro_drift:获取Gyro零偏。
ss_mpi_mfusion_set_gyro_six_side_calibration:设置Gyro六面标定。
ss_mpi_mfusion_get_gyro_six_side_calibration:获取Gyro六面标定。
ss_mpi_mfusion_set_gyro_temperature_drift:设置Gyro温飘参数。
ss_mpi_mfusion_get_gyro_temperature_drift:获取Gyro温飘参数。
ss_mpi_mfusion_set_gyro_online_temperature_drift:设置Gyro在线温飘。
ss_mpi_mfusion_get_gyro_online_temperature_drift:获取Gyro在线温飘。
ss_mpi_mfusion_set_gyro_online_drift:设置Gyro在线零偏。
ss_mpi_mfusion_get_gyro_online_drift:获取Gyro在线零偏。
ss_mpi_mfusion_bind_vi:绑定fusion和pipe、chn。
ss_mpi_mfusion_unbind_vi:解绑定fusion和pipe、chn。
ss_mpi_mfusion_set_attr¶
【描述】
设置motionfusion属性。
【语法】
td_s32 ss_mpi_mfusion_set_attr(const td_u32 fusion_id, const ot_mfusion_attr *mfusion_attr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion设备ID号。取值范围:[0, 1]。 |
输入 |
mfusion_attr |
motionfusion属性指针。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
暂时不支持磁力计属性的设置。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_get_attr¶
【描述】
获取motionfusion属性。
【语法】
td_s32 ss_mpi_mfusion_get_attr(const td_u32 fusion_id, ot_mfusion_attr *mfusion_attr);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
mfusion_attr |
motionfusion属性指针。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
无。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_set_gyro_drift¶
【描述】
设置Gyro零偏。
【语法】
td_s32 ss_mpi_mfusion_set_gyro_drift(const td_u32 fusion_id, const ot_mfusion_drift *gyro_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
gyro_drift |
陀螺仪零偏使能开关;陀螺仪零偏参数数组,包括x、y、z三个轴向的零偏。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
为了保持零偏的稳定性,不受任何量程的影响。配置的零偏参数为陀螺仪原始读数零偏乘以量程的积。
零偏标定的过程是:在典型的工作温度下,陀螺仪设备静止,读取x、y、z三个轴向的读数,然后分别求平均值。最后把求得的平均值乘以量程,所得的积为最终的零偏。
设置Gyro零偏功能与设置Gyro在线零偏、设置Gyro温飘参数、设置Gyro在线温飘参数互斥,其中一种功能使能之后,其余功能将使能失败。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_get_gyro_drift¶
【描述】
获取Gyro零偏。
【语法】
td_s32 ss_mpi_mfusion_get_gyro_drift(const td_u32 fusion_id, ot_mfusion_drift *gyro_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
drift |
陀螺仪零偏使能开关指针;陀螺仪零偏参数数组,包括x、y、z三个轴向的零偏。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
无。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_set_gyro_six_side_calibration¶
【描述】
设置Gyro六面标定
【语法】
td_s32 ss_mpi_mfusion_set_gyro_six_side_calibration(const td_u32 fusion_id, const ot_mfusion_six_side_calibration *six_side_calibration);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
six_side_calibration |
陀螺仪六面标定使能开关;陀螺仪六面标定矩阵数组。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
六面标定矩阵系数的小数精度为15bit,即原始矩阵系数乘以(1 <<15)。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_get_gyro_six_side_calibration¶
【描述】
获取Gyro六面标定。
【语法】
td_s32 ss_mpi_mfusion_get_gyro_six_side_calibration (const td_u32 fusion_id, ot_mfusion_six_side_calibration *six_side_calibration);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
six_side_calibration |
陀螺仪六面标定使能开关指针;陀螺仪六面标定矩阵数组。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
六面标定矩阵系数的小数精度为15bit,即原始矩阵系数乘以(1 <<15)。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_set_gyro_temperature_drift¶
【描述】
设置Gyro温飘参数。
【语法】
td_s32 ss_mpi_mfusion_set_gyro_temperature_drift (const td_u32 fusion_id, const ot_mfusion_temperature_drift *temperature_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
temperature_drift |
陀螺仪温度漂移使能开关;陀螺仪温度漂移参数指针。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
温度漂移包含各个温度下的零偏。
陀螺仪温度漂移参数有两种类型,一种是多项式曲线,一种是LUT查找表。
设置Gyro温飘参数功能与设置Gyro在线温飘参数、设置Gyro零偏、Gyro在线零偏互斥,其中一种功能使能之后,其余功能将使能失败。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_get_gyro_temperature_drift¶
【描述】
获取Gyro温飘参数。
【语法】
td_s32 ss_mpi_mfusion_get_gyro_temperature_drift (const td_u32 fusion_id, ot_mfusion_temperature_drift *temperature_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
temperature_drift |
陀螺仪温度漂移使能开关指针;陀螺仪温度漂移参数指针。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
温度漂移包含各个温度下的零偏。
陀螺仪温度漂移参数有两种类型,一种是多项式曲线,一种是LUT查找表。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_set_gyro_online_temperature_drift¶
【描述】
设置Gyro在线温飘参数。
【语法】
td_s32 ss_mpi_mfusion_set_gyro_online_temperature_drift(const td_u32 fusion_id, const ot_mfusion_temperature_drift *temperature_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
temp_drift |
陀螺仪在线温度漂移使能开关;陀螺仪温度漂移参数指针。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
陀螺仪在线温飘功能开启时,需要通过temperature_drift设置上一次保存的在线温飘参数。
陀螺仪在线温飘功能开启后,后台会自动进行在线温飘标定,与防抖业务是否开启无关。
系统退出前,陀螺仪在线温飘功能需要保持关闭状态,使相关资源得到释放,并使用ss_mpi_mfusion_get_gyro_online_temperature_drift保存最新的温飘参数。以便下次启动时使用。
DV模式,采用陀螺仪在线温飘功能。
设置Gyro在线温飘参数功能与设置Gyro温飘参数、设置Gyro零偏、设置Gyro在线零偏互斥,其中一种功能使能之后,其余功能将使能失败。
【举例】
无
【相关主题】
ss_mpi_mfusion_get_gyro_online_temperature_drift¶
【描述】
获取Gyro在线温飘参数。
【语法】
td_s32 ss_mpi_mfusion_get_gyro_online_temperature_drift(const td_u32 fusion_id, ot_mfusion_temperature_drift *temperature_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
temperature_drift |
陀螺仪在线温度漂移使能开关;陀螺仪温度漂移参数指针。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
无
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_set_gyro_online_drift¶
【描述】
设置Gyro在线零偏。
【语法】
td_s32 ss_mpi_mfusion_set_gyro_online_drift(const td_u32 fusion_id, const ot_mfusion_drift *online_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
online_drift |
陀螺仪在线零偏使能开关;零偏参数数组,包括x、y、z三个轴向的零偏。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
陀螺仪在线零偏开启后,后台会自动进行在线标定,与防抖业务是否开启无关。
陀螺仪在线零偏功能在系统退出前保持关闭状态,使相关资源得到释放。
_录像机_产品,并且镜头是固定模式,采用陀螺仪在线零偏功能。
陀螺仪在线零偏功能需要在系统启动时的前3秒内保持陀螺仪静止,从而获得陀螺仪的基础零偏值,让零偏校准更快收敛。
设置Gyro在线零偏功能与设置Gyro零偏、设置Gyro温飘参数、设置Gyro在线温飘参数互斥,其中一种功能使能之后,其余功能将使能失败。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_get_gyro_online_drift¶
【描述】
获取Gyro在线零偏。
【语法】
td_s32 ss_mpi_mfusion_get_gyro_online_drift(const td_u32 fusion_id, ot_mfusion_drift *online_drift);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
online_drift |
陀螺仪在线零偏使能开关指针;零偏参数数组,包括x、y、z三个轴向的零偏。 |
输出 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
无。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_bind_vi¶
【描述】
绑定fusion和pipe、chn。
【语法】
td_s32 ss_mpi_mfusion_bind_vi(const td_u32 fusion_id, ot_vi_pipe vi_pipe, ot_vi_chn vi_chn);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
vi_pipe |
PIPE号。取值范围:[0, OT_VI_MAX_PIPE_NUM),参考《MPP 媒体处理软件 V5.0 开发参考》“视频输入”章节。 |
输入 |
vi_chn |
VI通道号。取值范围:[0, OT_VI_MAX_PHYS_CHN_NUM),参考《MPP 媒体处理软件 V5.0 开发参考》“视频输入”章节。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
只有防抖关闭的场景下,才可以调用接口进行绑定。
vi_pipe销毁的时候不会清除绑定关系,更改绑定关系前需要先清除上一次的绑定关系。
【举例】
无。
【相关主题】
无。
ss_mpi_mfusion_unbind_vi¶
【描述】
解绑定fusion和pipe、chn。
【语法】
td_s32 ss_mpi_mfusion_unbind_vi(const td_u32 fusion_id, ot_vi_pipe vi_pipe, ot_vi_chn vi_chn);
【参数】
参数名称 |
描述 |
输入/输出 |
|---|---|---|
fusion_id |
fusion 设备ID号。取值范围:[0, 1]。 |
输入 |
vi_pipe |
PIPE号。取值范围:[0, OT_VI_MAX_PIPE_NUM),参考《MPP 媒体处理软件 V5.0 开发参考》“视频输入”章节。 |
输入 |
vi_chn |
VI通道号。取值范围:[0, OT_VI_MAX_PHYS_CHN_NUM),参考《MPP 媒体处理软件 V5.0 开发参考》“视频输入”章节。 |
输入 |
【返回值】
返回值 |
描述 |
|---|---|
0 |
成功。 |
非0 |
失败,请参见错误码。 |
【需求】
头文件:ot_common_motionfusion.h、ss_mpi_motionfusion.h
库文件:libss_motionfusion.a
【注意】
只有防抖关闭的场景下,才可以调用接口进行解绑定。
vi_pipe销毁的时候不会清除绑定关系,更改绑定关系前需要先清除上一次的绑定关系。
【举例】
无。
【相关主题】
无。
数据类型¶
motionfusion模块相关数据类型定义如下:
OT_MFUSION_MAX_CHN_NUM:定义motionfusion最大通道数。
OT_MFUSION_AXIS_NUM:定义坐标轴数。
OT_MFUSION_MATRIX_NUM:定义motionfusion设备旋转矩阵的元素个数。
OT_MFUSION_MATRIX_TEMPERATURE_NUM:定义motionfusion设备的温飘系数矩阵的元素个数。
OT_MFUSION_TEMPERATURE_LUT_SAMPLES:定义motionfusion设备的温飘查找表的采样个数。
OT_MFUSION_TEMPERATURE_GYRO:定义Gyro温度计的设备掩码。
OT_MFUSION_TEMPERATURE_ACC:定义ACC温度计的设备掩码。
OT_MFUSION_TEMPERATURE_MAGN:定义磁力计温度计的设备掩码。
OT_MFUSION_TEMPERATURE_ALL:定义所有温度计的设备掩码。
OT_MFUSION_DEVICE_GYRO:定义Gyro的设备掩码。
OT_MFUSION_DEVICE_ACC:定义ACC的设备掩码。
OT_MFUSION_DEVICE_MAGN:定义磁力计的设备掩码。
OT_MFUSION_DEVICE_ALL:定义所有运动测量器件的设备掩码。
OT_MFUSION_SIXSIDE_MATRIX_GRADINT:定义六面标定矩阵元素的精度。
OT_MFUSION_ZERO_OFFSET_GRADINT:定义零偏参数的精度。
OT_MFUSION_TEMPERATURE_OFFSET_GRADINT:定义温飘参数的精度。
OT_MFUSION_COMMON_BUF_SIZE:定义motionfusion采样数据大小。
OT_MFUSION_LUT_STATUS_NUM:定义温飘查找表状态数目。
ot_mfusion_steady_detect_attr:定义IMU噪声和静止检测灵敏度参数类型。
ot_mfusion_attr:定义Motionfusion属性。
ot_mfusion_sample_data:定义Motionfusion的采样数据。
ot_mfusion_gyro_buf:定义Gyro的数据类型。
ot_mfusion_acc_buf:定义ACC的数据类型。
ot_mfusion_temperature_drift_mode:定义温飘模式。
ot_mfusion_temperature_drift_lut:定义温飘的查找表数据类型。
ot_mfusion_temperature_drift:定义温飘属性。
ot_mfusion_drift:定义零偏属性。
ot_mfusion_six_side_calibration:定义六面标定属性。
OT_MFUSION_MAX_CHN_NUM¶
【说明】
定义motionfusion最大通道数。
【定义】
#define OT_MFUSION_MAX_CHN_NUM 2
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_AXIS_NUM¶
【说明】
定义坐标轴数。
【定义】
#define OT_MFUSION_AXIS_NUM 3
【注意事项】
无。
【相关数据类型及接口】
OT_MFUSION_MATRIX_NUM¶
【说明】
定义Motionfusion设备旋转矩阵的元素个数。
【定义】
#define OT_MFUSION_MATRIX_NUM 9
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_MATRIX_TEMPERATURE_NUM¶
【说明】
定义motionfusion设备的温飘系数矩阵的元素个数。
【定义】
#define OT_MFUSION_MATRIX_TEMPERATURE_NUM 9
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_LUT_SAMPLES¶
【说明】
定义motionfusion设备的温飘查找表的采样个数。
【定义】
#define OT_MFUSION_TEMPERATURE_LUT_SAMPLES 30
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_GYRO¶
【说明】
定义Gyro温度计的设备掩码。
【定义】
#define OT_MFUSION_TEMPERATURE_GYRO 0x1
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_ACC¶
【说明】
定义ACC温度计的设备掩码。
【定义】
#define OT_MFUSION_TEMPERATURE_ACC 0x2
【注意事项】
暂不支持ACC的温度设置。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_MAGN¶
【说明】
定义磁力计温度计的设备掩码。
【定义】
#define OT_MFUSION_TEMPERATURE_MAGN 0x4
【注意事项】
暂不支持磁力计。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_ALL¶
【说明】
定义所有温度计的设备掩码。
【定义】
#define OT_MFUSION_TEMPERATURE_ALL 0x7
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_DEVICE_GYRO¶
【说明】
定义Gyro的设备掩码。
【定义】
#define OT_MFUSION_DEVICE_GYRO 0x1
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_DEVICE_ACC¶
【说明】
定义ACC的设备掩码。
【定义】
#define OT_MFUSION_DEVICE_ACC 0x2
【注意事项】
暂不支持ACC设备。
【相关数据类型及接口】
无。
OT_MFUSION_DEVICE_MAGN¶
【说明】
定义磁力计的设备掩码。
【定义】
#define OT_MFUSION_DEVICE_MAGN 0x4
【注意事项】
暂不支持磁力计。
【相关数据类型及接口】
无。
OT_MFUSION_DEVICE_ALL¶
【说明】
定义所有运动测量器件的设备掩码。
【定义】
#define OT_MFUSION_DEVICE_ALL 0x7
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_SIXSIDE_MATRIX_GRADINT¶
【说明】
定义六面标定矩阵元素的小数精度。
【定义】
#define OT_MFUSION_SIXSIDE_MATRIX_GRADINT 15
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_ZERO_OFFSET_GRADINT¶
【说明】
定义零偏参数的小数精度。
【定义】
#define OT_MFUSION_ZERO_OFFSET_GRADINT 15
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_TEMPERATURE_OFFSET_GRADINT¶
【说明】
定义温飘参数的小数精度。
【定义】
#define OT_MFUSION_TEMPERATURE_OFFSET_GRADINT 15
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_COMMON_BUF_SIZE¶
【说明】
定义motionfusion采样数据大小。
【定义】
#define OT_MFUSION_COMMON_BUF_SIZE 128
【注意事项】
无。
【相关数据类型及接口】
无。
OT_MFUSION_LUT_STATUS_NUM¶
【说明】
定义温飘查找表状态数目。
【定义】
#define OT_MFUSION_LUT_STATUS_NUM 2
【注意事项】
无。
【相关数据类型及接口】
无。
ot_mfusion_steady_detect_attr¶
【说明】
定义IMU噪声和静止检测灵敏度参数类型。
【定义】
typedef struct {
td_u32 steady_time_thr;
td_s32 gyro_offset;
td_s32 acc_offset;
td_s32 gyro_rms;
td_s32 acc_rms;
td_s32 gyro_offset_factor;
td_s32 acc_offset_factor;
td_s32 gyro_rms_factor;
td_s32 acc_rms_factor;
} ot_mfusion_steady_detect_attr;
【成员】
成员名称 |
描述 |
|---|---|
steady_time_thr |
静止状态时间阈值,单位为秒。连续检测到超过此配置时长的静止状态才启动在线温飘标定。 范围: [0, (1<<16)-1] 缺省值:3(录像机)或1(DV) |
gyro_offset |
GYRO零偏典型值(取绝对值,为正数),从数据手册中获取(Max value of Initial ZRO Tolerance), 单位为dps (degree per second), 精度同GYRO数据精度,即ADC WORD LENGTH -1。 范围: [0, 100 * (1<<15)] 缺省值:327680 |
acc_offset |
ACC零偏典型值(取绝对值,为正数),从数据手册中获取(Max value of Initial ZRO Tolerance),单位为g(一个重力加速度),精度同ACC数据精度,即ADC WORD LENGTH -1。 范围: [0, 0.5 * (1<<15)] 缺省值:3276 |
gyro_rms |
GYRO在当前低通滤波带宽下的RMS噪声典型值,可从数据手册中Rate Noise Spectral Density和当前配置低通滤波带宽计算得出。单位为dps-rms, 精度同GYRO数据精度,即ADC WORD LENGTH -1。 范围: [0, 0.5 * (1<<15)] 缺省值:1769 |
acc_rms |
ACC在当前低通滤波带宽下的RMS噪声典型值,可从数据手册中Rate Noise Spectral Density和当前配置低通滤波带宽计算得出。单位为g-rms, 精度同ACC数据精度,即ADC WORD LENGTH -1。 范围: [0, 0.005 * (1<<15)] 缺省值:44 |
gyro_offset_factor |
静止判断使用gyro_offset的灵敏度(放大倍数),值越大,对运动越不敏感。精度为4bit。 范围:[0, 1000 * (1<<4)] 缺省值:32 |
acc_offset_factor |
静止判断使用acc_offset的灵敏度(放大倍数),值越大,对运动越不敏感。精度为4bit。 范围:[0, 1000 * (1<<4)] 缺省值:32 |
gyro_rms_factor |
静止判断使用gyro_rms的灵敏度(放大倍数),值越大,对运动越不敏感。精度为4bit。 范围:[0, 1000 * (1<<4)] 缺省值:128(录像机)或 200(DV) |
acc_rms_factor |
静止判断使用acc_rms的灵敏度(放大倍数),值越大,对运动越不敏感。精度为4bit。 范围:[0, 1000 * (1<<4)] 缺省值:160(录像机)或1600(DV) |
【注意事项】
_录像机_与DV产品有不同的缺省值。该属性参数支持动态设置。
【相关数据类型及接口】
无。
ot_mfusion_attr¶
【说明】
定义motionfusion属性。
【定义】
typedef struct {
td_u32 device_mask;
td_u32 temperature_mask;
ot_mfusion_steady_detect_attr steady_detect_attr;
} ot_mfusion_attr;
【成员】
成员名称 |
描述 |
|---|---|
device_mask |
设备属性掩码。包括Gyro和ACC设备。 |
temperature_mask |
温度计掩码。包括陀螺仪温度计和ACC温度计。 |
steady_detect_attr |
IMU噪声和静止检测灵敏度参数。 |
【注意事项】
无。
【相关数据类型及接口】
无。
ot_mfusion_sample_data¶
【说明】
定义motionfusion的采样数据。
【定义】
typedef struct {
td_s32 x;
td_s32 y;
td_s32 z;
td_s32 temperature;
td_u64 pts;
} ot_mfusion_sample_data;
【成员】
成员名称 |
描述 |
|---|---|
x |
X轴数据。 |
y |
Y轴数据。 |
z |
Z轴数据。 |
temperature |
温度值。 |
pts |
显示时间戳。 |
【注意事项】
无。
【相关数据类型及接口】
无。
ot_mfusion_gyro_buf¶
【说明】
定义Gyro的数据类型。
【定义】
typedef struct {
ot_mfusion_sample_data gyro_data[OT_MFUSION_COMMON_BUF_SIZE];
td_u32 buf_data_num;
td_u32 buf_rep_num;
} ot_mfusion_gyro_buf;
【成员】
成员名称 |
描述 |
|---|---|
gyro_data |
Gyro数据数组。数组最大为OT_MFUSION_COMMON_BUF_SIZE |
buf_data_num |
Gyro数据数组有效个数。 |
buf_rep_num |
pts重叠的数据个数。 |
【注意事项】
无。
【相关数据类型及接口】
ot_mfusion_acc_buf¶
【说明】
定义ACC的数据类型。
【定义】
typedef struct {
ot_mfusion_sample_data acc_data[OT_MFUSION_COMMON_BUF_SIZE];
td_u32 buf_data_num;
td_u32 buf_rep_num;
} ot_mfusion_acc_buf;
【成员】
成员名称 |
描述 |
|---|---|
acc_data |
ACC数据数组。数组最大为OT_MFUSION_COMMON_BUF_SIZE |
buf_data_num |
Gyro数据数组有效个数。 |
buf_data_num |
pts重叠的数据个数。 |
【注意事项】
无。
【相关数据类型及接口】
ot_mfusion_temperature_drift_mode¶
【说明】
定义温飘模式。
【定义】
typedef enum {
OT_IMU_TEMPERATURE_DRIFT_CURV = 0,
OT_IMU_TEMPERATURE_DRIFT_LUT,
OT_IMU_TEMPERATURE_DRIFT_BUTT
} ot_mfusion_temperature_drift_mode;
【成员】
成员名称 |
描述 |
|---|---|
OT_IMU_TEMPERATURE_DRIFT_CURV |
温飘的多项式曲线模式。 |
OT_IMU_TEMPERATURE_DRIFT_LUT |
温飘的查找表模式。 |
【注意事项】
无。
【相关数据类型及接口】
无。
ot_mfusion_temperature_drift_lut¶
【说明】
定义温飘的查找表数据类型。
typedef struct {
td_s32 imu_lut[OT_MFUSION_TEMPERATURE_LUT_SAMPLES][OT_MFUSION_AXIS_NUM];
td_s32 gyro_lut_status[OT_MFUSION_TEMPERATURE_LUT_SAMPLES][OT_MFUSION_LUT_STATUS_NUM];
td_s32 range_min;
td_s32 range_max;
td_u32 step;
} ot_mfusion_temperature_drift_lut;
【成员】
成员名称 |
描述 |
|---|---|
imu_lut |
设备的温飘查找表数组。每个采样点下记录x、y、z三个轴的温飘数据。 |
gyro_lut_status |
温飘查找表的状态信息。 |
range_min |
温飘查找表的最小温度值。 |
range_max |
温飘查找表的最大温度值。 |
step |
温度采样间隔。单位:1/1024℃。 |
【注意事项】
首次初始化时,温飘查找表的状态信息需设置成INT_MAX(0x7fffffff)。
系统下电前需保存结构信息到flash,下次上电时将此信息设置到系统中。
【相关数据类型及接口】
ot_mfusion_temperature_drift¶
【说明】
定义温飘属性。
【定义】
typedef struct {
td_bool enable;
ot_mfusion_temperature_drift_mode mode;
union {
td_s32 temperature_matrix[OT_MFUSION_MATRIX_TEMPERATURE_NUM];
ot_mfusion_temperature_drift_lut temperature_lut;
};
}ot_mfusion_temperature_drift;
【成员】
成员名称 |
描述 |
|---|---|
enable |
温飘或在线温飘使能。 |
mode |
温飘模式,多项式系数拟合曲线模式或者查找表模式。 |
temperature_matrix |
多项式曲线模式的系数数组。 |
temperature_lut |
查找表结构体类型。 |
【注意事项】
无。
【相关数据类型及接口】
ot_mfusion_drift¶
【说明】
定义零偏属性。
【定义】
typedef struct {
td_bool enable;
td_s32 drift[OT_MFUSION_AXIS_NUM];
} ot_mfusion_drift;
【成员】
成员名称 |
描述 |
|---|---|
enable |
零偏或在线零偏使能。 |
drift |
零偏值。 |
【注意事项】
无。
【相关数据类型及接口】
ot_mfusion_six_side_calibration¶
【说明】
定义六面标定属性。
【定义】
typedef struct {
td_bool enable;
td_s32 matrix[OT_MFUSION_MATRIX_NUM];
} ot_mfusion_six_side_calibration;
【成员】
成员名称 |
描述 |
|---|---|
enable |
六面标定使能。 |
matrix |
六面标定值。 |
【注意事项】
无。
【相关数据类型及接口】
错误码¶
motionfusion API错误码如下所示。
表 1 motionfusion API错误码
错误代码 |
宏定义 |
描述 |
|---|---|---|
0xa038800b |
OT_ERR_MOTIONFUSION_NOT_CONFIG |
MOTIONFUSION未配置 |
0xa0388015 |
OT_ERR_MOTIONFUSION_NOBUF |
分配BUF失败 |
0xa0388016 |
OT_ERR_MOTIONFUSION_BUF_EMPTY |
数据缓存为空 |
0xa038800a |
OT_ERR_MOTIONFUSION_NULL_PTR |
空指针错误 |
0xa0388007 |
OT_ERR_MOTIONFUSION_ILLEGAL_PARAM |
MOTIONFUSION参数设置无效 |
0xa0388017 |
OT_ERR_MOTIONFUSION_BUF_FULL |
数据缓存溢出 |
0xa0388018 |
OT_ERR_MOTIONFUSION_SYS_NOTREADY |
系统未初始化 |
0xa038800c |
OT_ERR_MOTIONFUSION_NOT_SUPPORT |
操作不支持 |
0xa038800d |
OT_ERR_MOTIONFUSION_NOT_PERMITTED |
操作被禁止 |
0xa0388022 |
OT_ERR_MOTIONFUSION_BUSY |
MOTIONFUSION系统忙 |
0xa0388003 |
OT_ERR_MOTIONFUSION_INVALID_CHNID |
无效的通道ID |
0xa0388009 |
OT_ERR_MOTIONFUSION_CHN_UNEXIST |
通道未创建 |
0xa0388030 |
OT_ERR_MOTIONFUSION_GYRO_NOTWORK |
陀螺仪未工作 |
0xa0388031 |
OT_ERR_MOTIONFUSION_ACC_NOTWORK |
加速度计未工作 |
0xa0388032 |
OT_ERR_MOTIONFUSION_INVALID_MODE |
无效的工作模式 |
0xa0388033 |
OT_ERR_MOTIONFUSION_INVALID_USECASE |
无效的使用场景 |
Proc调试信息说明¶
motionsensor proc¶
motionsensor_chip proc¶
【调试信息】
[motionsensor] version:[motionsensor_chip debug 0.0.0.1], build time[Aug 17 2021, 14:53:42]
--------------------------common parameter-----------------------------
trigle_mode fifo_en
TIMER 1
------------------------------gyro parameter------------------------------
sample_rate full-scale-range datawidth max-chip-temperature min-chip-temperature
1000 1024000 16 85 -40
------------------------------accelerometer parameter----------------------
sample_rate full-scale-range datawidth max-chip-temperature min-chip-temperature
1000 16384 16 85 -40
【参数说明】
参数 |
描述 |
|
|---|---|---|
common parameter |
trigle_mode |
获取陀螺仪数据的触发方式:TRIGER_TIMER:定时器触发。 TRIGER_EXTERN_INTERRUPT:外部中断触发。 |
fifo_en |
1:使用陀螺仪内部的fifo 0:不使用陀螺仪内部的fifo |
|
gyro parameter |
sample_rate |
陀螺仪采样率 |
full-scale-range |
陀螺仪量程 |
|
datawidth |
陀螺仪数据位宽 |
|
max-chip-temperature |
陀螺仪芯片最大温度 |
|
min-chip-temperature |
陀螺仪芯片最小温度 |
|
accelerometer parameter |
sample_rate |
加速度计采样率 |
full-scale-range |
加速度计量程 |
|
datawidth |
加速度计数据位宽 |
|
max-chip-temperature |
加速度计芯片最大温度 |
|
min-chip-temperature |
加速度计芯片最小温度 |
|
motionsensor_mng proc¶
【调试信息】
[motionsensor] version:[motionsensor_mng debug V0.0.0.1], build time[Aug 17 2021, 14:53:38]
---------------------gyro sensor name---------------------
---------------------gyro sensor param--------------------
buf_addr buf_size overflow data_unmatch overflow_id data_unmatch_id
ffffff8011a00000 999936 0 0 0 0
---------------------gyro sensor addr---------------------
start_addr write_addr
x ffffff8011a00000 ffffff8011a014a8
y ffffff8011a28b00 ffffff8011a29fa8
z ffffff8011a51600 ffffff8011a52aa8
temp ffffff8011a7a100 ffffff8011a7b5a8
pts ffffff8011aa2c00 ffffff8011aa5550
---------------------acc sensor name---------------------
---------------------acc sensor param---------------------
buf_addr buf_size overflow data_unmatch overflow_id data_unmatch_id
ffffff8011af4200 999936 0 0 0 0
---------------------acc sensor addr---------------------
start_addr write_addr
x ffffff8011af4200 ffffff8011af56a8
y ffffff8011b1cd00 ffffff8011b1e1a8
z ffffff8011b45800 ffffff8011b46ca8
temp ffffff8011b6e300 ffffff8011b6f7a8
pts ffffff8011b96e00 ffffff8011b99750
【参数说明】
参数 |
描述 |
|
|---|---|---|
gyro sensor name |
gyro sensor name |
陀螺仪传感器名称。 |
gyro sensor param |
buf_addr |
陀螺仪缓存数据的起始地址。 |
buf_size |
陀螺仪缓存大小。 |
|
overflow |
陀螺仪缓存溢出次数(write指针追赶上read指针的次数)。 |
|
data_unmatch |
陀螺仪数据不匹配次数(根据begin_pts和end_pts从陀螺仪缓存中未获取到数据的次数)。 |
|
overflow_id |
陀螺仪缓存溢出的motionsensor用户id。 |
|
data_unmatch_id |
陀螺仪数据不匹配motionsensor用户id。 |
|
gyro sensor addr |
start_addr |
陀螺仪x、y、z、temperature、pts数据在缓存中的起始地址。 |
write_addr |
陀螺仪x、y、z、temperature、pts数据在缓存中的写地址。 |
|
acc sensor name |
acc sensor name |
加速度计传感器名称。 |
acc sensor param |
buf_addr |
加速度计缓存数据的起始地址。 |
buf_size |
加速度计缓存大小。 |
|
overflow |
加速度计缓存溢出次数(write指针追赶上read指针的次数)。 |
|
data_unmatch |
加速度计数据不匹配次数(根据begin_pts和end_pts从加速度计缓存中未获取到数据的次数)。 |
|
overflow_id |
加速度计缓存溢出的motionsensor用户id。 |
|
data_unmatch_id |
加速度计数据不匹配motionsensor用户id。 |
|
acc sensor addr |
start_addr |
加速度计x、y、z、temperature、pts数据分别在缓存中的起始地址。 |
write_addr |
加速度计x、y、z、temperature、pts数据分别在缓存中的写地址。 |
|
motionfusion proc¶
【调试信息】
[MFUSION] Version: [V1.0.0.0 B010 Release]
----------------------------------------motionfusion[0] public attr--------------------------------------------------------
usecase mode gyro acc magn temp_gyro temp_acc temp_magn
normal stable Y Y N Y Y N
steady_time_thr gyro_offset acc_offset gyro_rms acc_rms
1 327680 3276 1769 44
gyro_offset_factor acc_offset_factor gyro_rms_factor acc_rms_factor
32 32 200 1600
----------------------------------------motionfusion[0] gyro sixside cal status--------------------------------------------
enable : Y
rotation_matrix : -32768 0 0 0 32768 0 0 0 -32768
----------------------------------------motionfusion[0] gyro drift cal status----------------------------------------------
enable : N
----------------------------------------motionfusion[0] gyro online drift cal status---------------------------------------
enable : Y (矫正模式仅能开一种,此处仅作演示)
gyro_drift : 36 -99 41
online_gyro_data_mean : 0 0 0
----------------------------------------motionfusion[0] gyro temp drift cal status-----------------------------------------
enable : N
----------------------------------------motionfusion[0] gyro online temp drift cal status----------------------------------
enable : Y
mode : lut
param :range_min:20480, range_max:79872, step:2048
temp_lut :
x y z time nearest temp temp
-9045 -18540 -10471 2147483647 2147483647 20
-9045 -18540 -10471 2147483647 2147483647 22
-9045 -18540 -10471 2147483647 2147483647 24
-9045 -18540 -10471 2147483647 2147483647 26
-9045 -18540 -10471 1185 1140 28
-8996 -21218 -10207 1165 1 30
-8357 -25524 -10439 1110 36 32
-8254 -28758 -10248 990 4 34
-8943 -28658 -10618 645 2 36
-9246 -27259 -10354 45 1374 38
-9246 -27259 -10354 2147483647 2147483647 40
-9246 -27259 -10354 2147483647 2147483647 42
-9246 -27259 -10354 2147483647 2147483647 44
-9246 -27259 -10354 2147483647 2147483647 46
-9246 -27259 -10354 2147483647 2147483647 48
-9246 -27259 -10354 2147483647 2147483647 50
-9246 -27259 -10354 2147483647 2147483647 52
-9246 -27259 -10354 2147483647 2147483647 54
-9246 -27259 -10354 2147483647 2147483647 56
-9246 -27259 -10354 2147483647 2147483647 58
-9246 -27259 -10354 2147483647 2147483647 60
-9246 -27259 -10354 2147483647 2147483647 62
-9246 -27259 -10354 2147483647 2147483647 64
-9246 -27259 -10354 2147483647 2147483647 66
-9246 -27259 -10354 2147483647 2147483647 68
-9246 -27259 -10354 2147483647 2147483647 70
-9246 -27259 -10354 2147483647 2147483647 72
-9246 -27259 -10354 2147483647 2147483647 74
-9246 -27259 -10354 2147483647 2147483647 76
-9246 -27259 -10354 2147483647 2147483647 78
----------------------------------------motionfusion[0] acc sixside cal status---------------------------------------------
enable : N
----------------------------------------motionfusion[0] acc drift cal status-----------------------------------------------
enable : N
----------------------------------------motionfusion[0] acc temp drift cal status------------------------------------------
enable : N
----------------------------------------motionfusion[0] bind status-----------------------------------------------------
bind_valid vi_pipe vi_chn
Y 0 0
----------------------------------------motionfusion[0] drv status---------------------------------------------------------
gyro config : sample_rate data_range data_precbit temp_data_min temp_data_max bit_width
1000 1024000 16 -40 85 16
acc config : sample_rate data_range data_precbit temp_data_min temp_data_max bit_width
1000 16384 16 -40 85 16
magn config : sample_rate
0
cam status : steady
----------------------------------------user 0 gyro_data-----------------------------------------------------------------------
begin_pts:487179113, end_pts:487213746, gyro_data num:35
x y z temp pts
-30 -168 -50 28611 487179113
-29 -168 -41 28611 487180111
-24 -169 -32 28611 487181109
-16 -168 -25 28611 487182107
-8 -165 -20 28611 487183105
-12 -167 -18 28611 487184103
-14 -167 -22 28611 487185101
-4 -169 -25 28611 487186099
4 -175 -28 28611 487187097
0 -175 -30 28611 487188095
-6 -169 -36 28611 487189093
-6 -166 -35 28611 487190091
5 -172 -35 28611 487191089
13 -176 -44 28611 487192087
11 -170 -55 28611 487193085
-4 -161 -55 28611 487194083
-3 -164 -35 28611 487195081
12 -170 -18 28611 487196081
18 -172 -19 28611 487197081
5 -166 -24 28611 487198081
-4 -156 -20 28611 487199081
2 -155 -28 28611 487200081
10 -162 -42 28611 487201081
7 -165 -52 28611 487202081
0 -160 -50 28611 487203081
-1 -159 -33 28611 487204081
2 -163 -19 28611 487205081
10 -162 -21 28611 487206081
7 -164 -36 28611 487207081
8 -168 -43 28611 487208081
12 -170 -41 28611 487209081
6 -173 -42 28611 487210081
-6 -166 -45 28611 487211081
-17 -156 -52 28611 487212081
-23 -151 -54 28611 487213081
x_mean y_mean z_mean temp_mean pts_step_mean
-2 -164 -35 28611 999
x_variance y_variance z_variance temp_variance pts_step_variance
152 39 146 0 1
【参数说明】
参数 |
描述 |
|
|---|---|---|
motionfusion[0] public attr |
usecase |
使用场景: normal:普通模式。 stitch:拼接模式(暂不支持)。 |
mode |
防抖模式 stable:运动DV模式。 camsteady:录像机模式。 |
|
gyro |
陀螺仪开关。 |
|
acc |
加速度计开关。 |
|
magn |
磁力计开关(暂不支持)。 |
|
temp_gyro |
陀螺仪温度开关。 |
|
temp_acc |
加速度计温度开关。 |
|
temp_magn |
磁力计温度开关(暂不支持)。 |
|
steady_time_thr |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
gyro_offset |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
acc_offset |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
gyro_rms |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
acc_rms |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
gyro_offset_factor |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
acc_offset_factor |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
gyro_rms_factor |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
acc_rms_factor |
静止检测参数,参考本文档ot_mfusion_steady_detect_attr的描述。 |
|
motionfusion[0] gyro sixside cal status |
enable |
陀螺仪六面标定使能开关。 |
rotation_matrix |
陀螺仪六面标定矩阵。 |
|
motionfusion[0] gyro drift cal status |
enable |
陀螺仪零偏开关。 |
gyro_drift |
陀螺仪零偏值。 |
|
motionfusion[0] gyro online drift cal status |
enable |
陀螺仪在线零偏开关。 |
gyro_drift |
陀螺仪在线零偏值。 |
|
online_gyro_data_mean |
陀螺仪的漂移值。 |
|
motionfusion[0] gyro temp drift cal status |
enable |
陀螺仪温飘开关。 |
mode |
陀螺仪温飘模式: curv:多项式模式。 lut:查找表模式。 |
|
matrix |
多项式系数矩阵(curv模式显示)。 |
|
lut |
温飘表(lut模式显示)。 |
|
motionfusion[0] gyro online temp drift cal status |
enable |
陀螺仪在线温飘开关。 |
mode |
陀螺仪在线温飘模式: curv:多项式模式。 lut:查找表模式。 |
|
matrix |
多项式系数矩阵(curv模式显示)。 |
|
param: range_min |
温飘表的最小温度,精度2^10(lut模式显示)。 |
|
param: range_max |
温飘表的最大温度,精度2^10(lut模式显示)。 |
|
param: step |
温飘表的step,精度2^10(lut模式显示)。 |
|
temp_lut |
温飘表(lut模式显示)。 |
|
motionfusion[0] acc sixside cal status |
enable |
加速度计六面标定使能开关。 |
rotation_matrix |
加速度计六面标定矩阵。 |
|
motionfusion[0] acc drift cal status |
enable |
加速度计零偏开关。 |
acc_drift |
加速度计零偏值。 |
|
motionfusion[0] acc temp drift cal status |
enable |
加速度计温飘开关。 |
acc_temp_drift |
加速度计温飘值。 |
|
motionfusion[0] bind status |
bind_valid |
绑定关系有效性。 |
vi_pipe |
VI PIPE号。 |
|
vi_chn |
VI通道号。 |
|
motionfusion[0] drv status |
gyro config:sample_rate |
陀螺仪采样率。 |
gyro config:data_range |
陀螺仪量程。 |
|
gyro config:data_precbit |
陀螺仪数据位宽。 |
|
gyro config:temp_data_min |
陀螺仪芯片温度最小值。 |
|
gyro config:temp_data_max |
陀螺仪芯片温度最大值。 |
|
gyro config:bit_width |
陀螺仪数据位宽。 |
|
acc config:sample_rate |
加速度计采样率。 |
|
acc config:data_range |
加速度计量程。 |
|
acc config:data_precbit |
加速度计数据位宽。 |
|
acc config:temp_data_min |
加速度计芯片温度最小值。 |
|
acc config:temp_data_max |
加速度计芯片温度最大值。 |
|
acc config:bit_width |
加速度计数据位宽。 |
|
magn config:sample_rate |
磁力计采样率。(暂不支持) |
|
cam status |
陀螺仪静止检测的结果: steady:静止。 moving:运动。 |
|
user 0 gyro_data |
begin_pts |
当前帧获取陀螺仪数据的起始时间戳。 |
end_pts |
当前帧获取陀螺仪数据的结束时间戳。 |
|
gyro_data num |
当前帧获取陀螺仪数据的数目。 |
|
x,y,z,temp,pts |
当前帧获取陀螺仪数据值。 |
|
x_mean,y_mean,z_mean,temp_mean,pts_step_mean |
统计帧获取陀螺仪数据的平均值。 |
|
x_variance,y_variance,z_variance,temp_variance,pts_step_variance |
统计帧获取陀螺仪数据的方差。 |
|
gyrodis proc¶
【调试信息】
[GYRODIS] version: [V2.0.2.0 B010 Release], build time[May 30 2022, 15:20:24]
----------------------------------------gyrodis public attr of chn[0]---------------------------------------------------
is_remove_distortion is_stabilization
1 1
hmax_times time_delay exposure_time mirror_en flip_en
14405 -2700 33189 0 0
valid_dt_var max_dt_var vmax
20 1000 2314
gyro_data_range gyro_data_precbits
256000 15
----------------------------------------frame pts info of chn[0]--------------------------------------------------------
frm_pts frm_pts_after_ave frm_pts_diff frm_pts_diff_max frm_pts_diff_min
12562620897 12562620897 33296 33296 33295
【参数说明】
参数 |
描述 |
|
|---|---|---|
gyrodis public attr of chn[0] |
is_remove_distortion |
是否移除最终防抖LDC效果。 |
is_stabilization |
是否使能防抖。 |
|
hmax_times |
Sensor读出一行的时间,相关描述参考《ISP 开发参考》。单位:ns。 |
|
time_delay |
陀螺仪与图像时间差。参考《DIS调试指南》。 |
|
exposure_time |
曝光时间。 |
|
mirror_en |
镜像使能状态。 |
|
flip_en |
翻转使能状态。 |
|
valid_dt_var |
合理的帧时间戳的波动。 |
|
max_dt_var |
允许的最大的帧时间戳的波动。 |
|
vmax |
Sensor每帧实际生效的总行数,相关描述参考《ISP 开发参考》。 |
|
gyro_data_range |
陀螺仪量程。 |
|
gyro_data_precbits |
陀螺仪数据精度。 |
|
frame pts info of chn[0] |
frm_pts |
输入gyrodis的帧时间戳。 |
frm_pts_after_ave |
取平均后的帧时间戳。 |
|
frm_pts_diff |
与上一帧的时间戳间隔。 |
|
frm_pts_diff_max |
与上一帧的时间戳差值最大值。 |
|
frm_pts_diff_min |
与上一帧的时间戳差值最小值。 |
|
缩略语¶
缩略语 |
说明 |
|---|---|
Gyro |
Gyroscope 陀螺仪 |
ACC |
Accelerometer 加速度计 |
PTS |
Presentation Time Stamp 显示时间戳 |
IMU |
Inertial Measurement Unit 惯性测量单元 |