Matlab - como rotar un brazo robotico en matlab 2d

 
Vista:

como rotar un brazo robotico en matlab 2d

Publicado por PEDRO HERNANDEZ GARNICA (1 intervención) el 02/12/2007 11:29:17
tengo un prblema con mi codigo puedo mover mi robot en 2d horizontal y verticalmente pero no se como moverlo o girarlo con grados y ademas utilizando los slider espero alguien me pueda ayudar porq es urgente este es mi codigo y lo que he echo pero quiero moverlo los brazos es lo que falta ojala me puedan ayudar

%base de la paguina
clf, clear,hold off
h1=figure(1);
set(h1,'Position',[0,0,1400,690],'Name','brazito','NumberTitle','on', 'Color',[1 0 0])
clf,clear,hold off
axis([0 30 -10 20])
hold on
%base
x1=[0 1 1 1.5 1.5 4 5 5 4 1.5 1.5 1 1 0 0];
y1=[0 0 1 1 1.5 1.5 2 3 3.5 3.5 4 4 5 5 0];
base=fill (x1,y1,[0.50 0.50 0.50],'erasemode','xor');
%BRAZO==============================
x2=[12 20 21 21 20 12 11 11];
y2=[1.5 1.5 2 3 3.5 3.5 3 2];
brazo=fill (x2,y2,[0.300 0.041 0.45],'erasemode','xor');
%anteBRAZO==================================
x3=[4 12 13 13 12 4 3 3 4];
y3=[1.5 1.5 2 3 3.5 3.5 3 2 1.5];
antebra=fill (x3,y3,[0.150 0 0],'erasemode','xor');
%base pinzas
x4=[20 21 21 20 19 19 20];
y4=[1.5 .5 4.5 3.5 3 2 1.5];
basepin=fill (x4,y4,[0.250 0.355 0.600],'erasemode','xor');
%pinzas
x7=[21 25 24 21 21]
x8=[21 24 25 21 21]
y7=[2 2 3 3 2]
y8=[2 2 3 3 2]
pinzainf=fill (x8,y7,[0.234 0.478 0.764],'erasemode','xor');
pinzasup=fill (x7,y8,[0.432 0.500 0.345],'erasemode','xor');
%movimiento base
A=0;
a3=uicontrol( 'Style','slider', 'Min',-10, 'Max',15, 'Position',[25,540,110,20],'Value', A,'CallBack',...
'A=get(a3,''Value'');set(base,''xdata'',x1,''ydata'',y1+A);set(brazo,''xdata'',x2,''ydata'',y2+A);set(antebra,''xdata'',x3,''ydata'',y3+A);set(basepin,''xdata'',x4,''ydata'',y4+A);set(pinzainf,''xdata'',x8,''ydata'',y7+A+C);set(pinzasup,''xdata'',x7,''ydata'',y8+A-C);hold on');
%movimiento pinzas
C=0;
c3=uicontrol('Style','slider','Min',-1.45, 'Max',0,'Position',[25,440,110,20],'Value', C,'CallBack',...
'C=get(c3,''Value'');set(pinzainf,''xdata'',x7,''ydata'',y7+A-C);set(pinzasup,''xdata'',x8,''ydata'',y7+A+C);hold on');
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder