資源簡介
原創(chuàng)]根據(jù)C.Gosselin的論文編寫的6-SPS并聯(lián)機器人可達工作空間繪制程序,思路、算法與數(shù)據(jù)均來自論文"Determination of the Workspace of 6-DOF Parallel Manipulators",算法的實現(xiàn)(如圓弧求交離散,可達工作空間邊界判定等)由本人自己編寫,最后繪制的圖形不僅包括z向橫截面的工作空間輪廓圖,還包括過z軸平面與工作空間的交線,以通過線
代碼片段和文件信息
/*
//////////////////////////////////////////////////////////////////////////////////////////
//??????tdoa4_mex.c?this?is?the?mex?translation?of?tdoa3.m????
//??????currently?works?good!?yields?the?same?output?“dela“?as?tdoa3.m?7/16/2003
//////////////////////////////////////////////////////////////////////////////////////////
*/
#include?
#include?
#include?“mex.h“
#include?“matrix.h“
#include?
/*
?
call:?dela=tdoa3(ffxx(1:fivekfreqmics)-ffxx(1:fivekfreqmics+mlevs)freqbetasz*mlevs);
????????????function?zz=tdoa3(adfreqbetasz)
???????????????qq=sum(cos(ad*ones(1sz)-freqbeta)1);
????????????[ii?jj]=max(qq);
????????????zz=jj-round((sz-1)/2+1);?%%%?returns?a?scalar
????????????
????[delax]?=?tdoa4_mex(sz?mlevs?fivekfreq?ad?freqbetax?cos_ref_table?cosbinsize);
????
????ad?is?“fivekfreq?by?1“
????freqbeta?is?“fivekfreq?by?sz*mlev“
*/
void?mexFunction(int?nlhs?mxArray?*plhs[]?int?nrhs?const?mxArray?*prhs[])
{
????int?total_sz?nsample?cosbinsize;
????double*?ad;
????double*?freqbeta;
????double*?cos_ref_table;
????double*?qq;
????double?max_qq?total;
????int?count_col?count_row?max_loc=0;
????double*?dela;
????
????total_sz?=?mxGetScalar(prhs[0])?*?mxGetScalar(prhs[1]);
????nsample?=?mxGetScalar(prhs[2]);
????cosbinsize?=?mxGetScalar(prhs[6]);
????
????ad?=?mxGetPr(pr
評論
共有 條評論