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

轮式机器人简介

迄今为止,轮子一般是移动机器人学和人造交通车辆中最流行的运动机构。它可达到很高的效率,
如图所示,
在这里插入图片描述

而且用比较简单的机械就可实现它的制作。

另外,在轮式机器人设计中,平衡通常不是一个研究问题。
因为在所有时间里,轮式机器人一般都被设计成在任何时间里所有轮子均与地接触。因而,3个轮子就足以保证稳定平衡。虽然我们将在下面看到,两轮机器人也可以稳定。

如果使用的轮子多于3个,当机器人碰到崎岖不平的地形时,就需要一个悬挂系统以使所有轮子保持与地面接触。轮式机器人研究倾向于把重点放在牵引稳定性机动性控制问题,而不是担心平衡。为覆盖所有预期的地形,机器人的轮子能否提供足够的牵引力和稳定性?机器人的轮子结构能对机器人的速度进行有级的控制吗?

轮子运动:设计空间

正如将要看到的,当我们考虑移动机器人运动的可能技术时,可能的轮子结构有很大的空间。因为有很多数目不同的轮子类型,各有其特定的优点和缺点,故我们从详细讨论轮子开始,然后来检验为移动机器人传送特定运动形式的完整的轮子构造。

轮子的设计

有四种主要的轮子类型,如图在这里插入图片描述
所示。

四种基本的轮子类型:
(a)标准轮:2个自由度,围绕轮轴(电动的)和图
2.19接触点转动;
(b)小脚轮:2个自由度,围绕偏移的操纵接合点旋转;
©瑞典轮:3个自由度,围绕轮轴(电动的)、辊子和接触点旋转;
(d)球体或球形轮:技术上实现困难

在运动学方面,它们差别很大。因此轮子类型的选择对移动机器人的整个运动学有很大的影响。标准轮和小脚轮有一个旋转主轴,因而是高度有向的。在不同的方向运动,必须首先沿着垂直轴操纵轮子。这两种轮的主要差别在于标准轮可以完成操纵而无副作用,因为旋转中心经过接触片着地;而小脚轮绕偏心轴旋转,在操纵期间会引起一个力,加到机器人的底盘。

瑞典轮和球形轮二者的设计比传统的标准轮受方向约束少一些。瑞典轮的功能与标准轮一样,但它在另一方向产生低的阻力,该方向有时垂直于常规方向,如Swedish90;有时在中间角度,如Swedish45。装在轮子周围的辊子是被动的,轮的主轴是唯一的供有动力的连接。

这个设计的主要优点在于:虽然轮子旋转仅沿主轴供动力(通过轮轴),轮子以很小的摩擦,可以沿许多可能的轨迹按运动学原理移动,而不仅仅是向前或者向后。
球形轮是一种真正的全向轮,经常被设计成可以沿任何方向受动力而旋转。实现这种球形构造的一种机构模仿了计算机鼠标,提供了供动力的辊子,这些辊子搁在球的顶部,并给予旋转的力。

无论用什么轮,在为所有地形环境设计的机器人和具有3个以上轮子的机器人中,正常情况下需要一个悬挂系统以保持轮子与地面的接触。一种最简单的悬挂方法是轮子本身设计成柔性的。例如,在某些使用小脚轮的四轮室内机器人情况下,制造厂家已经把软橡胶可变形的轮胎用在轮上,制作基本的悬挂体。当然,这种有限的解决方案不能与应用中错综复杂的悬挂系统相比拟。在应用中,对明显的非平坦地形,机器人需要更动态的悬挂系统。

轮子几何特征

移动机器人轮子类型的选择与轮子装配或轮子几何特征的选择紧密相关。移动机器人的设计者在设计轮式机器人的运动机构时,必须同时考虑这两个问题。为何轮子的类型和轮子的几何特征如此重要?因为机器人的三个基本特征由这些选择所支配:机动性,可控性和稳定性。

