智能车制作

标题: 求教卡尔曼滤波后的问题。 [打印本页]

作者: wuchao1235    时间: 2012-2-25 13:09
标题: 求教卡尔曼滤波后的问题。
MMA7660的加速度。ENC-03的陀螺仪,在静止状态下,卡尔曼滤波后角度有1.5度左右的跳动,想请问一下各位前辈是正常现象还是需要调整,要调正的话是怎么弄啊。

顺便请教一下论坛上的那个  X128测试程序  的示波器,我按照思路搬到DP512的芯片上去了,用串口调试助手能看到能正常发送数据到串口了,但是换了用示波器  却没有反应,请问那个示波器究竟怎么弄。。




补充内容 (2012-3-2 23:09):
好吧,进过我不断尝试,终于知道为什么能收到数据,却不显示波形了,原因是数据太小,而启动软件的默认坐标标尺太大,所以只能看到一根直线,适当调节X、Y轴的标尺就能显示波形咯。。。。
作者: turf456    时间: 2012-2-25 13:38
好好看看数据类型,传递啥的有没有问题。
作者: wuchao1235    时间: 2012-2-25 20:33
turf456 发表于 2012-2-25 13:38
好好看看数据类型,传递啥的有没有问题。

他的发送程序都没动  就是把 初始化单片机的硬件等 弄了一下
用串口调试助手等是能看到数据的  但是 这个 示波器貌似没放映

我就想问问大家 这个示波器在使用的时候有什么要注意的不  

或者说说 示波器的使用的时候的步骤


作者: turf456    时间: 2012-2-25 22:02
它有个CRC校验,我记得发送四个0的校验时00 00 00 00 4B吧,记不得了。看看是不是哪没处理好导致示波器不识别
作者: wuchao1235    时间: 2012-2-25 23:09
turf456 发表于 2012-2-25 22:02
它有个CRC校验,我记得发送四个0的校验时00 00 00 00 4B吧,记不得了。看看是不是哪没处理好导致示波器不识 ...

[attach]18627[/attach]

当数据全是0 的时候,他的CRC校验码是0x0b40,其中zz[10]是用老保存要发送的数据的,前面八个为数据,后面两个为CRC校验码,暂时没给数值,YY是调用CRC校验码生成函数根据前面的八个数据产生的CRC校验码

作者: turf456    时间: 2012-2-26 12:07
我也遇到过有时候好使有时候不好使的时候。挺纠结的。我只能说这么多了
作者: 慕名凤姐而来    时间: 2012-2-26 13:40
turf456 发表于 2012-2-26 12:07
我也遇到过有时候好使有时候不好使的时候。挺纠结的。我只能说这么多了

求教一下凤姐,请问一下  在滤波后 调节直立的PID时候,P和D的参数是怎样的啊? 摇晃   劲儿不小 但是一放就趴下  用手扶着就摇晃   咋整?   死区问题 还是因为 p   小了?
作者: turf456    时间: 2012-2-26 14:45
慕名凤姐而来 发表于 2012-2-26 13:40
求教一下凤姐,请问一下  在滤波后 调节直立的PID时候,P和D的参数是怎样的啊? 摇晃   劲儿不小 但是一放 ...

不好说了,也可能与滤波效果有关。
调节的话照着官方的方案就行。
死区的话不是很麻烦,影响没那俩个严重。

作者: 慕名凤姐而来    时间: 2012-2-26 15:43
turf456 发表于 2012-2-26 14:45
不好说了,也可能与滤波效果有关。
调节的话照着官方的方案就行。
死区的话不是很麻烦,影响没那俩个严 ...

那陀螺仪滤波    有点滞后  是不是也有问题呢   
作者: turf456    时间: 2012-2-26 18:56
慕名凤姐而来 发表于 2012-2-26 15:43
那陀螺仪滤波    有点滞后  是不是也有问题呢

是的

作者: 慕名凤姐而来    时间: 2012-2-26 19:34
turf456 发表于 2012-2-26 18:56
是的

凤姐啊   求你勒   怎么能让这个 滞后  调小  或者没有啊   想了好多 都没用    您有什么好方法么····
作者: f43    时间: 2012-2-26 22:38
调节比例
作者: wuchao1235    时间: 2012-2-27 18:30
turf456 发表于 2012-2-26 18:56
是的

求教凤姐啊,我今天把程序考进去试了一下,发现响应好慢啊,,我都换了个方向了,轮子转速响应好延时,应该是调节那个参数啊,,给点提示撒,今天都跳了一天了。、
作者: fmlking    时间: 2012-2-27 18:40
你们有没有在模拟示波器上试过呢?
作者: wuchao1235    时间: 2012-2-27 18:47
fmlking 发表于 2012-2-27 18:40
你们有没有在模拟示波器上试过呢?

