P2IML

20
  Modelado de sistemas mecatrónicos Ismael Medina López Página 1 INSTITUTO TECNOLÓGICO DE LA LAGUNA MO DEL DO DE SI STEM S MEC TRÓNICOS  MANIPULADOR DE BRAZO ROBÓTICO ISMAEL MEDINA LÓPEZ 10131135 ESPECIALIDAD ING. ELECTRÓNICA CATEDRÁTICO ING. FRANCISCO JURADO ZAMARRIPA FECHA DE ENTREGA: Torreón, Coahuil a de Zaragoza a 11 de Se ptiembre de 201 3

description

Modelado de sistemas mecatrónicos aplicando herramientas de matlab como simulink y diagrama a bloques. Para el procesamiento de información.

Transcript of P2IML

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 1/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 1

INSTITUTO TECNOLÓGICO DELA LAGUNA

MODEL DO DE SISTEM S

MEC TRÓNICOS 

MANIPULADOR DE BRAZO ROBÓTICO

ISMAEL MEDINA LÓPEZ10131135

ESPECIALIDADING. ELECTRÓNICA

CATEDRÁTICOING. FRANCISCO JURADO ZAMARRIPA

FECHA DE ENTREGA:Torreón, Coahuila de Zaragoza a 11 de Septiembre de 2013

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 2/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 2

Introducción

Resolución de problemas: manipuladores de brazo robótico.

Los sistemas manipuladores de diversos tipos de robots usan un sistema de control

avanzado para guiar un brazo manipulador a los lugares deseados. Uno de los requisitos detales sistemas de control es que el brazo se debe mover de un lugar a otro siguiendo unatrayectoria continua, evitando tirones que podrían hacer que el objeto se soltara o que sedañara el objeto o el brazo mismo. Por lo tanto, la trayectoria del brazo se diseñainicialmente en términos de cierto número de puntos por los que el brazo debe pasar, yluego se emplea interpolación para diseñar una curva continua que contenga a todos los puntos. Consideramos este problema suponiendo que el brazo manipulador se estámoviendo en un plano, aunque tales brazos generalmente se mueven en un espaciotridimensional, no bidimensional.

Una parte importante en el desarrollo de un algoritmo o solución para un problema esconsiderar con cuidado si existen o no casos especiales que deban tenerse en cuenta. En lossiguientes problemas estamos suponiendo que los puntos por los que el brazo debe pasarestán en un archivo de datos, y también que dichos puntos están en el orden necesario paraque el brazo se mueva a cierto lugar para sujetar un objeto, se mueva a otro lugar dondesoltara el objeto, y regrese a la posición original. También supondremos que se incluyen puntos intermedios en la trayectoria para guiar el brazo de modo que sortee o pase cerca desensores que están recabando información. Por tanto cada punto tendrá tres coordenadas:las coordenadas x   y y   relativas a la posición base del brazo manipulador y una tercera

coordenada codificada como sigue:Código Interpretación

0 Posición base1 Posiciones intermedias2 Ubicación del objeto por sujetar3 Lugar donde debe soltarse el objeto

Nota:  una forma de guiar al brazo robótico al objeto es usando  spline cubica, luego al puntodonde debe soltarlo y por ultimo a la posición original.

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 3/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 3

Objetivo de la práctica

Definir programas acordes al planteamiento de los problemas que puedan solucionarsatisfactoriamente el manejo y procesamiento de los valores contenidos en archivos de

datos para diferentes fines, encaminados a la manipulación de brazos robóticos en unespacio bidimensional.

Material y equipo utilizado

 

Herramienta software Matlab ( MATrix LABoratory).  Computadora personal.

Desarrollo de la práctica:

1.  Escriba un programa que realice las pruebas iniciales de los vectores de datos de unarchivo de misión para asegurarse que las coordenadas  x  de cada una de las trestrayectorias estén en orden creciente o decreciente estricto. Si se detectan errores,identifique la trayectoria en que ocurrieron y liste los valores de esa trayectoria.

