单舵轮(叉车)AGV里程计数据解算
单舵轮(叉车)AGV里程计数据解算
2016-07
单舵轮AGV,一般包含一个驱动轮和两个从动轮,驱动轮是同时具备行走和转向两个功能的舵轮,因此,单舵轮AGV的运动学自由度为2个。舵轮线速度V1,舵轮转角θ。
AGV机器人里程计一般包含2 个方面的信息:
一、是位姿(位置和转角),即(x,y,θ)。
二、是速度(前进速度AGV的线速度V和转向速度AGV的角速度W)。
为了建立理想运动学模型,我们需要假设以下情况:
一、舵轮与地面之间行走无滑动摩擦;
二、AGV运行的平面为水平面,没有坡度;
建立单舵轮AGV理想运动学模型,如下图所示。设舵轮的线速度为Vf ,前后轮轴向距离为L ,舵轮横向偏距为 D ,舵轮转角(逆时针为正,顺时针为负)为θ,两定向轮轴心点o(x,y,yaw,V,W)为AGV几何中心计算里程计数据。
其中舵轮Vf及θ需要通过增量编码器和角度编码器实时检测。
经过几何运算o点里程计数据的:
- o点其他里程计数据的(x,y,yaw),是通过V和W数据根据各数据的几何关系不断的积分求得。这里对于单舵轮AGV的里程计数据的介绍只开个头,后不再详细解释,开发人员需要养成深入的去探索的习惯。关于AGV控制的其他问题相互探讨,可以评论咨询联系方式。
实际测试时,机器人的移动距离和转动角度都要进行测试(要确保机器人的实际运动方向与发送的速度指令方向一致,并且偏差在正常范围内),如果测试与预期情况不一样则需要查找原因。另外由于轮子打滑、以及各种误差的影响,对速度积分进行航迹推算得到的里程计累积误差会越来越大,角度yaw也是同样的道理,可以加入轮径参数、滑动摩擦参数对其进行调节补偿。测试的方式是,单舵轮AGV机器人从一个固定参考位置开始运动,主要是前进后退以及旋转,最终回到起始位置,比较计算与实际的差距,来调节轮径参数、滑动摩擦参数。
当前机器人导航方式中地图导航,比如激光slam、二维码惯导等方式,均需要精确地里程计数据支持。
单舵轮(叉车)AGV里程计数据解算的更多相关文章
- 双舵轮AGV里程计、运动控制核心算法
舵轮AGV可以通过调整两个舵轮的角度及速度,可以使小车在不转动车头的情况下实现变道,转向等动作,甚至可以实现沿任意点为半径的转弯运动,有很强的灵活性. 因此在AGV行业,这种驱动方式应用很广,但是目前 ...
- 四轴飞行器1.4 姿态解算和Matlab实时姿态显示
原创文章,欢迎转载,转载请注明出处 MPU6050数据读取出来后,经过一个星期的努力,姿态解算和在matlab上的实时显示姿态终于完成了. 1:完成matlab的串口,并且实时通过波形显示数据 2:添 ...
- Gamit解算脚本
这是一个解算单天的shell脚本,对于初学者很有帮助. 首先就是需要在项目(四个字符)建立rinex brdc igs 还有以年纪日命名的目录,然后提前准备好station.info和lfile.文件 ...
- libviso中的姿态解算【转载】
这篇关于libviso的文章,本人已投稿在泡泡机器人微信公众号中,放到这里,作学习笔记用. libviso一直以来被称为在视觉里程计(VO)中的老牌开源算法.它通过corner,chessboard两 ...
- 【转】GPS基线解算模式
GPS基线向量是利用2台或2台以上GPS接 收机所采集的同步观测数据形成的差分观测值,通过参数估计得方法所计算出的两两接收机间的三维坐标差.与常规地面测量中所测定的基线边长不同,基线向量是 既具有长度 ...
- Pixhawk之姿态解算篇(1)_入门篇(DCM Nomalize)
一.开篇 慢慢的.慢慢的.慢慢的就快要到飞控的主要部分了,飞控飞控就是所谓的飞行控制呗,一个是姿态解算一个是姿态控制,解算是解算,控制是控制,各自负责各自的任务.我也不懂.还在学习中~~~~ 近期看姿 ...
- 布料解算插件 Qualoth 重点参数分享
前言 Qualoth是韩国FXGear公司推出的一款布料模拟插件,可以计算出很自然的衣褶以及动态效果,并且能应对大幅度动作的碰撞解算,可以和Houdini的Cloth Solver相媲美: 目前这款插 ...
- 空间谱专题13:联合解算DOA(ML/AP)
其中作者:桂. 时间:2017-10-16 07:51:40 链接:http://www.cnblogs.com/xingshansi/p/7675380.html 前言 主要记录二维测向中,分别利 ...
- V-rep学习笔记:机器人逆运动学解算
IK groups and IK elements VREP中使用IK groups和IK elements来进行正/逆运动学计算,一个IK group可以包含一个或者多个IK elements: I ...
随机推荐
- C++ const关键字修饰引用
//const修饰引用的两种用法 #include<iostream> using namespace std; struct Teacher{ ]; int age; }; void S ...
- 关于Unity中的几何体,材质和FBX模型
一.创建几何体的类型 1: 创建平面 Plane;2: 创建立方体 Cube;3: 创建球体 Sphere;4: 创建胶囊体 Capsule;5: 创建圆柱体 Cylinder;6: 3D文字 3D ...
- MRF能量优化
一个外国博客,写的比较清晰 http://nghiaho.com/?page_id=1366 MRF优化牛人 重庆大学的教授 1 http://qianjiye.de/2015/09/reparame ...
- 001servlet的基本知识
servlet的知识: l 1. servlet概念及相关接口简介 l 2. servet 执行过程 l 3. servlet路径映射 l 4. 缺省servlet --应用 ...
- 第二百七十二节,Tornado框架-iframe标签框架伪造ajax
Tornado框架-iframe标签框架伪造ajax html <!DOCTYPE html> <html> <head lang="en"> ...
- Worktile中百万级实时消息推送服务的实现
Worktile中百万级实时消息推送服务的实现 出自:http://blog.jobbole.com/81125/
- jqgrid自动换行
JQGrid表头自动换行的办法: 如果table的header部分字段太多或字段文字太长需要自动换行时,可尝试如下css. <style type="text/css" me ...
- std::ostringstream
ostringstream是C++的一个字符集操作模板类,定义在sstream.h头文件中.ostringstream类通常用于执行C风格的串流的输出操作,格式化字符串,避免申请大量的缓冲区,替代sp ...
- [Docker]——container和主机(host)之间的文件拷贝
1. 从 container 到 主机(host) 使用 docker cp 命令 docker cp <containerId>:/file/path/within/container ...
- 1854: [Scoi2010]游戏[并查集]
1854: [Scoi2010]游戏 Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 4938 Solved: 1948[Submit][Status] ...