智能车制作

标题: 关于调车使用数字模拟陀螺仪遇到的问题 [打印本页]

作者: 萌萌晨    时间: 2016-4-21 00:48
标题: 关于调车使用数字模拟陀螺仪遇到的问题
各位大神好,本渣渣之前用模拟陀螺仪加速度计,方向与速度很容易就调好了,最快速度将近2米,由于模拟陀螺仪温漂太大,校赛之后换成了数字陀螺仪加速度计,换了之后没温漂,感觉爽爽的,结果问题来了,不管怎么调PID参数,都很不稳定,速度环点头,方向环经常冲出赛道。调了两天,没进展,重新调比例系数,使角度融合曲线和之前模拟的融合曲线完全一致,按道理说,用原来的值可以了吧,结果还是不行,又调了几天,还是不行。硬件上,数字陀螺仪和之前模拟陀螺仪位置基本一致,软件上,仅仅改了陀螺仪加速度计采集。实在不行,又换回之前的模拟陀螺仪加速度计,结果能跑,而且稳定,搞不懂为什么,就仅仅换了陀螺仪加速度计啊,而且角度融合曲线已经和之前一致了,为什么用原来的参数就不行呢,就算不行,我重新调参数,也应该有个最佳值啊,结果调几天,也没之前好,之前调参数特别容易就调好了呢,不知道大家模拟换数字时有没有这样问题,或者大神们知不知道这是什么原因呢?我都想放弃数字继续用模拟的了:loveliness:

作者: 萌萌晨    时间: 2016-4-21 00:51
:loveliness::loveliness:
作者: 萌萌晨    时间: 2016-4-21 00:52
:loveliness::loveliness:
作者: Golem.    时间: 2016-4-21 08:40
读取一次数据用多长时间?用的什么协议?IIC?
作者: 萌萌晨    时间: 2016-4-21 08:45
Golem. 发表于 2016-4-21 08:40
读取一次数据用多长时间?用的什么协议?IIC?

协议是IIC,读取时间指的是读取寄存器之后那个延时吗?我直接移植的例程,里面好像说过,延时太短会读取失败,我就没改,但是我感觉中断里面加延时不太好,不太清楚那个延时对CPU处理数据有多大影响

作者: Golem.    时间: 2016-4-21 09:00
萌萌晨 发表于 2016-4-21 08:45
协议是IIC,读取时间指的是读取寄存器之后那个延时吗?我直接移植的例程,里面好像说过,延时太短会读取 ...

我懵了,你用的是硬件IIC还是自己模拟的软件IIC?什么型号的陀螺仪加速度计?其实关键在于数字的东西读取一次数据要比模拟的读一次要用的时间长很多,不注意的话有可能打乱你的控制周期。

作者: Golem.    时间: 2016-4-21 09:01
萌萌晨 发表于 2016-4-21 08:45
协议是IIC,读取时间指的是读取寄存器之后那个延时吗?我直接移植的例程,里面好像说过,延时太短会读取 ...

那个延时时间多长?可以去掉试试看。

作者: 萌萌晨    时间: 2016-4-21 09:04
Golem. 发表于 2016-4-21 09:01
那个延时时间多长?可以去掉试试看。

每次读取后延时好像是i++到60,您在用数字的吗?有加延时吗?

作者: 萌萌晨    时间: 2016-4-21 09:11
Golem. 发表于 2016-4-21 09:00
我懵了,你用的是硬件IIC还是自己模拟的软件IIC?什么型号的陀螺仪加速度计?其实关键在于数字的东西读取 ...

硬件还是模拟我也不太清楚,本渣渣不太精通这个,陀螺仪加速度计是龙邱的FXOS8700-FXAS2100,直接移植的例程

作者: Golem.    时间: 2016-4-21 09:14
萌萌晨 发表于 2016-4-21 09:11
硬件还是模拟我也不太清楚,本渣渣不太精通这个,陀螺仪加速度计是龙邱的FXOS8700-FXAS2100,直接移植的 ...

