文章目录

  • 一、计算机器人正运动学
  • 二、求解工作空间
  • 总结

工作空间是机器人的一项重要性能指标,其表征了当机器人所有关节进行所有可能的运动时,其末端坐标系原点能够到达的位置集合和姿态集合。

一、计算机器人正运动学

求解工作空间的前提是正确计算机器人的正运动学,本文选取六自由度串联机器人,Stanford机器人,机器人坐标系与D-H参数表如下,这里不再赘述。建模过程可参考机器人学相关书籍。

二、求解工作空间

求解机器人工作空间的方法主要有图解法、解析法和数值法三种。
图解法是指根据机器人运动过程绘制机器人工作空间,该方法精确性较差且容易受到复杂结构的限制,主要在设计初期作方案对比时使用。解析法是根据机器人运动学约束关系,利用数学推导的方式得到机器人末端坐标系位姿关于各关节变量的数学解析表达式,这种方法虽然严谨,但是不具有直观性,并且对于关节数目较多的机器人求解过程较为繁琐。数值法是指按照特定的方法给定一定数目的关节变量值,运用运动学正解或逆解方程,求解这些关节变量对应的机器人末端坐标系位姿,典型的数值方法有网格法、Monte- Carlo法等。该方法虽然牺牲了一定的精度,但是计算效率高、易于图形化表达,是目前主要的工作空间求解方法。
本文选择Monte- Carlo法,其本质是随机遍历的方法。

求解工作空间时,需给定机器人的尺寸参数和各个关节的运动范围。
对于斯坦福机器人,给定初始参数为
d2=100
d6=80
d3=(10,30)
其余转动关节的角度范围均设定为-90度~+90度。
利用斯坦福机器人运动学正解求解工作空间,代码如下:

clear;
d2=100;
d6=80;
d3min=10;
d3max=30;
incr=0;
for Theta1=-pi:0.5:pifor Theta2=-pi:0.5:pifor d3=d3min:3:d3maxfor Theta4=-pi:0.5:pifor Theta5=-pi:0.5:0.8*piincr=incr+1;PX(incr)=-sin(Theta1).*(d2+sin(Theta4).*sin(Theta5).*d6)+cos(Theta1).*(cos(Theta2).*cos(Theta4)*sin(Theta5)*d6+sin(Theta2)*(d3+cos(Theta5)*d6));PY(incr)=cos(Theta1).*(d2+sin(Theta4).*sin(Theta5).*d6)+sin(Theta1).*(cos(Theta2).*cos(Theta4)*sin(Theta5)*d6+sin(Theta2)*(d3+cos(Theta5)*d6));PZ(incr)=-cos(Theta4)*sin(Theta2)*sin(Theta5)*d6+cos(Theta2)*(d3+cos(Theta5)*d6);endendendend
end
plot3(PX,PY,PZ,'.b')

运行结果如下:

三维视图如下

X-Y平面视图如下:

X-Z平面示意图如下:

Y-Z平面示意图如下:

总结

以上就是利用MATLAB求解串联机器人工作空间的源程序,如果有疑问欢迎在评论区讨论提问~

