正向运动学

不用twist也不用D-Htable,直接随便建立坐标系,根据相邻坐标系之间的坐标变换,来计算总的变换。经试验,的确可行。
%输入是各个关节的数值,输出(BASE)世界坐标系的6维向量
in=[7952, 2913, -815, 56554, -2050, -34617];

s1=in(1)*pi/2/120000;
s2=-in(2)*pi/2/160000; % -
s3=-s2+in(3)*pi/2/120000; % + 和2有耦合
s4=-in(4)*pi/2/80000; % -
s5=in(5)*pi/2/80000; % +
s6=-in(6)*pi/2/50000; % -

%从世界坐标系c0到坐标系c1,仅有绕z轴的转动
g01=rot(3,s1,[0 0 0]);

%从c1到c2,包括一个y轴平移和一个绕x轴的转动
g12=rot(1,s2,[0 150 0]);

%从c2到c3,包括一个z轴平移和一个绕x轴的转动
g23=rot(1,s3,[0 0 260]);

%从c3到c4,包括一个z轴平移和y轴转动
g34=rot(2,s4,[0 0 60 ]);

%从c4到c5,包括一个y轴平移和x轴转动
g45=rot(1,s5,[0 260 0]);

%从c5到c6,包括一个y轴转动
g56=rot(2,s6,[0 0 0]);
%c6到ctool
g6t=[0 1 0 0;0 0 1 90;1 0 0 0;0 0 0 1];

gw0=[0 1 0 0;-1 0 0 0;0 0 1 0;0 0 0 1];
g01
g02=g01*g12
g03=g02*g23
g04=g03*g34
g05=g04*g45
g06=g05*g56

gw6=gw0*g06
gwt=gw6*g6t

out=[gwt(1:3,4).' oula(gwt(1:3,1:3).')*180/pi]

function y=oula(x)
[h,w]=size(x);
if h==3 & w==3
    y=oula1(x);
else
    y=oula2(x);
end

function [sitaxyz]=oula1(R)
R=R.';
if abs(det(R)-1)>1e-2,error;end
sita=asin(-R(3));

if abs(1-R(3)^2)<1e-5
    sai=0;
    fai=0;
    sitaxyz=[fai sita sai];
    return;
end

sai=asin(R(2)/sqrt(1-R(3)^2));
if R(2)>=0 & R(1)>=0
elseif R(1)<0
    sai=pi-sai;
else
    sai=2*pi+sai;
end
   
fai=asin(R(6)/sqrt(1-R(3)^2));
if R(9)<0
    fai=pi-fai;
elseif R(6)<0 & R(9)>0
    fai=2*pi+fai;
end

if fai>pi
    fai=fai-2*pi;
end
if sai>pi
    sai=sai-2*pi;
end
sitaxyz=[fai sita sai];

function R=oula2(sitaxyz)
if length(sitaxyz)~=3,error;end
fai=sitaxyz(1);
sita=sitaxyz(2);
sai=sitaxyz(3);
R=[1 0 0;0 cos(fai) sin(fai);0 -sin(fai) cos(fai)]* [cos(sita) 0 -sin(sita);0 1 0;sin(sita) 0 cos(sita)]* [cos(sai) sin(sai) 0;-sin(sai) cos(sai) 0;0 0 1];

例子:
----PulseNO.S 0,L 0,U 0,R 0,B 0,T 0
----CartPos.S 500.001,L 0.001,U 319.999,R 180,B -90,T 0

----PulseNO.S 1568,L 75,U -846,R 1088,B -777,T 1816
----CartPos.S 500.699,L 10.249,U 314.796,R 108.51,B -85.29,T 72.71

----PulseNO. 7952, 2913, -815, 56554, -2050, -34617
----CartPos. 505.507, 49.537, 314.702, 109.49, -85.34, 74.46

转载于:https://www.cnblogs.com/cutepig/archive/2007/12/13/994071.html

