Sei sulla pagina 1di 6

1

Proyecto Final Calculo PID impresora 3D


Prieto Galarza Ricardo Manuel
rprieto@est.ups.edu.ec
Juan Alejandro Abad Buri
jabadb@est.ups.edu.ec
Tutor: Ing. Italo Mogrovejo P.
Teoria de Control II

AbstractEn el siguiente paper definiremos como calcular las


constantes PID de nuestra planta, en este caso el extrusor de la
Impresora 3D
Index Terms3D printing, PID Controller, Control Systems .

la inclusin en los hogares est un poco lejos, aunque est


claro que poco a poco las diferentes compaas comenzarn a
preocuparse ms para poder ser los primeros en distribuir esta
nueva tecnologa a la que cada vez se le est prestando ms
atencin.[1]

I. I NTRODUCTION
NA impresora 3D es una mquina capaz de realizar
"impresiones" de diseos en 3D, creando piezas o maquetas volumtricas a partir de un diseo hecho por ordenador.
Surgen con la idea de convertir archivos de 1d en prototipos
reales o 3D. En la actualidad son utilizados para la matricera
o la prefabricacin de piezas o componentes, en sectores como
la arquitectura y el diseo industrial. Resulta ms comn el
de las prtesis mdicas, donde son ideales, dada la facilidad
para adaptar cada pieza fabricada a las caractersticas exactas
de cada paciente.[1]

II. O BJETIVOS
1) Calcular las constantes PID para el extrusor de la
impresora
2) Mejorar la Calidad de Impresion
3) Velocidad de Calentamiento de la Planta
III. M ARCO T EORICO
El proceso de impresin tridimensional es, fundamentalmente, en ir creando un prototipo capa por capa y desde abajo
hasta arriba. Para eso la mquina deposita una capa de plstico
en polvo, se compacta la zona que le indica el ordenador y
se vuelve a repetir el proceso colocando una capa sobre otra
hasta que se completa la pieza.
Las ms famosas impresoras tridimensionales lo que hacen
es tomar un archivo .CAD en .STL, que es una versin en
monocromo, o un .VRML, que es una versin a color. Los
dos se realizan con el proceso anteriormente explicado, en el
que se van compactando capa a capa.
Hay dos tipos de impresoras 3D: de tinta y lser. Las
primeras utilizan una tinta que funciona como aglomerante y
compacta el polvo y permiten imprimir en diferentes colores.
Mientras que las segundas lo que hacen es transferir energa
al polvo que pasa a estar polimerizado (duro) y despus
se sumerge en un lquido para que las zonas ms duras se
solidifiquen.
Todava la tecnologa en tres dimensiones es algo muy precario y no funciona de una manera muy veloz. Por ese motivo

A. Impresoras de Polimeros
Otra tecnologa de impresin 3D funciona inyectando
resinas en estado lquido y curndolas con luz ultravioleta.
Se trata de fotopolmeros de base acrlica con diferentes
propiedades fsico-mecnicas: variedad de flexibilidades, elongacin a rotura, resistencia, colores, etc. Se caracteriza por
su precisin y acabado de superficie, lo que hace que su
aplicacin en matricera resulte muy adecuada. Las piezas
estn totalmente curadas al terminar la impresin y no hay
tiempo de espera, aunque hay que retirar soportes de impresin
con un chorro de agua a presin. Esta tecnologa ha sido
la primera en lograr inyectar dos materiales diferentes en
una misma impresin, permitiendo la creacin de materiales
digitales con propiedades "a la carta".[4]
B. Rep-Rap
RepRap es la primera maquina auto-replicante de uso general de la humanidad.
RepRap tiene la forma de una impresora 3D libre capaz
de imprimir objetos plsticos. Como muchas de las partes
de estn hechas de plstico y RepRap imprime esas partes,
RepRap puede auto-replicarse haciendo un kit de si misma,
un kit que cualquier persona puede ensamblar si cuenta con el
tiempo y los materiales. esto tambien significa que si usted
tiene un RepRap usted puede imprimir un sinfn de cosas
tiles, y tambin puede imprimir una RepRap para un amigo.
El proyecto RepRap es una iniciativa creada con el propsito
de crear una mquina de prototipado rpido libre que sea
capaz de replicarse a s misma. Una mquina de este tipo
puede fabricar objetos fsicos a partir de modelos generados
por ordenador: de la misma manera que la impresora de un
ordenador permite imprimir imgenes en dos dimensiones en
papel, RepRap imprime objetos en 3D a base de plstico,
permitiendo la fabricacin de objetos. Incluso RepRap puede
generar las partes necesarias para construir otra mquina igual
a ella. El proyecto reprap fue iniciado en febrero del 2004 por
Andrian Bowyer en Inglaterra, pero actualmente hay personas
colaborando en otras partes del mundo.

