发个自己做的UD分解+强跟踪卡尔曼滤波做的双轴姿态测量
http://v.youku.com/v_show/id_XNDg4MDgxMjcy.html这次采用的算法是UD分解+强跟踪卡尔曼滤波,采用陀螺+加速度传感器的数据融合。之所以不采用磁是因为磁虽然也可以稳定航向角,但是误差都会比较大,加速度传感器虽然融合后不能很好的抑制航向漂移,但是却能很好的抑制俯仰和滚转,采用加表融合航向误差最高做到5min漂1°。 磁融合误差加大,但是也可以抑制漂移,有空也上磁融合的视频。 请教LZ 基本思想是用加速计敏感重力加速度作为俯仰/横滚的测量基准,来修正陀螺仪的吗?
这样的话机体自身的线加速度是没有考虑的,能解释下么? 3Q~ 我de2012 发表于 2012-12-15 16:21 static/image/common/back.gif
请教LZ 基本思想是用加速计敏感重力加速度作为俯仰/横滚的测量基准,来修正陀螺仪的吗?
这样的话机体自 ...
终于有人回复了帖子了,欣慰啊。关于这个问题,朋友你提的很好。 加速度传感器里面会有线加速度加入,向心力加入。我程序里考虑了向心力,线加速度没有考虑。主要是我设想的应用环境不同,我这个主要是为了做双轴稳向,在飞行中加速度并不大,不会对姿态造成很大的影响。如果是应用在人体测量,那么我会针对这个对线加速度进行去除的。 本帖最后由 kmani 于 2012-12-16 10:56 编辑
asha 发表于 2012-12-16 10:31 static/image/common/back.gif
终于有人回复了帖子了,欣慰啊。关于这个问题,朋友你提的很好。 加速度传感器里面会有线加速度加入,向 ...
考虑线加速度的话,很难计算,或者是根本求不出来准确解。
先简单点,直立小车用的单轴角度融合。
有水平方向加速度Ah,竖直方向加速度Av,还有一个未知量倾斜角β,而加速度计只能测出两个量。两个已经量三个未知数是无法准确解出来的。
现在大家用加速度融合求角度,基本都是忽略这个,或者那个,然后求出来了个理想情况下的解。一旦某个方向的加速度过大,测得误差就比较大了。 kmani 发表于 2012-12-16 10:53 static/image/common/back.gif
考虑线加速度的话,很难计算,或者是根本求不出来准确解。
先简单点,直立小车用的单轴角度融合。
有水平 ...
线加速度可以解出来,你没有解出来是因为你没有得到正确的方法。 本帖最后由 kmani 于 2012-12-16 12:38 编辑
asha 发表于 2012-12-16 12:24 static/image/common/back.gif
线加速度可以解出来,你没有解出来是因为你没有得到正确的方法。
看清了我说的是准确解出来。我也有办法解出线加速度,但是那不是准确解。只是一个近似解。
要是可以的话,你给一个公式出来?
还有你说考虑了向心力.... kmani 发表于 2012-12-16 12:33 static/image/common/back.gif
笑而不语!
你可以去查下惯性导航上面,比力方程这个。相信会很有帮助,关于你说的不能解是因为你的两个角度都是用加表计算得到了,这个陀螺+加表数据融合有很大不同。比如说吧,当有加速度时,3轴的加表输出比力平方和不等于g,这个时候你可以用上时刻的姿态或者这个时刻不进行数据融合,对线加速度进行结算,那么你就可以减小误差。 asha 发表于 2012-12-16 12:38 static/image/common/back.gif
你可以去查下惯性导航上面,比力方程这个。相信会很有帮助,关于你说的不能解是因为你的两个角度都是用加 ...
你这样算是准确解?我推了单轴的公式,是得不到准确解的! kmani 发表于 2012-12-16 12:40 static/image/common/back.gif
你这样算是准确解?我推了单轴的公式,是得不到准确解的!
不会很准确,但是误差可以控制。单轴你解不出来 asha 发表于 2012-12-16 12:41 static/image/common/back.gif
不会很准确,但是误差可以控制。单轴你解不出来
我第一次就说了得不到准确解,你还说可以算出来,只是我没有正确的方法!
你考虑向心力也只是考虑了一部分向心力,还有一个向心力是无法准确考虑的,但是那个影响很小,可以忽略,不过这个是次要问题。 kmani 发表于 2012-12-16 12:45 static/image/common/back.gif
我第一次就说了得不到准确解,你还说可以算出来,只是我没有正确的方法!
你考虑向心力也只是考虑了一部 ...
可不可以算和算出来精确不精确没有关系,而且任何测量设备和方法都会有误差。 我开始也说了,我这个是为了做稳向用的。 如果做人体姿态测量我会加上我的方法,算法只能减小误差不能做的超级精确,如果你认为我做的还不够精确,那你可以做个让大家看看。 我也顺便学习一下 呵呵 我现在还没弄明白 也接不上话啊
弄清楚 再跟两位讨论一下
我de2012 发表于 2012-12-16 17:07 static/image/common/back.gif
呵呵 我现在还没弄明白 也接不上话啊
弄清楚 再跟两位讨论一下
其实这姿态解算没啥难的,用高中的力学就可以推出公式。 我de2012 发表于 2012-12-16 17:07 static/image/common/back.gif
呵呵 我现在还没弄明白 也接不上话啊
弄清楚 再跟两位讨论一下
惯性说简单也简单,说难也难。 不过凡是说惯性简单的,肯定很水,没有见过世面。 呵呵, 共同努力吧。我干惯性已经干了3年了,研究也是学这个,共6年,也才入门。 不用着急 楼主是我在阿莫上见到做惯导最专业的 我现在只是用别人做的ekf 还不能很理解 原来用的是别的算法做的
现在出现一个问题 :过于相信加速度计 也就是说 器件有个加速度马上出现较大偏角 能不能帮我分析下是什么原因
现在用的是CH Robotics的EKF代码 500hz做状态估算 100hz结合加计做融合 感觉是卡尔曼增益过大又不知是什么原因 本帖最后由 kmani 于 2012-12-17 19:14 编辑
呵呵,前辈能不卖老,给自己留点底儿。
也不知道是谁一开始就装,我说的条件都没看清就开始装!
我们这里从来都不缺砖家和xx。不知砖家和XX能不能用正确的方法解出准确解。 kmani 发表于 2012-12-16 22:53 static/image/common/back.gif
呵呵,前辈能咱不卖老,给自己留点底儿。
也不知道是谁一开始就装,我说的条件都没看清就开始装!
我们这里 ...
我没有装,倒是你装的过了头。我看你说的那么大言不惭,这简单那不难。拜读了下你发的帖子学习下,发现学的时间不足不说,观点也很多不对。 这让我很反感,学的不足没关系,可是一上面就装,还没有干点什么就来砸人家场子,我感觉这样不好。你说是么? 还有就是,你说我卖老。 我告诉你,我还不老,就是比你年龄大点。看你还用自己的相片做头像,年龄应该不大吧。 哈哈,对于你对技术的爱好我还是很看好的。 EdwardKe 发表于 2012-12-16 21:33 static/image/common/back.gif
楼主是我在阿莫上见到做惯导最专业的 我现在只是用别人做的ekf 还不能很理解 原来用的是别的算法 ...
专家谈不上,就是靠这个吃饭的罢了。 你说的问题是的,过于依赖加速度传感器会出现误差加大。 如果要用加速度传感器做融合,主要是应用环境中,1.没有过大的外部加速度;2.如果外部有大的加速度,应该剔除这部分加速度数据,或者计算得到这个外部加速度,这部分可以参照 秦永元 惯性导航一书上的比力方程部分。或许有人要问,我得不到。 那是因为可能在他们的硬件构架中没有陀螺,只是用的加速度传感器,而我的里面有陀螺和加速度传感器。可以再短时间内不依靠加速度传感器也能够得到比较精确的姿态,根据比力方程可以得到外部加速度,扣除掉就没有多少影响了。 EdwardKe 发表于 2012-12-16 21:36 static/image/common/back.gif
500hz做状态估算 100hz结合加计做融合 感觉是卡尔曼增益过大又不知是什么原因 ...
我试过用EKF UD分解的EKFsage-husa自适应强跟踪。我的更新率都坐不上去,用STM32F103。实际上,几何姿态测量也不用那么高频率。我个人认为100HZ姿态计算,20HZ的数据融合应该够了。 回复 kmani 我们这里从来都不缺砖家和xx? 去和你家里的专家和XX去聊哦在这扯什么蛋。自己都不明白 还在这乱叫。弄个虚拟串口都弄好几天, 佩服 人才! asha 发表于 2012-12-17 09:27 static/image/common/back.gif
专家谈不上,就是靠这个吃饭的罢了。 你说的问题是的,过于依赖加速度传感器会出现误差加大。 如果要用加 ...
我的当然也是陀螺仪结合加速度计计算姿态的,我把融合加速度计的部分去掉,看他计算出来的多飘,其实不会很飘。所以楼主说的20hz 我觉得是足够的。现在我用的那套算法应该是很完善的。只是我不知为什么会过于相信加速度计。有空QQ请教一下 。
chrobotics
他们的惯导做的不错的 EdwardKe 发表于 2012-12-17 10:20 static/image/common/back.gif
我的当然也是陀螺仪结合加速度计计算姿态的,我把融合加速度计的部分去掉,看他计算出来的多飘,其实不会 ...
恩,只靠陀螺基本1s漂0.1°。做了融合后会好很多,我测试了40分钟静态没有漂。在动态下,会有收敛时间,有个1-3S吧。基本还行 惯性导航书上都是纯用陀螺计算姿态的,然后利用这个姿态和加计测量值计算实际加速度,然后进行航位推测,楼主的解释没有什么问题 yangjinghua1990 发表于 2012-12-17 12:20 static/image/common/back.gif
一直不明白什么是加表计算呢?看了很多帖子都有这个
加表技术的角度是用加速度输出的比力计算俯仰和滚转的方法。 这个和陀螺计算有本质区别,但是因为定义的角度关系又一致,计算出来也就应该一致。 本帖最后由 kmani 于 2012-12-17 22:39 编辑
asha 发表于 2012-12-17 09:21 static/image/common/back.gif
我没有装,倒是你装的过了头。我看你说的那么大言不惭,这简单那不难。拜读了下你发的帖子学习下,发现 ...
1:坛子里高手如云。我没有装的资本,不像专家那样可以说自己搞了多少年了!我从来不装,只是说个事实!倒是某些专家看到了不和自己胃口的字眼,就开始愤了!不讨论技术了,转为人身攻击。
2:我要澄清下。不知是哪位专家说我没有正确的方法。专家请你看清问题,然后给出个准确解吧!(别为自己找借口,什么都会有误差,下次攻击之前拜托专家用点心,看问题!)
3:你说我大言不惭说什么简单...砖家你看好了,我是对别人说的,你愤个啥?难道一开始就跟别人说这姿态算法难如登天,吓得都不敢动手?什么东西都是从简单入手的!砖家这不是给你看的!
4:你说我很多观点不对,我不是神,自然有不少观点是有问题的,这和你有关吗?在此敢问下,我哪些观点不对,可否指出三处来,不然称不上“很多”。
5:拜托砖家,有点砖家的风范吧!别看到和自己观点不一致就开始愤,愤的不爽还人身攻击(虽然是轻微的)。 本帖最后由 kmani 于 2012-12-17 18:17 编辑
aishadow 发表于 2012-12-17 09:58 static/image/common/back.gif
回复 kmani 我们这里从来都不缺砖家和xx? 去和你家里的专家和XX去聊哦在这扯什么蛋。自己都不明白 ...
直接忽略你,别拿你的强项出来秀。我玩F4只是业余爱好!
再说了。看清楚了,我2012-11-20 23:29:42发帖,2012-11-21 23:57:23发现问题了,而且白天我还有其他事做。只是晚上搞搞。你是咋回事了,不会算数了,这是好几天? kmani 发表于 2012-12-17 17:56 static/image/common/back.gif
1:坛子里高手如云。我没有装的资本,不像专家那样可以说自己搞了多少年了!我从来不装,只是说个事实! ...
拿出你做的东西的视频,来和我的比比。比我的技术先进那就是你厉害,否则滚蛋。
本帖最后由 kmani 于 2012-12-17 22:41 编辑
asha 发表于 2012-12-17 21:43 static/image/common/back.gif
拿出你做的东西的视频,来和我的比比。比我的技术先进那就是你厉害,否则滚蛋。
...
看明白了,资深专家直接使出了杀手锏!
自己张着嘴接着咬,张大点。 kmani 发表于 2012-12-17 17:56 static/image/common/back.gif
1:坛子里高手如云。我没有装的资本,不像专家那样可以说自己搞了多少年了!我从来不装,只是说个事实! ...
楼主说了你一句没有用正确方法就遭你攻击 我当时看了你说那话我也想回你解的出只是精度问题你的表述有问题 谁去看那么清楚还什么精确解太无语了! asha 发表于 2012-12-16 12:24 static/image/common/back.gif
线加速度可以解出来,你没有解出来是因为你没有得到正确的方法。
这个是没有解析解的。 你提到的其实是基于linear jump模型的,这特定情况下,是能估出来的,但是需要很多限制条件的,他的可观性不是无条件的。 楼主你上次说的模型错误是不是指的 process Variance
和加速度计的方差 这两个参数设置有误
process Variance指的就是陀螺仪数据的可靠度 就是陀螺数据的方差 包括两部分噪声和漂移两个平方再相加
accel Variance 加速度方差反应了加速度的可靠度咯一般这个值越大 对加计的依赖度就越低
你看我理解的对不 我也是刚刚理解的 如果是这样的话我那个问题应该就是这两个参数设置不对也就是模型错误
那我就有疑问了 你能把精度做那么高 你的模型必定要测量得非常准 你是如何精准测量这两个参数的 请指教 EdwardKe 发表于 2012-12-18 03:55 static/image/common/back.gif
如果是这样的话我那个问题应该就是这两个参数设置不对也就是模型错误
那我就有疑问了 你能把精度 ...
那几个值,改变的是Kalman的增益,不见得要非常准,系统过程噪声调大了,最终结果就是更相信观测量,观测噪声调大了,就是等相信系统模型。 EdwardKe 发表于 2012-12-18 03:54 static/image/common/back.gif
楼主你上次说的模型错误是不是指的 process Variance
和加速度计的方差 这两个参数设置有误
proc ...
你的理解是对的。一般都是方差,KF的灵魂就是对P Q R进行估计,也就是对噪声 误差分部进行估计。只是基于的假设不一样,大部分是高斯分部假设。 littleGnss 发表于 2012-12-18 04:09 static/image/common/back.gif
那几个值,改变的是Kalman的增益,不见得要非常准,系统过程噪声调大了,最终结果就是更相信观测量,观测 ...
如果想得到比较精确的估计,噪声阵还是需要比较准确的。 虽然,KF的K和初值没有直接关系,但是会影响收敛速度。 如果用了saga-husa之类的自适应,这个初值不对就直接发散。 littleGnss 发表于 2012-12-18 03:20 static/image/common/back.gif
这个是没有解析解的。 你提到的其实是基于linear jump模型的,这特定情况下,是能估出来的,但是需要很多 ...
比力方程的求解还有可观性问题么?这个我没有研究过,说实话,我数学比较烂。 你所提到的线性化,的确是这个问题。但是我感觉这个和可观性没有什么关系。一般来说状态量里面才会涉及到可观性的问题我提到的求解是直接用比力方程求解 这是我的观点:
假设姿态仪装在某个载体上,比如飞机
常见的载体,都是在有阻力的环境下运动。比如飞机加大了油门,加速度>0的时间是比较短暂的。
因为随着速度增加,空气阻力也跟着增大,飞机最终速度变大,加速度还是0。
飞行的振动,大部分是由于气流引起的。而风湍流也是近似符合高斯分布的。
汽车在路面行驶时的振动,同样也是白噪声。
加大或减小油门,上升或者俯冲,都是比较“短暂”的过程,持续时间远小于(姿态误差/陀螺漂移)
把加速度的扰动看作是白噪声,于是卡尔曼就不会受到影响。(大致推测)
当加速度比较大,或者是持续时间比较长的时候,可以暂时关闭卡尔曼融合,只依赖陀螺仪。 monkeynav 发表于 2012-12-24 08:28 static/image/common/back.gif
这是我的观点:
假设姿态仪装在某个载体上,比如飞机
http://www.amobbs.com/forum.php?mod=viewthread&tid=5493125&page=1&extra=#pid6336964
这个帖子6楼视频的1分36到1分38秒遇到了较大的加速度。这时卡尔曼的误差最大。 kmani 发表于 2012-12-24 09:18 static/image/common/back.gif
http://www.amobbs.com/forum.php?mod=viewthread&tid=5493125&page=1&extra=#pid6336964
这个帖子6楼视 ...
仔细看我的帖子,就是因为有偶然加速度,所以才需要足够长的融合周期。飞机的机械8字球,每分钟只修正几度
asha是专业搞惯导的,对器件性能有很深入的研究。他选择加速度融合,是合理的。
再说,如果不用加速度融合,几乎没有更好方案。 monkeynav 发表于 2012-12-24 09:35 static/image/common/back.gif
仔细看我的帖子,就是因为有偶然加速度,所以才需要足够长的融合周期。飞机的机械8字球,每分钟只修正几 ...
我没说不用加速度计哦.....我也没否认长期融合的重要性.....
只是觉得现在网上看到的多数算法对加速度计数据的处理不太好(可能是我看到的算法太少),因为处理的不太好,加速度一大,根据加速度计算的角度的误差就变大。 kmani 发表于 2012-12-24 09:18 static/image/common/back.gif
http://www.amobbs.com/forum.php?mod=viewthread&tid=5493125&page=1&extra=#pid6336964
这个帖子6楼视 ...
你看的很仔细,但是数据处理方法要看应用环境,而且也会受到很多条件制约。在工程里,想要得到精确解是很困难的,而且加速度造成的误差可以有很多种方法来校正。你的楼下说的很对,基本没有其他方法可取了,基本只能加速度,要不就是磁。可是磁受影响也不小 越讨论越深 Mark~~ monkey_hzh 发表于 2012-12-29 20:54 static/image/common/back.gif
越讨论越深 Mark~~
讨论着玩玩,一般这样的帖子不行。大家喜欢那种开源贴代码的帖子 真给力啊 asha 发表于 2013-1-3 11:46
讨论着玩玩,一般这样的帖子不行。大家喜欢那种开源贴代码的帖子
佩服楼主能深入思考加表上的线性加速度对姿态估计的影响,我一直在设想是不是有这样的一种方法能够估计线性加速度:建模。
比如说,手头上有个四旋翼,通过加给电调或者驱动的占空比估算升力,进而估算机体的加速度,不知道这样能不能很好的去除比力里的线性加速度而获得一个比较合理的重力加速度。 chehnobot 发表于 2014-2-24 23:33
佩服楼主能深入思考加表上的线性加速度对姿态估计的影响,我一直在设想是不是有这样的一种方法能够估计线 ...
这个问题需要分情况,有点算法可以克服瞬间加速度。有点算法可以克服振动,也就是持久的加速度(基本满足高斯分布的振动信号)。各有各的方法 学习了,mark 几年过去了 我们都还在坚持啊 眼泪哗哗的{:handshake:} 感谢大师分享!!
大师能不能讲讲 卡尔曼滤波啊!!有个问题不太懂,卡尔曼估计出来的姿态 有微小的抖动,大概在+-0.6的范围内,该如何处理啊
chehnobot 发表于 2014-2-24 23:33
佩服楼主能深入思考加表上的线性加速度对姿态估计的影响,我一直在设想是不是有这样的一种方法能够估计线 ...
你这个再延伸一点就是无陀螺惯性导航系统 chushibinsaobao 发表于 2014-4-19 17:12
大师能不能讲讲 卡尔曼滤波啊!!有个问题不太懂,卡尔曼估计出来的姿态 有微小的抖动,大概在+-0.6的范围 ...
你没有建模 九轴和角速度传感器有硬件,需要购买定制姿态结果的软件,只需要结果,不需要源码,哪位高手有的请联系我 LZ,好厉害啊,不知道楼主,有没有搞INS/GPS的EKF,有的话,想请教几个问题 九轴和角速度传感器有硬件,需要购买定制姿态结果的软件,只需要结果,不需要源码,请问哪位高手有的,有的请联系我
主板上焊接了两组传感器, 每组分别为:
LIS35DE(三轴加速度传感器)
MPU9255(九轴传感器)
分别布局在板子的两端,见图(选用两组传感器的目的是为了计算角度更精确);
所有传感器和一个STM32 CPU(STM32F030F4,ST的,16K的Flash空间),以及系统主CPU(ARM8127)一起,挂在同一条I2C总线上,I2C总线已经拉出板外来,要求最后的姿态信息必须由这个STM32 CPU来计算得出后,实时地送给系统主CPU(ARM8127);
要求:
手持设备,慢速移动(类似手持粗笔写字的速度),通过STM32的姿态算法,得出本设备的实时姿态信息;
1. 实时的角度和角速度信息(必须)
2. 实时的位移方向信息(必须)
3. 实时的位移值信息(最好要求实现)
提供环境: 一套可以正常上电和供电的办卡, 开发者不需要任何的其他硬件 正在学习惯性动捕相关的知识
页:
[1]