solidworks导出urdf教程

1.安装solidworks

见网络教程:https://blog.csdn.net/qq_27139123/article/details/90382847?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522161174106316780299043192%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=161174106316780299043192&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2allfirst_rank_v2~rank_v29-2-90382847.pc_search_result_no_baidu_js&utm_term=%E5%AE%89%E8%A3%85solidworks2016&spm=1018.2226.3001.4187

2.安装solidworks插件

sw_urdf_exporter:http://wiki.ros.org/sw_urdf_exporter

3.在solidworks中选中此插件

4.重新装配

将KUKA机器人模型导入solidworks,并将各个轴的连杆导出为零件,再重新导入solidworks进行装配,使其变为装配体,装配关系需要严格约束并且把机器人各个关节置于DH零点

5.创建每一个link的原点、基准轴和坐标系


坐标系的定义需要和DH参数建模的坐标系定义保持一致,创建坐标系时可以先创建点,基准面等参考几何体



6.在工具中选择导出urdf

7.设置base_link


Link Name可以随便设置

Global Origin Coordinate System选择刚刚创建的基坐标系

Link Components选择装配体中对应的连杆模型

Number of child links选择1,依次添加连杆

(注意:如果选择Automatically Generate就是系统自动生成基准轴和坐标系,这样的模型是错的)

8.设置后面的link1-link6


Link Name和Joint Name可以随便设置

Reference Coordinate System选择刚刚创建的对应连杆的坐标系

Reference Axis选择刚刚创建的对应连杆的基准轴

Joint Type选择revolute

Link Components选择装配体中对应的连杆模型

9.所有设置完毕后再选择Preview and Export


点击Next

坐标系是对的就不需要修改里面的运动学参数,另外一些是动力学参数,后面需要在ROS中做仿真的话需要设置,不然就需要在导出的URDF文件中进行设置,之前导出的时候我没设置,因此在matlab simulink中查看模型的时候因为重力,直接掉下去了

点击Export URDF and Meshes得到如下图所示的文件,导出的路径和文件名不能有特殊字符,因此需要修改文件名KUKA KR6 R900-2.SLDASM这种不可以,后面导入matlab的时候会出现问题,把后面的.SLDASM去掉就可以了

10.URDF文件导入matlab验证模型正确性