Aclaraciones

Existen tres trayectorias individuales y totalmente independientes que puede describir

nuestro brazo robótico:

a.  Posición base a ubicación del objeto.b.  Posición de ubicación del objeto a lugar donde se debe soltar.c.  Posición de soltar objeto a la base.

Es lógico suponer que la trayectoria 1 describirá un orden ascendente en su coordenada x, el cual puede ser creciente negativo o positivo (si tomamos como referencia el planoen el cual nuestro brazo manipulara el objeto). Sin embargo, la coordenada  x  en latrayectoria 2 puede presentar tanto un ascenso o descenso en sus valores si describeuna trayectoria cerrada junto con las trayectorias 1 y 2.

Aclarado lo anterior el programa propuesto es el que a continuación se presenta:

Programa en Matlab

El programa que resuelve el primer problema se creó definiendo una función propia a partir de la creación de un archivo .m.

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 4/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 4

function [a,b,c]=prueba_inicial(f)% Realiza las pruebas iniciales de los valores% de datos de un archivo (.dat) de misión de un% brazo robotico. 

a=0;b=0;c=0;

flag=0;

x=f(:,1);y=f(:,2);code=f(:,3);

if x(2)<0

xabs=abs(x);else xabs=x;

end 

% Generar Trayactorias individuales 

coger=find(code==2);soltar=find(code==3);lonx=length(x);

% Trayectorias individuales 

x1=x(1:coger);x2=x(coger:soltar);x3=x(soltar:lonx);

y1=y(1:coger);y2=y(coger:soltar);y3=y(soltar:lonx);

% Trayectoria 1 

for k=1:length(x1)-1v=x(k)<=x(k+1);

v1=xabs(k)<=xabs(k+1);if v==0||v1==0