汽车大都为高度标准化的环境(公路网络)而设计,与其不同的是,移动机器人则是为应用在种类繁多的环境而设计。汽车全部共享相同的轮子结构,因为在设计空间中存在一个区域,使得它们对标准化环境(铺好的公路)的机动性、可控性和稳定性最大。可是,不同的移动机器人面临各种不同环境,没有单一的轮子结构可以使这些品质最大化。所以,你会看到移动机器人的轮子结构种类繁多。实际上,除了为道路系统设计的移动机器人外,很少机器人使用汽车的Ackerman轮子结构,因为它的机动性较差(图2.20)
表2.1给出了轮子结构的概述,按轮子数目排序。表中描述了特殊轮子类型的选择和机器人底盘上它们几何结构的两个方面。我们注意到,所示的某些轮子结构在移动机器人的应用中很少用到。例如,两轮自行车装配,其机动性中等,可控性差。像单腿跳跃机,它根本不能静止地站着。不过,表中提供了在运动机器人设计中可能用到的许多种类轮子结构的说明。
表2.1中种类的数目是很多的。不过,这里列出了重要的趋向和分组,它可帮助我们理解各结构的优点和缺点。下面,根据以前确在这里插入图片描述
Navlab【是第一个自主式高速公路交通工具。它使用视觉和雷达图 2.20传感器操作和控制油门,由CMU开发

稳定性

令人惊奇的是,静态稳定所要求的最小轮子数目是2个。如上所述,如果质心在轮轴下面,一个两轮差动驱动的机器人可以实现静态稳定。Cye就是使用这种轮子结构的商业移动机器人

