5.24机器人基础-入门1

news2024/12/25 12:30:33

参考书籍:《机器人学导论》John.J.Craig

机器人方面的学习和线性代数、矩阵论部分的学习密切相关,建议先学习线性代数会更好理解此部分内容。虽然学了线代但是能忘的都忘得差不多的我要泪目了。本文主要介绍基础的运动学和动力学区别,正向运动学、逆向运动学的简单介绍。

写在前面:推荐书籍和教学视频

机器人学习书籍推荐 - 知乎基础篇机器人与数学(尤其是微积分、线性代数、矩阵论、概率论、数值方法等)之间有着密切的关系。因此,为了能够更好理解诸如刚体的位姿描述与变换,正逆运动学 / 动力学、微分运动学等知识,建议首先打好数学基…icon-default.png?t=N7T8https://zhuanlan.zhihu.com/p/144466970

 目录

一、区分运动学和动力学

1.1运动学 (Kinematics)

1.2动力学 (Dynamics)

1.3主要区别

1.4其他力学

材料力学(Mechanics of Materials)

系统动力学(System Dynamics)

二、运动学-正向逆向

正向运动学 (Forward Kinematics)

应用和过程:

应用实例:

逆向运动学 (Inverse Kinematics)

应用和过程:

应用实例:

比较

实例说明

正向运动学实例:

逆向运动学实例:


一、区分运动学和动力学

一字之差,研究的东西有比较大的差异。简而言之,运动学是描述“物体如何运动”的科学,而动力学是解释“为什么物体会这样运动”的科学。

运动学(Kinematics)和动力学(Dynamics)是力学的两个重要分支,尽管它们都涉及物体的运动,但研究的侧重点不同。

1.1运动学 (Kinematics)

运动学主要研究物体运动的几何特征,而不考虑引起这种运动的力和质量。运动学主要回答“如何运动”的问题,而不涉及“为什么会运动”。研究内容包括:

1. 位置(Position):物体在空间中的具体位置。

2. 速度(Velocity):物体位置随时间变化的快慢和方向。

3. 加速度(Acceleration):物体速度随时间变化的快慢和方向。

运动学的基本方程主要通过位置、速度和加速度的关系来描述物体的运动轨迹和运动规律

1.2动力学 (Dynamics)

动力学研究引起物体运动的原因,即力和物体的质量。它不仅描述物体如何运动,还解释为什么物体会这样运动。动力学包括以下两个主要分支:

1. 质点动力学(Particle Dynamics):研究质点或质点系的运动。通过牛顿运动定律,分析质点在各种力作用下的运动。

2. 刚体动力学(Rigid Body Dynamics):研究刚体的运动,考虑刚体的质量分布和力矩。

动力学的基本方程主要包括牛顿第二定律(\(F = ma\))和动量守恒定律等,用来描述力如何作用于物体并引起其运动。

1.3主要区别

1. 研究对象

   - 运动学:研究物体的运动规律,主要关注位置、速度和加速度等物理量的变化。

   - 动力学:研究物体的运动原因,主要关注力、质量以及它们如何影响物体的运动。

2. 是否考虑力:

   - 运动学:不考虑作用在物体上的力。

   - 动力学:考虑作用在物体上的力及其对运动的影响。

3. 方程和描述:

   - 运动学:使用运动方程描述位置、速度和加速度之间的关系。

   - 动力学:使用牛顿运动定律和其他力学定律描述力和运动的关系。

1.4其他力学

材料力学(Mechanics of Materials)

材料力学是研究材料在外力作用下的变形和内部应力分布的学科。主要内容包括:

  1. 变形(Deformation):研究材料在外力作用下的形变,通常使用应变(Strain)来描述。这包括拉伸、压缩、剪切和弯曲等不同类型的变形。
  2. 应力(Stress):研究材料内部由于外力作用产生的力。应力通常以力除以面积表示,有正应力(拉伸或压缩)和剪应力。
  3. 微元(微分单元):在材料力学中,通过微分单元(即微元)的概念,分析材料内部应力和应变的分布。微元分析帮助理解材料在不同点上的受力和变形情况。
  4. 弹性和塑性:研究材料在不同载荷下的响应,包括弹性变形(可恢复的)和塑性变形(不可恢复的)。
  5. 材料的性质:包括杨氏模量(Elastic Modulus)、屈服强度(Yield Strength)、断裂韧性(Fracture Toughness)等参数。

