MATLAB R2014a
1.蒙特卡洛法:

i.确定机械臂各关节变量的变化范围(θ_min,θ_max)
ii.确定末端执行器的位姿矩阵T=

位置向量为[px,py,pz)]’。
iii.利用随机函数rand生成N个 0-1的随机点,以(θ_max-θ_min)∙rand为随机步长,得各关节变量的随机值,θ_i=θ_(i,min)+(θ_(i,max)-θ_(i,min))∙rand
iv. 把以上生成的所有关节变量的随机值,代入到位置向量,
v.收集这些坐标点,并绘制。

2.利用robotics toolbox 10.2(版本不同,结果可能不 同),首先

startup_rvc %启动工具箱

L(1)= Link('revolute', 'd', 0, 'a', 0, 'alpha', pi/2);
L(2)= Link('revolute', 'd', 147, 'a', 0, 'alpha', pi/2);
L(3)= Link('revolute', 'd', 600, 'a', 0, 'alpha', pi/2);
L(4)= Link('revolute', 'd', 147, 'a', 0, 'alpha', -pi/2);
L(5)= Link('revolute', 'd', 600, 'a', 0, 'alpha', pi/2);
L(6)= Link('revolute', 'd', 0, 'a', 0, 'alpha', -pi/2);
L(7)= Link('revolute', 'd', 160, 'a', 0, 'alpha', pi/2);
sevenlink=SerialLink(L,'name','7R') %建立7R的模型
N=1000; %随机值数量,一般取大,这里取1000,运算快
R1=unifrnd(-pi,pi,[1,N]);  %7个连杆的各关节随机值,蒙特卡洛法要求
R2=unifrnd(pi/3,5*pi/3,[1,N]);
R3=unifrnd(-pi,pi,[1,N]);
R4=unifrnd(-pi/2,pi/2,[1,N]);
R5=unifrnd(-pi,pi,[1,N]);
R6=unifrnd(-5*pi/6,5*pi/6,[1,N]);
R7=unifrnd(-pi,pi,[1,N]);
A= cell(N, 7); %定义一个元胞组,用于储存以上7个连杆关节变量随机值
for i = 1:NA{i} =[R1(i) R2(i) R3(i) R4(i) R5(i) R6(i) R7(i)];
end
B=cell2mat(A);    %转换为矩阵
T07=double(sevenlink.fkine(B));       %末端位姿矩阵
%以下分别输入,得两个图
scatter3(squeeze(T07(1,4,:)),squeeze(T07(2,4,:)),squeeze(T07(3,4,:))) %xyz三维图
plot(squeeze(T07(1,4,:)),squeeze(T07(2,4,:)),'o') %xy二维图

生成的二维如上
3.说明
a.参考https://blog.csdn.net/weixin_43606771/article/details/83861878的方法,并添加了说明,连杆更多了。
b.N取大效果更好,比如50000;
c.关于矩阵超过维度的说明:
工具箱中,fkine方法,求得后:size(fkine)=1,而不是4x4,
故用 double(fkine),此时size(double(fkine)),为4x4。
d.有什么问题,可以留言,学识有限,望诸位同僚批评指正。

