Está en la página 1de 4

SIMULACIN CINEMTICA DE MECANISMOS PLANOS

USANDO MATLAB
IM. JUAN ALBERTO RAMREZ MACAS
Grupo de Automtica y Diseo A+D, Escuela de Ingenieras, Universidad Pontificia Bolivariana, Medelln Colombia.
Septiembre 2005
Resumen: Este escrito cubre los conceptos bsicos necesarios para hacer una simulacin cinemtica
de mecanismos planos usando Matlab. Se cubren las funciones bsicas necesarias y las funciones
especficas para un caso particular (M4B:RRRP).
INTRODUCCIN
Para generar un programa que simule el comportamiento cinemtico de un mecanismo plano
articulado, se requiere de antemano del conocimiento de la teora bsica. Es decir, el lector
deber conocer cmo se hace un anlisis de posicin, velocidad y aceleracin. De igual modo,
debe estar familiarizo con la programacin en lenguaje Matlab.
FUNCIONES BSICAS
Para el anlisis cinemtico se requiere del uso de un grupo de funciones bsicas que permiten
el clculo del modelo cinemtico. Estas funciones son:
- dotc: producto punto complejo
- tcos: teorema del coseno para tringulos
- slvr: solucin de ecuaciones vectoriales en Re
2
con dos incgnitas escalares
El cdigo de estas funciones se lista continuacin:
DOTC:
function c = dotc(a,b)
% Producto punto complejo
% c = dotc(a,b)
% c = real(a)*real(b)+imag(a)*imag(b)
c = real(a)*real(b)+imag(a)*imag(b);
TCOS:
function a = tcos(A,B,C)
% Teorema del coseno para tringulos
% Encuentra el ngulo opuesto del lado A, a partir de conocer
% la longitud de los lados A, B y C
%
% Sintaxis:
% a = tcos(A,B,C)
% a = acos((B^2+C^2-A^2)/2/B/C)

a = acos((B^2+C^2-A^2)/2/B/C);
SLVR:
function v = slvr(A,B,C)
% Solucin de ecuaciones vectoriales de dos incgnitas escalares de la
% forma:
% C = aA + bB
% Donde:
% A, B y C son complejos conocidos
% a y b son incgnitas escalares
%
% Sintaxis:
% v = slvr(A,B,C)
% v = [a b]
v = [dotc(C,B*i)/dotc(A,B*i) dotc(C,A*i)/dotc(B,A*i)];
FUNCIONES PARA ANLISIS DE POSICIN (PARA UN M4BRRRP)
El primer paso para hacer un anlisis cinemtico de mecanismos es desarrollar una funcin
que resuelva la posicin del mecanismo a partir de un argumento de entrada (posicin de la
barra de entrada) y devuelva los vectores de inters del mecanismo, esta funcin es llamada
Vposi.
VPOSI:
function P = Vposi(q2)
% P = Vposi(q2)
% P = [R2 R3 R4 G2 G3]
% funcin que resuelve la posicin para un M4BRRRP
% se debe ingresar el ngulo de entrada en radianes

% definicin de las constantes del mecanismo
r2 = 0.10;
r3 = 0.30;
uR4 = 1;
R1 = 0.01*i;

% solucin del lazo
R2 = r2*exp(i*q2);
H = R1 + R2;
delta = acos(dotc(i*uR4,H)/r3);
R3 = r3*i*uR4*exp(i*delta);
R4 = H - R3;

% Posicin absoluta de los centros de masa de las barras 2 y 3
% en este caso de asume que el centro de masa est en el centro de la
% barra
G2 = 0.5*R2;
G3 = R2 - 0.5*R3;

% Vector solucin, vector de nmeros complejos
P = [R2 R3 R4 G2 G3];
El siguiente paso es crear la funcin posi. Esta funcin sirve para hallar un vector con las
variables de inters que cambian en el mecanismo, es decir, si R2 es un vector que slo rota,
se obtiene
2
; y si R4 es un vector que se desplaza se obtiene r
4
. Si en algn caso se necesitan
las dos, entonces se extraen los dos datos.
Esta funcin es til tanto para calcular los coeficientes de velocidad y aceleracin, como para
hacer las grficas de las variables en funcin de la variable generalizada.
POSI
function P = posi(q2)
% P = posi(q2)
% P = [q2 q3 r4 g2x g2y g3x g3y]
% Funcin que entrega las variables que cambian en el mecanismo
% se debe ingresar el ngulo en radianes

