Robotics Toolbox & GUI
23 ビュー (過去 30 日間)
古いコメントを表示
Hi, im using peter corke toolbox to create simple example of forward kinematics
here is the code which is work fine
function test
global X Y Z Ss J1 J2 J3 J4
J1=80;
J2=20;
J3=60;
J4=90;
Ss = ( [ J1 J2 J3 J4 ] * pi / 180 );
X = F_x(Ss);
disp(X)
Y = F_y(Ss);
disp(Y)
Z = F_z(Ss);
disp(Z)
end
function X = F_x(Ss)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(Ss);
X= T(1,4);
end
function Y = F_y(Ss)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(Ss);
Y= T(2,4);
end
function Z = F_z(Ss)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(Ss);
Z= T(3,4);
end
but when i try to get input from GUI for the same example i got error say
Error using SerialLink/fkine (line 85) q must have 4 columns
here is the code..
function start_butt_Callback(hObject, eventdata, handles)
global X Y Z D J1 J2 J3 J4
% hObject handle to start_butt (see GCBO)
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
J1=get(handles.theta1,'string');
J2=get(handles.theta2,'string');
J3=get(handles.theta3,'string');
J4=get(handles.theta4,'string');
D = ( [ J1 J2 J3 J4 ] * pi / 180 );
X = F_x(D);
set(handles.co_x,'string',num2str(X))
Y = F_y(D);
set(handles.co_y,'string',num2str(Y))
Z = F_z(D);
set(handles.co_z,'string',num2str(Z))
%open_system('LabRobot3')
%set_param('LabRobot3/J1','value', get(handles.theta1,'string'))
%set_param('LabRobot3/J2','value', get(handles.theta2,'string'))
%set_param('LabRobot3/J3','value', get(handles.theta3,'string'))
%set_param('LabRobot3/J4','value', get(handles.theta4,'string'))
%set_param('LabRobot3/J5','value', get(handles.theta5,'string'))
%set_param('LabRobot3','SimulationCommand','start')
function X = F_x(D)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(D);
X= T(1,4);
function Y = F_y(D)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(D);
Y= T(2,4);
function Z = F_z(D)
L1 = Link([ 0 19.49 13.9 -pi/2 0 ]);
L2 = Link([ 0 0 84 0 0 ]);
L3 = Link([ 0 0 93.54 0 0 ]);
L4 = Link([ 0 0 75.27 0 0 ]);
R = SerialLink([L1 L2 L3 L4], 'name', 'Lab Robot');
T = R.fkine(D);
Z= T(3,4);
any help ?
0 件のコメント
回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Robotics についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!