0% found this document useful (0 votes)
18 views15 pages

3.3 Code Matlab: ... ... ... ... ... If End If Else End

Uploaded by

angia1234.tc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
18 views15 pages

3.3 Code Matlab: ... ... ... ... ... If End If Else End

Uploaded by

angia1234.tc
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 15

3.

3 CODE MATLAB

% CODE MATLAB code for CODE.fig


% CODE, by itself, creates a new CODE or raises the existing
% singleton*.
%
% H = CODE returns the handle to a new CODE or the handle to
% the existing singleton*.
%
% CODE('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in CODE.M with the given input arguments.
%
% CODE('Property','Value',...) creates a new CODE or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before CODE_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to CODE_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES

% Edit the above text to modify the response to help CODE

% Last Modified by GUIDE v2.5 12-Oct-2023 11:24:50

% Begin initialization code - DO NOT EDIT


gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @CODE_OpeningFcn, ...
'gui_OutputFcn', @CODE_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{1})
gui_State.gui_Callback = str2func(varargin{1});
end

if nargout
[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:});
else
gui_mainfcn(gui_State, varargin{:});
end
% End initialization code - DO NOT EDIT

% --- Executes just before CODE is made visible.


function CODE_OpeningFcn(hObject, eventdata, handles, varargin)
% This function has no output args, see OutputFcn.
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)
% varargin command line arguments to CODE (see VARARGIN)

% Choose default command line output for CODE


handles.output = hObject;

% Update handles structure


guidata(hObject, handles);
axes(handles.axes2);
imshow('C:\Users\Neva Sophia\Desktop\Kythuanrobot\logotdmu.jpg');

% UIWAIT makes CODE wait for user response (see UIRESUME)


% uiwait(handles.figure1);

% --- Outputs from this function are returned to the command line.
function varargout = CODE_OutputFcn(hObject, eventdata, handles)
% varargout cell array for returning output args (see VARARGOUT);
% hObject handle to figure
% eventdata reserved - to be defined in a future version of MATLAB
% handles structure with handles and user data (see GUIDATA)

% Get default command line output from handles structure


varargout{1} = handles.output;

% --- Executes on slider movement.


function slider1_Callback(hObject, eventdata, handles)
ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1=get(handles.slider1,'value');
set(handles.edit1,'string',num2str(theta1));
theta2=get(handles.slider2,'value');
set(handles.edit2,'string',num2str(theta2));
theta3=get(handles.slider3,'value');
set(handles.edit3,'string',num2str(theta3));
theta4=get(handles.slider4,'value');
set(handles.edit4,'string',num2str(theta4));

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function slider1_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end
function slider2_Callback(hObject, eventdata, handles)
ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1=get(handles.slider1,'value');
set(handles.edit1,'string',num2str(theta1));
theta2=get(handles.slider2,'value');
set(handles.edit2,'string',num2str(theta2));
theta3=get(handles.slider3,'value');
set(handles.edit3,'string',num2str(theta3));
theta4=get(handles.slider4,'value');
set(handles.edit4,'string',num2str(theta4));

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));
T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function slider2_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

function slider3_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1=get(handles.slider1,'value');
set(handles.edit1,'string',num2str(theta1));
theta2=get(handles.slider2,'value');
set(handles.edit2,'string',num2str(theta2));
theta3=get(handles.slider3,'value');
set(handles.edit3,'string',num2str(theta3));
theta4=get(handles.slider4,'value');
set(handles.edit4,'string',num2str(theta4));
set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));
set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function slider3_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

function slider4_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1=get(handles.slider1,'value');
set(handles.edit1,'string',num2str(theta1));
theta2=get(handles.slider2,'value');
set(handles.edit2,'string',num2str(theta2));
theta3=get(handles.slider3,'value');
set(handles.edit3,'string',num2str(theta3));
theta4=get(handles.slider4,'value');
set(handles.edit4,'string',num2str(theta4));

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function slider4_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

function edit8_Callback(hObject, eventdata, handles)


px = get(handles.edit8,'string');
set(handles.slider5,'value',str2num(px));
function edit8_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit9_Callback(hObject, eventdata, handles)


py = get(handles.edit9,'string');
set(handles.slider6,'value',str2num(py));

function edit9_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit10_Callback(hObject, eventdata, handles)


pz = get(handles.edit10,'string');
set(handles.slider7,'value',str2num(pz));

function edit10_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function slider6_Callback(hObject, eventdata, handles)


py = get(handles.slider6,'value');
set(handles.edit9,'string',num2str(py));

function slider6_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

function slider7_Callback(hObject, eventdata, handles)


pz = get(handles.slider7,'value');
set(handles.edit10,'string',num2str(pz));

function slider7_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

function edit1_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

thate1=get(handles.edit1,'string');
thate2=get(handles.edit2,'string');
thate3=get(handles.edit3,'string');
thate4=get(handles.edit4,'string');
theta1= str2num(thate1);
theta2= str2num(thate2);
theta3= str2num(thate3);
theta4= str2num(thate4);
set(handles.slider1,'value',theta1);
set(handles.slider2,'value',theta2);
set(handles.slider3,'value',theta3);
set(handles.slider4,'value',theta4);

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));
function edit1_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit2_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

thate1=get(handles.edit1,'string');
thate2=get(handles.edit2,'string');
thate3=get(handles.edit3,'string');
thate4=get(handles.edit4,'string');
theta1= str2num(thate1);
theta2= str2num(thate2);
theta3= str2num(thate3);
theta4= str2num(thate4);
set(handles.slider1,'value',theta1);
set(handles.slider2,'value',theta2);
set(handles.slider3,'value',theta3);
set(handles.slider4,'value',theta4);

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function edit2_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit3_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

