全向轮底盘磁导轨寻迹

全向轮底盘上安装两条磁传感器带用于磁导轨寻迹

如简图所示,两条与Y直线相交的黑色线条我们认为是两条磁检测传感器带

矢量方法修正车体位置

定义轨道左为负向,轨道右为正向。传感器左检测为负,右检测为正;

定义底盘坐标系为αβ,轨道坐标系为XY,车体与轨道坐标系的偏转角度为θ;

设前传感器检测为值为Pf,后传感器检测位置为Pb,两传感器距离为L,后传感器与机器人中心点的距离为S(如中心在两传感器中间,S符号为负,如中心在后传感器后面,S符号为正)。中心点旋转偏角为θ,横向偏移为Poff。

由几何关系可得出θ = tan-1((Pb-Pf)/L)

Poff  = (-Pb/tanθ-S)sinθ 

然后通过转换关系(诸如PID,模糊等方式)将θ 转换为对应的底盘自旋速度Vθ (注意正反转符号),Poff 转换为对应的磁导轨X轴速度矢量Voff  (注意Voff 带有方向),再分解为建立到车体上的αβ速度坐标系Voff sinθ 、Voff cosθ 。

此外底盘还有沿磁导轨Y轴方向的运动速度V,该速度同样由建立到车体上的αβ速度坐标系合成,V sinθ 、V cosθ

则传递到电机速度解算函数的速度参数

Vβ = -Voff sinθ + V cosθ

Vα = -Voff cosθ - V sinθ

Vω = Vθ 

上面的分析只考虑了底盘实际位置的横移与旋转,没有考虑当前畸变的速度方向的影响,对于车体沿导轨的主速度采用了直接修正的方式去处理,这里忽略了一个情况,速度不是瞬变的,车体受惯性仍会沿当前主速度方向运动,这样即使修正了主速度矢量与导轨Y方向对齐,但原来偏离了θ'角度的主速度仍会影响车体运动。一般来说θ'会在0到θ之间,要具体求出需要获取当前各个轮子的速度,然后通过坐标换算反求。为了抵消这个原主速度的影响并简化计算,我们可以在Voff上再叠加一个修正速度,这个速度受上一个主速度大小和θ影响。

这样新的Voffsum =Voff +kVlastsinθ

k为修正系数

这样修正上面的传递到电机速度解算函数的速度参数

Vβ = -Voffsum sinθ + V cosθ

Vα = -Voffsum cosθ - V sinθ

Vω = Vθ 

 

转载于:https://www.cnblogs.com/zhanghankui/p/8572342.html

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

02-1.CSS边框,边界,布局相关笔记

目录 CSS盒子模型 padding内填充 边框 边框属性 border-radius margin外边距 CSS盒子模型 Content(内容): 盒子的内容,显示文本和图像 >>>>类似word 文字A,改变字体与大小padding: 用于控制内容与边框之间的距离 …

android仿ios弹框_在“提示”框中:iOS外观(在Android上运行),Google Maps作为Time Machine,下载Wii游戏保存...

android仿ios弹框Once a week we round up some great reader tips and share them with everyone. Read on to see how to make your Android phone look like iOS, use a Google Maps mashup like a time machine, and download Wii game saves. 每周一次,我们收集…

使用 C# 开发的摸鱼背单词软件 ToastFish

你好,这里是 Dotnet 工具箱,定期分享 Dotnet 有趣,实用的工具和组件,希望对您有用!摸鱼神器ToastFish 是一个使用 C# 开发的桌面软件,由 Uahh 开发, 这是一个利用Windows通知栏背单词的软件&…

03.JavaScript对DOM操作

JavaScript引入方式 外部引入 在head或者body中&#xff0c;添加以下代码 <script type"text/javascript" src"js/demo.js"></script> 内部引入 在head或body中&#xff0c;定义script标签&#xff0c;然后在script标签里面写js代码 <…

kotlin的suspend对比csharp的asyncawait

协程的出现大大降低了异步编程的复杂度&#xff0c;可以让我们像写同步代码一样去写异步代码&#xff0c;如果没有它&#xff0c;那么很多异步的代码都是需要靠回调函数来一层层嵌套&#xff0c;这个在我之前的一篇有介绍 rxjava回调地狱-kotlin协程来帮忙本篇文章主要介绍kotl…

file协议 控制面板_如何在Windows File Explorer导航窗格中显示控制面板和回收站

file协议 控制面板By default, the Windows File Explorer’s sidebar is divided into big categories like Quick Access, This PC, Network, and so on. But a quick setting change can make your navigation pane look a bit more like the traditional tree you’d see i…

过滤器(Filter)

1 什么是过滤器 过滤器JavaWeb三大组件之一&#xff0c;它与Servlet很相似&#xff01;不它过滤器是用来拦截请求的&#xff0c;而不是处理请求的。 当用户请求某个Servlet时&#xff0c;会先执行部署在这个请求上的Filter&#xff0c;如果Filter“放行”&#xff0c;那么会继…

