博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
MATALB与VREP联合仿真--UR5机械臂动力学仿真
阅读量:2383 次
发布时间:2019-05-10

本文共 1533 字,大约阅读时间需要 5 分钟。



VREP是一款很不错的机器人仿真软件,可以和多个跨平台通信,于是准备用来和MATLAB进行联合仿真。但是查了很多资料并未找到使用MTALAB/Simulink模块进行联合仿真的,进过一番折腾终于实现基本的联合仿真,记录于此以备后续学习。

话不多说,进入正题:

一、软件环境配置

1、软件版本

VREP: V-REP PRO EDU Version 3.3.2(备注:测试过3.4版本似乎有些问题)

MATLAB:Matlab2016b

(1)打开VREP的安装路径中的shareMemoryCommunicationPlugin文件夹,如下:

C:\ProgramFiles(x86)\V-REP3\V-REP_PRO_EDU\programming\sharedMemoryCommunicationPlugin

(2)拷贝其中的v_repExtShareMemory.dll文件到VREP的主文件夹下

(备注:C:\ProgramFiles(x86)\V-REP3\V-REP_PRO_EDU)

(3)回到shareMemoryCommunicationPlugin文件夹拷贝其中的example Simulink压缩包

和BloqueMemoriaCompartida.slx到MATLAB的工作路径下。
2、仿真平台通信测试
解压exampleSimulink压缩包,在MATLAB中打开CameraExample.slx文件,在VREP中打开camara仿真环境。先运行MATLAB,再运行VREP。
如图所示:
VREP中的视频信息传到MATLAB中,又通过MATLAB传回来到VREP中。这样VREP和MATLAB的通信就测试成功了。
如果一切顺利,你会看到VREP中两个悬浮窗口都有图像信息。

你以为这就完呢,还没,这只是基本通信测试,接下来需要完成具体的UR5机械臂动力学仿真模块的搭建。

二、VREP中UR5机械臂配置

1、在vrep中调出UR5机械臂模型。
点击上图脚本图标(红色箭头指向处)把里面的代码全部删除(不用担心,你只要重新调出一个机械臂模型,代码依然存在)。并粘贴以下代码(没法上传附件,下载后打开复制里面的内容粘贴至UR5机械臂的脚步里。)
2、配置UR5机械臂关节参数
把每个关节的postion is cyclic勾选上表示关节可以360度旋转,把关节动态属性中的control loop enabled取消勾选,表示控制器可以外部接口给出。
至此VREP中的UR5机械臂的配置基本完成了。

三、MATLAB中的仿真环境配置

在MATLAB工作路径下新建一个文件夹ur5_test把刚才建立的UR5仿真场景文件放在里面,再把examp Similink这个文件中
的matlabGenericSHM.mexw32和matlabGenericSHM.mexw64以及BloqueMemoriaCompartida.slx拷贝到ur5_test文件夹下,在matlab中打开这个slx文件,并新建一个simulink模块UR5_control.slx文件,将刚才打开的文件里的模块拷贝至UR5_control.slx里面,打开后配置如下:
至此,配置文件就结束了,接下来就是搭建UR5机械臂的外围模块了。

四、MATLAB与VREP联合仿真-控制器以及外围模块搭建

如下图所示,
这里采用简单的重力补偿+PD控制实现UR5机械臂的关节控制
具体的算法原理这里就不多讲了,实验仿真的效果是通过力矩控制的方式,控制机械臂到达目标关节角度。控制精度和重力模型以及控制器相关,这里用了简单的PD控制的精度效果还不错。
仿真代码资料:

你可能感兴趣的文章
使用redis存储全球IP库
查看>>
Snappy Java API简介
查看>>
C/C++中正则表达式库RE2的使用
查看>>
HBase Java API(1.2.X)使用简介
查看>>
Java:实现比较接口时,应该全面的进行各种情况的比较
查看>>
python3.*下用mob_pbxproj自动化修改配置
查看>>
使用fir打包,测试跳转安装的坑
查看>>
版本号大小判断,适用规则(X.X.X.X........)
查看>>
关于Objective-C方法签名规则的说明
查看>>
libxml2.dylb 添加后找不到<libxml/tree.h> 头文件
查看>>
关于 [[self class] alloc]的理解
查看>>
Eclipse导入Web项目后代码不报错但项目报错(左上角有红叉)解决方案
查看>>
List、Set、数据结构、Collections
查看>>
Sudoku Solver
查看>>
Combination Sum
查看>>
First Missing Positive
查看>>
Trapping Rain Water
查看>>
Permutation Sequence
查看>>
Valid Number
查看>>
Text Justification
查看>>