那咱们传感器一样,你可以加我QQ,或者留邮箱,我发你程序。但是你应该是用的硬件IIC,可以看看底层里时钟分频系数是多少,提高一下总线速率。

作者: 萌萌晨    时间: 2016-4-21 09:20
Golem. 发表于 2016-4-21 09:14
那咱们传感器一样,你可以加我QQ,或者留邮箱,我发你程序。但是你应该是用的硬件IIC,可以看看底层里时 ...

好的,谢谢大神,我的QQ1123978775,或者您留一下您的也行,希望能与大神交流

作者: Golem.    时间: 2016-4-21 09:21
萌萌晨 发表于 2016-4-21 09:20
好的,谢谢大神,我的QQ1123978775,或者您留一下您的也行,希望能与大神交流

哥,我不是大神,我调车都要调吐了,那我加你吧。

作者: 361369499    时间: 2016-4-21 09:32
我用过数字陀螺仪加速度计,有一个感受是直立环不能调太硬
至于你的情况我倒是没遇到过
作者: CSU虚心向前    时间: 2016-4-21 11:07
Golem. 发表于 2016-4-21 09:21
哥,我不是大神,我调车都要调吐了,那我加你吧。

你的硬件IIC会卡吗,我们从坡道上下来就可能直接卡死

作者: 萌萌晨    时间: 2016-4-21 12:02
361369499 发表于 2016-4-21 09:32
我用过数字陀螺仪加速度计,有一个感受是直立环不能调太硬
至于你的情况我倒是没遇到过

我们的是速度环和方向环调不好,你感觉会不会是IIC太慢了,导致了时序问题

作者: Golem.    时间: 2016-4-21 12:43
CSU虚心向前 发表于 2016-4-21 11:07
你的硬件IIC会卡吗,我们从坡道上下来就可能直接卡死

我们车调得慢,还没加坡道,不知道会发生什么,现在应该没有卡死的现象,如果经常卡死我觉得可以降低IIC总线频率试试看。

作者: 361369499    时间: 2016-4-21 15:12
萌萌晨 发表于 2016-4-21 12:02
我们的是速度环和方向环调不好,你感觉会不会是IIC太慢了,导致了时序问题

是的,i2c很慢

你可以看看波形,是否转向角度抖动导致丢线,然后丢线又没处理好

作者: 萌萌晨    时间: 2016-4-21 15:46
361369499 发表于 2016-4-21 15:12
是的,i2c很慢

你可以看看波形,是否转向角度抖动导致丢线,然后丢线又没处理好

那影响时序有办法解决吗?

作者: 361369499    时间: 2016-4-21 18:23
萌萌晨 发表于 2016-4-21 15:46
那影响时序有办法解决吗?

你那个延时才加到60,似乎太少了

尝试加到上千甚至上万。
我原来加到2000,都有时候会有问题,你可以试试加大

作者: 萌萌晨    时间: 2016-4-21 19:30
361369499 发表于 2016-4-21 18:23
你那个延时才加到60,似乎太少了

尝试加到上千甚至上万。

我记错了,我的延时也是1000多,但是不应该是延时越长,越影响时序吗

作者: 福尔摩0南    时间: 2016-4-21 22:59
我读取三个值大约700us

延时没怎么改 好像是80  不过我把采电感夹到了三个数字采集的中间
作者: 361369499    时间: 2016-4-21 23:13
萌萌晨 发表于 2016-4-21 19:30
我记错了,我的延时也是1000多,但是不应该是延时越长,越影响时序吗

不会吧,加大延时只是会加长每次读取的时间
只要保证在一定时间读完,不超过你获取角度的周期(比如5ms)就行了

但太大的话,比如我加到10000,读三次值就要1ms,这样估计也不太好,所以要权衡一下