MATLAB计算机器人工作空间【源码】相关推荐

  1. 二维有限体积 matlab,二维有限体积法计算热传导及源码.pdf

    二维有限体积法计算热传导及源码 //#include "stdafx.h" #include #include #include #include #include using n ...

  2. 微信公众平台开发教程(四) 实例入门:机器人(附源码)

    微信公众平台开发教程(四) 实例入门:机器人(附源码) 上一篇文章,写了基本框架,可能很多人会觉得晕头转向,这里提供一个简单的例子来予以说明,希望能帮你解开谜团. 一.功能介绍 通过微信公众平台实现在 ...

  3. C语言实现方差variance计算(附完整源码)

    实现方差variance计算 实现方差variance计算的完整源码(实现,main函数测试) 实现方差variance计算的完整源码(实现,main函数测试) #include <math.h ...

  4. 智能聊天机器人实现(源码+解析)

    前言: 之前写了一篇  <美女图片采集器 (源码+解析)> 得到了众多朋友的支持, 发现这样系列的教程还是挺受欢迎的, 也激励我继续写下去. 也在那一篇文章中提过, 美女图片采集只是我先前 ...

  5. MATLAB去读网页源码时中文乱码

    MATLAB去读网页源码时中文乱码 防止获取的网页源码中文乱码 %设置网页的编码方式(必须首先知道网页的编码方式) options = weboptions('CharacterEncoding',' ...

  6. Matlab制作局部放大图——magnify源码

    Matlab制作局部放大图--magnify源码 写论文时会遇到需要用matlab做局部放大图的问题,好在matlab给出了magnify局部放大函数.下面是我做的一个小例子. 步骤: 1.先将mag ...

  7. 【老生谈算法】matlab实现音乐合成算法源码——音乐合成算法

    matlab音乐合成算法源码 1.文档下载: 本算法已经整理成文档如下,有需要的朋友可以点击进行下载 序号 文档(点击下载) 本项目文档 [老生谈算法]matlab音乐合成程序源码.doc 2.算法详 ...

  8. 智能聊天机器人实现(源码+析)

    前言: 今天带来的是智能聊天机器人实现(源码+解析), 和上一篇教程一样, 当你没有女朋友的时候, 可以用它来打发时间.这里的API是图灵机器人提供的, 实现一个十分强大的机器人. 具体功能包括: • ...

  9. [转载]MATLAB技术论坛【源码交流】汇总

    原文地址:MATLAB技术论坛[源码交流]汇总 作者:风雪夜归人 过已知三点做圆MATLAB源代码 http://www.matlabsky.com/thread-290-1-1.html 椭圆(圆) ...

  10. 大圣公众号机器人APP后台可控机器人部分源码

    大圣公众号机器人APP后台可控机器人部分源码支持二次开发二开已修复运营级

最新文章

  1. 基于深度学习算法和传统立体匹配算法的双目立体视觉
  2. How to use nheqminer in RedHat based systems (CentOS/Fedora)
  3. php yield 导出文件,PHP yield 读取大文件
  4. 关于 Orbeon form PE 版本使用 JavaScript Embedding API 的一个例子
  5. spring学习笔记02-spring-bean创建的细节问题
  6. Developer Express右键菜单显示汉化
  7. adb device offline 解决办法
  8. Android 实现 欢迎界面 自动跳转 到 主界面
  9. 用户名_网络安全与防御-OpenSSH用户名枚举及其检测方法
  10. 激光雷达的KPI与技术方案
  11. 【金万维】天联高级版客户端打开U8报错:未监听端口
  12. HTML5 汉字上方添加拼音标注 ruby、rp、rt
  13. SAP UI5 应用开发教程之六十一 - 在 SAP UI5 应用里绘制甘特图 Gantt Chart 试读版
  14. 第4讲 组合逻辑电路实例:编码器、译码器、数据选择器、加法器、数值比较器、代码转换器——计算机逻辑基础
  15. 阿里靠什么支撑 EB 级计算力?
  16. web前端入门到实战:CSS实现平行四边形布局效果
  17. 使用vfork、exec系列函数、wait/waited实现system函数的功能
  18. 【镀金与沉金工艺的区别,今后得选“沉金”】
  19. 【VC】accent conversion 口音转换论文
  20. linux 参数解析,Linux 命令行参数解析

热门文章

  1. 猫哥教你写爬虫 044--模拟浏览器-作业
  2. 人的9种2266对联文字的世界纪录(图)
  3. CS294(285)策略梯度学习笔记
  4. 程序员的日常生活之人艰不拆真相
  5. Resize operation completed for file#
  6. 服务器监控报警系统软件设计,Monitor监控报警系统
  7. 《孙子兵法战略运筹之谋攻篇》
  8. Azido-TAT,大环化合物,双功能螯合剂的性质
  9. amd一键超频怎么用_(完整版)超频必看AMD_CPU超频教程
  10. TrueCrypt介绍及入门使用讲解【翻译】