RepRap est disponible bajo la licencia GNU GPL. Esta


licencia permite que podamos copiar, estudiar, distribuir y
mejorar sus diseos y cdigo fuente. Tomando como una
analoga la Teora de Evolucin de Darwin, la comunidad
que trabaja alrededor del proyecto puede mejorar los diseos
actuales permitiendo que la mquina evolucione con el tiempo,
de una manera incluso mas rpida que los animales en la
Naturaleza.
Como los virus, RepRap requiere de ensamblaje. Es all
donde entra en una relacin simbitica con el hombre muy
similar a la relacin entre flores y abejas: RepRap sera la
flor y el humano la abeja. RepRap produce objetos para el
hombre, as como la flor produce nctar para las abejas, y a
cambio el hombre ayudar a RepRap a ensamblar sus partes
y as reproducirse, tal como la abeja lleva el polen a otra flor
con el mismo objeto.
Entonces, si el proyecto tiene xito, estaramos hablando de
que en cada casa o centro comunitario existira un RepRap.
Slo sera necesario descargar de Internet el diseo del objecto
que deseamos (o pagar a alguien para que lo haga), y la
mquina lo construir.
A nivel econmico/social RepRap plantea grandes cambios:
menos fbricas, menos necesidad de transporte de bienes,
menos necesidad de dinero, ms autonoma, ms desarrollos
tecnolgicos locales, etc. [3]

depender de la presente de error , que en la acumulacin de


los errores del pasado , y D es una prediccin de errores en el
futuro , sobre la base de velocidad de cambio actual . [ 1 ] la
suma ponderada de estas tres acciones se utiliza para ajustar el
proceso a travs de un control elemento tal como la posicin
de una vlvula de control , un amortiguador , o la potencia
suministrada a un elemento de calentamiento .
En la ausencia de conocimiento del proceso subyacente ,
un controlador PID histricamente ha sido considerado como
el mejor controlador. [ 2 ] Por el ajuste de los tres parmetros
en el algoritmo de controlador PID , el controlador puede
proporcionar una accin de control diseado para los requisitos
especficos del proceso . La respuesta del controlador puede
ser descrito en trminos de la capacidad de respuesta del
controlador para un error , el grado en que el controlador
sobrepasa el valor de consigna , y el grado de oscilacin del
sistema. Tenga en cuenta que el uso del algoritmo de PID
para el control no garantiza un control ptimo del sistema o
la estabilidad del sistema .
Algunas aplicaciones pueden requerir el uso de slo una
o dos acciones para proporcionar el control apropiado del
sistema. Esto se logra mediante el establecimiento de los otros
parmetros a cero . Un controlador PID se llama un PI, PD ,
P o controlador de E en la ausencia de las acciones de control
respectivos . Controladores PI son bastante comunes, ya que la
accin derivada es sensible al ruido de medicin , mientras que
la ausencia de un trmino integral puede evitar que el sistema
alcance su valor objetivo , debido a la accin de control.[?]
IV. M ATERIALES :
Material
Cantidad
NI MyDaq
1
Extrusor Buddas Nozhle
1
Sensor de Temperatura
1
Hobbent Bolt
1
Computadora
1
Arduino Mega
1

Figure 1. Maquina de Impresion Rep-Rap

C. PID Digital
Un controlador proporcional-integral- derivativo ( PID )
es un mecanismo de retroalimentacin de bucle de control
genrico ( controlador ), ampliamente utilizado en los sistemas
de control industrial. Un controlador PID calcula un valor de
" error " como la diferencia entre una variable de proceso
medido y un punto de ajuste deseado . El controlador intenta
minimizar el error mediante el ajuste de las salidas de control
de procesos .
El algoritmo de control PID consta de tres parmetros
constantes separadas , y en consecuencia se llama a veces el
control de tres trminos : proporcional , los valores integrales
y derivados , P denota , I y D. En pocas palabras , estos
valores pueden ser interpretados en trminos de tiempo : P

