Sunteți pe pagina 1din 11

Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 1



INSTITUTO TECNOLGICO DE
LA LAGUNA


MODELADO DE SISTEMAS
MECATRNICOS

INTERPOLACIN LINEAL Y CON SPLINE CUBICA

ISMAEL MEDINA LPEZ
10131135

ESPECIALIDAD
ING. ELECTRNICA

CATEDRTICO
ING. FRANCISCO JURADO ZAMARRIPA




FECHA DE ENTREGA:
Torren, Coahuila de Zaragoza a 04 de Septiembre de 2013

Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 2

Objetivo
Dado un conjunto de coordenadas (datos x y), determinar estimaciones para valores de una
variable que no forman parte del conjunto de datos original, mediante interpolacin lineal y
con spline cubica. Adema de realizar el ajuste de curvas al conjunto de datos de acuerdo al
mtodo de interpolacin.
Introduccin
Interpolacin
Se denomina interpolacin a la obtencin de nuevos puntos partiendo del conocimiento de
un conjunto discreto de puntos.
En ingeniera y algunas ciencias es frecuente disponer de un cierto nmero de puntos
obtenidos por muestreo o a partir de un experimento y pretender construir una funcin que
los ajuste.
Otro problema estrechamente ligado con el de la interpolacin es la aproximacin de una
funcin complicada por una ms simple. Si tenemos una funcin cuyo clculo resulta
costoso, podemos partir de un cierto nmero de sus valores e interpolar dichos datos
construyendo una funcin ms simple. En general, por supuesto, no obtendremos los
mismos valores evaluando la funcin obtenida que si evaluamos la funcin original, si bien
dependiendo de las caractersticas del problema y del mtodo de interpolacin usado la
ganancia en eficiencia puede compensar el error cometido.

Interpolacin lineal
Una de las tcnicas ms comunes para estimar datos entre dos puntos de datos dados es la
interpolacin lineal. La figura muestra una grfica con dos puntos de datos f(a) y f(b). Si
suponemos que la funcin entre los dos puntos se puede estimar con una lnea recta,
podemos calcular el valor de la funcin en cualquier punto entre los dos valores de datos
usando una ecuacin que se deduce de los tringulos similares. Esta ecuacin general es:
f b ( ) f a ( )
b a
c a
f c ( ) f a ( ) ( )

Dado de un conjunto de puntos de datos, es relativamente fcil interpolar un nuevo punto
entre dos de los puntos dados. Sin embargo, la interpolacin requiere varios pasos, porque
debemos encontrar los dos valores de nuestros datos entre los que cae el punto deseado.
Cuando hallemos esos dos valores, podremos usar la ecuacin de interpolacin. La funcin
Matlab de interpolacin interp1 se encarga de todos estos pasos.


Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 3


Interp1(x, y, x_new, linear)
Devuelve un vector del tamao de x_new, que contiene los valores y interpolados que
corresponden a x_new usando interpolacin lineal.
Interpolacin con spline cubica
Una spline cubica es una lnea continua construida de modo que pase por una serie de
puntos. La curva entre cada par de puntos es un polinomio de tercer grado, calculad para
formar una curva continua entre los dos puntos y una transicin suave entre este polinomio
de tercer grado y el de los dos puntos anteriores.
En Matlab, la spline cubica se calcula con la funcin interp1 usando un argumento que
especifica interpolacin de spline cubica en lugar de la interpolacin por omisin, que es la
lineal. Esta funcin supone que los vectores x y y contiene los valores de datos originales y
que otro vector x_new contiene los nuevos puntos para los cueles deseamos calcular los
valores interpolados. Los valores x deben estar en orden ascendente, y los valores x_new
deben estar dentro del intervalo de los valores x.

Interp1(x, y, x_new, spline)
Devuelve un vector de columna que contiene los valores y interpolados que corresponden a
x_new usando interpolacin de spline cubica.



Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 4

Desarrollo
Interpolacin lineal y con spline cubica
Suponga que tenemos el siguiente conjunto de puntos de datos:
Tiempo, s Temperatura, F
0.0 72.5
0.5 78.1
1.0 86.4
1.5 92.3
2.0 110.6
2.5 111.5
3.0 109.3
3.5 110.2
4.0 110.5
4.5 109.9
5.0 110.2

1. Generar una grfica que compare la conexin de los puntos de temperatura con
lneas rectas y con una spline cubica.
Solucin en Matlab:
>> clear all
>> x=0:0.5:5;
>>y=[72.5,78.1,86.4,92.3,110.6,111.5,109.3,110.2,110.5,109.9,110.2];
>> new_x=0:0.01:5;
>> new_y1=interp1(x,y,new_x,'linear');
>> new_y2=interp1(x,y,new_x,'spline');
>> plot(new_x,new_y1,new_x,new_y2,x,y,'o')
>> title('Interpolacin lineal y con spline cubica')
>> xlabel('Tiempo,s')
>> ylabel('Temperatura,F')
>> axis([-1,6,70,120])
>> grid on


Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 5

Grfica


Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 6

2. Calcule valores de temperatura en los siguientes instantes usando interpolacin lineal e
interpolacin con spline cubica.

0.3, 1.25, 2.36, 4.48
Solucin en Matlab:
>> x=0:0.5:5;
>> y=[72.5,78.1,86.4,92.3,110.6,111.5,109.3,110.2,110.5,109.9,110.2];
>> temps1=interp1(x,y,[0.3,1.25,2.36,4.48],'linear');
>> temps2=interp1(x,y,[0.3,1.25,2.36,4.48],'spline');
>> temps1

temps1 =

75.8600 89.3500 111.2480 109.9240