作者: 萌萌晨    时间: 2016-4-21 23:19
361369499 发表于 2016-4-21 23:13
不会吧,加大延时只是会加长每次读取的时间
只要保证在一定时间读完,不超过你获取角度的周期(比如5ms ...

你的是一个中断周期5毫秒,所有东西放里面啊?我的是按照卓大大的方法,分5个1毫秒,所以我这个影响可能大一些

作者: 361369499    时间: 2016-4-21 23:48
萌萌晨 发表于 2016-4-21 23:19
你的是一个中断周期5毫秒,所有东西放里面啊?我的是按照卓大大的方法,分5个1毫秒,所以我这个影响可能 ...

你说的对,我记错了。。。我也是分5个1ms
加大延时时间是为了保证i2c不会进入一直等待ack的状态


对了,你可以试试把方向环断开,只加速度环和角度环匀速跑
如果是时序问题,应该跑着跑着就倒下了

作者: 东皇太一    时间: 2016-5-14 01:08
Golem. 发表于 2016-4-21 09:14
那咱们传感器一样,你可以加我QQ,或者留邮箱,我发你程序。但是你应该是用的硬件IIC,可以看看底层里时 ...

哥 能给我发一份吗

作者: 东皇太一    时间: 2016-5-14 01:08
Golem. 发表于 2016-4-21 09:14
那咱们传感器一样,你可以加我QQ,或者留邮箱,我发你程序。但是你应该是用的硬件IIC,可以看看底层里时 ...

邮箱 848705411@qq.com  麻烦你一下 啊  好人一生平安

作者: 爱静茹的好鱼亲    时间: 2016-5-24 00:14
围观围观。。我用的模拟陀螺仪,有时车的抖动或者转向会引起陀螺仪严重的积分(不是安装不水平的问题),导致最终算得角度不正确。楼主用模拟陀螺仪的时候有没有这个问题啊?
作者: yangjiahui    时间: 2016-5-24 01:33
我最近换了MPU6050,波形融合好后调直立,和原来调模拟的感觉完全不一样,直立环的p稍微给大就颤,给小又太软。。。
作者: 萌萌晨    时间: 2016-5-24 09:26
爱静茹的好鱼亲 发表于 2016-5-24 00:14
围观围观。。我用的模拟陀螺仪,有时车的抖动或者转向会引起陀螺仪严重的积分(不是安装不水平的问题),导 ...

没遇到过,车子抖动,算出来的角度也还算正常

作者: 萌萌晨    时间: 2016-5-24 09:31
yangjiahui 发表于 2016-5-24 01:33
我最近换了MPU6050,波形融合好后调直立,和原来调模拟的感觉完全不一样,直立环的p稍微给大就颤,给小又太 ...

我用数字也有类似的感受,波形融合的很好,用原来的参数就是不行,重新调的,特别难调,我记得用模拟的特别容易,好不容易把直立调的勉强可以接受了,方向环和速度环无论如何都搭配不好,只好放弃了,现在用模拟的,用的很好,我感觉可能是时序问题,数字比模拟读取慢。顺便补充一下,使用6050有限制的,只能用一部分

作者: yangjiahui    时间: 2016-5-24 14:07
萌萌晨 发表于 2016-5-24 09:31
我用数字也有类似的感受,波形融合的很好,用原来的参数就是不行,重新调的,特别难调,我记得用模拟的特 ...

说实话,我也要放弃了。。。。调了三个星期了,怎么都调不好。。。原本速度瓶颈了,准备换个数字的稳定稳定,我也波形融合很好,就是调不出来,哎。。。。学长让用四元素法。。。着实没这时间折腾了。。。换回来吧,,,祝你好运兄弟。。。

作者: 爱静茹的好鱼亲    时间: 2016-5-31 20:20
萌萌晨 发表于 2016-5-24 09:26
没遇到过,车子抖动,算出来的角度也还算正常

我弄好了,不是陀螺仪的问题,还是控制没写好





欢迎光临 智能车制作 (http://www.znczz.com/) Powered by Discuz! X3.2