% Se utiliza la funcin Vposi
% Pos = [R2 R3 R4 G2 G3];
Pos = Vposi(q2);
R2 = Pos(1);
R3 = Pos(2);
R4 = Pos(3);
G2 = Pos(4);
G3 = Pos(5);
P = [angle(R2) angle(R3) abs(R4) real(G2) imag(G2) real(G3) imag(G3)];
FUNCIONES PARA ANIMACIN
El primer paso es la creacin de una funcin grposi. sta sirve para dibujar el mecanismo en
funcin de la variable de entrada. Es til para hacer la simulacin cinemtica del mecanismo e
incluso, para hacer simulaciones dinmicas.
function grposi(q2)
% grposi(q2)
% dibuja el mecanismo en funcin de q2, posicin de la barra de
entrada.

% Se utiliza la funcin Vposi
% Pos = [R2 R3 R4 G2 G3];
Pos = Vposi(q2);
R2 = Pos(1);
R3 = Pos(2);
R4 = Pos(3);
G2 = Pos(4);
G3 = Pos(5);

%Graficacin de la barra 2
hold off
plot([0 R2],'Color','r','Linewidth',5, ...
'Marker','o','MarkerFaceColor','w')
hold on

% Graficacin de la barra 3
plot([R2 R2-R3],'Color','b','Linewidth',5, ...
'Marker','o','MarkerFaceColor','w')

% Graficacin de la barra 4
h=0.04;%Altura y
w=0.08;% Ancho x
plot([R2-R3+w/2+i*h/2 R2-R3-w/2+i*h/2 R2-R3-w/2-i*h/2 R2-R3+w/2-i* ...
h/2 R2-R3+w/2+i*h/2],'Color','k','Linewidth',2)

axis equal
axis([-0.15 0.5 -0.15 0.15])
axis off
El siguiente paso es crear una funcin que ejecute varias veces la funcin grposi, para que se
d el efecto de movimiento del mecanismo, esta funcin se conoce como anim:
ANIM
function anim(vueltas)
% anim(vueltas)
% Anima un M4B:RRRP
% El numero de revoluciones esta determinado por vueltas

if nargin == 0; vueltas = 1;end
close all
fig1 = figure('Name','Simulacion cinematica de un M4B:RRRR ...
por JARM','NumberTitle','off','DoubleBuffer','on');

for q2=0:vueltas*360
grposi(q2*pi/180)
pause(0.001)
end
BIBLIOGRAFA
[1] DOUGHTY, Samuel. Mechanics of Machines. New York: John Wiley, 1988. 467p.
[2] ETTER, Delores M.. Solucin de problemas de ingeniera con MATLAB. Mxico: Prentice -
Hall, 1998. 329 p.
[3] HERNNDEZ S., Giovanny y RAMREZ M., Juan Alberto. Software de simulacin para una
banco de mecanismos planos de cuatro barras. Medelln. 2004. 108p. Tesis (Ingeniero
Mecnico). Universidad Pontificia Bolivariana. Facultad de Ingeniera Mecnica.
[4] OCHOA, Juan Jos. Notas de clase del curso de Mecanismos II. Medelln: UPB. 2002.
[5] THE MATH WORKS. Matlab application program interface guide. Natick: The Math Works,
1998. 8 sec.
[6] THE MATH WORKS. Matlab: building GUIs with Matlab. Natick: The Math Works, 1997. 4
sec.
[7] THE MATH WORKS. Matlab: getting started with Matlab. Natick: The Math Works, 1997. 86
p.
[8] THE MATH WORKS. Matlab reference manual. Natick: The Math Works, 1997. (Program
built-in help)

También podría gustarte