在这里插入图片描述Cye,现有商业化的家用机器人,它可以在家里做真空吸尘和传递员由AethonInc.(http://www.aethon.com)制造。

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
可是,在普通的环境下,这种解决方案要求轮子的直径大得不切实际。

动力学也可引起两轮机器人以接触的第3个点撞击地面,例如,从静止开始要有足够大的电机转矩。常规情况下,静态稳定要求至少有3个轮子,且需要警告的是:重心必须被包含在由轮子地面接触点构成的三角形内。增加更多的轮子可以进一步改善稳定性,虽然一旦接触点超过3个后,几何学的超静态性质会要求在有崎岖不平的地形时具有某种形式的灵活的悬挂系统。

机动性

一些机器人是全向的,这意味着它们可以在任何时候沿着地平面(x,y)向任意方向运动,包括机器人绕它自己的垂直轴转。

这层次的机动性需要能朝一个以上方向运动的轮子。所以,全向机器人经常使用有动力的瑞典轮或球形轮。天王星(Uranus)是个很好的例子,如图2.24
所示。这个机器人使用4个瑞典轮,能独立地旋转和平移且不受限制。
一般来说,带有瑞典轮和球形轮的机器人由于构造全向轮的机械上约束,其地面清洁度有某些限制。在解决这种地面清洁度问题的同时,一个令人感兴趣的最新解决全向导航的方案是四小脚轮结构。在这种结构中,各小脚轮主动地被操纵,且平移机器人是真正全向的。因为,即使小脚轮的朝向垂直于行走所期望的方向,通过操纵这些轮子,机器人仍能向期望的方向移动。因为垂直轴偏离了地面接触路径,这个操纵运动的结果就是机器人的运动。

在研究领域中,可实现高度机动性的其他类型的移动机器人是很普遍的,它们只比全向结构的机器人稍微差一点。这种类型的机器人,在特定方向上的运动可能开始需要一个旋转运动。

机器人的中央有一个圆底盘和转动轴,使得这种机器人可以旋转而不改变它的地面脚印。这种机器人中最普遍的是两轮差动驱动的机器人,在那里2个轮子围绕机器人的中心点转动。为了稳定,根据应用的特点,也许要用1~2个附加的地面接触点:

与上面的结构相反的是我们在汽车中常见的Ackerman操纵结构。这种车辆典型的地方是有一个比小汽车大的旋转直径。而且,它在靠边运动时需要一个由重复向前和向后改变方向组成的停车调动。尽管如此,Ackerman操纵几何结构在业余爱好的机器人市场中仍一直特别地流行。这里,开始用一个遥控的赛车工具包,然后把感知和自治功能加到现有的机械机构,就可以制作机器人了。另外,Ackermman操纵的有限机动性有一个重要的优点:它的定向性和操纵的几何结构,向它提供了在高速旋转中非常好的横向稳定性。

可控性

一般来说,可控性和机动性之间存在逆相关性。例如,对全向装置,诸如四小脚轮结构,要求效果显著的处理能把期望的转动和平移的速度转换成单个轮子的命令。而且,这种全向装置经常在轮子上有较大的自由度。例如,瑞典轮沿着轮周有一组自由的子。这些自由度造成滑动的积累,导致航位推测准确度的降低并增加了设计的复杂性。

对一个特定的行走方向,控制全向机器人也比较困难,而且当它与较小机动性装置比较时,往往准确度较低。例如,一个Ackerman操纵车辆,通过锁住可操纵轮和驱动它的驱动轮就可以简单地走直线。在差动驱动的车辆情况下,必须精确地按同样的速度分布图驱动装在轮上的2个电机。考虑到轮子间和电机间的差异以及环境的差异,这可能是困难的。对于具有四轮的全向驱动,如Uranus机器人,它有4个瑞典轮,问题更为困难。因为对在理想直线上行走的机器人,必须精确地按相同速度驱动所有的4个轮子。

总之,没有“理想”的驱动结构可以同时使稳定性、机动性和可控性最大化。各移动机器人的应用对机器人设计问题加上唯一的约束,而设计者的任务就是在这个折衷空间中,选择最合适的可行的驱动结构。

相关文章:

轮式机器人简介

迄今为止,轮子一般是移动机器人学和人造交通车辆中最流行的运动机构。它可达到很高的效率, 如图所示, 而且用比较简单的机械就可实现它的制作。 另外,在轮式机器人设计中,平衡通常不是一个研究问题。 因为在所有时间里,轮式机器人一般都被设计成在任何时间里所有轮子均与地接…...

已知哈夫曼节点个数,求哈夫曼字符编码数

哈夫曼编码(Huffman Coding)是一种用于无损数据压缩的嫡编码(权编码)算法。 在哈夫曼树中,每个叶子节点都代表一个字符,而节点的权重通常代表字符的频率。在哈夫曼编码中,每个字符都会被赋予一个二进制编码。为了获得这些编码,我…...

Kubernetes Cluster IP,Node IP,Pod IP间通信原理解析

目录 1、Cluster IP2、Node IP3、NodePort4、Pod IP5、LoadBalancer6、三种IP间通信6.1、Pod IP 与 Pod IP 通信6.2、Pod IP 与 Cluster IP 通信6.3、Node IP 与 Pod IP 通信6.4、Node IP 与 Cluster IP 7、YAML 示例7.1、ClusterIP Service7.2、LoadBalancer Service 1、Clust…...

随机链表的深拷贝

1.题目 解题思路一:暴力求解,先创建新链表,然后把旧链表中的val和next指针给复制到新链表中,根据旧链表中的random指针所指向的旧链表中的val值找到所对应的节点,记录该节点的位置,就像数组一样&#xff0c…...

328_C++_HTTP_HTTP协议传输data数据,为什么要进行base64编解码操作?

http传输data数据的时候,为什么必须进行base64转码后才能有效发送,接收方也必须base64转码后才能有效接受? HTTP  HTTP传输数据时,使用Base64编码并不是必须的,但它确实在某些情况下非常有用。以下是为什么在某些情况…...

【二叉树】Leetcode N 叉树的层序遍历

题目讲解 429. N 叉树的层序遍历 算法讲解 在做层序遍历的时候由于它的每一个结点是有val vector child组成,所以在做层序遍历的时候需要考虑它每一层结点的个数,那我们就可以使用一个queue保存每一层的结点;那么我们在做第一层的时候&am…...

Spring AI

目录 一、Spring AI 1、Spring AI简介 1.1、四次工业革命发展和变革 1.2、什么是人工智能? 1.3、人工智能的发展历程 1.4、什么是大模型? 1.5、如何训练大模型? 一、Spring AI 1、Spring AI简介 Spring AI Java接入人工智能大模型 1.1、四次工业革命发展和变革 人类…...

fiori SAP ui5 动态改变控件颜色

使用CustomData动态改变控件颜色 有时候我们需要改变控件颜色,对于高度封装的控件,显然改变控件CSS是比较困难的,幸好SAP UI5预设了一个customData的属性,每个控件都能使用她。 如下代码是判断汇率是否有改变,如果改…...

RabbitMQ php amqp

Linux debian 安装 Windows php amqp 扩展 PECL :: Package :: amqp 将 php_amqp.dll 复制到 php 的 ext 目录下 将 rabbitmq.4.dll 复制到 c:\windows\system32 目录下 php.ini extensionamqp...

对称二叉树

给你一个二叉树的根节点 root , 检查它是否轴对称。 示例 1: 输入:root [1,2,2,3,4,4,3] 输出:true示例 2: 输入:root [1,2,2,null,3,null,3] 输出:falses 思路:我刚开始是想着用…...

浅浅总结SQL中的事务.

在现实生活中有很多的线上支付的场景,当支付的时候,一方资金减少,另一方资金增加,在执行前后,两者的总体数额需要相同,为了保证这个操作的完整,所以提出了事务,那我们先来去写一个示例&#xff…...

C++ | Leetcode C++题解之第76题最小覆盖子串

题目&#xff1a; 题解&#xff1a; class Solution { public:unordered_map <char, int> ori, cnt;bool check() {for (const auto &p: ori) {if (cnt[p.first] < p.second) {return false;}}return true;}string minWindow(string s, string t) {for (const au…...

什么可以替代iframe?

网页嵌套中&#xff0c;iframe曾几何时不可一世&#xff0c;没有其他更好的选择&#xff01; iframe即内联框架&#xff0c;作为网页设计中的一种技术&#xff0c;允许在一个网页内部嵌套另一个独立的HTML文档。尽管它在某些场景下提供了便利&#xff0c;但也存在多方面的缺陷…...

HTTP/1.0、HTTP/1.1、HTTP/2.0区别

文章目录 区别HTTP/1.0HTTP/1.11. 持久连接&#xff08;长连接&#xff09;2. 管道化3. Host头字段4. 分块传输编码5. 缓存机制6. 请求方法 HTTP/2.01. 二进制分帧2. 多路复用3. 服务器推送4. 优先级设置5. 头信息压缩6. 安全性7. 流量控制 区别 特性HTTP/1.0HTTP/1.1HTTP/2.0…...

鸿蒙内核源码分析(文件句柄篇) | 你为什么叫句柄

句柄 | handle int open(const char* pathname,int flags); ssize_t read(int fd, void *buf, size_t count); ssize_t write(int fd, const void *buf, size_t count); int close(int fd);只要写过应用程序代码操作过文件不会陌生这几个函数,文件操作的几个关键步骤嘛,跟把大…...

2024.5.8 关于 SpringCloud —— Ribbon 的基本认知

目录 Ribbon 负载均衡原理 工作流程 Ribbon 负载均衡规则 Ribbon 负载均衡自定义化 代码方式修改规则 配置文件方式修改规则 小总结 Ribbon 设定饥饿加载 Ribbon 负载均衡原理 工作流程 order-service 使用 RestTemplate 发送请求&#xff0c;随后该请求将会被 Ribbon 所…...

Lua 协程模拟 Golang 的 go defer 编程模式

封装go函数用于创建并启动一个协程&#xff1a; ---go函数创建并启动一个协程 ---param _co_task function 函数原型 fun(_co:thread) function go(_co_task)local co coroutine.create(_co_task) -- 创建一个暂停的协程coroutine.resume(co, co) -- 调用coroutine.resume激活…...

maven的安装与配置(超详细)

在Java开发中&#xff0c;配置Maven环境有几个重要的原因&#xff1a; 依赖管理&#xff1a;Maven 是一个强大的依赖管理工具&#xff0c;它能够帮助开发人员轻松地管理项目所需的各种第三方库和组件。通过在项目的 Maven 配置文件&#xff08;pom.xml&#xff09;中定义依赖&…...

springCloud服务降级使用到的组件

服务降级在Spring Cloud中通常使用的组件包括断路器&#xff08;Circuit Breaker&#xff09;和降级处理器&#xff08;Fallback&#xff09;。以下是它们的概念表述&#xff1a; 断路器&#xff08;Circuit Breaker&#xff09;&#xff1a;断路器是一种设计模式&#xff0c;…...

Spring框架学习-详细

文章目录 1. Spring简介1.1 面向接口编程1.2 Spring简介1.3 Spring体系结构 2 Spring IoC - 基于XML2.1 Sping框架部署&#xff08;IoC&#xff09;2.2 Spring IoC使用2.3 IoC和DI2.4 DI依赖注入Spring容器通过反射方法实现属性注入有三种方式1. set方法注入2. 构造器注入 2.5 …...

7.4.分块查找

一.分块查找的算法思想&#xff1a; 1.实例&#xff1a; 以上述图片的顺序表为例&#xff0c; 该顺序表的数据元素从整体来看是乱序的&#xff0c;但如果把这些数据元素分成一块一块的小区间&#xff0c; 第一个区间[0,1]索引上的数据元素都是小于等于10的&#xff0c; 第二…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘

美国西海岸的夏天&#xff0c;再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至&#xff0c;这不仅是开发者的盛宴&#xff0c;更是全球数亿苹果用户翘首以盼的科技春晚。今年&#xff0c;苹果依旧为我们带来了全家桶式的系统更新&#xff0c;包括 iOS 26、iPadOS 26…...

Xshell远程连接Kali(默认 | 私钥)Note版

前言:xshell远程连接&#xff0c;私钥连接和常规默认连接 任务一 开启ssh服务 service ssh status //查看ssh服务状态 service ssh start //开启ssh服务 update-rc.d ssh enable //开启自启动ssh服务 任务二 修改配置文件 vi /etc/ssh/ssh_config //第一…...

python/java环境配置

环境变量放一起 python&#xff1a; 1.首先下载Python Python下载地址&#xff1a;Download Python | Python.org downloads ---windows -- 64 2.安装Python 下面两个&#xff0c;然后自定义&#xff0c;全选 可以把前4个选上 3.环境配置 1&#xff09;搜高级系统设置 2…...

安宝特方案丨XRSOP人员作业标准化管理平台:AR智慧点检验收套件

在选煤厂、化工厂、钢铁厂等过程生产型企业&#xff0c;其生产设备的运行效率和非计划停机对工业制造效益有较大影响。 随着企业自动化和智能化建设的推进&#xff0c;需提前预防假检、错检、漏检&#xff0c;推动智慧生产运维系统数据的流动和现场赋能应用。同时&#xff0c;…...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验

一、多模态商品数据接口的技术架构 &#xff08;一&#xff09;多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如&#xff0c;当用户上传一张“蓝色连衣裙”的图片时&#xff0c;接口可自动提取图像中的颜色&#xff08;RGB值&…...

Spring Boot+Neo4j知识图谱实战:3步搭建智能关系网络!

一、引言 在数据驱动的背景下&#xff0c;知识图谱凭借其高效的信息组织能力&#xff0c;正逐步成为各行业应用的关键技术。本文聚焦 Spring Boot与Neo4j图数据库的技术结合&#xff0c;探讨知识图谱开发的实现细节&#xff0c;帮助读者掌握该技术栈在实际项目中的落地方法。 …...

Reasoning over Uncertain Text by Generative Large Language Models

https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829https://ojs.aaai.org/index.php/AAAI/article/view/34674/36829 1. 概述 文本中的不确定性在许多语境中传达,从日常对话到特定领域的文档(例如医学文档)(Heritage 2013;Landmark、Gulbrandsen 和 Svenevei…...

网站指纹识别

网站指纹识别 网站的最基本组成&#xff1a;服务器&#xff08;操作系统&#xff09;、中间件&#xff08;web容器&#xff09;、脚本语言、数据厍 为什么要了解这些&#xff1f;举个例子&#xff1a;发现了一个文件读取漏洞&#xff0c;我们需要读/etc/passwd&#xff0c;如…...