91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 10KB
    文件類型: .7z
    金幣: 1
    下載: 0 次
    發(fā)布日期: 2021-05-21
  • 語言: Matlab
  • 標簽:

資源簡介

這是一個利用MATLAB符號函數(shù)功能,通過手動輸入DH參數(shù)符號矩陣 or Excel文件導入DH參數(shù)表從而獲得DH矩陣的函數(shù)代碼。通過該代碼獲得的DH矩陣不僅能夠再次利用matlab計算所需變化矩陣,甚至還能將具體數(shù)值帶入求得的轉(zhuǎn)換矩陣中求得DH矩陣具體值。

資源截圖

代碼片段和文件信息

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%?????????????????????符號矩陣計算DH轉(zhuǎn)換矩陣公式
%?1、函數(shù)功能:[DofA]?=?m_SigalMesu(DH_table_or_excelnamesheetnamerange)
%????利用符號矩陣?or?excel文件導入?D-H參數(shù)表,自動獲得轉(zhuǎn)換矩陣
%????DH_table_or_excelname?——?DH參數(shù)符號矩陣?or?具有DH參數(shù)便表的excel文件名
%????sheetname?——?只有在excel導入時候才有作用,它表示導入數(shù)據(jù)在excel文件的sheetname?sheet中
%????range?——?只有在excel導入時候才有作用,它表示DH參數(shù)表范圍
%????Dof?——?轉(zhuǎn)換矩陣個數(shù)
%????A???——?轉(zhuǎn)換矩陣,三維數(shù)據(jù)。A(::i)為求得的第i個DH字符矩陣
%
%?2、D-H參數(shù)輸入格式:
%????[連桿1長度a1?連桿1扭角aerf1?關(guān)節(jié)1偏移量d1?關(guān)節(jié)1角度theta1;
%?????連桿2長度a2?連桿2扭角aerf2?關(guān)節(jié)2偏移量d2?關(guān)節(jié)2角度theta2;
%????????????????????????????....????????????????????????????]???
%????符號矩陣直接創(chuàng)建方法:
%????1)M?=?sym(‘[a2*b;3*a0]‘);
%????2)?M?=?str2sym(‘[a2*b;3*a0]‘);
%??注:sym函數(shù)可能不再適用
%
%?3、從excel導入輸入格式:
%????[DofA]?=?m_SigalMesu(‘excelname‘‘sheetname‘‘range‘)
%??如:[DofA]?=?m_SigalMesu(‘dh_test.xlsx‘‘sheet1‘‘B2:E8‘)
%
%
%
%??注:該函數(shù)如果輸入一個參數(shù),則表示輸入為DH參數(shù)符號矩陣;
%??????如果需要從excel導入,則需要根據(jù)自己建立的參數(shù)表輸入:
%??????excel文件名、sheet名、甚至對應DH參數(shù)范圍
%
%?2019年5月15日
%?csdn博客名:BinHeon
%???????????https://blog.csdn.net/BinHeon/article/details/90245890
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
function?[DofA]?=?m_SigalMesu(DH_table_or_excelnamesheetnamerange)

%%%%?%%%%?%%%%?輸入?yún)?shù)處理
if?nargin?==?1???????%%%%?輸入一個參數(shù)則默認該參數(shù)為DH參數(shù)字符矩陣
????DH_table?=?DH_table_or_excelname;
end
if?nargin?==?3???????%%%%?輸入三個參數(shù)則默認第一參數(shù)為excel名、第二為sheet名、第三為表范圍
%?讀取excel文件中的數(shù)據(jù)方法:
%?方法1:[datatext]?=?xlsread(FileName?SheetName?Range);
%?data保存的是數(shù)據(jù)單元格的值,?text保存的是字符串單元格的內(nèi)容
%?方法2:[~~dh_table]?=?xlsread(FileName?SheetName?Range);
????[~~dh_table]?=?xlsread(DH_table_or_excelnamesheetnamerange);?%?導入excel中參數(shù)表
????DH_table?=?sym(dh_table);?%?將導入?yún)?shù)表字符化
end

%%%%?%%%%?%%%%?獲得D-H參數(shù)表中?轉(zhuǎn)換矩陣數(shù)目
[mn]?=?size(DH_table);?%?m為數(shù)目
Dof?=?m;
%%%%?%%%%?%%%%?計算每個轉(zhuǎn)換矩陣
%%%%?定義符號變量
%?syms?c_theta?s_theta?c_aerf?s_aerf?a?d;?%?定義符號變量
%?%%%%?定義d-h轉(zhuǎn)換矩陣公式?
%?dh_A?=?[c_theta??-s_theta*c_aerf??s_theta*s_aerf??a*c_theta?;
%?????????s_theta???c_theta*c_aerf??-c_theta*s_aerf?a*s_theta?;
%?????????0????????????s_aerf???????????c_aerf??????????d?????;
%?????????0??????????????0?????????????????0????????????1??????];%?D-H計算公式

syms?a?aerf?d?theta;?%?定義符號變量:a連桿長度?aerf連桿扭角?d關(guān)節(jié)偏移?theta關(guān)節(jié)轉(zhuǎn)角
%%%%?定義d-h轉(zhuǎn)換矩陣公式?
dh_A?=?[cos(theta)??-sin(theta)*cos(aerf)??sin(theta)*sin(aerf)??a*cos(theta)?;
????????sin(theta)???cos(theta)*cos(aerf)??-cos(theta)*sin(aerf)?a*sin(theta)?;
???????????0??????????????sin(aerf)??????????????cos(aerf)?????????????d??????;
???????????0???????????????????0??????????????????????0????????????????1??????];%?D-H計算公式

%%%%?計算每個轉(zhuǎn)換矩陣?Ai?并將?Ai?組成三維矩陣?A?保存;從而方便函數(shù)返回
for?i=1:m?%?總共有?m?個?轉(zhuǎn)換矩陣

????%?根據(jù)D-H參數(shù)表初始化對應D-H參數(shù)
????t_a?=?DH_table(i1);????%?獲得D-H參數(shù)表中第i個d-h參數(shù)的?連桿長度
????t_aerf?=?DH_table(i2);?%?獲得D-H參數(shù)表中第i個d-h參數(shù)的?連桿扭角
????t_d?=?DH_table(i3);????%?獲得D-H參數(shù)表中第i個d-h參數(shù)的?關(guān)節(jié)偏移
????t_theta?=?DH_table(i4);%?獲得D-H參數(shù)表中第i個d-h參數(shù)的?關(guān)節(jié)偏角
????%?獲得帶入?yún)?shù)后的符號矩

評論

共有 條評論

相關(guān)資源