首页 > 其他分享 >机器人控制系列教程之Delta机器人运动学分析(2)

机器人控制系列教程之Delta机器人运动学分析(2)

时间:2024-07-03 20:30:41浏览次数:22  
标签:La 机器人 运动学 sqrt pj 求解 Delta 空间

基于MATLAB的Delta机器人正向运动学模型求解

我们在上一篇推文 中,推导了Delta机器人的正向运动学,简单来说,就是我们可以通过机器人的末端位姿求解出对应的关节空间的角度(位置)。

最终我们分析该机器人的空间位置结构方程最终取得一个解为:

t i = − N i + N i 2 − 4 M i Q i 2 M i {t_i} = {{ - {N_i} + \sqrt {N_i^2 - 4{M_i}{Q_i}} } \over {2{M_i}}} ti​=2Mi​−Ni​+Ni2​−4Mi​Qi​ ​​

该机器人的驱动角为: θ i = 2 arctan ⁡ ( t i ) {\theta _i} = 2\arctan ({t_i}) θi​=2arctan(ti​)

% 定义Delta机器人的正向运动学求解函数
function theta=sA(x,y,z)

%% Delta机器人结构参数,此处字母表示可参考上图。
Rd=0.120;
rd=0.045;
r=Rd-rd;
La=0.260;
Lb=0.640;

x=-x;
m=x^2+y^2+z^2+r^2+La^2-Lb^2;

% 支链1计算
M1=((m-2*x*r)/(2*La))-(r-x);
N1=2*z;
Q1=((m-2*x*r)/(2*La))+(r-x);
% 支链2计算
M2=((m+(x-sqrt(3)*y)*r)/La)-2*r-(x-sqrt(3)*y);
N2=4*z;
Q2=((m+(x-sqrt(3)*y)*r)/La)+2*r+(x-sqrt(3)*y);
% 支链3计算
M3=((m+(x+sqrt(3)*y)*r)/La)-2*r-(x+sqrt(3)*y);
N3=4*z;
Q3=((m+(x-sqrt(3)*y)*r)/La)+2*r+(x+sqrt(3)*y);

t12=(-N1+sqrt(N1^2-4*M1*Q1))/(2*M1);
t22=(-N2+sqrt(N2^2-4*M2*Q2))/(2*M2);
t32=(-N3+sqrt(N3^2-4*M3*Q3))/(2*M3);

theta1=2*atan(t12);
theta2=2*atan(t22);
theta3=2*atan(t32);

theta=-[theta1 theta2 theta3]*180/pi;
end

函数调用:

a=sA(0,0,0.54532)

当我们输入该机器人的初始位置时,可得出该机器人的关节空间的变量基本为0.因此也验证了我们建立的正向运动学的准确性。

并联机器工作空间求解方法

现有的基于位置反解法求解工作空间方法主要有三种:

  1. 第一种方法的主要思路是:先得到工作空间内部点的筛选条件,即通过计算可以得到实数解的点就是工作空间内部的点,将大于工作空间的长方体中的点随机取出并使用筛选条件进行筛选,得到足够的点后将通过筛选的所有点进行三维建模。
  2. 第二种方法的主要思路是:先求出工作空间上下边界的最值位置,将该范围内的点以一定的间隔带入位置反解方程进行验证,将确定是工作空间上下边界的点进行插值拟合后即可在 Matlab 中得到工作空间模型。
  3. 第三种方法的主要思路是:通过求解单个支链的的子空间边界曲面,通过空间曲面融合技术和结构限制条件,将所有支链的子空间进行融合处理,即可到整体工作空间。

基于位置正解的求解方法:
现有的基于位置正解法求解工作空间方法主要有二种:

  1. 使用蒙特卡洛法通过随机输入主动杆输入角对工作空间进行仿真,该方法与串联机器人的工作空间求解一样。
  2. 将工作空间的求解转化为对基于位置正解法得到的非线性方程组的求解,由于计算量过大所以得到的点数较少,结果并不是很好。
    求解步骤:
  3. 预估机器人工作空间的大小,确定机器人三个自由度的变化范围;
  4. 带入位置逆解,检查是否符合工作空间中的一点;
  5. 重复第2步,生成多个工作空间中的点;
  6. 通过matlab等软件绘制三维散点图。

具体代码如下:

clear all
clc;

n=10000;
pj=[];
for i=1:n  
    x=0.001*(-500+1000*rand(1,1));
    y=0.001*(-500+1000*rand(1,1));
    z=0.001*(380+(900-380)*rand(1,1));
    
    rd=0.045;
    Rd=0.120;
    r=Rd-rd;
    La=0.260;
    Lb=0.640;    
    m=x^2+y^2+z^2+r^2+La^2-Lb^2;

    M1=((m-2*x*r)/(2*La))-(r-x);
    N1=2*z;
    Q1=((m-2*x*r)/(2*La))+(r-x);
    M2=((m+(x-sqrt(3)*y)*r)/La)-2*r-(x-sqrt(3)*y);
    N2=4*z;
    Q2=((m+(x-sqrt(3)*y)*r)/La)+2*r+(x-sqrt(3)*y);
    M3=((m+(x+sqrt(3)*y)*r)/La)-2*r-(x+sqrt(3)*y);
    N3=4*z;
    Q3=((m+(x-sqrt(3)*y)*r)/La)+2*r+(x+sqrt(3)*y);

    if N1^2-4*M1*Q1>=0
        if N2^2-4*M2*Q2>=0
            if N3^2-4*M3*Q3>=0
               p=[x,y,z];
               st=sA(x,y,z);
               if st(1,1)<60 && st(1,1)>-60 && st(1,2)<60 && st(1,2)>-60 && st(1,3)<60 && st(1,3)>-60
                   ps=[st,p];
                   pj=[pj;ps];
                end
            end
        end
    end
    