系统动力学(System Dynamics)

系统动力学是一门研究复杂系统的行为及其相互作用的学科。它广泛应用于工程、物理、生物、经济和社会科学等领域。以下是一些核心概念:

  1. 阻尼(Damping):阻尼是指系统中由于摩擦或其他阻力导致能量耗散的现象。在动力学系统中,阻尼影响系统的振动特性和稳定性。常见的阻尼类型包括粘性阻尼(Viscous Damping)和库仑阻尼(Coulomb Damping)。
  2. 自由度(Degrees of Freedom):系统中独立运动的数目。自由度越多,系统的动态行为越复杂。
  3. 振动分析:研究系统在外力作用下的振动响应,包括固有频率、模态分析和谐振现象。
  4. 微分方程:动力学系统通常通过微分方程描述其时间演变行为,包括牛顿方程、拉格朗日方程和哈密顿方程等。
  5. 反馈和控制:研究系统如何通过反馈机制进行控制,以达到稳定或期望的行为。

二、运动学-正向逆向

正向运动学(Forward Kinematics)和逆向运动学(Inverse Kinematics)是运动学中两个重要的概念,特别是在机器人学、计算机图形学和动画中应用广泛。它们分别解决不同的问题:

正向运动学 (Forward Kinematics)

正向运动学研究的是从机器人的关节参数(如角度、位置)推导出末端执行器的位置和姿态的问题。也就是说,给定各个关节的运动状态,计算机器人末端的具体位置和方向。

应用和过程:
  1. 输入:关节的角度或位置。
  2. 输出:末端执行器的位置和姿态(例如在三维空间中的位置和方向)。
  3. 过程:使用几何关系和转换矩阵,通过逐层变换计算出最终的位置信息。

正向运动学主要使用的是关节空间到工作空间的转换。具体方法包括使用齐次变换矩阵、旋转矩阵和位移向量等。

应用实例:
  • 机器人手臂:确定机器人手臂的每个关节角度,计算手臂末端的位置以执行特定任务。
  • 动画制作:计算一个角色骨骼的各部分位置,使角色摆出预定的姿势。

逆向运动学 (Inverse Kinematics)

逆向运动学研究的是从末端执行器的位置和姿态推导出需要的关节参数的问题。即给定末端执行器的目标位置和方向,求解各个关节的角度或位置。

应用和过程:
  1. 输入:末端执行器的目标位置和姿态。
  2. 输出:各个关节的角度或位置。
  3. 过程:通过逆向计算,求解出能够实现末端执行器到达指定位置的关节参数。

逆向运动学是工作空间到关节空间的转换。求解逆向运动学问题通常比正向运动学更复杂,可能需要使用数值方法、优化算法或迭代求解技术。

应用实例:
  • 机器人手臂:确定机器人手臂末端需要到达某一位置,通过计算得出各个关节的角度。
  • 虚拟角色动画:通过控制角色的手、脚等末端位置,计算角色的关节角度来生成自然的动作。

比较

  • 难度

    • 正向运动学:计算较为直接,通常通过直接的几何关系或矩阵变换即可求得结果。
    • 逆向运动学:计算较为复杂,涉及求解非线性方程组,有时可能有多解或无解的情况。
  • 应用领域

    • 正向运动学:主要用于模拟和分析给定关节参数下的运动情况,常见于运动规划和路径生成
    • 逆向运动学:主要用于目标驱动的运动控制,例如让机器人手臂抓取特定物体,或让虚拟角色摆出特定姿势。

实例说明

简单例子去理解一下,以后的篇幅会细写怎么进行运动学的正解逆解。

正向运动学实例:

