当前位置: 首页 > news >正文

巴中城乡建设官方网站wordpress博客dux主题

巴中城乡建设官方网站,wordpress博客dux主题,互联网营销策划是做什么的,手机怎么制作网站笛卡尔空间下的轨迹规划,分为直线轨迹规划和圆弧轨迹规划,本文为笛卡尔空间下圆弧插值法的matlab仿真分析 目录 1 实验目的 2 实验内容 2.1标准D-H参数法 2.2实验中使用的Matlab函数 3 全部代码 4 仿真结果 1 实验目的 基于机器人学理论知识&…

笛卡尔空间下的轨迹规划,分为直线轨迹规划和圆弧轨迹规划,本文为笛卡尔空间下圆弧插值法的matlab仿真分析

目录

1 实验目的

2 实验内容

2.1标准D-H参数法

2.2实验中使用的Matlab函数

3 全部代码

4 仿真结果 


1 实验目的

基于机器人学理论知识,利用标准D-H参数法建立关节型机器人的数学模型,使用Matlab的Robotics Toolbox工具包搭建模型。

2 实验内容

2.1标准D-H参数法

标准D-H参数法常用于建立关节型机器人的数学模型,D-H参数法是一种对连杆的坐标描述,而关节机器人本质上就是一系列连杆通过关节连接起来而组成的空间开式运动链。

对于连杆本身,其功能在于保持其两端的关节轴线具有固定的几何关系,连杆的特性由轴线决定,通常用四个连杆参数来描述,连杆长度,连杆扭转角,连杆偏移量和关节角

2.2实验中使用的Matlab函数

Link函数

用于定义六轴机器人的一个轴。
包含了机器人的运动学参数、动力学参数、刚体惯性矩参数、电机和传动参数;
可采用DH法建立模型,其中包含参数:关节转角,关节距离,连杆长度,连杆转角,关节类型(0转动,1移动)。

% 定义六轴机器人的一个轴
L(1) = Link([theta1, D1, A1, alpha1, offset1], 'standard')

SerialLink函数

用于构建机械臂。
它的类函数比较多,包括显示机器人、动力学、逆动力学、雅可比等;

% 'six'为机械臂名称
robot = SerialLink(L,'name','six');

fkine正解函数

用于求解出末端位姿p。

theta = [0.1,0,0,0,0,0];    %指定的关节角
p=robot.fkine(theta)        %fkine正解函数,根据关节角theta,求解出末端位姿p


ikine逆解函数

用于求解出关节角q。

q=ikine(robot,p)           %ikine逆解函数,根据末端位姿p,求解出关节角q

轨迹规划

(1)jtraj
已知初始和终止的关节角度,利用五次多项式来规划轨迹;

T1=transl(0.5,0,0);		  %根据给定起始点,得到起始点位姿
T2=transl(0,0.5,0);		  %根据给定终止点,得到终止点位姿
init_ang=robot2.ikine(T1);%根据起始点位姿,得到起始点关节角
targ_ang=robot2.ikine(T2);%根据终止点位姿,得到终止点关节角
step = 20;
[q ,qd, qdd]=jtraj(init_ang,targ_ang,step); %五次多项式轨迹,得到关节角度,角速度,角加速度,50为采样点个数

(2)ctraj
已知初始和终止的末端关节位姿,利用匀加速、匀减速运动来规划轨迹。

T0 = robot2.fkine(init_ang);%运动学正解
T1 = robot2.fkine(targ_ang);%运动学正解
Tc = ctraj(T0,T1,step);     %得到每一步的T阵
tt = transl(Tc);

3 全部代码

