我是靠谱客的博主 甜蜜冬瓜,最近开发中收集的这篇文章主要介绍(三)解决麦克纳姆轮小车跑偏的问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

新的问题

在前面的文章里,我们已经实现了通过网页控制小车移动,并且可以查看实时视频。如果仔细观察,你就会发现,在上一篇最后的视频里,我所控制的小车在前进时,会自己往左偏移。为什么会这样呢?

问题思考

左右两侧电机的速度不一样造成了小车跑偏的现象。理想状态下,每个电机接收相同的pwm信号,转速也会是一样的。然而实际情况中,每个电机并不可能会完全一样。也就是说在给定相同的pwm信号时,电机速度并不完全相同。经过上网查询资料,我得知需要进行闭环控制。
有两种方案:

  • 添加陀螺仪传感器,通过他计算横滚,俯仰,航偏角。经过判断后调整四轮的pwm信号,使四轮的转速相匹配,进而推动小车平稳前进。
  • 利用编码电机A,B相位的输出监测电机状态,进而调整电机的转速,最后控制小车四轮的转速相同

解决方法

手头没有陀螺仪,所以想先用第二种方案试一下。看到有网友说:树莓派都是通过软件pwm输出,所以频率占空比都会有所偏差。为了精确控制,现在打算增加一个stm32做下位机,树莓派和stm32之间利用串口通信。这样电机的控制放到stm32下位机。
所以我又在淘宝购买了陀螺仪和STM32ZET6开发板,总共五十元。等收到单片机以后,我要重新熟悉一下stm32的使用,以便进行后续开发。

最后

以上就是甜蜜冬瓜为你收集整理的(三)解决麦克纳姆轮小车跑偏的问题的全部内容,希望文章能够帮你解决(三)解决麦克纳姆轮小车跑偏的问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部