clc
clear
%%利用Robotics System工具箱,但是在利用Simulink仿真时没有多体工具箱方便
%robot = importrobot('/Users/zhouhaojun/Desktop/桌面 - 周皓骏的MacBook Pro/KUKA KR6 R900-2/urdf/KUKA KR6 R900_urdf.urdf');
robot = importrobot('/Users/zhouhaojun/Desktop/KUKA KR6 R900_2/urdf/KUKA KR6 R900_2.urdf');
robot.DataFormat='column';robot.DataFormat='column';
%s=randomConfiguration(robot);
s=[0 0 0 0 0 0]';
%L{0} = robot.getBody('base_link');
L{1} = robot.getBody('Link1');
L{2} = robot.getBody('Link2');
L{3} = robot.getBody('Link3');
L{4} = robot.getBody('Link4');
L{5} = robot.getBody('Link5');
L{6} = robot.getBody('Link6');
T1 = getTransform(robot,s,'Link1','base_link');
T2 = getTransform(robot,s,'Link2','Link1');
T3 = getTransform(robot,s,'Link3','Link2');
T4 = getTransform(robot,s,'Link4','Link3');
T5 = getTransform(robot,s,'Link5','Link4');
T6 = getTransform(robot,s,'Link6','Link5');
R{1}= T1(1:3,1:3)';  p{1} = T1(1:3,4);
R{2}= T2(1:3,1:3)';  p{2} = T2(1:3,4);
R{3}= T3(1:3,1:3)';  p{3} = T3(1:3,4);
R{4}= T4(1:3,1:3)';  p{4} = T4(1:3,4);
R{5}= T5(1:3,1:3)';  p{5} = T5(1:3,4);
R{6}= T6(1:3,1:3)';  p{6} = T6(1:3,4);
T7=[1 0 0 0;0 -1 0 0;0 0 -1 -0.09;0 0 0 1];
T=T1*T2*T3*T4*T5*T6;
Tcp=T*T7;
Tbase=[1 0 0 0;0 0 -1 0;0 1 0 0;0 0 0 1];
Ttarget=Tcp*Tbase;show(robot,[0 0 0 0 0 0]','PreservePlot',false);
showdetails(robot);


导入后可以使用Robotics System工具箱(不是DH参数建模用到的Robotic toobox工具箱):getBody函数得到连杆,getTransform函数得到变换矩阵,以此验证模型建立的是否正确

11.URDF文件导入matlab simulink

clc
clear
%%利用SimScape多体工具箱进行导入,导入后可以进入Simulink进行仿真
smimport('/Users/zhouhaojun/Desktop/桌面 - 周皓骏的MacBook Pro/KUKA KR6 R900-2/urdf/KUKA KR6 R900-2.urdf')


如果显示不出来模型报错,需要点击里面所有的Link模块,在File Name中选择之前导出文件中的模型文件

点击run就可以看到导入结果,但这样仿真出来的只是运动学模型,没有动力学参数

urdf文件中的参数还需要进一步研究,后面ROS仿真会用到

solidworks导出urdf教程相关推荐

  1. solidworks导出urdf文件并在ROS中显示

    01 solidworks导出urdf文件 官网下载插件:http://wiki.ros.org/sw_urdf_exporter 然后到github上下载插件,虽然我是solidworks2022, ...

  2. 【工具篇】 Solidworks导出urdf模型 Solidworks将stl文件转为obj文件 附过程中遇到的错误

    目录标题 A.urdf模型的导出 A1 模型为纯转动副 Q1.1 continuous和revolute的区别 A2 模型中包括移动副 设置一个固定不动的平台 Q1.2 solidworks导出后移动 ...

  3. Solidworks导出URDF总结(Noetic)

    环境 Solidwoks2018 SP0 / Solidwoks2021 SP5: Ubuntu20.04: ROS1 Noetic; Solidwoks2018 SP0对于平移副有问题,显示不出来, ...

  4. ur5机器人solidworks导出urdf(附带SW的y轴朝上和rviz零件散落的解决方法)

    ur5的solidworks模型下载地址(免费下载):https://www.mfcad.com/tuzhi/800/738923.html y轴朝上的解决方法: 1.根据这个教程 https://b ...

  5. 【Solidworks导出URDF】踩坑记录

    问题1:Solidworks安装SW2URDF插件后无法启动 1.1 SW2URDF插件的安装 在https://wiki.ros.org/sw_urdf_exporter下载sw2urdf文件,安装 ...

  6. 如何从solidworks导出URDF模型

    1.sw_urdf_exporter插件介绍 下载与安装 下载地址:http://wiki.ros.org/sw_urdf_exporter 下载插件之前确保已经安装solidworks软件. 打开s ...

  7. 使用solidworks导出urdf文件

    准备 solidworks 2017已经安装好SW2URDF插件. 点一下上面的小齿轮>>插件>>勾选最下面的SW2URDF. 步骤 画好模型>>点击工具>& ...

  8. ROS笔记(二) SolidWorks to URDF 并实现可视化

    尝试过写urdf和xacro,没有试过使用SolidWorks导出模型. 使用SolidWorks 2016 使用SolidWorks to URDF Exporter工具:点这里 SolidWork ...

  9. solidworks导出gazebo模型

    solidworks导出gazebo模型 前言 1.利用solidworks导出URDF文件 2. 导入gazebo 2.1 上色 2.2 贴图 2.3 修改初始位置 总结 前言 整理了solidwo ...

最新文章

  1. android服务的启动过程,Android Service的启动过程(上)
  2. 行业场景智能应用,解锁边缘计算时代新机遇
  3. SpringMVC执行流程图
  4. java 两个页面传递数据,请问Cookie怎么在两个页面间传递数据?
  5. python中字符串:声明、编码、函数、格式化
  6. ViBe算法source code
  7. mysql书单推荐_MySQL零基础入门推荐书籍?
  8. Google的快照的用户体验感觉不如之前
  9. MATLAB视频与图片之间的相互转换
  10. 统计报表币种金额_海关总署就全面发布以人民币计价统计数据答问
  11. 计算机专业在医院的工作,探析计算机在医院工作的应用
  12. Python绘制二元函数图像
  13. mysql aced是什么_memcached编译安装及缓存mysql测试
  14. pin ——pin tool代码注释 各pin tool的用途
  15. Linux 时间校准与同步
  16. 海信JAVA开发笔试题_JAVA设计模式之【工厂方法模式】
  17. 苹果CMS根据有无播放组输出不同的内容
  18. cyk的小学数学题 小学数学
  19. webview加载网页出现白屏
  20. 儿童绘本杂志儿童绘本杂志社儿童绘本编辑部2023年第7期目录

热门文章

  1. 工业以太网交换机MODBUS协议总线光纤转换器工厂控制系统
  2. UG 是当今较为流行的一种模具设计软件
  3. python前端页面显示_Python flask框架如何显示图像到web页面
  4. mysql5.6.zip配置不了_MySQL 5.6.13 解压版(zip版)安装配置方法
  5. java运行python脚本_java中执行python脚本工具类详解
  6. linux安装 pycocotools_Windows下安装 pycocotools
  7. 人工神经网络的功能特点,人工神经网络的优缺点
  8. 中柏平板u盘启动_中柏平板电脑重装系统教程盘点
  9. 【uva12232/hdu3461】带权并查集维护异或值
  10. c#工业自动化控制链接开发库(注意是DLL文件,链接库,非源码)