a=x1;b=y1;c=code(1:coger);fprintf('\n \n Error en la trayectoria: \n De base a

ubicación del objeto a sujetar \n \n')fprintf('\n \n Se sugiere la revicion de los valores de la

coordenada x \n \n')

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 5/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 5

flag=flag+1;end 

end 

% Trayectoria 2 

if x(coger)>x(coger+1)for k=length(x1):length(x2)-1

v=x(k)>=x(k+1);v1=xabs(k)>=xabs(k+1);if v==0||v1==0

a=x2;b=y2;c=code(coger:soltar);fprintf('Error en la trayectoria: \n De sujetar objeto

a lugar para soltar objeto \n \n')fprintf('\n \n Se sugiere la revicion de los valores

de la coordenada x \n \n')flag=flag+1;end 

end else 

for k=length(x1):length(x2)-1v=x(k)<=x(k+1);v1=xabs(k)<=xabs(k+1);if v==0||v1==0

a=x2;b=y2;c=code(coger:soltar);fprintf('Error en la trayectoria: \n De sujetar objeto

a lugar para soltar objeto \n \n')fprintf('\n \n Se sugiere la revicion de los valores

de la coordenada x \n \n')flag=flag+1;

end end 

end 

% Trayectoria 3 

for k=length(x1)+(length(x2)-1):length(x3)-1v=x(k)>=x(k+1);

v1=xabs(k)>=xabs(k+1);if v==0||v1==0

a=x3;b=y3;c=code(soltar:lonx);fprintf('Error en la trayectoria: \n De soltar objeto a la

posición base \n \n')fprintf('\n \n Se sugiere la revicion de los valores de la

coordenada x \n \n')

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 6/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 6

flag=flag+1;end 

end 

if flag==0fprintf('\n \n El archivo de datos es aceptado \n')a=x;b=y;c=code;

end end 

Comprobación del Programa

1er caso

Definimos primeramente un caso donde el archivo de datos (con nombre: data_2 ) contienelos valores de la coordenada  x para las primeras dos trayectorias en orden creciente y parala última, es decir, el regreso a base, en orden decreciente.

Tomamos como ejemplo el archivo de la practica 1.

Coordenada x Coordenada y Código0 0 0

2 4 1

6 4 1

7 6 2

12 7 1

15 1 3

8 -1 1

4 -2 1

0 0 0

>> load data_2.dat;>>

[x,y,codigo]=prueba_inicial(data_2)

El archivo de datos esaceptado

x =

02

671215840

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 7/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 7

y =

04

4671-1-20

codigo =

01

1213110

2do caso

De igual forma definimos un archivo de datos, tomando como ejemplo aquel que contengalos valores para las coordenadas x y de la tabla anterior (data_2 ), con la particularidad queuna de sus trayectorias ha sido modificada para que el orden de la coordenada  x  se veaalterado.

Coordenada x Coordenada y Código0 0 0

2 4 1

1 4 1

7 6 2

12 7 115 1 3

8 -1 1

4 -2 1

0 0 0

>> load data_2.dat;>>[x,y,codigo]=prueba_inicial(data_2)

Error en la trayectoria:De base a ubicación delobjeto a sujetar

Se sugiere la revicion de losvalores de la coordenada x

x =

0217

y =

04

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 8/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 8

46

codigo =

0112

 

Observaciones

El caso 1 fue un ejemplo donde el archivo no presentaba ningún inconveniente en losvalores de la coordenada  x, y por lo tanto el archivo es aceptado por el programa con unclaro mensaje “ El archivo de datos es aceptado” y después de este se presentan lascoordenadas de todos los valores de x, y y código.En el caso dos el archivo de datos presenta irregularidades en los valores de la coordenadax, esto se debe a un valor que inhibe la condición de que la trayectoria 1 debe ser creciente.Por lo cual el mensaje exhibido por el programa es de “ Error en la trayectoria”, y donde

además se presentan los valores de las coordenadas de dicha trayectoria para suverificación.

2.  Suponga que el archivo de datos de una misión puede incluir más de trestrayectorias. Por ejemplo las trayectorias podrían describir el traslado de variosobjetos a nuevas posiciones dentro del espacio de carga. Escriba un programa quecuente el número de trayectorias individuales, donde cada trayectoria termina alcogerse un objeto, soltarse un objeto o volver a la posición base.

Programa en Matlab

Propongamos los siguientes valores dentro de un archivo de datos:

Coordenada x   Coordenada y   Código0 0 02 4 16 4 17 6 2

12 7 115 1 38 -1 14 -2 10 0 01 3 12 3 13 2 2

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 9/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 9

4 2 15 3 34 2 13 1 10 0 0

Los recuadros resaltados en color gris en la columna correspondiente a la coordenadacódigo  nos indica, según el planteamiento del problema, el número de trayectoriasindividuales dentro del archivo de datos. Es decir, para nuestro caso el número total detrayectorias es 6. A partir de este razonamiento se definió una función o programa con elalgoritmo que da solución al problema 2.

function trayectorias=Numero_trayectorias(file)

% Calcula el numero de trayectorias individuales% dentro de un archivo de datos para la manipulacion% de un brazo robotico. 

trayectorias=0;c=0;code=file(:,3);

for k=2:length(code)if code(k)==2

c=c+1;end if code(k)==3

c=c+1;end if code(k)==0

c=c+1;end 

end 

trayectorias=trayectorias+c;fprintf('\n \n Numero de trayectorias individuales')

end

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 10/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 10

Comprobación del Programa

>> data_2

data_2 =

0 0 02 4 11 4 17 6 212 7 115 1 38 -1 14 -2 10 0 01 3 12 3 1

3 2 2

4 2 15 3 34 2 1

3 1 10 0 0

>>t=Numero_trayectorias(data_2)

Numero de trayectoriasindividualest =

6

 

3.  Modifique el programa que escribió para realizar la interpolación de spline cubicade modo que escriba los puntos de datos interpolados para el conjunto completo detrayectorias en un archivo de salida llamado paths.dat. Elimine todos los puntosrepetidos. Asegúrese de incluir los códigos apropiados junto con los puntos dedatos.

Solución en Matlab

Dada las dimensiones de las coordenadas del archivo de datos, este se realizó en uneditor de texto (Bloc de Notas) y luego fue importado a Matlab donde se almacenaría enel Workspace como una matriz con el nombre del archivo que la contiene. Para podervisualizar dicha matriz basta con escribir el nombre de la matriz (el mismo del archivode texto) y dar enter, con esto veremos los vectores columna correspondientes a lascoordenadas  x y  y código que manipularan al brazo robótico en un plano bidimensional.

Tabla de puntos de datos ori ginales del ar chivo (data_3.dat)

Coordenadax

Coordenaday Código

1 0 0 02 1 3.5 13 3 6 24 6 8 15 7.5 8.4 16 9 9 37 8.4 7.5 18 8 6 1

9 6 3 110 3.5 1 111 0 0 012 -1 3.5 113 -3 6 214 -6 8 115 -7.5 8.4 116 -9 9 317 -8.4 7.5 118 -8 6 1

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 11/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 11

19 -6 3 120 -3.5 1 121 0 0 022 -1 -3.5 123 -3 -6 224 -6 -8 125 -7.5 -8.4 126 -9 -9 327 -8.4 -7.5 128 -8 -6 129 -6 -3 130 -3.5 -1 1

31 0 0 032 1 -3.5 133 3 -6 234 6 -8 135 7.5 -8.4 136 9 -9 337 8.4 -7.5 138 8 -6 139 6 -3 140 3.5 -1 141 0 0 0

function trayectorias=Crear_archivo(file)

% Crea el archivo de datos interpolados (paths.dat) a partir de% interpolar cada trayectoria individual en forma individual.

trayectorias=0;c=0;code=file(:,3);

for k=2:length(code)if code(k)==2

c=c+1;end if code(k)==3

c=c+1;

end if code(k)==0c=c+1;

end end 

trayectorias=trayectorias+c;

x=file(:,1);y=file(:,2);code=file(:,3);

sujetar=find(code==2);soltar=find(code==3);

base=find(code==0);

i=1;j=1;n=0;n(1)=[];

for k=1:trayectoriasif i==1

v=x(base(j):sujetar(j));

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 12/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 12

w=y(base(j):sujetar(j));t=linspace(x(base(j)),x(sujetar(j)),100);a=interp1(v,w,t,'spline');n=cat(2,n,a);

end 

if i==2v=x(sujetar(j):soltar(j));w=y(sujetar(j):soltar(j));t=linspace(x(sujetar(j)),x(soltar(j)),100);b=interp1(v,w,t,'spline');n=cat(2,n,b);

end 

if i==3v=x(soltar(j):base(j+1));w=y(soltar(j):base(j+1));t=linspace(x(soltar(j)),x(base(j+1)),100);c=interp1(v,w,t,'spline');

n=cat(2,n,c);

i=i*0;j=j+1;

end 

i=i+1;

end 

save paths.dat n /ascii;

fprintf('\n \n Archivo de datos interpolados creado exitosamente \n')

fprintf('\n \n Numero de trayectorias individuales \n \n')

end 

Comprobación del Programa

>> load data_3.dat;>> Crear_archivo(data_3)

Archivo de datos interpolados creado exitosamente

Numero de trayectorias individuales

ans =

12

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 13/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 13

 En imagen se puede observar el archivo paths.dat   (recuadro rojo) con formato de texto (Block denotas) creado con la función Crear_archivo, el cual además se encuentra almacenado en el

directorio de MATLAB R2011b.

Observaciones

En la comprobación del programa, primeramente lo que hay que hacer es llamar al archivoque contiene a los datos originales (data_3), y por consiguiente cargar dicho archivo en lafunción Crear_archivo. Después de esto si el archivo es aceptado aparecerá el mensaje“Archivo de datos interpolados creado exitosamente” , además de proporcionar al usuario

el número de trayectorias a tratar.

4.  Escribe un programa que lea el archivo  paths.dat   descrito en el problema 3.Grafique el conjunto completo de trayectorias e inserte círculos en los puntos en losque el brazo robótico se detiene. (el brazo robótico se detiene para coger un objeto,soltar un objeto o volver a la posición base).

Solución en Matlab

function trayectorias=Grafica(datos_originales,archivo_creado)

% Lee los archivos de datos originales y los interpolados% para generar una grafica bidimencional de acuerdo a los% valores de interpolacion obtenidos. 

trayectorias=0;

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 14/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 14

c=0;code=datos_originales(:,3);

for k=2:length(code)if code(k)==2

c=c+1;

end if code(k)==3

c=c+1;end if code(k)==0

c=c+1;end 

end 

trayectorias=trayectorias+c;

x=datos_originales(:,1);y=datos_originales(:,2);

code=datos_originales(:,3);

sujetar=find(code==2);soltar=find(code==3);base=find(code==0);

i=1;j=100;l=1;

for k=1:trayectorias

if i==1v=x(base(l):sujetar(l));

w=y(base(l):sujetar(l));pt1=v(1);pt2=w(1);a=archivo_creado(j-99:j);t=linspace(x(base(l)),x(sujetar(l)),100);

end 

if i==2v=x(sujetar(l):soltar(l));w=y(sujetar(l):soltar(l));pt1=v(1);pt2=w(1);a=archivo_creado(j-99:j);

t=linspace(x(sujetar(l)),x(soltar(l)),100);

end 

if i==3v=x(soltar(l):base(l+1));w=y(soltar(l):base(l+1));pt1=v(1);pt2=w(1);a=archivo_creado(j-99:j);

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 15/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 15

t=linspace(x(soltar(l)),x(base(l+1)),100);

i=i*0;l=l+1;

end 

i=i+1;j=j+100;

plot(t,a,'b',pt1,pt2,'or','LineWidth',1.5);hold on;grid on;

end 

fprintf('\n \n Grafica creada exitosamente \n')

fprintf('\n \n Numero de trayectorias individuales \n \n')

end 

Comprobación del Programa

>> load paths.dat;>> Grafica(data_3,paths)

Grafica creada exitosamente

Numero de trayectorias individuales

ans =

12

Una vez creado el archivo de datos interpolados este tiene que ser llamado desde al editorde comandos para ser almacenado en el Workspace. Consecuentemente el archivo se cargaen la función Grafica  junto con el archivo de datos originales para saber que se trata de unde datos interpolados creado a partir del original. Con esto se obtiene la gráfica de losvalores interpolados con  spline cubica. Para hacer más cómodo el trabajo el usuario unavez visualizado la gráfica, podrá definir el rango de vista de la gráfica o bien el tamaño dela ventana que la muestra.

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 16/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 16

Gráficas

1er ejemplo

En nuestro ejemplo la gráfica obtenida, de acuerdo a los valores de datos originales, hace

un recorrido en los cuatro cuadrantes del plano bidimensional con un total de 12 trayectoriarecorridas las cuales se pueden enumerar a partir de los cirulos rojos que indican las 3 posibles trayectorias que presenta el brazo en un recorrido cerrado, es decir, de base(origen) a sujetar objeto, soltar objeto y nuevamente a base.

 Puntos de una trayectoria conectados por spline cubica

2do ejemplo

Tomando como archivo de datos originales el proporcionado para la practica 1  y cargado ala función Crear_archivo  y obtener los datos interpolados para ser graficados con lafunción Gráfica, obtenemos el mismo resultado que el de la practica 1.

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 17/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 17

5. 

Modifique al programa escrito en el problema 1 de modo que suponga que elarchivo podría contener múltiples trayectorias tal como se describe en el problema2.

Solución en Matlab

function [a,b,c]=prueba_inicial2(file)

trayectorias=0;d=0;

code=file(:,3);

for k=2:length(code)if code(k)==2

d=d+1;end if code(k)==3

d=d+1;end if code(k)==0

d=d+1;end 

end 

trayectorias=trayectorias+d;fprintf('\n \n Numero de trayectorias individuales')

a=0;b=0;c=0;flag=0;

x=file(:,1);y=file(:,2);

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 18/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 18

code=file(:,3);

sujetar=find(code==2);soltar=find(code==3);base=find(code==0);

j=1;

for i=1:trayectorias

codigo=code(base(j):sujetar(j));v=x(base(j):sujetar(j));w=y(base(j):sujetar(j));

if v(2)<0vabs=abs(v);

else vabs=v;

end 

for k=1:length(v)-1

sf2=vabs(k)<=vabs(k+1);

if sf2==0a=v;b=w;c=codigo;fprintf('\n \n Error en la trayectoria: %f \n',a,b,c)fprintf('\n \n Se sugiere la revision de los valores en la

coordenada x \n')flag=flag+1;

end 

end 

codigo=code(sujetar(j):soltar(j));v=x(sujetar(j):soltar(j));w=y(sujetar(j):soltar(j));

if v(2)<0vabs=abs(v);

else vabs=v;

end 

if v(sujetar(j))> v(sujetar(j+1))

for k1=1:length(v)-1

sf2=vabs(k)>=vabs(k+1);

if sf2==0a=v;b=w;c=codigo;fprintf('\n \n Error en la trayectoria: %f \n',a,b,c)

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 19/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 19

fprintf('\n \n Se sugiere la revision de los valores en lacoordenada x \n')

flag=flag+1;end 

end else 

for k1=1:length(v)-1

sf2=vabs(k)<=vabs(k+1);

if sf2==0a=v;b=w;c=codigo;fprintf('\n \n Error en la trayectoria: %f \n',a,b,c)fprintf('\n \n Se sugiere la revision de los valores en la

coordenada x \n')flag=flag+1;end 

end end 

codigo=code(soltar(j):base(j+1));v=x(soltar(j):base(j+1));w=y(soltar(j):base(j+1));

if v(2)<0vabs=abs(v);

else vabs=v;

end 

for k2=1:length(v)-1

sf2=vabs(k)>=vabs(k+1);

if sf2==0a=v;b=w;c=codigo;fprintf('\n \n Error en la trayectoria: %f \n',a,b,c)fprintf('\n \n Se sugiere la revision de los valores en la

coordenada x \n')flag=flag+1;

end end 

j=j+1;

end if flag==0

fprintf('\n \n El archivo de datos es aceptado \n')end end 

Conclusión

7/18/2019 P2IML

http://slidepdf.com/reader/full/p2iml 20/20

  Modelado de sistemas mecatrónicos

Ismael Medina López Página 20

La práctica desarrollada tuvo un cierto grado de dificultad a la hora de plantear el problemay realizar los programas correspondientes, esto se debió a la disyuntiva de resolverlosdefiniendo funciones para algunos problemas y en otros solo hacerlos declarando loscomandos en el Command Windows de Matlab, sin embargo, como lo explican las fuentes

consultadas, realizar funciones ayudan a programar eficientemente, lo que permitereescribir código de computación para cálculos que se realizan con frecuencia. Podemosdecir entonces, que una función es una pieza de código de computación que acepta unargumento de entrada del usuario y produce salida al programa.

Los problemas 1y 2 fueron realizados de esta forma, y desde el punto de vista prácticollamar a una función que hace una tarea específica es más rápido y eficiente puesto que elalgoritmo desarrollado para aceptar el dato de entrada proporcionara una salida especificaque corresponde a dicha entrada.

Los problemas resueltos del 1 al 7, aparte de ser problemas para ejercitar lo aprendido en la práctica, proporcionan una herramienta que describe cómo deben ser los pasos a seguir enel desarrollo de algoritmos o programas que se puedan aplicar a hechos reales.

Bibliografía 

  Soluciones de problemas de ingeniería con Matlab.Dolores M. Etter