搜索
bottom↓
回复: 16

关于AHRSupdate算法的问题

[复制链接]

出0入0汤圆

发表于 2014-11-12 14:13:02 | 显示全部楼层 |阅读模式
我用了AHRSupdate这个算法来做姿态融合,但是Yaw值在变化之后会回到一个固定值,Pitch和Roll都没有这儿问题,请问有知道解决方案的吗?

阿莫论坛20周年了!感谢大家的支持与爱护!!

阿莫论坛才是最爱国的,关心国家的经济、社会的发展、担心国家被别国牵连卷入战争、知道珍惜来之不易的和平发展,知道师夷之长,关注世界的先进文化与技术,也探讨中国文化的博大精深,也懂得警惕民粹主义的祸国殃民等等等等,无不是爱国忧民的表现。(坛友:tianxian)

出0入0汤圆

发表于 2014-11-12 14:56:40 | 显示全部楼层
http://www.amobbs.com/forum.php? ... ighlight=AHRSupdate这个帖子的楼主也是遇到了相同的问题,
看帖子貌似还没解决 期待高手能够解答

出0入0汤圆

发表于 2014-11-17 19:57:58 来自手机 | 显示全部楼层
YAW轴的磁计和GYRO的符号反了就会出这个问题

出0入0汤圆

 楼主| 发表于 2014-11-17 21:50:32 | 显示全部楼层
cw628 发表于 2014-11-17 19:57
YAW轴的磁计和GYRO的符号反了就会出这个问题

检查下的,谢谢

出0入0汤圆

 楼主| 发表于 2014-11-18 09:20:33 | 显示全部楼层
cw628 发表于 2014-11-17 19:57
YAW轴的磁计和GYRO的符号反了就会出这个问题

请问你指的Yaw轴磁机和GYRO符号是在哪个部分的?因为我看AHRSupdate的代码里面是用加速度计和磁力计去修正陀螺仪,然后用修正后的GyRo值去更新四元数,如果Yaw的磁力和Gyro符号改了,也会影响到Pitch和Roll的符号呢

出0入0汤圆

发表于 2014-11-18 11:20:19 | 显示全部楼层
不懂帮顶

出0入0汤圆

发表于 2014-11-18 13:25:02 | 显示全部楼层
不懂帮顶

出0入0汤圆

 楼主| 发表于 2014-11-20 09:23:57 | 显示全部楼层
顶上,大家帮忙给点指导意见啊

出0入0汤圆

发表于 2014-11-20 15:49:22 来自手机 | 显示全部楼层
不一定都反了,也许z轴没反所以不会影响到俯仰和翻滚,你把x.y.z按前左上为正传入函数试试,各轴正方向和解算函数不一致会这样

出0入0汤圆

发表于 2014-11-20 20:01:51 | 显示全部楼层
bygreencn 发表于 2014-11-20 09:23
顶上,大家帮忙给点指导意见啊

我没有回短信的权限,看你读磁力计的代码,看你芯片的DATASHEET,看各轴的正方向定义,简单试你可以把磁力计读数代码的MY值前加符号,MY=-MY,X轴也是一样,如果你不看DATASHEET定义的话就得一个一个试了,比如你的程序是按X轴向北是正数,Y轴向东是正数,而你的解算函数要求Y轴向西是负数,你就需要先把Y轴读书取-Y再进行解算

出0入0汤圆

发表于 2014-12-11 18:38:41 | 显示全部楼层
把陀螺的数据加个负号后,输入到解算函数中,你看看效果就清楚了

出0入0汤圆

发表于 2014-12-30 05:19:55 | 显示全部楼层
你的罗盘没有校正

出0入0汤圆

发表于 2015-1-4 19:51:42 | 显示全部楼层
使用他人现成的算法需要弄清楚几个问题:
1、AHRSUpdate中使用的陀螺仪、加速度计、磁强计的三轴是定义为什么方向,算法的输入输出物理意义是什么,测量值的正向及角度的正向都是怎样定义的?
2、姿态是相对于哪个坐标系来说的?东北天,北东地还是北西天等等,所有的角度都是相对于某个具体的坐标系来说的,这个需要弄清楚。
3、算法的输入是否有范围的限制?
通常算法本身没问题的话,都是嫁接中违反了算法的使用条件造成的。但也有可能算法输入有问题,也就是传感器的输出,传感器的输出可以独立的检查。

出0入0汤圆

发表于 2015-1-6 13:54:49 | 显示全部楼层
本帖最后由 谎言而上 于 2015-1-6 15:24 编辑
jr9910 发表于 2015-1-4 19:51
使用他人现成的算法需要弄清楚几个问题:
1、AHRSUpdate中使用的陀螺仪、加速度计、磁强计的三轴是定义为什 ...


请问IMUupdate算法中陀螺仪和加速度计的三轴定义方向是什么?
对加速度而言是东北天吗?

出0入0汤圆

发表于 2015-1-7 14:14:54 | 显示全部楼层
谎言而上 发表于 2015-1-6 13:54
请问IMUupdate算法中陀螺仪和加速度计的三轴定义方向是什么?
对加速度而言是东北天吗? ...

不好意思,没有看过这个代码。只是提示你需要注意这些问题而已。

出0入0汤圆

发表于 2015-1-7 14:50:17 | 显示全部楼层
jr9910 发表于 2015-1-7 14:14
不好意思,没有看过这个代码。只是提示你需要注意这些问题而已。

知道了 谢谢提醒,我之前没注意到这些问题。

出0入0汤圆

发表于 2017-12-26 15:48:57 | 显示全部楼层
我调试也遇到过,后来调整了算法和积分时间就恢复正常了,具体代码改动如下
//ex = (ay*vz - az*vy) ;                                               //???????????????
  //ey = (az*vx - ax*vz) ;
  //ez = (ax*vy - ay*vx) ;

   ex = (ay*vz - az*vy) + (my*wz - mz*wy);  
   ey = (az*vx - ax*vz) + (mz*wx - mx*wz);  
   ez = (ax*vy - ay*vx) + (mx*wy - my*wx);

  exInt = exInt + ex * Ki*halfT;                                //???????
  eyInt = eyInt + ey * Ki*halfT;
  ezInt = ezInt + ez * Ki*halfT;

  //exInt = exInt + ex * Ki;                                //???????
  //eyInt = eyInt + ey * Ki;
  //ezInt = ezInt + ez * Ki;

  // adjusted gyroscope measurements
  gx = gx + Kp*ex + exInt;                                              //???PI???????,???????
  gy = gy + Kp*ey + eyInt;
  gz = gz + Kp*ez + ezInt;   

我用的东北天坐标系,不知道跟你的是否一致
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-16 15:08

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表