01- 三自由度串联机械臂位置分析
三自由度串联机械臂如下图所示(d1=80mm,L1=100mm,L2=80mm),利用改进DH法建模,坐标系如下所示:

利用改进DH法建模,该机器人的DH参数表如下所示:

对该机械臂进行位置分析,即给定一组关节角度,求解末端点P相对于基坐标系的坐标值。
1.1 机器人工具箱仿真(RT)
当 θ 1 = 30 ° , θ 2 = 45 ° , θ 3 = 60 ° \theta_1=30°,\theta_2=45°,\theta_3=60° θ1=30°,θ2=45°,θ3=60°时,利用机器人工具箱的MDH法建模仿真如下:

仿真结果如下:

此时,末端点P的位置坐标仿真值为:
x P = 0.043305734126218 m x_P=0.043305734126218\ m xP=0.043305734126218 m, y P = 0.025002577255227 m y_P=0.025002577255227\ m yP=0.025002577255227 m, z P = 0.227984744221780 m z_P=0.227984744221780\ m zP=0.227984744221780 m
1.2 改进DH法建模仿真(MDH)
MDH的齐次变换矩阵如下:

坐标系4的齐次变换矩阵为:

当 θ 1 = 30 ° , θ 2 = 45 ° , θ 3 = 60 ° \theta_1=30°,\theta_2=45°,\theta_3=60° θ1=30°,θ2=45°,θ3=60°时,末端点P的位置坐标可以根据齐次变换矩阵获得,具体值如下所示: x P = 0.043305734126218 m x_P=0.043305734126218\ m xP=0.043305734126218 m, y P = 0.025002577255227 m y_P=0.025002577255227\ m yP=0.025002577255227 m, z P = 0.227984744221780 m z_P=0.227984744221780\ m zP=0.227984744221780 m

1.3 几何法分析求解(MATLAB)

利用几何法求解,可得末端点P的位置坐标:

当 θ 1 = 30 ° , θ 2 = 45 ° , θ 3 = 60 ° \theta_1=30°,\theta_2=45°,\theta_3=60° θ1=30°,θ2=45°,θ3=60°时,末端点P的位置坐标可以根据上式获得,具体值如下所示: x P = 0.043305734126218 m x_P=0.043305734126218\ m xP=0.043305734126218 m, y P = 0.025002577255227 m y_P=0.025002577255227\ m yP=0.025002577255227 m, z P = 0.227984744221780 m z_P=0.227984744221780\ m zP=0.227984744221780 m

1.4 Simscape模型仿真(Sim)
首先将solidworks模型的零件导出step格式,注意要选择参考坐标系。然后,在simscape模块中选择multibody模型进行建模,具体如下所示:

当设置好角度时,进行仿真,结果如下所示:

当 θ 1 = 30 ° , θ 2 = 45 ° , θ 3 = 60 ° \theta_1=30°,\theta_2=45°,\theta_3=60° θ1=30°,θ2=45°,θ3=60°时,末端点P的位置坐标可以获得,具体值如下所示: x P = 0.043305734126195 m x_P=0.043305734126195\ m xP=0.043305734126195 m, y P = 0.0250002577255245 m y_P=0.0250002577255245\ m yP=0.0250002577255245 m, z P = 0.22798474422179 m z_P=0.22798474422179\ m zP=0.22798474422179 m
1.5 结论
通过几种方法进行位置分析,可以看出:当给定某一关节角度时,不同方法计算出来的末端点P的坐标值几乎一样,表明计算成功!!
相关文章:
01- 三自由度串联机械臂位置分析
三自由度串联机械臂如下图所示(d180mm,L1100mm,L280mm),利用改进DH法建模,坐标系如下所示: 利用改进DH法建模,该机器人的DH参数表如下所示: 对该机械臂进行位置分析&…...
Flutter实现可拖拽操作Draggable
文章目录 1. Draggable 控件的构造函数主要参数: 2. Draggable 的工作原理3. 常见用法示例 1:基本的拖拽控件解释:示例 2:与 DragTarget 配合使用解释: 4. Draggable 的回调详解5. 总结 Draggable 是 Flutter 中一个用…...
Vue BPMN Modeler流程图
1、参考地址 git clone https://github.com/evanyangg/vue-bpmn-modeler.git 2、安装bpmn.js npm install bpmn-js --save 3、使用bpmn.js <template><div class"containers"><div class"canvas" ref"canvas"></div&g…...
写在公司40周年前夕
日子太快了,来这里工作六年多了。现在才知道原来入职的公司只是母公司的一小点。刚来一年就碰到疫情,三年疫情之后就迎来亏损,而后就是变了董事长,换了总经理。 这圣诞前,所有的子分又换了一把手。动作之大,…...
Python调用Elasticsearch更新数据库
文章目录 Elasticsearch介绍Python调用Elasticsearch更新数据库 Elasticsearch介绍 Elasticsearch是一个基于Lucene的搜索引擎,它提供了一个分布式、多租户能力的全文搜索引擎,具有HTTP web接口和无模式的JSON文档。Elasticsearch是用Java开发的&#x…...
测试基础之测试分类
软件测试是确保软件产品满足预期功能、性能和用户体验要求的关键环节。它的主要目的是通过系统化的方法发现并修复软件中的缺陷,从而提高软件的质量和可靠性。在软件开发生命周期的不同阶段执行测试,以尽早发现潜在的错误或类型,早期发现缺陷…...
太阳能LED路灯智能控制系统(论文+源码)
1系统的功能及方案设计 本次课题为太阳能LED路灯智能控制系统,其系统整体架构如图2.1所示,太阳能板通过TP4056充电模块给锂电池进行充电,电池通过HX3001升压模块进行升压到5V给整个控制系统进行供电,控制系统由AT89C52单片机作为…...
文本数据处理
文本数据处理 一、数据转换与错误处理 (一)运维中的数据转换问题 在计算机审计及各类数据处理场景中,数据转换是关键步骤,涉及将被审计单位或其他来源的数据有效装载到目标数据库,并明确标示各表及字段含义与关系。…...
Liunx环境下安装人大金仓数据库V8R6版本
Liunx环境下安装人大金仓数据库V8R6版本 一:硬件环境要求二:软件环境要求三:安装包准备四:检测和配置环境4.1:检查操作系统信息4.2 检查系统内存与存储空间 五:配置内核参数六:预安装工作6.1 创…...
Android使用PorterDuffXfermode模式PorterDuff.Mode.SRC_OUT橡皮擦实现马赛克效果,Kotlin(3)
Android使用PorterDuffXfermode模式PorterDuff.Mode.SRC_OUT橡皮擦实现马赛克效果,Kotlin(3) import android.content.Context import android.graphics.Bitmap import android.graphics.BitmapFactory import android.graphics.Canvas impor…...
python 怎么引入类
一、导入单个类 from fun import Dog dogDog(husike) dog.bark() 二、导入多个类 多个类之间用逗号分隔 from fun import Dog,Cat dogDog(husike) dog.bark() catCat(maomi) cat.catch_mouse() 三、导入整个模块 import fun dogfun.Dog(husike) dog.bark() catfun.Cat(maomi) …...
Day35汉明距离
两个整数之间的 汉明距离 指的是这两个数字对应二进制位不同的位置的数目。 给你两个整数 x 和 y,计算并返回它们之间的汉明距离。 class Solution {public int hammingDistance(int x, int y) {int cnt 0;while (Math.max(x, y) ! 0) {if ((x & 1) ! (y &…...
中文学习系统:客户服务与学习支持
3.1 系统可行性分析 开发一款程序软件不仅需要时间,也需要人力,物力资源。而进行可行性分析这个环节就是解决用户这方面的疑问,看看程序在当前的条件下是否可以进行开发。 3.1.1 技术可行性分析 此程序选用的开发语言是Java,这种编…...
华为麦芒5(安卓6)termux记录 使用ddns-go,alist
下载0.119bate1版,不能换源,其他源似乎都用不了,如果root可以直接用面具模块 https://github.com/termux/termux-app/releases/download/v0.119.0-beta.1/termux-app_v0.119.0-beta.1apt-android-5-github-debug_arm64-v8a.apk 安装ssh(非必要) pkg install openssh开启ssh …...
餐厅下单助手系统(Java+MySQL)
项目概览 餐厅下单助手系统是一个采用 Java 实现的小型食品订单管理系统,并且以 SwingUI 打造视觉界面,数据库提供。本系统分为商家和顾客两类体验,有效地给予简洁性能。可用做课程设计,参考学习。 技术栈 Java: 核心开发语言S…...
Go操作MySQL
连接 Go语言中的database/sql包提供了保证SQL或类SQL数据库的泛用接口,并不提供具体的数据库驱动。使用database/sql包时必须注入(至少)一个数据库驱动。 我们常用的数据库基本上都有完整的第三方实现。例如:MySQL驱动 下载依赖…...
Linux(Ubuntu/CentOS)配置开机自启动服务
systemd和systemctl的区别和联系 systemd:是现代Linux系统中的初始化系统和服务管理器。它主要负责系统引导和进程管理,支持并行化启动服务,并提供高级的服务管理和依赖控制。 systemctl:是systemd的命令行工具,用于与…...
springboot3版本结合knife4j生成接口文档
1.概述 knife4j官网为:介绍 | Knife4j (xiaominfo.com)https://doc.xiaominfo.com/docs/introduction 初步了解的码友可以初步了解一下官网的如下几个模块: 其中在快速开始模块中,不同的springboot版本都有一个使用的案例demo如下图位置&am…...
谈谈 Wi-Fi 的 RTS/CTS 设计
我不是专业的 Wi-Fi 技术工作者。但我可以谈谈作为统计复用网络的 Wi-Fi,通用的网络分布式协调功能在底层是相通的。 从一个图展开: 基于这底层逻辑,共享以太网可以用 CSMA/CD,而 Wi-Fi 只能用 CSMA/CA,区别在 CD(冲…...
JVM 详解
一. JVM 内存区域的划分 1. 程序计数器 程序计数器是JVM中一块比较小的空间, 它保存下一条要执行的指令的地址. [注]: 与CPU的程序计数器不同, 这里的下一条指令不是二进制的机器语言, 而是Java字节码. 2. 栈 保存方法中的局部变量, 方法的形参, 方法之间的调用关系. 栈又…...
软件评测师基础知识专项刷题:软件测试过程
前言软考软件评测师备考之路,基础刷题必不可少。本文围绕软件测试过程模块整理经典习题 核心考点梳理,系列内容长期连载更新,慢慢积累、逐个突破,轻松夯实应试功底。考点测试过程模型1.组织级测试过程组织级测试过程用于开发和管…...
AI时代下的AOSP构建:从“效率黑洞”到“分钟级交付”,企业级构建如何破局?
近年来,AI模型训练与大型软件构建的复杂度持续攀升,企业级操作系统的多分支、多产品构建正成为工程团队的“效率黑洞”。在 Android 平台,AOSP 构建尤为突出:全量构建耗时长、增量改动触发大规模重建、CI 队列冗长、资源消耗高等问…...
如何通过QtScrcpy实现跨平台键鼠映射?4个技术要点让PC精准操控Android游戏
如何通过QtScrcpy实现跨平台键鼠映射?4个技术要点让PC精准操控Android游戏 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy QtScrcpy作为一款开源的Android设备投屏与控制…...
如何用 Claude Code 快速完善接口文档和注释
在大多数项目中,代码本身并不是最大的问题。 真正让人头疼的是:没有文档,没有注释。常见情况包括: 接口没有说明,不知道怎么用方法没有注释,看不懂意图参数含义不清晰,只能靠猜老项目完全没有文…...
手把手玩转三相SPWM逆变器
三相电压型SPWM逆变器控制设计及应用(原理图工程源代码工 10067-三相电压型SPWM逆变器控制设计及应用(原理图工程源代码工程仿真工程详细说明书PPT) 随着国家电网的发展,国明对于电网的使用要求越来越高,并且家家户户均…...
从零开发Shell补全脚本:学习git-flow-completion的代码架构
从零开发Shell补全脚本:学习git-flow-completion的代码架构 【免费下载链接】git-flow-completion Bash, Zsh and fish completion support for git-flow. 项目地址: https://gitcode.com/gh_mirrors/gi/git-flow-completion 掌握Shell补全脚本开发是提升命令…...
YamlDotNet缓冲区反序列化:提升大数据集处理性能的终极指南
YamlDotNet缓冲区反序列化:提升大数据集处理性能的终极指南 【免费下载链接】YamlDotNet YamlDotNet is a .NET library for YAML 项目地址: https://gitcode.com/gh_mirrors/ya/YamlDotNet YamlDotNet是一款功能强大的.NET库,专为YAML数据处理设…...
质子交换膜(PEM)燃料电池氢气供应系统,阳极压力非线性状态控制simulink模型;自适应反...
质子交换膜(PEM)燃料电池氢气供应系统,阳极压力非线性状态控制simulink模型;自适应反步法控制; 燃料电池电堆模型:阴极流道,阳极流道,膜水合传递,输出电压模型、 氢气回路…...
MAX9814麦克风音量LED指示器嵌入式固件库
1. 项目概述MAX9814_Electret_Microphone_LED_Volume_Indicator是一个面向嵌入式音频前端采集与可视化反馈的轻量级固件库,专为 Adafruit MAX9814 电容式驻极体麦克风放大模块设计。该模块基于 Maxim(现为 Analog Devices)推出的低噪声、高增…...
终极Cursor Pro破解指南:免费解锁AI编程助手完整功能
终极Cursor Pro破解指南:免费解锁AI编程助手完整功能 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your tria…...
