当前位置: 首页 > article >正文

差速轮纯跟踪算法

fig.1 差速轮纯跟踪原理图

纯跟踪是基于几何关系的跟踪控制算法,不管是阿克曼模型,还是差速轮模型,都是控制机器驱动轮(通常是后轮)中心经过目标点 T。

基于机器驱动轮中心,车头朝向为 X 轴正方向,驱动轮左轮方向为 Y 轴正方向建立机器坐标系。目标点 T 在机器坐标系下坐标为 [Tx,Ty]。那么有:

v=R*w \quad (1)

R*(1-cos(\alpha))=Ty \quad (2)

R*sin(\alpha)=Tx \quad (3)

其中 R 是转弯半径,转弯半径是有正负的,正负值由角速度决定。α 是经过目标点 T 时候的转弯角度。

联立公式 (2) 和 (3),有:

1-cos(\alpha)=\frac{Ty}{Tx}*sin(\alpha) \quad (4)

根据二倍角公式,将 \alpha=\frac{\alpha}{2}+\frac{\alpha}{2} 代入公式 (4),有:

1-(1-2*sin^2(\frac{\alpha}{2}))=\frac{Ty}{Tx}*2*sin(\frac{\alpha}{2})*cos(\frac{\alpha}{2}) \quad (5)

sin(\frac{\alpha}{2})=\frac{Ty}{Tx}*cos(\frac{\alpha}{2}) \quad (6)

tan(\frac{\alpha}{2})=\frac{Ty}{Tx} \quad (7)

\alpha=2*arctan(\frac{Ty}{Tx}) \quad (8)

联立公式 (1), (3),(8) 得到

w=\frac{v}{Tx}*sin(2*arctan(\frac{Ty}{Tx})) \quad (9)

在外部先确定线速度 v 的条件下,可以得到差速轮的角速度控制量。

注意!

在计算角速度之前,需要确定线速度!由于 v = w * R,如果计算角速度 w 后又去调整线速度 v,会改变机器转弯半径,也就改变了机器运动轨迹。 


http://www.kler.cn/news/323392.html

相关文章:

  • 设备管理平台-支持快速开发
  • Woocommerce怎么分类显示产品?如何将Shopify的产品导入到Woocommerce?
  • 如何恢复被删除的 GitLab 项目?
  • git rebase 调整提交顺序
  • springboot 实现用户登录身份验证
  • 【NLP】daydayup 词向量训练模型word2vec
  • Maven中 <parent > 的<version>可以使用变量吗
  • Unity3D入门(四) : Android和Unity3D交互 - Unity调用Android
  • FreeRTOS 内存管理源码解析
  • 数据结构:线性表的链式表示
  • 中国农业银行——开源软件一体化管理平台
  • 《AI办公类工具表格处理系列之一——办公小浣熊》
  • 逃离陷阱:如何巧妙避免机器学习中的过拟合与欠拟合
  • 【分布式微服务云原生】K8s(Kubernetes)基本概念和使用方法
  • 项目实战总结-Kafka实战应用核心要点
  • NET 7 AOT 的使用以及+NET 与 Go 互相调用
  • C#中的排除法解决问题
  • 基于Java的停车场管理微信小程序 停车场预约系统【源码+文档+讲解】
  • HalconDotNet实现二维码识别功能详解
  • ArcGIS Desktop使用入门(三)常用工具条——拓扑(上篇:地图拓扑)
  • 过去8年,编程语言的流行度发生了哪些变化?PHP下降,Objective-C已过时
  • Vue.js 与 Flask/Django 后端配合开发实战
  • 【Matlab使用Transformer一维序列分类源程序】
  • 0基础学前端 day5
  • 基于SSM+小程序的在线课堂微信管理系统(在线课堂1)(源码+sql脚本+视频导入教程+文档)
  • Android常用C++特性之std::none_of
  • 【数据结构和算法实践-排序-快速排序】
  • 使用canvas截取web camera指定区域,并生成图片
  • 数据结构之——栈
  • 【Kubernetes】常见面试题汇总(四十)