motoman机器人正向运动学相关推荐

  1. Motoman机器人离线编程——Motocom32开发简介

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...

  2. Motoman机器人离线编程——MotocomES介绍

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...

  3. Motoman机器人离线编程——Motocom32库函数的使用与封装

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...

  4. Motoman机器人离线编程——Visio Studio环境配置

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...

  5. Motoman机器人离线编程——Motocom32参考文献及注意事项

    欢迎关注Jungle的Motoman机器人离线编程专栏系列文章: Motoman机器人离线编程--Motocom32开发简介 Motoman机器人离线编程--Visio Studio环境配置 Moto ...

  6. 安川机器人破极速_YASKAWA安川MOTOMAN机器人常见报警号及解决方法

    运行多年或缺乏保养的工业机器人,容易产生各种故障,而新人操作,也容易引起故障.当工业机器人抛出报警时,请勿慌张,应静下心来查看报警代码和解决办法提示,如果看不懂,则需要查看工业机器人产品说明书,找到这 ...

  7. MOTOMAN机器人网络控制的实现

    最初程序员在Unix系统下使用Berkeley Socket编写网络程序,随着Windows操作系统的普及,Microsoft.Sun等公司联合开发了Winsock接口API.它实质上是一种进 程间通 ...

  8. 班尼机器人维修方法_梅州市ABB机器人控制器维修中心

    梅州市ABB机器人控制器维修中心 库卡机器人KSP600-3X64库卡KSP控制器驱动器报警 KSP600-3X64/00198268 KSP600-3x20/ECMAS3D2224BE531/ KS ...

  9. 【机器人】基于指数积的机械臂运动学标定

    基于局部POE的机器人运动学标定 导语:定位精度作为影响机器人性能的重要因素,需要对机器人进行标定来提高机器人的定位精度从而满足工业上的需要. Question: 什么是机器人标定?为什么机器人需要标 ...

最新文章

  1. 两大电网大手笔投建能源大数据中心,15省都有哪些落地案例?
  2. python笔记-排序函数
  3. 视觉工程师面试指南_选择正确视觉效果的终极指南
  4. php 万分之一几率,那万分之一的概率啊……
  5. Java类类getConstructor()方法及示例
  6. 现代图论笔记(二)树与二分图
  7. 系统上关闭是意外的_紧急关闭iOS13,有史以来跳版本关闭系统
  8. 华为鸿蒙新机价格表,华为Mate30已确认:鸿蒙系统+巴龙5000,售价感人
  9. Windows 各平台远程桌面客户端
  10. 分销渠道都有哪些策略
  11. 数字孪生交通仿真(一)
  12. Unity3D游戏开发从零单排(四) - 制作一个iOS游戏
  13. 关于CH552G单片机连接电脑和烧录程序的细节总结
  14. 纯英文拼音交流1声应该表示成0,要不就不知道怎么发音
  15. 2023年云南大学现代技术教育考研上岸前辈备考经验
  16. GOOGLE翻译算法解析,最新google谷歌免费翻译算法
  17. rmf 文件如何打开?
  18. CSS 行高 line-height属性
  19. opcache php7,让子弹飞~利用 OPcache 扩展提升 PHP7 性能 | Laravel 篇
  20. 如何解决工厂工时计算问题

热门文章

  1. 大气数据计算机系统的作用,《大气数据计算机系统》肖建德编.pdf
  2. 基于RFID定位技术的智能仓储管理--新导智能
  3. (转)PB项目反编译总结(用PBKILLER和PB反编译大师的RecoveryDW工具)
  4. PMP考试 | 点击率最高 的100个主要知识点
  5. 高数_第1章空间解析几何与向量代数__向量
  6. 索尼Sony ATI显卡驱动 Win7 Win8 Win8.1 视频黑屏 解决方法
  7. Android MessageQueue 底层实现(C++)
  8. Django-自动生成API文档
  9. SAP 物料分类账相关的表
  10. 数据结构第六章图的思维导图