>> temps2

temps2 =

74.7235 88.2044 112.5607 109.9204

Tabla de valores
Tiempo, s
Temperatura, F
Interpolacin lineal
Interpolacin con
spline cubica
0.3 75.8600 74.7235
1.25 89.3500 88.2044
2.36 111.2480 112.5607
4.48 109.9240 109.9204

Pasos
a. Definicin de vectores x y y como coordenadas o conjunto de datos originales.
b. Definicin de dos variable, donde se almacenaran el vector del tamao de x_new o
bien del tamao del vector introducido, que contiene los valores y interpolados que
corresponden al conjunto de datos de tiempo, ya sea interpolando linealmente o con
spline cubica.
c. Despus de definir la variable esta se iguala implementando primeramente el
comando interp1 y su sintaxis correspondiente.
d. Obtencin de los valores de temperatura para ambas interpolaciones.

Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 7

3. Copare los valores de tiempo que corresponden a estas temperaturas usando
interpolacin lineal e interpolacin con spline cubica.

81, 96, 100, 106
Nota: al realizar las operaciones en Matlab ingresando el vector con los puntos o datos de
temperatura para los cuales deseamos calcular los valores de tiempo interpolados, surge
un inconveniente en este sentido de interpolacin, ya sea lineal o con spline cubica. El
error que se presenta sugiere que los valores del vector x deben ser distintos, ya que se
presentan repetidos valores de tiempo para un valor de temperatura dado.
Dado el problema anterior, una forma alternativa a este caso para obtener los valores de
tiempo de acuerdo a las temperaturas proporcionadas, es mediante la grfica que compara
la conexin de los puntos de temperatura con interpolacin lineal y con spline cubica. As
obtenemos la tabla siguiente con los valores de tiempo estimados de la grfica con ayuda
del cursor.
Tabla de valores
Temperatura,
F
Tiempo, s
Interpolacin lineal
Interpolacin con
spline cubica
81 0.68 0.66
96 1.6 1.61
100 1.71 1.71
106 1.88 1.86


A continuacin se presenta las grafica obtenida en el punto 1 de este problema, con la
particularidad que aqu se muestran los valores de tiempo con su correspondiente valor de
temperatura haciendo uso del cursor. Las grficas y punto se presentan para cada mtodo de
interpolacin.






Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 8

Grafica con los valores de Tiempo y Temperatura interpolados con spline cubica

Grafica con los valores de Tiempo y Temperatura interpolados con lnea recta


Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 9

Manipuladores de brazo robtico
Disear una curva continua, utilizando interpolacin con spline cubica, que pueda servir
para guiar un brazo manipulador a un punto donde debe sujetar un objeto, a otro punto
donde debe soltar el objeto, y luego de vuelta a la posicin original.
Solucin en Matlab
Dado el propsito del problema a continuacin se presentan las coordenadas del x y que
seguir el brazo robtico.

x y
0 0
2 4
6 4
7 6
12 7
15 1
8 -1
4 -2
0 0

Estos puntos se encuentran conectados por lneas rectas en la figura:

Figura. Puntos de una trayectoria conectados por una lnea recta


Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 10

>> x1=[0,2,6,7,12,15];
>> y1=[0,4,4,6,7,1];
>> x2=[0,4,8,15];
>> y2=[0,-2,-1,1];
>> new_x1=0:0.01:15;
>> val=interp1(x1,y1,new_x1,spline);
>> val2=interp1(x2,y2,new_x1,spline);
>>plot(new_x1,val,new_x1,val2,x1,y1,o,x2,y2,
o)
>> axis([-1 16 -5 10])
>> grid on
>> title(Camino del brazo manipulador)
>> xlabel(x)
>> ylabel(y)

Grafica con la trayectoria de splines cubicas

Puntos de una trayectoria conectada por spline cubica.
Modelado de sistemas mecatrnicos

Ismael Medina Lpez Pgina 11

Al considerar los pasos del diseo de la trayectoria de splines cubica usando Matlab,
descompondremos la trayectoria en tres partes: de la posicin base a la posicin de coger el
objeto, de la posicin de coger el objeto a la de soltar objeto, y de la posicin de soltar
objeto a la posicin de base. Escogemos estas tres trayectorias por dos razones. Primera, el
brazo manipulador debe detenerse al final de cada una de estas tres trayectorias, por lo que
realmente son tres trayectorias independientes. Segunda, puesto que la funcin de spline
cubica requiere que las coordenadas x sean crecientes, no podemos usar una sola referencia
de spline cubica para calcular una trayectoria que esencialmente describe un circulo. Las
coordenadas x de cada trayectoria deben estar en orden ascendente.

Conclusin
En el manejo de Matlab en la solucin de este tipo de problemas es prcticamente muy
sencillo y fcil de manejar, esto hace que clculos matemticos como la interpolacin se
lleven a cabo en tan solo algunas cuantas lneas de cdigo. Adems hemos aprendido en
esta prctica a obtener valores estimados de un conjunto de datos originales mediante
interpolacin lineal, que es la tcnica de interpolacin por omisin, y mediante la
interpolacin con spline cubica donde los puntos estn unidos por un polinomio cubico (de
tercer grado). La mayor parte de los problemas de interpolacin se pueden usar mediante
estos mtodos. Por lo tanto, y si queremos ver resultados visibles y de donde podamos
obtener un juicio del comportamiento del sistema a ser estudiado y analizado, existe la
posibilidad de presentar resultados en grficas y de estas observar y comparar la conexin
entre los puntos de los datos originales.

Bibliografa:
Soluciones de problemas de ingeniera con Matlab
Dolores M. Etter

S-ar putea să vă placă și