V. H ERRAMIENTAS
Herramieta
Cantidad
Arduino IDE
1
Labview Control Design Assistant
1
Matlab
1
VI. D ESARROLLO
A continuacion mostraremos paso a paso como fuimos
consiguiendo mejorar el control de la impresora 3D
A. Metodologia de Trabajo
1) Mejora Hardware: Se ha buscado mejorar el Hardware
permitiendo mayor capacidad de torque y suavizado para
el motor.
2) Mejoramiento del sistema de control PID: Se utilizara
el Metodo de Sintonizacion Ziegler-Nichols para lograr
un mejor Control sobre la Planta

B. Mejora de Hardware
Para conseguir esta Mejora esto se cambio el driver de los
motores por uno que permitia microstepping a diferencia del
anterior el A4982 el A4988. La ventaja es que el chip A4982
es que viene en un paquete ms grande para la transferencia de
calor y la disipacin es mejor, la desventaja es que no permite
microstepping de 1/8, slo completo, 1/2, 1/4 y maneja una
corriente de 0.75A (1.5A max). Por otro lado el Controlador
A4988 permite hacer microstepping de 1/8 y su capacidad
de corriente es de 1A (2A max) lo que lo hace mejor para
aumentar el torque del motor.

temperatura cada 3 segundos Los datos se encuentran en la


hoja de calculo de excel Anexo1
Segundo cargamos los datos en el workspace en Matlab

Figure 4. Variables en el Workspace


Figure 2. A4982

Seguido a esto utilizamos el comando Ident que es una


herramienta para identificar la funcion de transferencia de la
planta en la parte de input colocamos la variable step y en
output los datos capturados de la temperatura tiene que ser
datos en el dominio de tiempo

Figure 5. Ident
Figure 3. A4988

C. Control PID
Para el Control PID primero identificamos la planta, teniendo las constantes PID a 1 fuimos tomando valores de la

En la parte Estimate nos permite elegir a que tipo de modelo


queremos estimar numero de polos y ceros, para nuestro caso
estamo solicitando se nos estime a una funcion de transferencia
de dos polos y un cero

Figure 6. Estimacion de la funcion de Transferencia


Figure 9. Step planta Estimada

Damos Click en el boton Estimate y nos estima la funcion


de Transferencia

Figure 10. Bode planta Estimada

Figure 7. Estimacion

Ahora con la funcion de transferencia vamos a analizar los


modelos para eso podemos dar click en el siguiente recuadro

Figure 11. Rlocus planta Estimada

Figure 8. Vista de Modelos para Analisis

Obtenemos los siguientes Resultados:

De estas Graficas podemos determinar que el Sistema es


Estable, puesto que cumple con lo criterios de estabilidad
como de que los polos deben estar siempre en la parte
izquierda de la grafica rlocus y tambien qeu la planta es lenta
puesto que estos polos esta muy cerca del origen
A continuacion hacemos doble click sobre la grafica tf1 y
obtenemos de esta manera el modelo matematico de la planta

Gc=(Kd*s^2+Kp*s+Ki)/s%%Funcion de Transferencia del


Controlador
Geq=series(Gc,Gp)%%%Funcion de Transferencia de lazo
abierto
G=feedback(Geq,1)%%%Funcion de Transferencia de lazo
cerrado
step(G); %%%%%Grafica del Controlador
2) Resultados Obtenidos: La grafica obtenida es la siguiente:
Figure 12. Funcion de transferencia de la planta Estimada

Este modelo cumple con los criterios que establece el