论坛上给的是X128的事例程序,我自己是用的DP512的芯片,改造后没有显示波形,但是用串口调试助手发现还是可以收到数据的,不知道为什么。。
作者: turf456    时间: 2012-2-27 22:43
wuchao1235 发表于 2012-2-27 18:30
求教凤姐啊,我今天把程序考进去试了一下,发现响应好慢啊,,我都换了个方向了,轮子转速响应好延时,应 ...

大胆调呗。上万的数都有可能。还有你的采样周期多少?
作者: wuchao1235    时间: 2012-2-28 21:55
turf456 发表于 2012-2-27 22:43
大胆调呗。上万的数都有可能。还有你的采样周期多少?

我的调整公式是 PWM=k1*angle+k2*angle_dot,其中PWM是PWM波的高电平周期数,请问这个样子是对的吗?

如诺不对 请教各位的调整公式是什么样的k1,k2值是多少啊。。

万分感激{:soso_e183:}

今天悲剧了,调试的时候把一个电机烧掉了

作者: turf456    时间: 2012-2-28 22:29
wuchao1235 发表于 2012-2-28 21:55
我的调整公式是 PWM=k1*angle+k2*angle_dot,其中PWM是PWM波的高电平周期数,请问这个样子是对的吗?

如 ...

我们采样周期1ms。K1是上万,K2数百。
别忘了还有方向问题。

作者: wuchao1235    时间: 2012-2-28 22:35
turf456 发表于 2012-2-28 22:29
我们采样周期1ms。K1是上万,K2数百。
别忘了还有方向问题。


如果只考虑站立起来,这个公式是否正确啊。。

采样周期1MS能反应过来的麽,有点担心勒。。目前用的是10MS。。

作者: turf456    时间: 2012-2-28 23:26
wuchao1235 发表于 2012-2-28 22:35
如果只考虑站立起来,这个公式是否正确啊。。

采样周期1MS能反应过来的麽,有点担心勒 ...

我的也是抄的,调调参数而已。貌似用128速度还是行的。
作者: fmlking    时间: 2012-2-29 16:03
wuchao1235 发表于 2012-2-27 18:47
论坛上给的是X128的事例程序,我自己是用的DP512的芯片,改造后没有显示波形,但是用串口调试助手发现还是 ...

有可能是你们程序的问题吧!再想想怎么改进看看
作者: tongyonghua123    时间: 2012-3-2 16:42
....哈哈
作者: 丢失狂    时间: 2013-4-14 18:41
turf456 发表于 2012-2-26 18:56
是的

凤姐我想问一下我们的示波器不输出数据。还得i请教你一下虚拟示波器怎么使用。输出程序就直接像写串口大师的输出语句一样么

作者: turf456    时间: 2013-4-14 23:07
丢失狂 发表于 2013-4-14 18:41
凤姐我想问一下我们的示波器不输出数据。还得i请教你一下虚拟示波器怎么使用。输出程序就直接像写串口大师 ...

哪个软件?
作者: 丢失狂    时间: 2013-4-15 11:06
turf456 发表于 2013-4-14 23:07
哪个软件?

visual scope  打开后就中间一条红线黑屏 信号输不进去啊还请凤姐帮忙啊
作者: turf456    时间: 2013-4-15 12:13
本帖最后由 turf456 于 2013-4-15 12:45 编辑
丢失狂 发表于 2013-4-15 11:06
visual scope  打开后就中间一条红线黑屏 信号输不进去啊还请凤姐帮忙啊


软件的说明里有代码,就是个四整形(通道)的数组,加个CRC校验。自己移植一下就行了。
作者: 丢失狂    时间: 2013-4-15 12:19
turf456 发表于 2013-4-15 12:13
软件的说明里有代码,就是个四字节(通道)的数组,加个CRC校验。自己移植一下就行了。

移植?是什么意思  是直接粘贴在协议里面么?替换原先的
作者: 京口小汉王    时间: 2013-4-15 12:20
turf456 发表于 2013-4-15 12:13
软件的说明里有代码,就是个四字节(通道)的数组,加个CRC校验。自己移植一下就行了。

我的加速度计参量z是一个0--255的数值,怎样转换成那个4位的数组呢,求凤姐解答啊
作者: 京口小汉王    时间: 2013-4-15 12:35
京口小汉王 发表于 2013-4-15 12:20
我的加速度计参量z是一个0--255的数值,怎样转换成那个4位的数组呢,求凤姐解答啊

是不是这个十进制的z改成二进制(16位),在分成高8位和低8位,然后分别校验加校验码啊,凤姐对不对?
作者: turf456    时间: 2013-4-15 12:42
京口小汉王 发表于 2013-4-15 12:35
是不是这个十进制的z改成二进制(16位),在分成高8位和低8位,然后分别校验加校验码啊,凤姐对不对?

用一个通道不就完了。
强制成int就可以了。

作者: turf456    时间: 2013-4-15 12:44
丢失狂 发表于 2013-4-15 12:19
移植?是什么意思  是直接粘贴在协议里面么?替换原先的

移植就是移植,把那个算法套用到你的程序里就可以了。没啥好解释的。上面说错了,不是四个字节,是四个int。






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