蒙特卡洛法的七自由度机械臂工作空间分析相关推荐

  1. 【机器人学】冗余七自由度机械臂的解析解逆解算法

    冗余七自由度机械臂的解析解逆解算法 参考 论文一 论文二 参考 -[1] An Analytical Solution for a Redundant Manipulator with Seven D ...

  2. matlab机械臂运动,四自由度机械臂运动学分析及Matlab仿真.PDF

    四自由度机械臂运动学分析及Matlab仿真 2013 年 3 月 机械科学与技术 March 2013 32 3 Mechanical Science and Technology for Aeros ...

  3. 基于adams与simulink的七自由度机械臂模型与控制仿真

    基于adams与simulink的七自由度机械臂模型与控制仿真 最近在搞adams与simulink联合仿真,发现网上关于高自由度机械臂的建模与仿真中文资料很少,也没有开源模型.因此将我的学习成果开源 ...

  4. 七自由度机械臂设计分析——待更新

    最近准备研究一下7自由度机械臂,先做一些基本分析,后续会持续更新其工作空间.动力学模型和基于优化理论的轨迹规划设计. %Author:easyR %Date:2019/6/18 %dh:SDH Tab ...

  5. article-五自由度机械臂运动学分析(三转动+两移动自由度)

    1正运动学分析 采用标准的D-h法进行机械腿模型分析: D-h表如下 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9C5pdIGG-1666495203285)(da ...

  6. article-三自由度机械臂运动学分析+仿真

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

  7. 机器人抓取平台搭建记录(六):手眼标定--眼在手上--Kinova Gen2 JACO2 七自由度机械臂--Realsense D435

    吐槽一,手眼标定两个多月前就做好了,这篇文章也是两个多月前就写了,但当时不知出了什么差错,在我还没有写完想暂时保存一下草稿的时候,写的内容竟然没了小半.于是就拖到现在,拖到忘记了当时写作的思路,操作细 ...

  8. Python 机器人学 —— 机械臂工作空间分析

    设关节1.关节5的高 (圆柱高) 分别为 ,5个关节的转动角分别为  可得出DH参数表: # 1 - 2 2 - 3 3 - 4 4 - * *- 5 5 - H 因为把各个关节的坐标系位置都定在了圆 ...

  9. matlab机械臂工作空间代码_轻型协作机械臂运动学及工作空间分析

    0 引言 OUR机械臂有别于传统工业机械臂,其特点是体积小.重量轻.有很快的运动速度和较大的活动范围,机械臂的最大运动速度可以达到180°/s,能够处理更复杂.更危险的工作,具有极强的灵活度.精确度和 ...

最新文章

  1. drop truncate delete区别
  2. 微型计算机2013年10月下,微型计算机及接口技术2013年10月真题试题(04732)
  3. html个版本间的特点,了解下什么是HTML5,他与以往的版本有什么区别 什么新元素...
  4. 嵌入式linux系统移植的四大步骤_如何移植开源软件到嵌入式Linux系统
  5. js function理解
  6. 2021社区居家养老现状与未来趋势报告
  7. html网页设计与制作:基于html设计整套招聘网站求职前端模板页面 静态网页HTML代码 学生网页课程设计期末作业下载...
  8. BXP网卡换槽之后就要按“任意键”的问题解决方法!(转)
  9. 惠普打印机故障代码_惠普打印机出现故障怎么办
  10. 【原创】小米路由器R1D 丢失SN号,刷回官方系统
  11. android 渐变蒙版_PPT教程 | 渐变蒙版
  12. python pygame字体设置_2015/11/3用Python写游戏,pygame入门(3):字体模块、事件显示和错误处理...
  13. vue-element-admin 项目更换浏览器图标与标头
  14. 单目标跟踪CVPR 2018 ECO+
  15. IDAC(电流型DAC)的参数和性能测试
  16. 12天summer----数据挖掘实战-模型评估
  17. 高晓松50岁生日感言:可感恩的很多,可原谅的很少
  18. 志翔科技亮相2022数博会 工业大数据技术支撑电力数智化
  19. 同济大学mba提前面试-同济大学MBA提前面试需要准备哪些材料?
  20. linux搜索文件内容中关键字,linux系统搜索文件中关键字的位置

热门文章

  1. numpy的快速傅里叶变换
  2. 什么是中间件 有什么用
  3. 推荐实用的公众号(一)--微信文章打赏功能
  4. OCaml for Haskellers
  5. Go :使用编译器诊断标志测试内联是否有效(附完整源码)
  6. 手机最强Python编程神器,在手机上运行Python
  7. 英特尔实感摄像头D415、D435、D435i、T265的差异
  8. “公域流量”与“私域流量”
  9. 数据优化 | CnOpenData中国工业企业专利及引用被引用数据
  10. 2345王牌输入法卸载不干净