TODOPIC

FORO TÉCNICO => Foro Técnico => Mensaje iniciado por: MLO__ en 08 de Abril de 2010, 10:35:07

Título: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 08 de Abril de 2010, 10:35:07
Hola.

Siguiendo la sugerencia del Sr. Alejo, abro este hilo para los comentarios que tengan del hilo Controlador PID - Nivel Básico (http://www.todopic.com.ar/foros/index.php?topic=30199.0). No se si sea este el lugar adecuado, así que pido ayuda a algún moderador por si es necesario moverlo

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 08 de Abril de 2010, 10:53:20
Gracias por comenzar con el curso MLO. Estaré al tanto de las clases.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: AKENAFAB en 08 de Abril de 2010, 11:01:47

Leyendo leyendo!!!

Muy bueno MLO!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: ema en 08 de Abril de 2010, 11:39:10
Me apunto. Y me parece bien que tambien limpien el otro post asi queda todo proligito y no tan largo.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 08 de Abril de 2010, 11:49:58
Me apunto. Y me parece bien que tambien limpien el otro post asi queda todo proligito y no tan largo.

Saludos

Claro, buena idea. Quienes no puedan eliminar sus mensajes allá por favor avisen a los moderadores.  ;-)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 08 de Abril de 2010, 12:10:23
Me apunto. Y me parece bien que tambien limpien el otro post asi queda todo proligito y no tan largo.

Saludos

Claro, buena idea. Quienes no puedan eliminar sus mensajes allá por favor avisen a los moderadores.  ;-)

Creo que todos!  :D :D Y hay que colocar un mensaje en el primer post que hay un hilo para comentarios  ;-)

Borra el mio por favor  :)

EXCELENTE TRABAJO MLO_  :-/ :-/

Saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 08 de Abril de 2010, 12:13:36
Listo Suky.  :mrgreen: Los faltantes échenme un grito  ;-)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Veguepic en 08 de Abril de 2010, 12:14:26
Tambien suscrito e inamovible mi querido Miguel!!!

Gracias por ofrecerte. Cuando estas de vuelta por estos lares?

Pues ya me borre del otro hilo!!  :mrgreen:
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 08 de Abril de 2010, 13:29:26
 :D :D Parece que no se puede! Todos escriben en el otro post, hasta el moderador!   :shock: :D :D
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 08 de Abril de 2010, 13:31:20
Bueno, es que MLO no ha podido colocar el anuncio en el primer post. Ya tomará forma eventualmente.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: LABmouse en 08 de Abril de 2010, 14:08:57
Hola,  :oops: si se puede comentar aca, es que no habia visto el comentario, asi que ya borre lo que me corresponde.

SALUDOS!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: gera en 08 de Abril de 2010, 15:01:23
Huy, esto me viene como anillo al dedo!! Voy a seguir atentamente el hilo.
Muchas gracias MLO!! :-/
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: juanpavz en 08 de Abril de 2010, 16:52:31
Muy buena introduccion MLO, tambien me sumo al hilo
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: NANO1985 en 08 de Abril de 2010, 17:22:48
muy bueno!!! gracias por compartirlo...  borren mi mje del otro hilo,.
Saludos  8)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 08 de Abril de 2010, 18:48:46
Hola.

Que bueno que les haya gustado la introducción al tema  :-/ :-/ :-/ :-/

Ya modifique el primer post para que los comentarios se hagan acá en este hilo, claro que con el aviso de Alejo, yo creo que es mas que evidente  :D

Esta noche avanzo un poco mas con el tema.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: jhozate en 08 de Abril de 2010, 18:54:08
en hora buena el hilo MLO  :-/ yo ni idea de ese cuento de los PID's, estare aqui en mi silla calladito pero atento :mrgreen:
Adelante!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 08 de Abril de 2010, 21:56:09
Ya modifique el primer post para que los comentarios se hagan acá en este hilo, claro que con el aviso de Alejo, yo creo que es mas que evidente  :D

 :D Había que tomar una decisión drástica!  :D :D  ;-)

Saludos!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Nocturno en 09 de Abril de 2010, 02:07:59
Tengo una duda con las fórmulas, MLO.
¿Qué significa la "A" en esta fórmula?

$ Q=hA(T_{F}-T)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: gauchosuizo en 09 de Abril de 2010, 04:07:50
hola Manolo

A es el area superficial del elemento sensorial.

Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 09 de Abril de 2010, 10:37:34
Hola

Exactamente gauchosuizo, es el área del elemento sensorial que esta en contacto con el fluido. De ahí se ve que esa forma (convección) de transferencia de calor depende mucho de la geometría y por ende, el coeficiente de transferencia de calor h también. Es muy difícil obtener estos valores de forma teórica, por lo que se recurre a métodos experimentales.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Nocturno en 09 de Abril de 2010, 12:41:46
Estupendo, muchas gracias por la aclaración.

Sin embargo, ahora tengo otra duda: ¿cómo es que no aparece esa variable en la función de transferencia?
Disculpad mis preguntas tan básicas, pero me pierdo en la evolución matemática de la fórmula.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 09 de Abril de 2010, 13:27:26
Hola.

Si aparece (claro que es constante, no variable, porque se supone que el área de contacto no cambia con el tiempo), está en la definición de
$ \tau
:

$ \tau = \frac{mc}{hA}
.

Cualquier duda es bienvenida.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: gera en 09 de Abril de 2010, 13:28:40
Tengo una duda con las fórmulas, MLO.
¿Qué significa la "A" en esta fórmula?

$ Q=hA(T_{F}-T)

Si no mal recuerdo, A es el area expuesta por la cual se transfiere el calor.
edit: hmm, llegue un poco tarde jeje
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Fer_TACA en 10 de Abril de 2010, 18:21:46
Pues como dije en el post originala
a seguir calladito, leyendo y aprendiendo todo lo que se pueda.

F.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 11 de Abril de 2010, 05:39:57
Hola amigos aprovecho este post para decirles que en esta pagina hablan sobre este tema, a mi me fue de mucha ayuda.

http://www.ib.cnea.gov.ar/~dsc/capitulo7/Capitulo7.htm (http://www.ib.cnea.gov.ar/~dsc/capitulo7/Capitulo7.htm)

En esta otra pagina aparece un simulador hecho en java de un controlador de movimiento de una antena, al cual le puedes variar los parametros PID y observaras como cambia la salida.

http://www.esi2.us.es/~fsalas/ejs/antena/Antena.html (http://www.esi2.us.es/~fsalas/ejs/antena/Antena.html)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Nocturno en 15 de Abril de 2010, 04:22:03
Tengo una duda, MLO.

En el apartado referido al control proporcional, cuando dices: "En este tipo de control, siempre va a haber error en estado estable, es decir, cuando el tiempo tiende a infinito y se supone que el proceso se estabiliza para el valor de Set Point fijado por nosotros."

¿En "estado estable" significa que el controlador ha llegado al Set Point que le hemos pedido?. Si es así considero que no habría error. ¿O es que "estado estable" significa otra cosa?
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: dhmejia en 15 de Abril de 2010, 10:23:04
El estado estable es cuando las condiciones del sistema no varían (se mantienen estables), con el control proporcional la salida no alcanza el valor del set point sino que queda con un error, por dar un ejemplo si yo fijo el set point en 12 la salida podría estabilizarse en 11.

saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Veguepic en 15 de Abril de 2010, 12:26:48
Entenderia por lo que mencionan que el valor tiende a estabilizarse en el infinito, por lo que en la realidad nunca llega a alcanzar el set point, pero por cuestiones practicas se acepta esa diferencia, ese seria el error?
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 15 de Abril de 2010, 14:13:40
Hola.

¿En "estado estable" significa que el controlador ha llegado al Set Point que le hemos pedido?. Si es así considero que no habría error. ¿O es que "estado estable" significa otra cosa?

Estado estable, hace referencia a que nuestra variable se ha estabilizado en un valor y hay muy poca -casi nula- oscilación en el valor final, esto es, que el valor de nuestra variable, cambia muy poco -casi nada- con el tiempo. Lo ideal sería que el valor en el que se estabilice sea el Set Point que fijamos, pero, ya que la función de transferencia es tan solo una constante, el valor de la señal de control sera cada vez menor a medida que el error disminuye y por ende el error va a aumentar al estar disminuida la señal de control.

... con el control proporcional la salida no alcanza el valor del set point sino que queda con un error, por dar un ejemplo si yo fijo el set point en 12 la salida podría estabilizarse en 11.

Exacto. El Offset o error en estado estable de la variable de salida, en este caso sería de 1.

Entenderia por lo que mencionan que el valor tiende a estabilizarse en el infinito, por lo que en la realidad nunca llega a alcanzar el set point, pero por cuestiones practicas se acepta esa diferencia, ese seria el error?

Ese es el error de la variable en estado estable.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 15 de Abril de 2010, 14:16:12
..
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Nocturno en 15 de Abril de 2010, 15:09:14
Perfectamente claro, gracias.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 15 de Abril de 2010, 16:04:23
Con gusto Sr. Nocturno.  ;-)

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Chenao en 15 de Abril de 2010, 21:42:03

Hola MLO

Gracias por compartir tu tiempo y los conocimiento con toda la comunida. En este momento no poseeo el nivel suficiente para entender muchas cosas de las que tu expones, pero aprovechando los recursos de la biblioteca de universidad donde estudio estuve consultando algo sobre el estado transitorio de un sistema físico (masa resorte), y me resulto una pregunta, los sistemas que existen el la naruraleza podrian llegar a ser inestables, porque revisando las ecuaciones diferenciales de los módelos que consulte podrían llegar a ser inestable si las raices de la ecuación características se encuentra en el semiplano complejo positivo, bueno y si es así existe alguna forma de controlar el sistema. MLO disculpame si la pregunta no encaja pero como soy un novato quiero saber hacia donde vamos :D :D.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 15 de Abril de 2010, 23:22:08
Hola Chenao.

Gracias a ti por seguir el hilo, espero te sea útil.

Hay varias técnicas de control, una de ellas es el PID, pero hay muchos mas. Todo sistema físico posee una función de transferencia, pero esa función de transferencia es el resultado de una razón:

Señal de Salida / Señal de entrada

Así que depende de que variable tomemos como entrada y como salida para definir la función de transferencia.

No todos los sistemas son controlables, hay sistemas que son totalmente estocásticos e inclusive, hay sistemas cuya función de transferencia son casi imposibles de determinar. Lo que se hace es aproximar o tomar la función por tramos para tener control al menos con condiciones o en algunas secciones.

Con respecto al sistema que dices de masa-resorte, podría darse el caso de que este forzado a oscilar con una fuerza externa a una frecuencia de oscilación que coincide con la frecuencia propia del sistema y por ende la ecuación diferencial te da esas raíces (lo que implica que el sistema entra en resonancia). Mira que una forma de controlarlo, sería simplemente mover un poco la frecuencia de oscilación externa para que el sistema no resuene.

Saludos

Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Chenao en 16 de Abril de 2010, 23:08:48

Hola MLO.

Gracias por responder más claro no canta un gallo :D :D :D. Pero me resulto otra duda siguiendo con la consulta, el sistema masa resorte es un caso general, es decir, cualquier sistema (eléctrico, térmico, mecánico) se podría comportar como un sistema masa resorte y por eso es que se habla del estado estacionario.

1. Por otro lado, las condiciones iniciales de un sistema que se encuentra en estado estacionario no son importantes?
2. Y un sistema de control puede cambiar su configuración actual de forma repentina a otro sistema?

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 16 de Abril de 2010, 23:29:43
Hola.

Como a la dinámica del sistema la describe una ecuación diferencial, lo que se hacen son analogías entre ellos, ya sea el sistema eléctrico, mecánico, etc. su dinámica va a ser similar. Se habla de estado estacionario porque ya esta en equilibrio dinámico.

(http://img109.imageshack.us/img109/4919/funcion1ee.png)

Las condiciones iniciales del sistema son importantes, claro que si. Estas constantes son evaluadas al aplicar la transformada de Laplace, son puntos de referencia inicial, por llamarlas de alguna manera, indican desde donde empieza todo el bororlo jeje

No entiendo el punto 2 ... A otro sistema de control? Si esta actuando un controlador sintonizado ya para cierto sistema, no hay razón para la que cambie .... hay sistemas que son autosintonizados, pero eso ya es en la implementación física del controlador.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 17 de Abril de 2010, 00:28:44
Es cierto, el punto 2 me dejo  :z)  :D También es importante comentar que hay sistemas de control en donde sus ganancias varían respecto al tiempo, exactamente en el estado estacionario. A estos sistemas de control se los denominan óptimos (Distinto a lo que habla biglius en otro post) Ya en el estado estable, también las ganancias del lazo de control tienden a un valor constante.


Saludos!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 17 de Abril de 2010, 12:27:17
Hola suky, el compensador del que yo hablo es algo que he estado investigando, no sabía que ya existian compensadores con ese nombre, sería bueno que pongas un link de esos compensadores de los que hablas, para ver cuales son las diferencias con el de mi post.

 :( Si ya existe algo como lo que estoy planteando entonces he estado perdiendo mi tiempo, y sino tendré que cambiarle el nombre a mi post.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Chenao en 17 de Abril de 2010, 12:41:37

Hola de nuevo.

Citar
No entiendo el punto 2 ... A otro sistema de control?

Citar
Es cierto, el punto 2 me dejo  :z) :D

No me supe explicar, lo digo porque según las consultas que vengo haciendo, existen unos sitemas que cambian su configuración en un instante del tiempo, por ejemplo un circuito eléctrico que contiene varios conmutadores y que es cierto instante son conmutados y se origina otro circuito, según observe el sistema que se origina puede ser propio o impropio y según su configuración las condiciones iniciales cambian, por eso la consulta de que si en el control la configuraciòn puede cambiar en un instante del tiempo.

Redactar nunca ha sido uno de mis dones  :D :D .

Saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 18 de Abril de 2010, 12:40:50
Hola.

