智能车制作

标题: b车电机问题,求帮忙~ [打印本页]

作者: 我们是做小车的    时间: 2014-6-12 10:01
标题: b车电机问题,求帮忙~
B车模电机一上电轮子就跟疯掉似的,轮子都转飞了。。。。不知道是程序问题还是电机驱动板的问题,程序用的是最简单的传统增量式pid,求大神帮忙

作者: panfei0124    时间: 2014-6-12 10:10
你试试,不用Pid,直接给定值PWM,看轮子是不是还是跑飞,或者直接测输出电压。。。。如果这样还是跑飞,那就是驱动板问题。。。。。如果正常。。。。那就是PID没调好
作者: zhou1994    时间: 2014-6-12 10:53
根据我的经验。多半就是你们pid的数据越界了。还有就是2个正数做差,但是是小的减去大的数了。
作者: 米饭伯爵    时间: 2014-6-12 11:02
我之前一晚飞几次呢
作者: 我们是做小车的    时间: 2014-6-12 11:05
米饭伯爵 发表于 2014-6-12 11:02
我之前一晚飞几次呢

那现在问题解决了么?愁死了都。。。。。

作者: 我们是做小车的    时间: 2014-6-12 11:09
panfei0124 发表于 2014-6-12 10:10
你试试,不用Pid,直接给定值PWM,看轮子是不是还是跑飞,或者直接测输出电压。。。。如果这样还是跑飞,那就 ...

直接给都定值开环控制还能跑,但是我们编码器的返回值一直是0,只有很慢的时候编码器的返回值才有数

作者: 我们是做小车的    时间: 2014-6-12 11:11
zhou1994 发表于 2014-6-12 10:53
根据我的经验。多半就是你们pid的数据越界了。还有就是2个正数做差,但是是小的减去大的数了。

这个怎么看数据是不是越界了啊?

作者: panfei0124    时间: 2014-6-12 11:15
我们是做小车的 发表于 2014-6-12 11:09
直接给都定值开环控制还能跑,但是我们编码器的返回值一直是0,只有很慢的时候编码器的返回值才有数

首先检查齿轮咬合的是不是好的。。。然后看看程序里面输入捕获,脉冲计数是不是有问题。。从你这样说的看应该是编码器那块的问题,返回值一直是0,所以PID控制后会最大输出,导致跑飞

作者: 君啸凤舞    时间: 2014-6-12 11:18
我们是做小车的 发表于 2014-6-12 11:09
直接给都定值开环控制还能跑,但是我们编码器的返回值一直是0,只有很慢的时候编码器的返回值才有数

返回值为0,编码器有问题吧,
作者: 我们是做小车的    时间: 2014-6-12 11:19
君啸凤舞 发表于 2014-6-12 11:18
返回值为0,编码器有问题吧,

慢速有返回值,快速返回值就为0了。。。。

作者: 我们是做小车的    时间: 2014-6-12 11:21
panfei0124 发表于 2014-6-12 11:15
首先检查齿轮咬合的是不是好的。。。然后看看程序里面输入捕获,脉冲计数是不是有问题。。从你这样说的看 ...

我们也怀疑编码器的地方有问题,正在检查,这个接的上拉电压是3.3V的么?需要单独给电压么?

作者: zhou1994    时间: 2014-6-12 11:41
我们是做小车的 发表于 2014-6-12 11:11
这个怎么看数据是不是越界了啊?

直接给一个小的占空比看是不是正常的,然后在看编码器的值。
作者: Need-freedom    时间: 2014-6-12 11:47
有可能参数没调好,导致一开机就反转  然后跑飞;再有可能就是编码器齿轮没有接触牢固
作者: kangup    时间: 2014-6-12 12:00
编码器没接好会造成飞转
作者: panfei0124    时间: 2014-6-12 12:28
我们是做小车的 发表于 2014-6-12 11:21
我们也怀疑编码器的地方有问题,正在检查,这个接的上拉电压是3.3V的么?需要单独给电压么?

看编码器手册, 我接的5v,不知道是不是跟你编码器一样,不需要单独供电

作者: 杨春浩    时间: 2014-6-12 12:33
应该是编码器的问题 数值木有搞好

作者: 917052549    时间: 2014-6-12 13:03
编码器有没有反馈?
作者: 米饭伯爵    时间: 2014-6-12 13:04
我们是做小车的 发表于 2014-6-12 11:05
那现在问题解决了么?愁死了都。。。。。

程序有错,刹车标志有问题

作者: Mr.chen    时间: 2014-6-12 15:07
检测一下是不是有些地方写错,导致根本没运行,我经常会出现本来是a==0;结果写成a=0;的情况
作者: qyz123    时间: 2014-6-12 15:10
示波器打下编码器脉冲,上次我也是这问题,结果编码器的线断了
作者: 君啸凤舞    时间: 2014-6-12 15:25
我们是做小车的 发表于 2014-6-12 11:19
慢速有返回值,快速返回值就为0了。。。。

说明你编码器供电啊,或者其他有问题

作者: 18815284813    时间: 2014-6-12 18:37
测速有问题
作者: dbld2006    时间: 2014-6-12 19:19
编码器有问题。测测你们编码器到底能不能用
作者: 我们是做小车的    时间: 2014-6-12 20:23
dbld2006 发表于 2014-6-12 19:19
编码器有问题。测测你们编码器到底能不能用

问题已经解决了,主要是我们上拉电阻的问题~3q~


