首页 > 编程知识 正文

db612调试投影融合说明,n1912a功率计中文使用手册

时间:2023-05-03 08:49:23 阅读:174267 作者:3575

产品需要姿势传感器,使用的是MPU9250。 主要是找不到太多算法库。 自己写是不可能的。 欧拉角,四要素计算反正也不知道,想快点,一步一步地前进。

硬件工程师使用了IIC接口。

1 .首次调试使用了官方提供的mpl例程,移植后俯仰和滚动均正常,主要是YAW方位。 每次重新启动芯片,YAW为0,试图旋转芯片的值也将发生变化。 也就是说,放置0不太正确。 毕竟9250是9轴磁力仪,每次重启计算的YAW应该从重启前就偏离了正北的角度。

2 .随后复查mpl文档,发现mpl需要对磁力仪进行8字校准,mpl将磁力仪融合到Yaw中。 如果否,Yaw是6轴融合的结果。 尝试了以下8字校准,不知道是不是环境中磁场干扰的关系,特别难校准,校准后融合磁力仪,得到了理想的Yaw。 但是,该校准值似乎会被记住,并在重新启动时传输到mpl以继续使用。 我没有实现。 因为需要产品,所以想找一个校准的简单方法,这样就不能使用mpl库了。

3 .开始了漫长的寻找库的过程。 主要是找可以融合磁力仪的计算方法,找了尺寸论坛。 基本上是copy的mpl库。 特别是某莫,虽然付了几百元,但总之没有翻成有价值的东西。 听说后来改版了,钱也化为泡影,这都是后来的事了。

4 .在git上找到了救命稻草。

33559 github.com/Kris winer/MPU 9250

移植这个例行程序的,主要是免费的,开源是伟大的。

例行程序比较简洁,首先进行校准、陀螺仪和重力。 磁力仪的校正没有仔细看,所以在这里改变了自己的校正方式。

我的磁力仪校准思路是在校准时进行三个轴面的采样,每个轴面校准两个磁力仪的轴向。 例如在水平面上采集x、y; 每个平面分为4个象限(要求高的情况下可以分为8个),判断每个象限采集了足够的点,判断采集完成。 收集流程记录点的最大值和最小值后,将找到中心点。 中心点的值为磁力计的校正值。

关于象限的判断,例如在水平面采样中,不使用z。 计算方法:判断Atan2(x,y )/)2*ACOS(-1 ) ) 360方位角转速,再判断象限。 校对这些值后,可以创建结构并编写flash。 我下次也会用那个。

最后

虽然例行程序中似乎存在错误,但选择坐标系时磁强计的坐标系与其他6个轴不一致,也与右手定理不一致。

将磁力计的z轴颠倒过来,不用例行程序。 的Yaw比较稳定,方向与手机磁力仪基本相同。

使用的坐标系:

原例行磁力仪为mag[1]mag[0]mag[2]。

该库还很稳定,Yaw在小范围内漂移,漂到一定范围后自己修正。 虽然比较公式的mpl计算值确实存在风险,但对本公司产品的Yaw要求并不高,区分东西南北还是有余地的。

在git评论区看到了同样的疑问,但作者还没有回复。 可能是臭虫。

结束

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。