Cuando se modela matemáticamente un sistema, se asumen condiciones iniciales para facilitar los cálculos. Ya en el proceso de control, si se llega a modificar alguna de las variables, se supone que el controlador esta diseñado para que contrarreste esas modificaciones. Por ejemplo, para un horno, se supone que el sistema debe ser cerrado térmicamente (adiabático), una vez que se enciende el controlador, éste va a intentar garantizar que se llegue al SetPoint, pero supongamos que alguien abre la puerta del horno, ahí cambiarán las condiciones "iniciales" y por ende el controlador actuará para seguir garantizando que la temperatura sea lo mas cercana posible al SetPoint, creo que es a eso a lo que te refieres cierto Chenao?

El sistema de control no cambia, es el mismo, lo que hace es compensar esas fluctuaciones en la variable de control, para garantizar el SetPoint.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 18 de Abril de 2010, 16:00:20
Hola suky, el compensador del que yo hablo es algo que he estado investigando, no sabía que ya existian compensadores con ese nombre, sería bueno que pongas un link de esos compensadores de los que hablas, para ver cuales son las diferencias con el de mi post.

 :( Si ya existe algo como lo que estoy planteando entonces he estado perdiendo mi tiempo, y sino tendré que cambiarle el nombre a mi post.

mmm... Lo que comento yo son controles optimos, no compensadores, no he leido tu post como para ver si tienen algo que ver. Son sistemas muy estudiados en donde se fija un indice de optimización, desarrollados para sistemas lineas sin ruido y estocasticos, en donde el control no es una constante sino un vector en donde su valor depende del tiempo.

Por aquí (http://www.worldlingo.com/ma/enwiki/es/Optimal_control) hay una sisntesis.

Saludos!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Chenao en 18 de Abril de 2010, 19:43:16

Saludos

Citar
Cuando se modela matemáticamente un sistema, se asumen condiciones iniciales para facilitar los cálculos. Ya en el proceso de control, si se llega a modificar alguna de las variables, se supone que el controlador esta diseñado para que contrarreste esas modificaciones. Por ejemplo, para un horno, se supone que el sistema debe ser cerrado térmicamente (adiabático), una vez que se enciende el controlador, éste va a intentar garantizar que se llegue al SetPoint, pero supongamos que alguien abre la puerta del horno, ahí cambiarán las condiciones "iniciales" y por ende el controlador actuará para seguir garantizando que la temperatura sea lo mas cercana posible al SetPoint, creo que es a eso a lo que te refieres cierto Chenao?

El sistema de control no cambia, es el mismo, lo que hace es compensar esas fluctuaciones en la variable de control, para garantizar el SetPoint.

En efecto a eso me referia disculpame por el lenguaje tan poco técnico que manejo pero ahy vamos aprendiendo, voy a seguir estudiando este tema que me intereza y obviamente a seguir tu hilo, espero que no te incomode si te sigo preguntando profe MLO  :D :D.

Saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 18 de Abril de 2010, 21:18:37
 :D :D :D

Naaaa, no hay lío hombre, estamos acá para aprender

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 21 de Abril de 2010, 15:53:48
hola MLO:

En este momento me encuentro en un aprieto. Loq ue necesito es hacer un PID digital para controlar temperaura, he estado revisando el link y en verdad es de mucha ayuda lo que se plantea ahi, pero ahora me encuentro con otro problema se ha llegado a una ecuacion final la cual es la discretizacion de una ecuacion continua pormedio de la transformada z, cual es la forma de atacar y programar esta ecuacion en un microcontrolador.

Segun lo que se plantea en ese link y lo que se, cada sistema responde diferente por que en el se encuentran muchas variables que lo modifican. Hay manera de hacer un controlador digital el cual pueda emplearse en la mayoria de los casos termicos y solo sintonizarlo por alguno de los metodos existentes??, lo que intento realizar es mantener  continua la temperatura dentro de un pequeño recinto en el cual la temperatura ahumenta por la activacion de una resistencia (actuador). Gracias

En este link comento sobre mi problema espero y me puedas ayudar. http://www.todopic.com.ar/foros/index.php?topic=30369.0
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 21 de Abril de 2010, 15:56:15
Hola.

Pues es muy sencillo hacerlo. He estado un poco liado con algunas cosas, pero a ver si hoy en la noche ya enfocamos la parte experimental ok? justamente sera para un horno  :mrgreen:

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 21 de Abril de 2010, 17:03:23
Hola:

MLO gracias por tu pronta respuesta estare pendiente. Gracias
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: NANO1985 en 21 de Abril de 2010, 17:16:36
muchisimas gracias MLO_ por tu publicacion... la verdad que no tiene desperdicios!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 27 de Abril de 2010, 14:59:32
Hola MLO

Sobre el asunto de Nyquist. Para el ejemplo que vamos a echar a andar sobre control de temperatura, la temperatura es algo que varía muy lentamente, digamos 10°C/s máximo.

Considero que las señales seno (desde el punto de vista de Fourier) que conforman la señal de temperatura no rebasarían los 5Hz, casi todas serían valores de DC. ¿Una frecuencia de muestreo de 10Hz bastaría? Creo que hasta un PIC12 podría convertirse en un PID digital para temperatura.

 :huh:

Sobre el asunto de control Derivativo. El valor derivativo lo comentas como tiempo de derivación. Para un horno, el fluido que interactúa con el sensor es el aire. El aire tiene una constante (¿o variable?) de conductividad térmica que asumo es lo que hay que compensar como valor derivativo del PID, ¿es correcto? La velocidad en que el aire transmite la temperatura al sensor es la razón de cambio del sistema.

Pero si lo anterior es cierto, ¿existe el valor Integral en un horno? Es decir, ¿hay un tiempo de reajuste por algún otro elemento?

Gracias  :mrgreen:
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 27 de Abril de 2010, 15:15:34
Hola.

En si, el uso de micros de mayor ROM es para el uso de interfaz de usuario, porque el algoritmo del PID es muy simple, otra cosa: se necesita cierto  nivel de RAM, ya que se usan variables tipo float.

Los cambios de temperatura en el sistema, de hecho, son menores, y un tiempo de muestreo de 1 seg es mas que suficiente.

No se trata solo del aire, hay mas factores que pueden influir en la asignación del error en nuestro sistema. La constante que nos interesa es tau, y es una constante en la cual están involucrados muchos factores del mismo sistema. Mira que la transferencia de calor entre las resistencias y la carga (inmerso el sensor) se puede asumir por convección, pero la velocidad del aire dentro del horno tiende a ser mínima.

Lo que queremos lograr al colocar un controlador, es filtrar las variaciones en nuestra variable controlada, y en si, eso son los controladores, meros filtros.

Saludos.

PD// No pude postear nada la semana pasda  :oops: estuve con algunas cosas ... disculpas por ello
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 27 de Abril de 2010, 15:25:32
Entonces, ¿no hace falta conocer el valor de la conductividad del aire? ¿Posteriormente ése y otros valores de entrada serán compensados con el algoritmo de Ziegler Nichols?
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 27 de Abril de 2010, 16:00:29
Hola.

La idea, para no quebrarse la cabeza con ello, es obtener el modelo del sistema experimentalmente.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 27 de Abril de 2010, 19:49:27
OK MLO, estaré al tanto de la siguiente entrega. Gracias.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Nocturno en 28 de Abril de 2010, 02:45:47
Felicidades por lo que has publicado, MLO, es realmente didáctico ver un caso práctico.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MGLSOFT en 28 de Abril de 2010, 09:39:32
Muy interesante!!
Lo estoy siguiendo aunque no haga comentarios...

Que lenguaje se usara en la programacion??
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 28 de Abril de 2010, 09:47:16
Hola.

Felicidades por lo que has publicado, MLO, es realmente didáctico ver un caso práctico.
Gracias, espero que les sirva a muchos.

Que lenguaje se usara en la programacion??
Pienso usar C pero del CCS.

Saludos

PD/ Tengo que viajar hasta el fin de semana, así que no podré postear nada hasta entonces. Pero cuando llegue nos ponemos en forma jeje
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 28 de Abril de 2010, 09:58:54
Gracias MLO, el algoritmo en C estará muy interesante.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: reiniertl en 28 de Abril de 2010, 11:13:11
MLO muy bueno este post.

En verdad he visto a muchos colegas sonarle a uno toda la teoría sobre control (yo mismo tuve que pasar 3 semestres de toría de control dos de control de procesos 1 de modelado .... Uff). Al final la gente en la práctica se compra un controlador PID lo pone en el proceso y comienza a jugar con los parámetros del mismo hasta que el sistema se comporta adecuadamente. Algunos lo ponen a oscilar con oscilaciones permanentes y estables hasta que ponen al sistema en el límite de estabilidad y le aplican Ziegler an Nichols, pero luego hay que hacer el ahuste fino. Conclusión que es más o menos como decía un colega mío, eso del control parece brujería, y es más o menos verdad.

Así que en principio podríamos hacer un PID con parámetros configurables y almacenados en EEPROM, según algún algoritmo PID que nos convenga (PID de velocidad, respuesta sin batimiento, etc) y luego que ya lo tenemos implementado comenzar a ajustar el proceso hasta que la cosa ande bien, parece poco serio pero les aseguro que funciona de perlas.

Les pongo un ejemplo claro, hace tiempo me llamaron unos colegas de la Fac. de mecánica porque la temperatura en una mufla no se estabilizaba en un valor determinado de consigna, sin embargo para otros valores andaba de perlas. El resultado final fue que ajusté el controlador y todo bien, por ejemplo para 200  ̊C todo bien con un juego de valores pero cuando le pedías que la temperatura fuese de 800  ̊C ya no iba bien, así que había que cambiar las constantes del controlador.

Saludos
Reinier

PD: Y que conste que no tengo nada en contra de la teoría de control, yo creo que la teoría es siempre lo más importante, sólo que la práctica= experiencia+teoría siempre nos depara sorpresas interesantes. Al final sin teoría no se puede hacer el PID e incluso ajustarlo rápidamente, pero no cabe duda que a veces podemos ahorrarnos montones de cálculos tediosos porque el PID es tan bueno que jugando un poco con él podemos hacer que controle bien.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Suky en 28 de Abril de 2010, 11:22:01
Felicitaciones MLO_ por el aporte  ;-)


Saludos!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 28 de Abril de 2010, 14:15:45
:huh: Me ha surgido una duda, yo se que con el pic podemos muestrear la señal y enviarlo a MATLAB o algun otro software para determinar la funcion de transferencia de la planta. Pero:

Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 28 de Abril de 2010, 15:46:27
:huh: Me ha surgido una duda, yo se que con el pic podemos muestrear la señal y enviarlo a MATLAB o algun otro software para determinar la funcion de transferencia de la planta. Pero:

  • ¿Es posible que sea el mismo PIC que determine la funcion de transferencia de la planta?
  • Y una vez hecho esto, ¿Es posible que obtenga los parametros PID para esa planta o algun otro tipo de compensador?


Hola Bigluis. Aparentemente la aplicación que MLO nos mostró en la última entrega hace eso. El menú Termómetro lo hace.

Citar
El modo TERMOMETRO es para la toma de datos cuando ingresemos el escalón de temperatura. Se puede controlar en porcentaje la potencia de las resistencias eléctricas. Normalmente el escalón corresponde a un 10% o 20% del valor total de la potencia. En este modo de trabajo también se visualiza el tiempo transcurrido. (Lastimosamente en la simulación los números grandes no salen como deben salir Sad )

Sería genial que el PIC hiciera todo de forma autónoma.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MGLSOFT en 28 de Abril de 2010, 16:16:17
Ehhh Vivo!!
Eso se llama AutoTunning !!! :D :D :D :D :D
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 28 de Abril de 2010, 19:18:13
Ehhh Vivo!!
Eso se llama AutoTunning !!! :D :D :D :D :D

 :lol: yo se que se llama autotunning.

Lo que me interesa es hacer uno, y me gustaría que el foro ayudara.

 :idea: Primeramente deberíamos hacer un programa para el pic que obtenga la funcion de transferencia de la planta y luego otro que busque el compensador necesario para esa planta.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: AKENAFAB en 29 de Abril de 2010, 01:00:44
Me estoy poniendo al corriente del curso!!

Excelente pana MLO !!

Saludos!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: capo en 30 de Abril de 2010, 15:54:36
Les cuento que en mi trabajo  para la sintonia  ocupamos solo proporcional y derivativo  para el control de temperatura
puesto k este es lento  ,cuando es un control rapido como control de posicion o velocidad sumamos la integrativa..
Otro datos k les cuento es el de trabajar con tres controles pid dependiendo si es muy critico el proceso (hacerlos por software)
Les comento que programando un plc para una caldera  tuve que programar tres pid para el control de un solo lazo   ya que a distintas
temperaturas o presiones  las constantes no sirve para todos los rangos (da muy buenos resultados)

eso  y saludos desde chile

mil años que no posteaba  por aca
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: capo en 30 de Abril de 2010, 16:13:35
Este es el pid que estoy implementando en mi lab


DValue VAR WORD                     
  SetPoint VAR WORD                 
  Direction var PortB.7               

  Setpoint = 512             

  INCLUDE "incPID.pbp"                 'Include the PID routine.

   ,asignar valores
    pid_Kp = $0700                     'Set Kp to 7.0
    pid_Ki = $0080                     'Set Ki to 0.5
    pid_Kd = $0225                     'Set Kd to 2.14
    pid_Ti = 8                         'Update I-term every 8th call to PID
    pid_I_Clamp = 100                  'Clamp I-term to max ±100
    pid_Out_Clamp = 511                'Clamp the final output to ±511
     
  Start:
    Gosub GetAD                        'Get position from AD - NOT SHOWN HERE.
                                     
    pid_Error = Setpoint - ADValue     'Calculate the error
    Gosub PID                          'Result returned in pid_Drive
    Direction = pid_Out.15             'Set direction pin accordning to sign
    pid_Out = ABS pid_Out              'Convert from two's comp. to absolute
    HPWM 1, pid_Out, 10000             'Set PWM output
    Pause 10                           'Wait....
  Goto Start                           '...and do it again.


como ven esta re simple lo estoy simulando en proteus aplicado a otro proseco

aki la web
pid  pic basic (http://www.picbasic.co.uk/forum/showthread.php?t=5874)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 01 de Mayo de 2010, 13:50:37
Hola.

Ehhh Vivo!!
Eso se llama AutoTunning !!! :D :D :D :D :D

 :lol: yo se que se llama autotunning.

Lo que me interesa es hacer uno, y me gustaría que el foro ayudara.

 :idea: Primeramente deberíamos hacer un programa para el pic que obtenga la funcion de transferencia de la planta y luego otro que busque el compensador necesario para esa planta.

Claro que se puede, lo ùnico serìa que el micro tenga el suficiente espacio para hacer todos los calculos no? El controlador que se va a construir aca no es autoT, pero tiene la opcion de controlar al actuador y ademas llevara la cuenta del tiempo para una toma de datos manual. Si se quiere conectar al PC, tambien se podria hacer, solo basta agregar la interfaz respectiva (RS232 o USB) y listo. Yo creo que con uno de los nuevos PICs como el PIC32 si que se podria, sale sobrado ...  :mrgreen: serìa muy interesante construirlo.

No hace mucho diseñe y construi un controlador para un horno que alcanzaba los 1200C, y no tenia problema con alcanzar cualquier punto del SetPoint ... creo que el truco esta en no asignarlo (al SetPoint) como escalon si no como rampa, ya que se asignaba una velocidad de subida en la temperatura.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 01 de Mayo de 2010, 13:57:22
En este momento me encuentro en un aprieto. Loq ue necesito es hacer un PID digital para controlar temperaura, he estado revisando el link y en verdad es de mucha ayuda lo que se plantea ahi, pero ahora me encuentro con otro problema se ha llegado a una ecuacion final la cual es la discretizacion de una ecuacion continua pormedio de la transformada z, cual es la forma de atacar y programar esta ecuacion en un microcontrolador.

Hola pipipi en este link (http://www.todopic.com.ar/foros/index.php?topic=30236.msg254746#msg254746) he posteado algo similar a lo que estas buscando talvez te interese.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 05 de Mayo de 2010, 19:34:29
MLO, he estado estudiando sobre el PID y ya entendí hasta la parte de la determinación de los valores K.

Se supone que uno introduce una entrada escalón de bajo valor al sistema y se muestrean los cambios en la variable de salida hasta que se llegue a un estado estacionario. Con esos valores se tabula una gráfica, se mide el tiempo L y se calcula la pendiente M/T.

De acuerdo a lo último ya se puede despejar el conjunto de valores K.

Dudas a partir de aquí...

- Cuando hablas sobre "restricciones de tiempos" en tu apunte, ¿a qué te refieres con tiempo muerto y constante de tiempo del sistema?

- El valor de la entrada escalón debe ser bajo, ¿pero qué tan bajo? ¿Un 10% a 20% sería correcto?

- ¿Esta sintonización sirve para cualquier valor deseado a la salida (valor de consigna)? Por ejemplo, si deseo que mi sistema mantenga una Temperatura de 50°C, un día después cambio de parecer y quiero que sea de 65°C, ¿puedo usar la misma sintonización inicial o debo sintonizar de nuevo? Creo que la sintonización sólo se debe actualizar si el sistema cambia, no cuando el valor de consigna cambia.

Gracias  :mrgreen:
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 06 de Mayo de 2010, 16:36:24
Hola.

El tiempo muerto es el tiempo que transcurre desde que inyectas el escalón al sistema hasta que el sistema reacciona, en este caso con un cambio de temperatura.
La constante de tiempo del sistema es el tiempo relacionado con la reacción del sistema.
Normalmente la amplitud del escalón es del orden del 10% al 20% de la amplitud total.
Se supone que la sintonización sirve para el rango de trabajo operativo que se ha previsto, eso depende de que tanta potencia calórica puedan generar las resistencias eléctricas (para el caso del horno)

Saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 06 de Mayo de 2010, 16:51:58
Entonces de acuerdo a esta gráfica...

http://img79.imageshack.us/img79/7161/ziegrle.png
(http://img79.imageshack.us/img79/7161/ziegrle.png)

¿L es el tiempo muerto y T es la constante de tiempo del sistema?

Si lo anterior es cierto, entonces Ziegler-Nichols es útil cuando

0.1 < L/T <1.0
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 06 de Mayo de 2010, 19:14:57
Hola mig.

En ese caso no hay tiempo muerto (eso es muy pero muy raro en un caso real). T es el tiempo con el que se calcula la máxima pendiente (razón de cambio) del sistema.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: gera en 09 de Mayo de 2010, 15:00:24
Hola!!
Muy interesante el post MLO!! Lo estoy siguiendo bien de cerca.
Tengo una pequeña duda (o mas bien sugerencia) sobre el tema de la media movil. Por que guardas los valores obtenidos del ADC en un arreglo?? No es mas facil usar un acumulador? Ademas utilizamos menos memoria.

Quedaria algo asi:
Código: C
  1. int16 FiltroADC(void)//................................................................................................Filtro ADC
  2. {
  3.         int8 i=0;
  4.         int16 Sumatoria=0;
  5.         float Resultado;
  6.  
  7.         set_adc_channel(0);
  8.         for(i=0;i<NumeroMuestras;i++)
  9.         {
  10.                 delay_us(50);
  11.                 Sumatoria += read_adc();
  12.         }
  13.  
  14.         Resultado = Sumatoria/NumeroMuestras*0.0061428;
  15.         return((int16)(Resultado*100/0.41322));//Operaciones para pasar el valor digital a temperatura usando Termocupla J
  16. }

Otra cosita q no entiendo bien son las operaciones q haces al final. Por q multiplicas el resultado por 0.0061428? Y la ultima operacion supnogo q es para pasar del valor binario a ºC, no?
Graciasss!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 09 de Mayo de 2010, 20:14:32
Hombre, Gera, pues ya es la costumbre de gastar memoria en vano no?  :D  (el acumulador esta justamente despues  :D ) Excelente tu aporte, muchas gracias.

Respecto al valor 0.0061428, es por corrección soft para que el valor se acerque mas al real medido por mi voltimetro, aunque debería ser 0.004828125, el resto de operaciones es justamente para eso: para pasar el valor digital a °C (tal como dice en el comentario  ;-) )

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: gera en 09 de Mayo de 2010, 22:51:47
Ahh, muy practica esa solucion. La verdad q el ADC de los pics deja mucho q desear..
Gracias por la explicacion MLO, sigo atento al tema! :)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 16 de Mayo de 2010, 12:42:42
Hola MLO

Unas dudas...

- Cuando el sistema es recién encendido, ¿hay que igualar a cero las variables PID.iT0 y PID.eT0?

- Sobre esta parte de tu tema:

Citar
Hay restricciones para el uso de estas ecuaciones en relación a la razón existente entre el tiempo muerto y la constante de tiempo del sistema. Si el valor de la razón entre estos dos valores está fuera de un rango de 0.10 y 1.0, no se debe usar éste método y es mejor pensar en otro.

No me quedó muy claro en la última vez que te pregunté. Viendo estos valores...

Código: [Seleccionar]
//Los valores de a, b y c, se deben calcular segun el sistema
const float a = 21.0494;
const float b = 0.327;
const float c = 338.69;

¿Cómo supiste que Ziegler-Nichols podía usarse? ¿Cuánto vale el rango?
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 16 de Mayo de 2010, 13:34:15
Hola mig.

El valor que debe mantenerse en el rango de 0.10 y 1.0 es la razón entre el tiempo muerto del sistema y la constante de tiempo del sistema.

Luego se calcula los valores de sintonización; esos valores son de un sistema anterior. Hay que calcular las mismas para nuestro sistema en particular. Para ello, se saca la curva con los datos obtenidos (elección Termometro).  Si la curva sigue la forma de crecimiento exponencial (o decremento) significa que se acerca a un sistema de primer orden y por ende, se puede aplicar Ziegler-Nichols.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 16 de Mayo de 2010, 17:58:09
Disculpa MLO pero sigo sin atrapar la idea.  :oops:

De acuerdo con tu gráfica...

http://img79.imageshack.us/img79/7161/ziegrle.png
(http://img79.imageshack.us/img79/7161/ziegrle.png)

... ¿cuál sería el tiempo muerto y la constante de tiempo?
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 16 de Mayo de 2010, 20:10:22
Tranquilo mig, es que no se expresarme muy bien a veces  :lol:

En esa gráfica no hay tiempo muerto, porque mira que la curva de reacción del sistema (curva de abajo) comienza sincronizadamente con la función de entrada escalón. Eso sería lo ideal, pero no siempre es así.

La constante de tiempo, es el valor de tiempo en el cual la señal de respuesta del sistema (curva de abajo) alcanza el 63,2% del valor final (M).

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 16 de Mayo de 2010, 23:29:10
OK, ya quedó claro el tiempo muerto.

Sobre la constante de tiempo, ¿es esto correcto?

http://img94.imageshack.us/img94/7161/ziegrle.png
(http://img94.imageshack.us/img94/7161/ziegrle.png)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 17 de Mayo de 2010, 00:00:19
Exactamente!!!!  :mrgreen:
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 17 de Mayo de 2010, 13:39:19
¡¡Al fin!! Gracias MLO  :D
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 17 de Mayo de 2010, 15:27:43
¡¡Al fin!! Gracias MLO  :D
:D :D :D :D

5.0  ;-)
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: migsantiago en 17 de Mayo de 2010, 17:22:05
¡¡¡5.0!!!

¡¿Estoy reprobado?!  :8}

 :D
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 17 de Mayo de 2010, 18:58:33
 :D :D :D :D :D

Acá las calificaciones son sobre 5.0!!! pero haz el cambio, multiplicando por una ganancia Kp!!!!!!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 19 de Mayo de 2010, 15:30:55
Hola MLO_:

Estoy realizando un PID de temperatura el cual hasta este momento solo lo tenía en simulación con proteus con la herramiente de OVEN. Hoy me di a la tarea de comenzar en la practica, mi sistema no es nada complejo solo consta de una bombilla dentro de un mueble completamente cellado para evitar fugas de temperatura. En la simulacion se pueden modificar las propiedades del Horno de OVEN para que la simulacion sea corta, es decir, para no llevarnos mucho tiempo en la adquision de los datos con el metodo de Ziegler-Nichols, en la practica esto es mas complicado ya que durante el analisis transitorio de mi sistema con una entrada a escalon con el 20% de la potencia nominal tarda hasta 35min. para alcanzar tan solo la temperatura que seria mi set_point la pregunta es hasta que punto se debe dejar llegar la temperatura durante el metodo de Ziegler-Nichols?.

He pensado en realizar un PID autozintonizable pero creo que necesito aclarar algunas dudas antes de eso. Tener un simulador es una gran herramienta pero en la practica algunas cosas cambian. Gracias
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 19 de Mayo de 2010, 15:38:54
Hola.

El horno OVEN del proteus se controla mediante PWM, en la realidad, puedes hacerlo también con control de fase, de hecho, el código que propongo es justamente para hacerlo de esa manera.

Se debe tener al menos 5
$ \tau
para garantizar que el valor de la variable es mayor al 90%, así que toca esperar.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 19 de Mayo de 2010, 17:06:07
hola MLO_:

Despues de repasar lo que expones en la teoría del PID creo que he entendido. Segun lo que alcanso a comprender  5t es el momento en el que la temperatura en mi sistema se estabiliza, es decir el momento en que mi actuador en mi casa labombilla yano puede proporcionar mas temperatura, estoy en lo cierto?

Bueno ahora me surge una dudilla mas, se sabe que el manejar ADC de un PIC es algo complicado en cuanto al ruido, he visto que tu ocupas un filtro Moving Average o de media móvil. Que tan fiable puede ser la temperatura desplegada en tu lcd 2x16, es decir, si introduces un termometro calibrado que tan confiable es la lectura que da tu sistema en cuanto al equipo calibrado??. Espero no estarme saliendo del tema pero se me hace interesante preguntar. Gracias


Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 19 de Mayo de 2010, 19:08:08
Hola.

No te sales para nada del tema  ;-) , de hecho una de las cosas mas importantes es la calibración del sensor de temperatura. Eso es un proceso a parte del controlador.

La ventaja de estar usando termocupla J (en mi caso) es que ya vienen unas tablas y además uso el AD594 (http://www.analog.com/static/imported-files/data_sheets/ad594_595.pdf). Así que en este caso estoy de confiado  :), claro que también no tengo un termómetro de referencia bueno.

Si tienes un patrón de temperatura, debes calibrar tu sensor y sacar la curva de correlación entre medidas y listo. Si las medidas no te dan, puedes linealizar por tramos y de esa manera ajustar la medida de tu sensor con la de tu patrón de medida.

Yo usé una resolución de 10bits para el ADC y use también el filtro M.A. de 100 muestras y el valor se mantiene estable.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Cryn en 19 de Mayo de 2010, 21:05:13
Que buen tema MLO__ seguiré atento para aprender eso de los PID, lo vi en teoría, pero en práctica es otra cosa...

saludos.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 11 de Junio de 2010, 13:48:04
hOLA MLO_:

Espero aun estes revisando este tema estoy realizando un PID de temperatura y tengo pensado usar el metodo de Z-N pero por lo que he estado investigando se debe hacer con el 20% de la potencia nominal, pero tengo algunas dudas. Tu lo haces por medio de fase con un TRIAC pero no me queda claro como lo manejas, si me podrias echar una mano con una explicacion  de esto te lo agradeceria demasiado
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 11 de Junio de 2010, 15:33:21
Hola.

Claro, no hay ningún problema.

En el código que postee aquí (http://www.todopic.com.ar/foros/index.php?topic=30199.msg255394#msg255394) controlo el tiempo de disparo del TRIAC. Como ves uso un timer cuya base de tiempo es de 52uS. Como el tengo un tiempo determinado para disparar el TRIAC (la mitad del periodo = 8mS aprox.) puedo calcular cuantos pasos puedo dar de 52uS en 8mS.

Calculando los límites superior e inferior del disparo puedo definir el rango total de disparo. De esta manera puedo relacionar la escala de 0% - 100% con la escala de disparo del TRIAC.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 11 de Junio de 2010, 18:29:43
Hola MLO_:

Gracias por contestar tan rapidamente  :lol:. Lo checo y cualquier cosa te molesta vale. Gracias  :-/
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 13 de Junio de 2010, 18:19:15
Hola MLO_:

Espero te encuentres bien y perdones mi ignorancia pero revisando tu proyecto y comparandolo con el de otros compañeros me acaban de surgir algunas dudas, he estado revisando sobre la sintonizacion que se realiza para obtener los valores del controlador el mas usado es el de Z-N en el cual se debe optener la respuesta del sistema a una entrada a escalon unitario en el cual tu dices que debe ser con el 10% o el 20% de la potencia nominal, en otros trabajillos que he estado revisando, durante la sintonizacion ponen al actuador al 100% de su capacidad y en base a esto dterminan los parametros del PID es esto correcto??. Nuevamente perdon por comparar tu trabajo con el de otros compañeros es solo que me gustaria entender el por que de las cosas.

La otra duda que tengo es, si por ejemplo yo voy a trabajar con unas resistencias que consumen 8A con 127 VAC estariamos hablando de que dichas resistencias consumen una potencia de 1000 W aproximadamente. Bueno ahora lo que no entiendo o mas bien no estoy seguro como manejar, es el 20% de la potencia que debo implementar en el proceso de sintonizacion, segun yo tendria que alimentar mis resistencias con 25 VAC lo que es correspondiente al 20% de 127VAC y si estos 25VAC los multiplico por los 8A me da 200W lo que corresponde al 20% de 1000W es esto correcto?????????? :P.  Espero tu respuesta. Gracias :-/
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 13 de Junio de 2010, 21:03:37
Hola.

Lo que interesa del sistema en lazo abierto es la respuesta dinámica del mismo, se supone que la curva de respuesta del sistema va a ser la misma ya sea al 100% o al 10% de señal de entrada; como los sistemas térmicos son lentos, vas a gastar mucha mas energía cuando usas el escalón al 100% que al 10% o 20%. Lógicamente, la temperatura a la que se estabiliza el sistema no será la misma en ambos casos.

Con el control de fase puedes tener un rango de selección de 0% a 100% con solo presionar los botones, para esto, relaciono el rango de pasos del timer con el semi-periodo de la señal senoidal. Otra opción es aplicar la fórmula de valor eficaz.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 29 de Junio de 2010, 19:12:41
Hola MLO:_

Sigo realizando mi controlador PID y ya encontre los parametros proporcional integral y derivativo, pero ahora me surge una duda. Tengo que trabajar con un tiempo de ciclo de 1ms  el cual va a trabajar con PWM, ya tengo lista toda la pogramacion del controlador ya solo falta adaptar la  etapa de potencia pero no se si el optoacoplador y el TRIAC podran trabajar a esa frecuencia que necesito, te pregunto por que tu tienes mucha experiencia en cuanto a esto, no se si los valores que encontre son prudentes para manejarlos con un Triac y un Optoacoplador, espero tu respuesta.Gracias
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: scientist en 30 de Junio de 2010, 00:31:51
Recien tengo tiempo de leer algunos hilos, MLO excelente aporte, me vino como anillo al dedo, recien ahora que quiero hacer un control PID con un micro LPC1114 , una lcd de 16x2 y un sensor max6634, toda la parte de programacion de estos bichos ya la tengo, lo que me hacia falta era la teoria del PID, MUCHAS GRACIAS!!!!!  :-/ :-/ :-/ saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 30 de Junio de 2010, 13:56:13
Recien tengo tiempo de leer algunos hilos, MLO excelente aporte, me vino como anillo al dedo, recien ahora que quiero hacer un control PID con un micro LPC1114 , una lcd de 16x2 y un sensor max6634, toda la parte de programacion de estos bichos ya la tengo, lo que me hacia falta era la teoria del PID, MUCHAS GRACIAS!!!!!  :-/ :-/ :-/ saludos

Que bueno que te sirviera amigo!!!!!


Sigo realizando mi controlador PID y ya encontre los parametros proporcional integral y derivativo, pero ahora me surge una duda. Tengo que trabajar con un tiempo de ciclo de 1ms  el cual va a trabajar con PWM, ya tengo lista toda la pogramacion del controlador ya solo falta adaptar la  etapa de potencia pero no se si el optoacoplador y el TRIAC podran trabajar a esa frecuencia que necesito, te pregunto por que tu tienes mucha experiencia en cuanto a esto, no se si los valores que encontre son prudentes para manejarlos con un Triac y un Optoacoplador, espero tu respuesta.Gracias

Si vas a hacer el control por PWM el periodo minimo del Duty Cycle debe ser de 16mS, para que alcance al menos un periodo completo de la señal de alterna; en este caso, el optoacoplador debe tener el detector de cruce por cero. Si lo haces por control de fase, debes tener en cuenta que el tiempo de retardo para el disparo no debe exceder los 8mS que es el tiempo de medio periodo de la señal senoidal y el optoacoplador no debe tener el detector de cruce por cero, ya que eso debe hacerlo el PIC.

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: pipipi en 30 de Junio de 2010, 20:05:47
Hola MLO:

Gracias por contestar, entiendo que necesito generar un tiemplo de ciclo de por lo menos 16ms por que segun la formula F=1/T y sustituyendola quedaria  F=1/0.016 seria igual a 63Hz lo mas cercano a 60Hz que manejamos en Mexico, pero ahora segun la formula para determinar el numero que debo cargar en PR2=[(4MHz)/(60Hz)*4*4]-1 segun mis calculos y eso si no me fallan tendria que cargar un 4165 en PR2 y segun yo eso es imposible ya que como PR2 es de 8 bits solo podria cargar 255 como maximo. Como podria manejar esto. Espero me puedas ayudar y perdona mi ignorancia gracias.  :-/ :-/ :-/ :-/
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 30 de Junio de 2010, 20:42:37
Hola MLO:_

Sigo realizando mi controlador PID y ya encontre los parametros proporcional integral y derivativo, pero ahora me surge una duda. Tengo que trabajar con un tiempo de ciclo de 1ms  el cual va a trabajar con PWM, ya tengo lista toda la pogramacion del controlador ya solo falta adaptar la  etapa de potencia pero no se si el optoacoplador y el TRIAC podran trabajar a esa frecuencia que necesito, te pregunto por que tu tienes mucha experiencia en cuanto a esto, no se si los valores que encontre son prudentes para manejarlos con un Triac y un Optoacoplador, espero tu respuesta.Gracias

Si lo que quieres es controlar el angulo de disparo del triac para disminuir así la potencia suministrada a la carga no es PWM (Pulse Width Modulation) lo que necesitas, sino PPM (Pulse Position Modulation).

Es decir solo necesitas enviar un pequeño pulso en el momento en que dispares el TRIAC. No se si se pueda usar el módulo CCP para realizar PPM, pero estoy seguro que lo puedes hacer con un TIMER y un comparador analógico.

1. Detectas el cruce por cero del Voltaje
2. Esperas el tiempo necesario (valor que debes cargar en el Timer) para activar el TRIAC
3. Repites la operacion

Supongo que puedes utilizar el modulo CCP en modo comparador para realizar lo mismo pero no estoy seguro.
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 01 de Julio de 2010, 12:33:13
Gracias por contestar, entiendo que necesito generar un tiemplo de ciclo de por lo menos 16ms por que segun la formula F=1/T y sustituyendola quedaria  F=1/0.016 seria igual a 63Hz lo mas cercano a 60Hz que manejamos en Mexico, pero ahora segun la formula para determinar el numero que debo cargar en PR2=[(4MHz)/(60Hz)*4*4]-1 segun mis calculos y eso si no me fallan tendria que cargar un 4165 en PR2 y segun yo eso es imposible ya que como PR2 es de 8 bits solo podria cargar 255 como maximo. Como podria manejar esto. Espero me puedas ayudar y perdona mi ignorancia gracias.  :-/ :-/ :-/ :-/

Hola.

Vas a usar PWM cierto? .... Si es asi, cual va a ser el periodo del PWM? ... seguido a eso ... no creo que se pueda usar el PWM hard del PIC, si no que te toca hacer uno por software. Para el control de cargas siempre he usado el control de fase ... me parece mas sencillo ... pero si involucra mas hard por el detector de cruce por cero, al menos para mi, ya que yo si pongo el transformador ... aun no me animo a mandar la resistencia de 1M directamente  :2]

Saludos
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: bigluis en 01 de Julio de 2010, 16:10:11
El detector de cruce por cero lo puedes hacer con los comparadores analogicos internos del PIC, simplemente le conectas una resistencia mayor a 1M para disminuir la corriente y listo.

Al momento de hacer pruebas es recomendable que pongas el transformador ya que este no solo protegerá al PIC sino que te protejerá a ti. Razón por la cual las fuentes sin transformador están hechas para dispositivos "No usuario".

Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: AKENAFAB en 27 de Octubre de 2010, 17:34:14
Me gustaría adquirir el libro

Ingenieria De Control Moderna
Autor:    Ogata
Editorial:    Pearson (2003, 4ª edición)


como lo ven ??? este es el que lleva ejercicios de Matlab???

No estoy seguro pero hay un libro de control antes que este , que es como una introducción y mas ejercicios para agarrar de lleno matlab.(no se si es el de sistemas control algo asi)

Saben cual es y pues si me  recomiendan estos libros???

Saludos!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: Tisco en 27 de Octubre de 2010, 18:35:37
Me gustaría adquirir el libro

Ingenieria De Control Moderna
Autor:    Ogata
Editorial:    Pearson (2003, 4ª edición)


como lo ven ??? este es el que lleva ejercicios de Matlab???

No estoy seguro pero hay un libro de control antes que este , que es como una introducción y mas ejercicios para agarrar de lleno matlab.(no se si es el de sistemas control algo asi)

Saben cual es y pues si me  recomiendan estos libros???

Saludos!!

El libro esta muy bien, y si, tiene los ejercicios resueltos con Matlab.
Otro que no deberia faltar es "Sistemas De Control en Tiempo Discreto - Katsuhiko Ogata".
Ambos son muy utiles pero hay que mirarlos con calma para entender bien todo.
Un saludo!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: AKENAFAB en 27 de Octubre de 2010, 18:44:35
Gracias!!!

Saludos!!
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: ceci_lamorocha en 27 de Diciembre de 2014, 10:15:14
hola!
tengo una duda en como hallar los parametros Kp, Ti y Td por  Ziegler - Nichols
en el horno electrico porque si el recinto del horno es cerrado ( osea no se
escapa el calor) ante una entrada escalon la temperatura del recinto siempre
va a estar en aumento y nunca va a describir la curva S que propone el
metodo

gracias ! Laura
Título: Re: Controlador PID - Nivel Basico (Comentarios)
Publicado por: KILLERJC en 27 de Diciembre de 2014, 11:30:28
Va a estar en aumento hasta que llegue a la temperatura deseada, a medida que llegue a este sera menor la potencia transferida a la resistencia que caliente el horno, una ves que llegue a ese punto no deberia haber salida, ademas todo horno pierde calor, asi que jamas va a llegar el punto en que te pases de la temperatura final y no vuelva al valor final deseado. Y para el calculo de los valores de Ziegler-Nichols

http://www.atp.ruhr-uni-bochum.de/rt1/syscontrol/node64.html

El metodo propone una aproximacion a lo deseado que es la curva en forma de S.

Título: Re:Controlador PID - Nivel Basico (Comentarios)
Publicado por: Abner_emanuel en 21 de Marzo de 2016, 12:50:36
Seque este tema ya tiene su tiempo y espero alguien responda a mi pregunta que tengo muy similar a la que pregunto pipipi hace ya unos años.

Citar
Hola MLO_:

Espero te encuentres bien y perdones mi ignorancia pero revisando tu proyecto y comparandolo con el de otros compañeros me acaban de surgir algunas dudas, he estado revisando sobre la sintonizacion que se realiza para obtener los valores del controlador el mas usado es el de Z-N en el cual se debe optener la respuesta del sistema a una entrada a escalon unitario en el cual tu dices que debe ser con el 10% o el 20% de la potencia nominal, en otros trabajillos que he estado revisando, durante la sintonizacion ponen al actuador al 100% de su capacidad y en base a esto dterminan los parametros del PID es esto correcto??. Nuevamente perdon por comparar tu trabajo con el de otros compañeros es solo que me gustaria entender el por que de las cosas.

La otra duda que tengo es, si por ejemplo yo voy a trabajar con unas resistencias que consumen 8A con 127 VAC estariamos hablando de que dichas resistencias consumen una potencia de 1000 W aproximadamente. Bueno ahora lo que no entiendo o mas bien no estoy seguro como manejar, es el 20% de la potencia que debo implementar en el proceso de sintonizacion, segun yo tendria que alimentar mis resistencias con 25 VAC lo que es correspondiente al 20% de 127VAC y si estos 25VAC los multiplico por los 8A me da 200W lo que corresponde al 20% de 1000W es esto correcto?????????? :P.  Espero tu respuesta. Gracias :-/


¿Tengo la misma pregunta. Para el PID por control de fase (Fase=127 volts), es valido aplicarle un escalón mas o menos de 25 volts seria el 20% del voltaje de fase. y con esto empezar a tomar muestras del comportamiento del sistema para despues poder sintonizarlo?.

Título: Re:Controlador PID - Nivel Basico (Comentarios)
Publicado por: MLO__ en 23 de Marzo de 2016, 11:37:49
Saludos

Es correcto, debes aplicar esa tension en la resistencia y comenzar a medir la temperatura cada cierto tiempo; con los puntos obtenidos haces la curva y con ella ya te queda facil realizar la sintonizacion.

Título: Re:Controlador PID - Nivel Basico (Comentarios)
Publicado por: Abner_emanuel en 23 de Marzo de 2016, 18:28:32
Gracias MLO.

Muy buen tutorial que desarrollaste. Y gracias por compartir. Tendrás algún vídeo donde pueda verse funcionando algún sistema pid por control de fase. Sería muy motivante verlo.

Pretendo hacer uno con el LM35 y el actuador será un foco a 127 vols de a.c. Tu tuto esta excelente, felicidades.