作者: 我们是做小车的    时间: 2014-6-12 20:24
君啸凤舞 发表于 2014-6-12 15:25
说明你编码器供电啊,或者其他有问题

问题算是已经解决吧,pid也有问题,主要还是编码器的问题~

作者: 邵志伟    时间: 2014-6-12 20:27
编码器问题。
作者: 我们是做小车的    时间: 2014-6-12 20:28
panfei0124 发表于 2014-6-12 12:28
看编码器手册, 我接的5v,不知道是不是跟你编码器一样,不需要单独供电

我们没试过5V呢,暂时还是用的3.3V~

作者: 我们是做小车的    时间: 2014-6-12 20:30
zhou1994 发表于 2014-6-12 11:41
直接给一个小的占空比看是不是正常的,然后在看编码器的值。

目前问题已经解决,暂时是编码器的问题~暂时还需要继续努力~

作者: 无公害植物    时间: 2014-6-12 21:12
我们之前就是有一个编码器坏了,低速时正常,速度快了就没有返回值了
作者: 君啸凤舞    时间: 2014-6-12 21:19
我们是做小车的 发表于 2014-6-12 20:24
问题算是已经解决吧,pid也有问题,主要还是编码器的问题~

加油
作者: 我们是做小车的    时间: 2014-6-12 21:20
无公害植物 发表于 2014-6-12 21:12
我们之前就是有一个编码器坏了,低速时正常,速度快了就没有返回值了

这个怎么确定编码器有没有坏啊?

作者: 我们是做小车的    时间: 2014-6-12 21:22
君啸凤舞 发表于 2014-6-12 21:19
加油

你们也加油啊~

作者: 无公害植物    时间: 2014-6-12 21:25
我们是做小车的 发表于 2014-6-12 21:20
这个怎么确定编码器有没有坏啊?

你让电机固定占空比,用示波器测一下编码器的输出对不对就行了嘛

作者: an~    时间: 2014-6-13 00:20
zhou1994 发表于 2014-6-12 10:53
根据我的经验。多半就是你们pid的数据越界了。还有就是2个正数做差,但是是小的减去大的数了。

这不是就是它的精髓所在吗?当error 开始是正数的时候,PID是正数,g_motor+=PID,那么g_motor是加加的,当error成了负数的时候,PID是负数,g_motor减减,那么不就又调节回来了嘛,也就是速度又会回到你想要的吗

作者: an~    时间: 2014-6-13 00:21
zhou1994 发表于 2014-6-12 11:41
直接给一个小的占空比看是不是正常的,然后在看编码器的值。

我想问问额,我们编码器计的脉冲抖动比较大,怎么回事呢?比如我给电机50,本来计的脉冲数每个应该是50,但是可能会跳动的比较厉害,到60。。并且也不是很稳定。。以至于我的波形都不对

作者: an~    时间: 2014-6-13 00:23
kangup 发表于 2014-6-12 12:00
编码器没接好会造成飞转

是不是不论怎么给,都会飞转呢?我的是当给某个特定的P时候,匀速转,但是当P改变之后,可能就会飞转,就觉得速度逐渐加快。。。。。。。。。。。。。。。。。。

作者: an~    时间: 2014-6-13 00:24
我们是做小车的 发表于 2014-6-12 21:20
这个怎么确定编码器有没有坏啊?

同问。怎么看编码器是不是坏了哈。因为我们的脉冲返回来的数值波动的特别厉害。。

作者: zhou1994    时间: 2014-6-13 10:31
an~ 发表于 2014-6-13 00:23
是不是不论怎么给,都会飞转呢?我的是当给某个特定的P时候,匀速转,但是当P改变之后,可能就会飞转,就 ...

看来是你们的数据问题了,不是硬件的问题
作者: zhou1994    时间: 2014-6-13 10:32
an~ 发表于 2014-6-13 00:23
是不是不论怎么给,都会飞转呢?我的是当给某个特定的P时候,匀速转,但是当P改变之后,可能就会飞转,就 ...

看来是你们的数据问题了,不是硬件的问题
作者: zhou1994    时间: 2014-6-13 10:33
an~ 发表于 2014-6-13 00:20
这不是就是它的精髓所在吗?当error 开始是正数的时候,PID是正数,g_motor+=PID,那么g_motor是加加的, ...

对,事实本来该这样的,但是,你如果定义的是2个正数,然后做差就有问题了。
作者: an~    时间: 2014-6-13 13:28
zhou1994 发表于 2014-6-13 10:33
对,事实本来该这样的,但是,你如果定义的是2个正数,然后做差就有问题了。

什么叫做定义的是两个正数?
作者: zhou1994    时间: 2014-6-13 14:48
an~ 发表于 2014-6-13 13:28
什么叫做定义的是两个正数?

。。。。
作者: 我们是做小车的    时间: 2014-6-15 10:58
无公害植物 发表于 2014-6-12 21:25
你让电机固定占空比,用示波器测一下编码器的输出对不对就行了嘛

这样的话是没有问题的呢~

作者: 无公害植物    时间: 2014-6-15 20:51
我们是做小车的 发表于 2014-6-15 10:58
这样的话是没有问题的呢~

要是速度快的时候也都没问题,那可能就不是编码器的问题了。从源头开始一点一点的测,应该会解决的。

作者: 曾俊杰    时间: 2014-6-18 11:21
很可能是芯片的PWM波输入端接触不良,本人遇到过,也解决过。




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