雅可比矩阵Matlab程序

  • x4_337103
    了解作者
  • matlab
    开发工具
  • 7.1KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • VIP专享
    资源类型
  • 0
    下载次数
  • 2022-02-21 17:15
    上传日期
通过矢量积法计算雅可比矩阵,并于matlab工具箱的雅可比矩阵函数对比,结果一致。matlab版本为2019b
getJacobian.zip
  • MatlabCode
  • TestJacobian.mlx
    6.7KB
  • getJacobian.m
    1.3KB
内容介绍
function J = getJacobian(robot, config, coordinate_i) % 计算机械臂在给定坐标系下的雅可比矩阵(6*n),采用矢量积法 % n表示关节数量 % 输入参数:robot-机械臂模型, % config-当前的关节变量取值,coordinate_i-雅克比矩阵的参考坐标系,取值为0,1,2,...,n,n+1 % 输出参数:J-雅可比矩阵, tform-坐标变换矩阵 jointN = numel(config); % 关节数量 bodyN = jointN + 1; % 包括末端执行器 bodynames = robot.BodyNames; % 取模型的body名[1:bodyN] J = zeros(6,jointN); % 得到坐标变换矩阵 tform = cell(bodyN,1); tform{1} = getTransform(robot, config, bodynames{1}); % T01 for i=2:bodyN tform{i} = getTransform(robot, config, bodynames{i}, bodynames{i-1}); % {i-1}=>{i} end % 得到在工具坐标系{n}下的雅可比矩阵 T = cell(bodyN,1); for i=1:jointN T{i} = getTransform(robot, config, bodynames{i}, bodynames{bodyN}); type = robot.Bodies{i}.Joint.Type; ri = T{i}(1:3,3); if strcmp(type, 'revolute') pi = T{i}(1:3,4); vi = cross(pi,ri); omegai = ri; else vi = ri; omegai = [0 0 0]'; end J(:,i) = [vi;omegai]; end % 转换到指定坐标系下的雅可比矩阵 {coordinate_i}=>{n_end} Jrotm = [1 0 0;0 1 0;0 0 1]; for i=coordinate_i+1:bodyN Jrotm = Jrotm * tform2rotm(tform{i}); end JRotm = zeros(6,6); JRotm(1:3,1:3) = Jrotm; JRotm(4:6,4:6) = Jrotm; J = JRotm * J; end
评论
    相关推荐
    • Matlab合集
      冈萨雷斯数字图像处理MATLAB版.中文版+数字图像处理第二版中文版(冈萨雷斯)+MATLAB-R2014a完全自学一本通+MATLAB R2016a完全自学一本通 素材文件+[模式识别与智能计算:MATLAB技术实现(第2版)].杨淑莹.扫描版
    • MATLAB教程
      MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程MATLAB教程
    • MATLAB
      MATLAB 该项目是在matlab上完成的,涉及创建和移动宇宙飞船和机器人。 太空飞船和机器人是使用Matlab中的简单几何形状创建的,并通过连续变换矩阵进行移动。 这个项目教我如何使用变换矩阵(旋转,平移等)的概念...
    • MATLAB基础
      一本学习matlab的一本好书
    • MATLAB编译器
      基于MATLAB 2018b版本介绍MATLAB编译器。介绍如何利用编译器将MATLAB代码编译为独立应用程序或组件,并在没有安装MATLAB的计算机上进行部署。
    • matlabruntime
      通过奇点容器运行您的matlab项目 可以在没有MATLAB的容器中运行matlab代码。 为此,我们首先需要通过Matlab编译器在本地构建相应的Matlab代码的独立应用程序,然后使用具有Matlab运行时( 的容器)运行该应用程序 )...
    • matlab实现
      matlab实现 matlab实现matlab实现matlab实现matlab实现
    • matlab 教程
      matlab 信号处理资料,里面包含信号处理pdf文档,一些杂乱的程序和命令等
    • matlab教程
      matlab教程,PPT格式,包含 matlab基本知识、matlab入门、matlab作图、线性规划、无约束优化、非线性规划、统计工具箱、差值、微分方程等多项知识点,并且每个知识点独立成为PPT,内还含有matlab信号处理详解等文档...
    • matlab简介
      1.MATLAB 开发环境 1.1 MATLAB 的视窗环境 进入MATLAB之后,会看到一个视窗MATLAB Command Window称为指令视窗,它是你键入指令的地方同时 MATLAB也将计算结果显示在此。 1.2 简易计算 我们先从MATLAB的...