Autor Tema: autosintonización con PIC 16f877  (Leído 3327 veces)

0 Usuarios y 3 Visitantes están viendo este tema.

Desconectado pipipi

  • PIC12
  • **
  • Mensajes: 91
autosintonización con PIC 16f877
« en: 18 de Mayo de 2010, 14:25:25 »
Hola amigos:

Nuevamente estoy solicitando de sus conocimientos me estoy introduciendo en el mundo maravillosos de los PID estoy realizando un PID de temperatura y todo va de maravilla y funciona bastante bien. Pero ahora me ha surgido otra inquietud. Lo que quiero hacer ahora es poder lograr que el PIC pueda sintonizar por si solo el sistema. Si alguien tiene algo de esto o lo ha visto alguna vez les agradeceria mucho su aporte. gracias :-/

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: autosintonización con PIC 16f877
« Respuesta #1 en: 18 de Mayo de 2010, 14:32:49 »
Hola.

Pues para eso, el micro debe tener programada la parte de adquisición de datos para cuando el sistema esté en lazo abierto, luego, debe aplicar el método de sintonización (si es de primer orden, se pude hacer por ziegler-nichols) y según el tiempo de muestreo fijado, calcular las nuevas constantes.

No se si un 16F tenga memoria suficiente .... yo me iría por uno 18F.

Saludos
El papel lo aguanta todo

Desconectado pipipi

  • PIC12
  • **
  • Mensajes: 91
Re: autosintonización con PIC 16f877
« Respuesta #2 en: 18 de Mayo de 2010, 20:05:41 »
Hola MLO:

He estado investigando como se podria realizar una auto sintonización con un PIC pero la verdad no he encontrado nada, si entiendo como se lleva a cabo el metodo de ziegler-nichols y lo he realizado empiricamente poniendo a trabajar mi sistema en lazo abierto pero no entiendo como lo podria programar en el PIC. Si me puedes ayudar a entenderlo otienes algun ejemplillo en verdad me ayudrias bastante. Gracias
 :-/

Desconectado pablomanieri

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 639
Re: autosintonización con PIC 16f877
« Respuesta #3 en: 18 de Mayo de 2010, 20:55:57 »
Creo que el método de ziegler nichols sirve para calcular un controlador, pero hacerlo por la curva de respuesta se torna complicado para implementarlo en un pic, porque como dice MLO, hay que tomar muchas muestras.
La otra manera sería llevar la planta hasta el límite de estabilidad la planta con un controlador Proporcional y en base a la frecuencia de oscilación y la amplitud de la oscilación (también esto lo propone ziegler-nichols, creo), hay unas tablitas con los valores de las constantes del PID en función de estos datos. La desventaja es que hacer operar el sistema en forma inestable no es nada seguro, hay algunos que no tienen problemas pero hay otros en los que es riegoso, por ejemplo una caldera, o algún proceso químico
Hay otro método que se llama método del relé. Lo que hace es colocar un controlador proporcional con una ganancia muy alta, logrando el sistema oscile, pero la salida del actuador se satura en valores donde el proceso sea seguro para operar y alrededor de un punto de operación. Con esto y tomando la frecuencia de oscilación del sistema y la amplitud, mediante unas formulitas sencillas se obtienen los parámetros del PID. Esto es para el caso continuo, lo que habría que hacer es con ese controlador pasarlo a discreto y listo
mira aquí

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: autosintonización con PIC 16f877
« Respuesta #4 en: 18 de Mayo de 2010, 23:56:46 »
Hola.

El método de la oscilación sostenible no es muy seguro para hacerlo. Creo que la mejor opción es usar la respuesta al escalón, asignando un 10% del valor del mismo y tomando muestras. Si sabemos cual es el valor del escalón, podremos calcular el valor de
$ \tau
y también podremos hallar el valor del tiempo muerto, ya que se puede calcular el tiempo desde que se activa el actuador hasta el que el sensor responde.

Lo que si se debe tener en cuenta, es que si el sistema es lento los datos que se van a obtener son muchos, pero con una memoria SD se podrían guardar muchos no?  ;-) Luego, habría que hacer una regresión exponencial y verificar la razón entre el tiempo muerto y el 
$ \tau
del sistema para verificar si se puede usar  Z-N. Luego, aplicar esto y por último sería discretizarlo .... son muchos cálculos, por lo que yo optaría por un PIC con muy buena memoria.

Saludos
El papel lo aguanta todo

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: autosintonización con PIC 16f877
« Respuesta #5 en: 19 de Mayo de 2010, 11:38:43 »
Y pensando en "voz" alta, no se podría aplicar una estrada escalon al sistema proporcionado por el microcontrolador, muestrear la salida y con estos vectores calcular el h[n] del sistema, con eso analiticamente (implementado en código embebido) calcular los coeficientes optimos para el PID. Es solo una idea, seguramente necesecita una buena potencia de calculo  :mrgreen: pero un proyecto muy entretendio  :D


Saludos!
No contesto mensajes privados, las consultas en el foro

Desconectado MLO__

  • Colaborador
  • DsPIC33
  • *****
  • Mensajes: 4581
Re: autosintonización con PIC 16f877
« Respuesta #6 en: 19 de Mayo de 2010, 12:01:12 »
 :D
Pues para eso, el micro debe tener programada la parte de adquisición de datos para cuando el sistema esté en lazo abierto, luego, debe aplicar el método de sintonización (si es de primer orden, se pude hacer por ziegler-nichols) y según el tiempo de muestreo fijado, calcular las nuevas constantes.


... Creo que la mejor opción es usar la respuesta al escalón, asignando un 10% del valor del mismo y tomando muestras. Si sabemos cual es el valor del escalón, podremos calcular el valor de
$ \tau
y también podremos hallar el valor del tiempo muerto, ya que se puede calcular el tiempo desde que se activa el actuador hasta el que el sensor responde.

Lo que si se debe tener en cuenta, es que si el sistema es lento los datos que se van a obtener son muchos, pero con una memoria SD se podrían guardar muchos no?  ;-) Luego, habría que hacer una regresión exponencial y verificar la razón entre el tiempo muerto y el 
$ \tau
del sistema para verificar si se puede usar  Z-N. Luego, aplicar esto y por último sería discretizarlo .... son muchos cálculos, por lo que yo optaría por un PIC con muy buena memoria.

Seeee!!!  :-/  :mrgreen:
El papel lo aguanta todo

Desconectado Suky

  • Moderadores
  • DsPIC33
  • *****
  • Mensajes: 6758
Re: autosintonización con PIC 16f877
« Respuesta #7 en: 19 de Mayo de 2010, 12:04:58 »
 :D :D :D no queria leer màs que el titulo!  :D :D

Saludos!  ;-)
No contesto mensajes privados, las consultas en el foro

Desconectado pipipi

  • PIC12
  • **
  • Mensajes: 91
Re: autosintonización con PIC 16f877
« Respuesta #8 en: 19 de Mayo de 2010, 12:08:39 »
Hola amigos:

Muchisimas gracias por sus respuestas estoy investigando y realizando una que otra pruebilla para comprender a la perfección lo que se tiene que realizar en cuanto tenga algun avance bueno les platico que es lo que he realizado, por lo tanto me gustaria que siguieran posteando sus opiniones he ideas, son de gran ayuda. Gracias  :-/


 

anything