BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #8561同步于 2010/5/19
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

【求助】我的毕设是移动机器人的运动模块设计,有些问题没懂

zzh
2010/5/19镜像同步12 回复
我是计算机学院的,原来对控制系统没有什么理论基础。 实验室里的机器人是两轮驱动的,当然还有一个万向轮。 demo里提供有速度闭环和位置闭环。 先要实现一个简单的任务,就是让机器人原地转身面向目标,然后直线前进到目标附近。 于是我发现让机器人很慢速地原地转身的话,可以让机器人在接收到停止命令后几乎同时就停了下来。当然,接着的想法就是让其在位置闭环的前提下前进一段设置好的位移。 接着就是问题了。 我发现机器人原地转身停止后,在接到直线前进命令的时候,它会继续原来转身的方向再拐一小段然后再直线前进。 我分析它的速度曲线发现,例如,机器人向左转,那么左轮后退,右轮前进。接收到停止命令并停止下来后,接收到前进命令,左轮的速度是先慢后快地增速,但是右轮会突然有个很快的前进速度然后才降至设定的速度。机器人向右转时就刚好反过来。 请问这是为什么呢? 请问有什么可能的方法可以解决这个问题呢? 求解!十分感谢!
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
hobby机器人#1 · 2010/5/19
没太做过运动控制的东东,随便说说,错了轻拍 你现在遇到的问题是两个运动模式切换的时候,两个轮子的速度不一样吧?不知道理解的对不对 那么你有什么手段可以改动它的运行方式呢?是有代码改代码还是从硬件方面着手(比如改控制电路?)。 如果是改代码的话,可能是有几个模式决定了车轮的加速情况?或者看看代码到底怎么实现的。 退一步讲,是不是有其他办法把这个问题绕过去,例如切换到直线前进的模式时,先别实际走(总有个距离或者时间设定什么的吧),只是想办法把两个轮子的速度调成一致的,然后再走?
ericyosho机器人#2 · 2010/5/19
你可以让机器人完全停下来,再进入下一个运动模式么?
zzh机器人#3 · 2010/5/19
暂时我知道的方法是,退出程序,重新运行,就可以让机器人完全停下来 【 在 ericyosho 的大作中提到: 】 : 你可以让机器人完全停下来,再进入下一个运动模式么? : --
zzh机器人#4 · 2010/5/19
嗯,运动模式切换时两个轮子速度不一样,应该。也就是说没完全停止下来。 硬件应该不能改了,我这种外行,不敢随便动这样的机器,呵呵。代码,嗯,这个应该是突破口了,谢谢你提供的思路,我研究一下它的驱动代码看看 【 在 hobby 的大作中提到: 】 : 没太做过运动控制的东东,随便说说,错了轻拍 : 你现在遇到的问题是两个运动模式切换的时候,两个轮子的速度不一样吧?不知道理解的对不对 : 那么你有什么手段可以改动它的运行方式呢?是有代码改代码还是从硬件方面着手(比如改控制电路?)。 : ...................
ericyosho机器人#5 · 2010/5/19
难道没有类似的“静止命令”么?
hobby机器人#6 · 2010/5/20
嗯 欢迎进一步讨论~ PS:是本科毕设?自动化院的? 【 在 zzh 的大作中提到: 】 : 嗯,运动模式切换时两个轮子速度不一样,应该。也就是说没完全停止下来。 : 硬件应该不能改了,我这种外行,不敢随便动这样的机器,呵呵。代码,嗯,这个应该是突破口了,谢谢你提供的思路,我研究一下它的驱动代码看看
hobby机器人#7 · 2010/5/20
嗯 说的是 如果有这么个状态,可能就能切过来了 【 在 ericyosho 的大作中提到: 】 : 难道没有类似的“静止命令”么?
kingy机器人#8 · 2010/5/20
这现象是正常的啊,前后两轮在变速的时候本来就会有一个加速时间,如果在小车转到直行的方向上再发送直行指令,肯定在加速时间内,小车的方向又转了。如果想将这个转换过程加快,可以在程序中增加PID调节的过程,加速收敛,试着调试PID的参数,效果好的话转换的时间几乎可以忽略。 【 在 zzh 的大作中提到: 】 : 我是计算机学院的,原来对控制系统没有什么理论基础。 : 实验室里的机器人是两轮驱动的,当然还有一个万向轮。 : demo里提供有速度闭环和位置闭环。 : ...................
hobby机器人#9 · 2010/5/20
赞专业人士! 【 在 kingy 的大作中提到: 】 : 这现象是正常的啊,前后两轮在变速的时候本来就会有一个加速时间,如果在小车转到直行的方向上再发送直行指令,肯定在加速时间内,小车的方向又转了。如果想将这个转换过程加快,可以在程序中增加PID调节的过程,加速收敛,试着调试PID的参数,效果好的话转换的时间几乎可以忽略。