设有一个两连杆机械臂,关节角度分别为 𝜃1 和 𝜃2,连杆长度分别为 𝐿1和 𝐿2。末端执行器的位置 (𝑥,𝑦)可以通过正向运动学计算为:

逆向运动学实例:

对同一个两连杆机械臂,若末端执行器需要到达位置 (𝑥,𝑦),逆向运动学求解各个关节角度 𝜃1和 𝜃2。方程组可能是:

通过这些方程,可以求出机器人关节的角度,以实现末端执行器到达指定位置的目标。

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

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

相关文章

RocketMQ 架构原理

注册中心 注册中心使用得nameserver, nameserver不会进行频繁的读写,所以整体的性能开销小,稳定性也高。 注册中心没隔10s会扫描一次所有的broker,如果2min没有发送心跳过来,就人为挂了,断开连接。此时会更新topic与队…

IEN在Web3.0中的性能与安全优势

随着Web3.0的快速发展,优化网络基础设施变得至关重要。智能生态网络(Intelligent Ecological Network, IEN)作为新一代网络架构,在提升性能与增强安全方面展现出巨大潜力。本文将深入探讨IEN在Web3.0中的技术优势,并展…

Linux安装Docker教程(实测可用)

前言 Docker是一个开源的应用容器引擎,它允许开发者将应用程序及其依赖打包到一个轻量级、可移植的容器中,然后发布到任何流行的Linux机器上。以下是对Docker的具体介绍: 技术起源:容器技术起源于程序员对于环境搭建与应用部署效…

data studio连接到虚拟机上的openGauss

参考:使用DataStudio连接本地虚拟机中的opengauss数据库_big data_白日梦想家_胖七七-华为云开发者联盟 本实验虚拟机安装的是CentOS7 数据库版本是:openGauss-5.0.2-CentOS-64bit-all.tar.gz 1.配置pg_hba.conf 首先使用su - omm登录到omm用户&…

FPGA搭积木之按键消抖(改进版)

目录 1.前言 2.回顾之前的设计 3.基于读者思路的设计 4.ModelSim仿真 1.前言 昨天分享的关于FPGA对机械按键消抖的设计,有读者指出了其中的不足,并给出了他的思路。今天就读者的设计思路,来再做一个按键消抖模块。这个程序大概是大学的时…

arping 一键检测网络设备连通性(KALI工具系列二)

目录 1、KALI LINUX简介 2、arping工具简介 3、在KALI中使用arping 3.1 目标主机IP(win) 3.2 KALI的IP 4、操作示例 4.1 IP测试 4.2 ARP测试 4.3 根据存活情况返回 5、总结 1、KALI LINUX简介 Kali Linux 是一个功能强大、多才多艺的 Linux 发…

建投数据收获客户感谢信

建投数据自2021年提出“以数据为核心的智能科技服务商”,并一直在为“成为国内领先的数字化转型合作伙伴”而努力,在赋能行业客户创造更大价值的同时,也陆续收到来自客户的肯定。 建投数据始终践行“成就客户,创新为要&#xff0…

科技引领乡村振兴新潮流:运用现代信息技术手段,提升农业生产和乡村管理效率,打造智慧化、现代化的美丽乡村

一、引言 随着科技的不断进步,现代信息技术已经渗透到社会的各个领域,成为推动社会发展的重要力量。在乡村振兴战略的背景下,科技的力量同样不容忽视。本文旨在探讨如何运用现代信息技术手段,提升农业生产和乡村管理效率&#xf…

2024 年 电工杯(B题)大学生数学建模挑战赛 | 平衡膳食食谱 | 数学建模完整代码+建模过程全解全析

当大家面临着复杂的数学建模问题时,你是否曾经感到茫然无措?作为2022年美国大学生数学建模比赛的O奖得主,我为大家提供了一套优秀的解题思路,让你轻松应对各种难题。 CS团队倾注了大量时间和心血,深入挖掘解决方案。通…

k8s遇到的错误记录

