#智能小车项目(六)麦克纳姆轮x型运动学分析

2023-10-30 15:15

本文主要是介绍#智能小车项目(六)麦克纳姆轮x型运动学分析,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

麦伦介绍

瑞典麦克那姆公司发明的一种全方位移动轮式结构,由基于主体轮辋和一组均匀排布在轮毂周围的回转辊子组成且辊子轴线与轮毂轴线呈一定角度(一般为 45°),小辊子的母线是等速螺旋线或椭圆弧近似而成,当轮子绕着轮毂轴线转动时,周边各小辊子的外包络线为圆柱面,因此该轮可以连续地向前滚动。

运动分析

(1)轮子逆时针旋转时

选取其中一个辊子做受力分析,辊子所受摩擦力方向与其运动趋势方向相反。当麦克纳姆轮逆时针时,辊子相对于地面有向右前方运动的趋势,则所受摩擦力方向为接触点左后方向。分解此时的辊子运动,则会得到向后以及向左的速度分量,所以说此时麦克纳姆轮向左前方运动。

(2)轮子顺时针旋转时

选取其中一个辊子做受力分析,辊子所受摩擦力方向与其运动趋势方向相反。当麦克纳姆轮顺时针时,辊子相对于地面有向左后方运动的趋势,则所受摩擦力方向为接触点右前方向。分解此时的辊子运动,则会得到向前以及向右的速度分量,所以说此时麦克纳姆轮向右前方运动。
在这里插入图片描述

在这里插入图片描述

当麦轮受电机驱动时,驱动力矩使得绕轮毂轴转动,辊子会与地面产生摩擦力F,其作用力方向与抵消力矩方向一致
将地面摩擦力Ff沿着垂直和平行于辊子轴线方向进行力分解,由于辊子是被动轮,因此会受到垂直于轮毂轴线的分力Ft作用而被动转动,也说明分力Ft是滚动摩擦力,对辊子的磨损较大;沿着轮毂轴线的分力Fr也会迫使辊子运动,是主动运动(辊子被轴线两侧轮毂机械限位),所以分力Fr是静摩擦,滚动摩擦力促使辊子转动,属于无效运动;静摩擦力促使辊子相对地面运动,带动整个麦轮沿着辊子轴线运动。

因此,电机输入轮毂的扭矩,一部分被辊子自转“浪费掉”,另一部分形成静摩擦驱动麦轮整体运动;单个麦轮实际的(受力)运动方向为辊子轴向方向,因此改变辊子轴线和轮毂轴线的夹角,就可以改变麦轮实际的(受力)运动方向。

麦伦布局

在这里插入图片描述
A轮斜优4向上45°
在这里插入图片描述
B轮斜左向下45°

在这里插入图片描述
对角成x型
在这里插入图片描述
一圈为O型

在这里插入图片描述
X-正方形:当主轮在电机转矩的驱动下,主轮转动产生的力矩经摩擦力分解后,辊子分解力一部分垂直于辊子,一部分沿辊子轴线,这两部分摩擦力垂直方向的另辊子空转,浪费力,而沿着辊子轴线的力则可以起到驱动小车运动,因此在X-正方形中,如图6所示,红色箭头表示有效摩擦力,因此在水平方向的摩擦力会被抵消,而向前的摩擦力则驱动整个底盘向前运动。

通过改变主轮旋转方向,可以更改摩擦力的方向。但是,除了可以实现左右前后移动外,当进行旋转运动时,发现无论摩擦力朝向怎么排布,摩擦力始终都会经过会经过同一个点,所以无法保证底盘可以绕中心旋转一定的角度,这很大程度限制了麦轮的活动特性,因此很少使用这种排布方式。

底盘运动分解