发布适用于 .NET 7 的 .NET MAUI

点击上方蓝字关注我们&#xff08;本文阅读时间&#xff1a;6分钟)我们在六个月前向您介绍了 .NET 多平台应用程序 UI (MAUI)&#xff0c;现在我们很高兴地宣布 .NET MAUI 在我们的下一个主要版本 .NET 7 中普遍可用。在此短的时间范围内&#xff0c;我们在 .NET MAUI 中的主要…

03:数据结构 栈、队列、链表与数组

算法其他篇 目录&#xff1a; 1.1 数据结构中的一些概念1.2 栈&#xff08;stack&#xff09;1.3 队列1.4 链表1.5 python中字典对象实现原理1.6 数组1.1 数据结构中的一些概念 返回顶部 1、数据结构是什么 1、简单来说&#xff0c;数据结果就是设计数据以何种方式存储在计…

力登:以智能化管理提升数据中心服务能力成熟度

2017年2月28日&#xff0c;由全国信息技术标准化技术委员会信息技术服务分技术委员会指导的《信息技术服务数据中心服务能力成熟度模型》发布&#xff0c;在业界首次提出“数据中心服务能力成熟度”概念&#xff0c;使得数据中心的管理真正实现了数字化和持续优化&#xff0c;是…

基于.NET 7 的 WebTransport 实现双向通信

Web Transport 简介WebTransport 是一个新的 Web API&#xff0c;使用 HTTP/3 协议来支持双向传输。它用于 Web 客户端和 HTTP/3 服务器之间的双向通信。它支持通过 不可靠的 Datagrams API 发送数据&#xff0c;也支持可靠的 Stream API 发送数据。因为 HTTP/3 使用了基于 UDP…

Django01: 安装/基础命令/设置笔记

安装 按官网版本支持&#xff0c;现在比较适合使用1.11版本。 下载安装命令 pip3 install django1.11.9 新建项目 django-admin startproject mysite 运行项目 python manage.py runserver 127.0.0.1:8000 运行相关 目录介绍 mysite/ ├── manage.py # 管理文件 └…

线上问题随笔记录数据库连接池问题

修改方法 转载于:https://www.cnblogs.com/lvgg/p/8581506.html

数据底座_体验当今计算机的未来:通过智能底座将您的Galaxy S4变成PC

数据底座Have you ever thought that Smartphones these days are so advanced they could actually replace the PC in your everyday computing life? Today, we here at HTG will review using the Galaxy S4 with the “Smart Dock Multimedia Hub” as a PC replacement.…

如何实现 WPF 代码查看器控件

如何实现 WPF 代码查看器控件CodeViewer作者&#xff1a;WPFDevelopersOrg - 驚鏵原文链接[1]&#xff1a;https://github.com/WPFDevelopersOrg/WPFDevelopers框架使用.NET40&#xff1b;Visual Studio 2019;代码展示需要使用到AvalonEdit是基于WPF的代码显示控件&#xff0c;…

谈大数据也谈人工智能 郭为告诉你一个不一样的神州控股

毋庸置疑&#xff0c;我们深处一个数据无处不在的时代&#xff0c;也就是大数据时代。作为中国智慧城市领导者的神州数码控股有限公司&#xff08;以下简称“神州控股”&#xff09;近年来也在积极布局大数据&#xff0c;不过在神州控股董事局主席郭为看来&#xff0c;神州控股…

Django02: pycharm上配置django

1.setting导入 File-->Setting-->Project-->Project Interface 2.new project 新窗口 圖片畫錯 3.调试 点击右上角调试

dropbox_来自提示框:望远镜激光瞄准器,Dropbox桌面和Kindle剪辑转换

dropboxOnce a week we round up some great reader tips and share them with everyone; this week we’re looking at telescope laser sights, syncing your desktop with Dropbox, and converting your Kindle Clippings file. 每周一次&#xff0c;我们收集一些很棒的读者…

在 EF Core 7 中实现强类型 ID

本文主要介绍 DDD 中的强类型 ID 的概念&#xff0c;及其在 EF 7 中的实现&#xff0c;以及使用 LessCode.EFCore.StronglyTypedId 这种更简易的上手方式。背景在杨中科老师 B 站的.Net Core 视频教程[1]其中 DDD 部分讲到了强类型 ID&#xff08;Strongly-typed-id&#xff09…

如何快速打造一款高清又极速的短视频APP?

2019独角兽企业重金招聘Python工程师标准>>> 整个短视频的市场规模一直在增长&#xff0c;网络数据显示2018年已经突破100亿大关&#xff0c;在2019年预测将超过200亿。纵观行业&#xff0c;在生活资讯、美食、搞笑、游戏、美妆等领域&#xff0c;短视频流量巨大但竞…