end        

aa=pj(:,4)*1000;
bb=pj(:,5)*1000;
cc=-pj(:,6)*1000;
scatter3(aa,bb,cc,'.')

求解结果如下:

往期推荐

在这里插入图片描述

标签:La,机器人,运动学,sqrt,pj,求解,Delta,空间
From: https://blog.csdn.net/2301_78660208/article/details/140111893

相关文章

  • LEAP Hand:用于机器人学习的低成本、高效和拟人化的机械手
    ProjectPage:项目页面:   简介在机器人技术领域,灵巧操作一直是一项长期存在的挑战。尽管机器学习技术已经展现出了巨大的潜力,但目前的应用大多还停留在模拟阶段。这一现象在很大程度上是由于缺乏合适的硬件支持。为了解决这一问题,本文介绍了LEAPHand——一款专为机器学......
  • ros - slam - microros - 两轮差速模型运动学 - 运动学逆解
    上一节我们推导并在代码中实现了运动学正解,本节我们来学习下运动学逆解,实现给定线速度和角速度,计算出轮子达到怎样的转速才能达到这个速度。 一、逆解推导我们直接用正解结果进行求逆解即可。 二、编写代码继续在上一节中的代码Kinematics.cpp中完善即可。voidKinematics......
  • 【机器人学】4-3.六自由度机器人动力学-拉格朗日方程【附MATLAB代码】
    上一章用了牛顿欧拉递推式的动力学方程求解了6自由度机器人的各关节动力。具体可以看我的上一篇博客。【机器人学】4-2.六自由度机器人动力学-牛顿欧拉递推式【附MATLAB代码】这篇文章主要介绍拉格朗日方程求解机械臂的动力学。        几乎所有的书上,在......
  • ros - slam - microros - 两轮差速模型运动学 - 运动学正解
    上一节了解了两轮差速运动学,本节我们线进一步的了解两轮差速正运动学的推导过程,并利用两轮差速运动学正解,来完成对小车的实时速度计算。 一、正运动学解推导两轮差速机器人是一种常见的移动机器人类型,由两个轮子和一个中心点组成。我们可以通过控制每个轮子的转速来实现移动,并......
  • ros - slam - microros - 两轮差速模型运动学介绍
    本节我们来了解下两轮差速运动学。一、两轮差速运动学模型两轮差速模型指机器人底盘由两个驱动轮和若干支撑轮构成的底盘模型,像turtlebot和开源机器人fishbot都是两轮差速模型。 两轮差速模型通过两个驱动轮可以通过不同转速和转向,使得机器人的达到某个特定的角速度和线速度......
  • 这些机器人声群可以静音房间的不同区域
    原文链接:https://www.therobotreport.com/these-robotic-acoustic-swarms-that-can-mute-different-areas-of-a-room/ Ateamofresearchersatthe UniversityofWashington hasdevelopedrobotic,shape-changingsmartspeakersthatcandeploythemselvestodivide......
  • Meta平台新纪元 Facebook机器人源码/部署实战教程
    随着Meta平台的不断升级,Facebook机器人成为了连接品牌与用户的新桥梁。本文将为您提供一份详尽的Facebook机器人源码及部署实战教程,助您在新纪元中抢占先机,实现精准营销。一、了解Meta平台与Facebook机器人首先,深入了解Meta平台的最新动态及Facebook机器人的应用场景。明确机......
  • TG智能客服机器人开发指南/自动化客户服务机器人源码构建手册
    一、引言在数字化时代,提供高效、快速的客户服务是企业赢得客户满意度和忠诚度的关键。TG智能客服机器人作为一种新型的客户服务工具,能够24小时不间断地为客户提供服务,极大地提升了客户服务的效率和质量。本文将为您提供一份详尽的TG智能客服机器人开发指南和自动化客户服务机......
  • 飞书集成机器人搭建实战/多平台整合机器人源码部署流程
    一、引言在当今数字化办公时代,多平台整合成为提高工作效率的关键。飞书集成机器人能够打通不同平台之间的壁垒,实现信息的快速流通和协同办公。本文将带您实战搭建飞书集成机器人,并详细介绍多平台整合机器人的源码部署流程。二、集成需求分析在开始搭建之前,我们需要明确集成......
  • 智能化APP搭建:RPA与AI机器人的融合创新
    随着移动技术的飞速发展,APP已成为连接用户与服务的重要桥梁。本文将深入探讨如何利用机器人流程自动化(RPA)和人工智能(AI)机器人技术,实现APP搭建的自动化和智能化,以提升开发效率和优化用户体验。一、引言:智能化时代的APP搭建在智能化时代,APP搭建不仅是技术活,更是一门艺术。RPA和......