时隔四年有开始重新鼓捣k8s了,重新安装后遇到的错误记录如下: Error: Package: kubelet-1.14.0-0.x86_64 (kubernetes) Requires: kubernetes-cni 0.7.5 Available: kubernetes-cni-0.3.0.1-0.07a8a2.x86_64 (kubernetes) …

自学有点吃力,需不需要报六西格玛培训班学习?

在追求职业精进和企业管理优化的道路上,六西格玛管理方法论已经成为不少企业和个人的首选。然而,自学六西格玛往往伴随着一系列挑战,让不少学习者感到吃力。面对这样的困境,我们不禁要问:自学有点吃力,到底…

Docker 部署Jenkins

1、运行镜像 docker run --namejenkins \--restartalways \--privilegedtrue \-u root \-p 8080:8080 \-p 50000:50000 \-v /home/docker/jenkins/jenkins_home:/var/jenkins_home \-v /usr/bin/docker:/usr/bin/docker \-v /var/run/docker.sock:/var/run/docker.sock \-e TZ…

二十一、openlayers官网示例Custom Controls解析——自定义控件扩展Control类

官网demo地址: Custom Controls 这个示例讲的是如何自定义控件 首先创建了一个新的类继承了原本的Control,新增了一个button元素,然后调用了super方法将参数传给了父类。 const button document.createElement("button");button.…

《Rust奇幻之旅:从Java和C++开启》第1章Hello world 2/5

讲动人的故事,写懂人的代码 很多程序员都在自学Rust。 🤕但Rust的学习曲线是真的陡,让人有点儿怵头。 程序员工作压力大,能用来自学新东西的时间简直就是凤毛麟角。 📕目前,在豆瓣上有7本Rust入门同类书。它们虽有高分评价,但仍存在不足。 首先,就是它们介绍的Rust新…

[猫头虎分享21天微信小程序基础入门教程] 第11天:小程序的动态数据展示与实时更新

[猫头虎分享21天微信小程序基础入门教程] 第11天:小程序的动态数据展示与实时更新 — 第11天:小程序的动态数据展示与实时更新 📊 自我介绍 大家好,我是猫头虎,一名全栈软件工程师。今天我们继续微信小程序的学习&a…

sCrypt受邀参加#Unlock Bitcoin活动

由Antalpha HackerHouse主办的#Unlock Bitcoin活动将于2024年6月16日至18日在美国拉斯维加斯举办,sCrypt创始人兼CEO刘晓晖将作为演讲嘉宾出席本次活动。 刘晓晖本次演讲的主题是: 《Bitcoin Smart Contracts》 请登录以下网址报名参会: ht…

安全牛专访美创CTO周杰:数据安全进入体系化建设阶段,数据安全管理平台应用正当时

在数字经济时代,数据作为生产要素发挥越来越重要的作用,数据安全也得到了前所未有的重视。而随着数据安全能力已经进入了相对体系化建设的阶段,更加智能化、协同化的新一代数据安全管理平台得到了各类企业组织的广泛关注。 本期牛人访谈邀请到…

新火种AI|复旦团队在“冷冻人脑”领域获得重大进展!人工智能是否会对此形成助力?

​在低温医学领域,“冷冻人脑”技术的研究和突破既是重点,也是难点。因为这项技术关乎着人类是否可以取得一个令人瞩目的突破——人类的生命是否能够得到延续。 早几年,诸如“利用人体冷冻技术将身患绝症的病人保存十几年,几十年…

大疆上云API本地部署与飞机上云

文章目录 前言一、安装基础环境1. EMQX 安装(版本4.4.0)2. MySql 安装(版本8.0.26)3. Redis 安装 二、部署后端(JDK必须11及以上)三、部署前端四、成为大疆开发者五、飞机注册上云六、绑定飞机七、无人机状态查看 前言 大疆上云API官方文档有些写的不是…

Python条件分支与循环

大家好,当涉及到编写高效和灵活的程序时,条件分支和循环是 Python 中至关重要的概念。它们允许我们根据不同的条件执行不同的代码块,或者重复执行一组语句。条件分支和循环是测试开发工程师在日常工作中经常使用的工具,无论是编写…