metodo de Ziegler-Nichols por lo tanto vamos a usar el script
que creamos para estimar los valores de KP-KI-KD
1) Script Ziegler-Nichols en Matlab: A continuacion presentamos el Script Utilizado:
clear all
close all
clc
s=tf(s);
tipo=3;
Gp=(-0.0106*s+0.001753)/(s^2+0.0984*s+0.001654)
step(Gp); %%%%%%%%Grafica de Planta
grid on
hold on
M=feedback(Gp,1); %%%%%%%%Grafica de la Planta
con Feedback
step(M);
dt=1;
t=0:dt:500;
%%%%%%%%%%%%%%%%%Encontrando el Punto de
Inflexion de la Curva
y=step(Gp,t);
dy=diff(y)/dt;
[m,p]=max(dy);
yi=y(p); ti=t(p); %%%%%%%A partir de haber encontrado
dicho punto de inflexion se encuentra
%L y Tao donde L es el tiempo Muerto y Tao es la
diferencia de tiempos
L=ti-yi/m;
Tao=(y(end)-yi)/m+ti-L;
%%%%%%%%%%%%%%Encontramos las constantes
KP, KI, KD con Ziegler %%%%%%%%%%%%%%Nichols
if tipo==1
Kp=Tao/L
Ti=inf;
Td=0;
elseif tipo==2
Kp=0.9*Tao/L
Ti=L/0.3;
Td=0;
elseif tipo==3
Kp=1.2*Tao/L
Ti=2*L;
Td=0.5*L;
end
Ki=Kp/Ti
Kd=Kp*Td

Figure 13. Resultados Ziegler-Nichols

Donde la Grafica de Color Azul Es la Planta Estimada


La Grafica de Color Verde es la planta estimada con
realimentacion Unitaria
La Grafica de Color Rojo es la planta Estimada con control
PID
Las constantes del Controlador PID son las siguientes:

Figure 14. Constantes PID

Estas constantes debemos multiplicar por 256 ya que 256 es


el valor equivalente a 1 en el Firmware del Microcontrolador
3) Colocando las Constantes PID en el Firmware: Para eso
necesitamos tener el Arduino IDE abrimos el programa y en
el archivo configuration.h buscamos donde estan definidas las
constantes PID

La implementacion del PID Digital fue algo complejo


pues se tuvo que buscar mucha informacion sobre el
mismo, aunque el metodo viene implementado en una
libreria PID se tiene que saber donde se deben colocar
las constantes y como estas afectaran al pwm del extrusor
Finalmente podemos concluir que el control PID fue
efectivo puesto que nos ahorro alrededor de un 38.2%
de tiempo en el calentamiento del extrusor, que es precisamente lo que estabamos buscando.
Consideramos que paso a paso la impresora va mejorando
su calidad lo que nos alienta a continuar trabajando
en la misma para posteriormente sacarla al mercado y
comercializarla con un nivel de calidad igual y o superior
a las impresoras 3D comerciales
R EFERENCES

[1]
[2]
[3]
[4]

Figure 15. PID en el Firmware Arduino

Luego de eso guardamos y Grabamos el Microcontrolador


con esas constantes
D. Pasos Finales
Bueno a finalmente procedemos a imprimir una pieza de
prueba veremos que la cama reduce el tiempo de calentamiento
en un 38.2 % es una importante mejora para la Impresora 3D
VII. C ONCLUSIONES

La creacion de la impresora 3D fue bastante complejo


principalmente en la parte mecanica algo que nosotros no
conociamos pero gracias a la ayuda de gente en espaa
nos dieron la manera correcta de contruir el armazon de
la impresora
Lo mas complicado del proyecto fue Tomar los valores de
la planta, mediante la discretizacion de los resultados que
nos iba dando la planta en temperatura pudimos obtener
las muestras, utilizamos un metodo de division del tiempo
aproximadamente 3 segundos, como la plata tiene una
respuesta en tiempo lenta el tiempo que tomamos como
base (3 segundos) no afecta demasiado a la obtencion del
modelo matematico.
En la practica aprendimos a utilizar el comando ident de
matlab que nos facilita el trabajo para encontrar la funcion
de trasnferencia de la planta que vamos a controlar
Para encontrar las constantes KP KI KD del controlador
utilizamos el metodo de Ziegler-Nichols un metodo sencillo de aplicar
Utilizamos el Metodo de Ziegler-Nichols ya que la planta
estimada es en forma de S que es una condicion
necesaria para aplicar tunning al sistema
Hay que siempre estar pendiente de la nivelacion de la
impresora puesto que aunque generan pequenas vibraciones estas pueden afectar posteriormente a la impresion

https://es.wikipedia.org/wiki/Impresora_3D
https://es.wikipedia.org/wiki/Impresora_3D#Impresoras_que_inyectan_pol.C3.ADmeros
http://reprap.org/wiki/RepRap/es
https://en.wikipedia.org/wiki/PID_controller

Potrebbero piacerti anche