thate1=get(handles.edit1,'string');
thate2=get(handles.edit2,'string');
thate3=get(handles.edit3,'string');
thate4=get(handles.edit4,'string');
theta1= str2num(thate1);
theta2= str2num(thate2);
theta3= str2num(thate3);
theta4= str2num(thate4);
set(handles.slider1,'value',theta1);
set(handles.slider2,'value',theta2);
set(handles.slider3,'value',theta3);
set(handles.slider4,'value',theta4);

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];
T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);
sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));
function edit3_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit4_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

thate1=get(handles.edit1,'string');
thate2=get(handles.edit2,'string');
thate3=get(handles.edit3,'string');
thate4=get(handles.edit4,'string');
theta1= str2num(thate1);
theta2= str2num(thate2);
theta3= str2num(thate3);
theta4= str2num(thate4);
set(handles.slider1,'value',theta1);
set(handles.slider2,'value',theta2);
set(handles.slider3,'value',theta3);
set(handles.slider4,'value',theta4);
set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));
set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];

T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);


sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));
function edit4_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit5_Callback(hObject, eventdata, handles)

function edit5_CreateFcn(hObject, eventdata, handles)


if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end
function edit6_Callback(hObject, eventdata, handles)
function edit6_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function edit7_Callback(~, eventdata, handles)


function edit7_CreateFcn(hObject, eventdata, handles)
if ispc && isequal(get(hObject,'BackgroundColor'),
get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor','white');
end

function pushbutton1_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

open_system(ModelName);

set_param(ModelName,'BlockReduction','off');
set_param(ModelName,'StopTime','inf');
set_param(ModelName,'simulationMode','normal');
set_param(ModelName,'StartFcn','1');
set_param(ModelName, 'SimulationCommand', 'start');

function pushbutton2_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';

a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1 = 0;
theta2 = 0;
theta3 = 0;
theta4 = 0;

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

T1 = [ cosd(theta1) 0 sind(theta1) 0;
sind(theta1) 0 -cosd(theta1) 0;
0 1 0 a1;
0 0 0 1];
T2 = [ cosd(theta2) -sind(theta2) 0 a2*cosd(theta2);
sind(theta2) cosd(theta2) 0 a2*sind(theta2);
0 0 1 0;
0 0 0 1];

T3 = [ cosd(theta3) -sind(theta3) 0 a3*cosd(theta3);


sind(theta3) cosd(theta3) 0 a3*sind(theta3);
0 0 1 0;
0 0 0 1];

T4 = [ cosd(theta4) -sind(theta4) 0 a4*cosd(theta4);


sind(theta4) cosd(theta4) 0 a4*sind(theta4);
0 0 1 0;
0 0 0 1];

T = T1*T2*T3*T4;

px=T(1,4);
py=T(2,4);
pz=T(3,4);

set(handles.slider1,'value',theta1);
set(handles.slider2,'value',theta2);
set(handles.slider3,'value',theta3);
set(handles.slider4,'value',theta4);
set(handles.edit1,'string',num2str(0));
set(handles.edit2,'string',num2str(0));
set(handles.edit3,'string',num2str(0));
set(handles.edit4,'string',num2str(0));
set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));

function pushbutton3_Callback(hObject, eventdata, handles)


close;

function pushbutton4_Callback(hObject, eventdata, handles)


ModelName = 'lapghep';
global var;

px=get(handles.slider5,'value');
set(handles.edit8,'string',num2str(px));
py=get(handles.slider6,'value');
set(handles.edit9,'string',num2str(py));
pz=get(handles.slider7,'value');
set(handles.edit10,'string',num2str(pz));

set(handles.edit5,'string',num2str(px));
set(handles.edit6,'string',num2str(py));
set(handles.edit7,'string',num2str(pz));
a1 = 145;
a2 = 90;
a3 = 105;
a4 = 78.25;

theta1=atan2d(py,px);
theta234= 0;
nx = px*cosd(theta1)+py*sind(theta1)-a4*cosd(theta234);
ny = -a1 + pz-a4*sind(theta234);
c3 = ((nx^2)+(ny^2)-(a3^2)-(a2^2))/(2*a3*a2);
s3 = sqrt(1-c3^2);
theta3 = atan2d(s3,c3);
c2 = (nx*(a3*c3+a2)+a3*s3*ny)/((a3*c3+a2)^2+a3^2*s3^2);
s2 = (ny*(a3*c3+a2)-a3*s3*nx)/((a3*c3+a2)^2+a3^2*s3^2);
theta2 = atan2d(s2,c2);
theta4=theta234-theta2-theta3;

set_param([ModelName '/Slider Gain'],'Gain',num2str(theta1));


set_param([ModelName '/Slider Gain1'],'Gain',num2str(theta2));
set_param([ModelName '/Slider Gain2'],'Gain',num2str(theta3));
set_param([ModelName '/Slider Gain3'],'Gain',num2str(theta4));

set(handles.edit1,'string',num2str(theta1));
set(handles.edit2,'string',num2str(theta2));
set(handles.edit3,'string',num2str(theta3))
set(handles.edit4,'string',num2str(theta4));

function slider5_Callback(hObject, eventdata, handles)


px = get(handles.slider5,'value');
set(handles.edit8,'string',num2str(px));

function slider5_CreateFcn(hObject, eventdata, handles)


if isequal(get(hObject,'BackgroundColor'), get(0,'defaultUicontrolBackgroundColor'))
set(hObject,'BackgroundColor',[.9 .9 .9]);
end

You might also like