%% MATLAB素质三连https://www.guyuehome.com/34853
clear;
close all;
clc;
%% 实验一 基于MATLAB的关节型六轴机械臂仿真%% 参数定义
%机械臂为六自由度机械臂
clear L;%角度转换
angle=pi/180;  %度%D-H参数表
theta1 = -pi/2;   D1 = 89.2;   A1 = 0;      alpha1 = -pi/2; offset1 = 0;
theta2 = 0;       D2 = 0;      A2 = 425;    alpha2 = 0;     offset2 = 0;
theta3 = 0;       D3 = 0;      A3 = 392;    alpha3 = 0;     offset3 = 0;
theta4 = pi/2;    D4 = 109.3;  A4 = 0;      alpha4 = pi/2;  offset4 = 0;
theta5 = -pi/2;   D5 = 94.75;  A5 = 0;      alpha5 = -pi/2; offset5 = 0;
theta6 = 0;       D6 = 82.5;   A6 = 0;      alpha6 = 0;     offset6 = 0;%% DH法建立模型,关节转角,关节距离,连杆长度,连杆转角,关节类型(0转动,1移动)L(1) = Link([theta1, D1, A1, alpha1, offset1], 'standard')
L(2) = Link([theta2, D2, A2, alpha2, offset2], 'standard')
L(3) = Link([theta3, D3, A3, alpha3, offset3], 'standard')
L(4) = Link([theta4, D4, A4, alpha4, offset4], 'standard')
L(5) = Link([theta5, D5, A5, alpha5, offset5], 'standard')
L(6) = Link([theta6, D6, A6, alpha6, offset6], 'standard')% 定义关节范围
L(1).qlim =[-180*angle, 180*angle];
L(2).qlim =[-180*angle, 180*angle];
L(3).qlim =[-180*angle, 180*angle];
L(4).qlim =[-180*angle, 180*angle];
L(5).qlim =[-180*angle, 180*angle];
L(6).qlim =[-180*angle, 180*angle];%% 显示机械臂
robot0 = SerialLink(L,'name','ur5');
f = 1 									%画在第1张图上
theta = [0 pi/2 0 0 pi 0];				%初始关节角度
figure(f)
robot0.plot(theta);
title('六轴机械臂模型');
%% 加入teach指令,则可调整各个关节角度
robot1 = SerialLink(L,'name','ur5');
f = 2
figure(f)
robot1.plot(theta);
robot1.teach
title('六轴机械臂模型可调节');
%% 实验二 基于MATLAB的六轴机械臂轨迹规划仿真%% 2.2求解运动学正解
robot2 = SerialLink(L,'name','ur5');
theta2 = [0.1,0,0,0,0,0];   			%实验二指定的关节角
p=robot2.fkine(theta2)       			%fkine正解函数,根据关节角theta,求解出末端位姿p
q=ikine(robot2,p)            			%ikine逆解函数,根据末端位姿p,求解出关节角q
robot2.plot(q,'movie','circleCHAZHI.gif');%保存
%% 2.3 jtraj 已知初始和终止的关节角度,利用五次多项式来规划轨迹
% T1=transl(0.5,0,0);					%根据给定起始点,得到起始点位姿
% T2=transl(0,0.5,0);					%根据给定终止点,得到终止点位姿
T1=transl(400,-500,0);						%根据给定起始点,得到起始点位姿
T2=transl(0,400,600);						%根据给定终止点,得到终止点位姿
init_ang=robot2.ikine(T1);				%根据起始点位姿,得到起始点关节角
targ_ang=robot2.ikine(T2);				%根据终止点位姿,得到终止点关节角
step = 20;
f = 3%轨迹规划方法
figure(f)
[q ,qd, qdd]=jtraj(init_ang,targ_ang,step); %五次多项式轨迹,得到关节角度,角速度,角加速度,50为采样点个数
grid on
T=robot2.fkine(q);						%根据插值,得到末端执行器位姿
nT=T.T;
plot3(squeeze(nT(1,4,:)),squeeze(nT(2,4,:)),squeeze(nT(3,4,:)),'LineWidth',2);%输出末端轨迹
title('输出末端轨迹');
robot2.plot(q);							%动画演示 %% 求解位置、速度、加速度变化曲线
f = 4
figure(f)
subplot(3,2,[1,3]); 					%subplot 对画面分区 三行两列 占用1到3的位置
plot3(squeeze(nT(1,4,:)),squeeze(nT(2,4,:)),squeeze(nT(3,4,:)));%输出末端轨迹
robot2.plot(q);							%动画演示figure(f)
subplot(3, 2, 2);
i = 1:6;
plot(q(:,1));
title('位置');
grid on;figure(f)
subplot(3, 2, 4);
i = 1:6;
plot(qd(:,1));
title('速度');
grid on;figure(f)
subplot(3, 2, 6);
i = 1:6;
plot(qdd(:,1));
title('加速度');
grid on;t = robot2.fkine(q);					%运动学正解
rpy=tr2rpy(t);   						%t中提取位置(xyz)
figure(f)
subplot(3,2,5);
plot2(rpy);%% ctraj规划轨迹 考虑末端执行器在两个笛卡尔位姿之间移动  
f = 5
T0 = robot2.fkine(init_ang);			%运动学正解
T1 = robot2.fkine(targ_ang);			%运动学正解Tc = ctraj(T0,T1,step);  				%得到每一步的T阵tt = transl(Tc);
figure(f)
plot2(tt,'r');
title('直线轨迹');

4 仿真结果 

转载于基于MATLAB的关节型六轴机械臂轨迹规划仿真(2021实测完整代码) - 古月居基于MATLAB的关节型六轴机械臂轨迹规划仿真(2021实测完整代码)icon-default.png?t=N7T8https://www.guyuehome.com/34853

http://www.yayakq.cn/news/817866/

相关文章:

  • 什么是企业营销型网站?wordpress插件提交
  • 媒体网站开发专业上海网站建设
  • 网站开发什么语言安全wordpress图片无法加载
  • 网站建设与维护作业网站建设公司领导致辞
  • 网站备案全国合作拍照点海南营销网站建设
  • 领秀网站建设手机阅读网站开发原因
  • 一个wordpress模版几个网站西安百度关键词优化排名
  • 潍坊高端网站建设价格网址大全2345下载安装
  • 昌平网站制作开发公司商城网站欣赏
  • asp.net 网站设计为什么网站显示在建设中
  • 盐山县招聘网站建设百度一下你就知道啦
  • 网站开发技术及软件介绍国内免费注册二级域名的网站
  • 龙华做网站网站的锚点链接怎么做
  • 外贸公司网站大全高端企业网站定制公司
  • 招生型网站建设开源 网站源代码
  • 企业网站能提供哪些服务张家港做网站哪家好
  • 到国外做网站网站是怎么回事深圳企业电话黄页
  • 做网站选什么专业广告设计公司经营范围有哪些
  • 门户网站开发过程企业培训机构有哪些
  • 备案号放网站下面居中活动策划方案
  • 如何给网站做推广做网站一般都是那些人 会做
  • 允许发外链的网站手工制作大全简单漂亮
  • 惠州酒店网站建设免费视频素材库app
  • 沈阳大型网站建设网站开发摘要
  • 致设计网站官网艺术学院网站模板
  • 怎么网站是谁做的包头人脸检测系统
  • 旅游网站国际业务怎样做图文广告公司名字
  • 海西高端网站建设公司wordpress主题框架
  • 网店网站技术方案北滘网站建设
  • 做网站哪些软件比较好wordpress字体颜色