在这里插入图片描述
运动学分析求的就是Vx、Vy、Vz 与 VA轮 、VB轮轮、VC轮 、VD轮的关系
W:轮距 单位:m
H:轴距(前后轮轴心距) 单位:m
Vx:小车前后移动速度,前进为正 单位:m/s
Vy:小车左右移动速度,前进为右 单位:m/s
Vz:小车绕O点旋转速度,逆时针为正,单位:rad/s O点为轮距、轴距中心线的交点
Va轮、Vb轮、Vc轮、Vd轮:麦轮ADBC的速度,由电机转动带动轮毂产生前进为正,单位m/s

Vc辊:麦轮C与地面接触的辊子的线速度,垂直辊轴向前为正单位:m/s。

Vz_C:麦轮C质心绕O点旋转的线速度,正方向垂直于麦轮C质心与O点的连线,偏逆时针方向。
Vc_x:麦轮C质前后移动速度,与小车前后移动速度Vx和小车绕O点旋转速度Vz有关。
Vc_y:麦轮C质左右移动速度,与小车左右移动速度Vy和小车绕O点旋转速度Vz有关。
αc:轮子C质心与O点的连线与前进方向的夹角,αc=arctan(W/H)。
β:轮轴与辊轴之间的夹角为45°。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
这里我没有将进行数学推到直接应用结论

参考文章链接:STM32入门笔记(02):麦克纳姆轮、TB6612电机驱动、PID电机控制和编码器学习记录
本文只用于学习记录如有侵权即刻删除

这篇关于#智能小车项目(六)麦克纳姆轮x型运动学分析的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


原文地址:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.chinasem.cn/article/308789

相关文章

Go标准库常见错误分析和解决办法

《Go标准库常见错误分析和解决办法》Go语言的标准库为开发者提供了丰富且高效的工具,涵盖了从网络编程到文件操作等各个方面,然而,标准库虽好,使用不当却可能适得其反,正所谓工欲善其事,必先利其器,本文将... 目录1. 使用了错误的time.Duration2. time.After导致的内存泄漏3. jsO

Spring事务中@Transactional注解不生效的原因分析与解决

《Spring事务中@Transactional注解不生效的原因分析与解决》在Spring框架中,@Transactional注解是管理数据库事务的核心方式,本文将深入分析事务自调用的底层原理,解释为... 目录1. 引言2. 事务自调用问题重现2.1 示例代码2.2 问题现象3. 为什么事务自调用会失效3

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的

找不到Anaconda prompt终端的原因分析及解决方案

《找不到Anacondaprompt终端的原因分析及解决方案》因为anaconda还没有初始化,在安装anaconda的过程中,有一行是否要添加anaconda到菜单目录中,由于没有勾选,导致没有菜... 目录问题原因问http://www.chinasem.cn题解决安装了 Anaconda 却找不到 An

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

springboot集成Deepseek4j的项目实践

《springboot集成Deepseek4j的项目实践》本文主要介绍了springboot集成Deepseek4j的项目实践,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价... 目录Deepseek4j快速开始Maven 依js赖基础配置基础使用示例1. 流式返回示例2. 进阶

SpringBoot项目启动报错"找不到或无法加载主类"的解决方法

《SpringBoot项目启动报错找不到或无法加载主类的解决方法》在使用IntelliJIDEA开发基于SpringBoot框架的Java程序时,可能会出现找不到或无法加载主类com.example.... 目录一、问题描述二、排查过程三、解决方案一、问题描述在使用 IntelliJ IDEA 开发基于

SpringBoot项目使用MDC给日志增加唯一标识的实现步骤

《SpringBoot项目使用MDC给日志增加唯一标识的实现步骤》本文介绍了如何在SpringBoot项目中使用MDC(MappedDiagnosticContext)为日志增加唯一标识,以便于日... 目录【Java】SpringBoot项目使用MDC给日志增加唯一标识,方便日志追踪1.日志效果2.实现步

C++ 各种map特点对比分析

《C++各种map特点对比分析》文章比较了C++中不同类型的map(如std::map,std::unordered_map,std::multimap,std::unordered_multima... 目录特点比较C++ 示例代码 ​​​​​​代码解释特点比较1. std::map底层实现:基于红黑