Autor Tema: control pid  (Leído 11189 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado calcius

  • PIC10
  • *
  • Mensajes: 45
control pid
« en: 30 de Agosto de 2005, 10:28:00 »
Tengo en mente implementar un control pid en un microcontrolador, alguien se apunta al proyecto? muchas gracias

Desconectado Artifox

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 455
    • Quadbot
RE: control pid
« Respuesta #1 en: 30 de Agosto de 2005, 11:18:00 »
Hola Calcius, veo que quieres implementar un control PID en un microcontrolador, primero que nada te tengo unas preguntitas, ¿que es lo que quieres controlar?, ¿que lenguaje de programacion piensas usar?, ¿tienes pensado algun microcontrolador en especial? loco

A mi parecer para poder implementar un PID en un PIC, minimo necesitarias un 18FXXX o un dsPic ( seria super interesante implementarlo en un dsPic pues estos tienen muchos recursos ) Yo aun estoy entrando poco a poco a manejar los dsPic"s, en el tema de control no tengo muchos problemas, es cuestion de repasar un poco...

A ver si hacemos ese control en grupo, seria muy interesante. Yo te puedo ayudar con el poco tiempo con el que dispongo....

Ya nos vemos un abrazo Rebotado
Video Quadbot
Saludos desde mi querido Perú.
Si realmente queremos que el mundo cambie debemos empezar por nosotros mismos... ;)

Desconectado calcius

  • PIC10
  • *
  • Mensajes: 45
RE: control pid
« Respuesta #2 en: 30 de Agosto de 2005, 11:51:00 »
perdona si mi pregunta de antes ha sido poco concisa, en principio el control que quiero hacer es algun tipo de pruba para implementarlo en el micro, por ejemplo podriamos controlar la velocidad de giro de un motor de continua o hacer un pequeño control de temperatura, en cuanto a micro podiamos usar un 18f2550 o si este se nos queda corto un 4550, crees que no se podría en un 876?

Desconectado piriots

  • Colaborador
  • PIC24F
  • *****
  • Mensajes: 609
RE: control pid
« Respuesta #3 en: 30 de Agosto de 2005, 11:56:00 »
Interesante el control PID, lastima que no se muy bien como funciona porque me iria de fabula para el proyecto que estoy haciendo. Yo he visto un algoritmo PID implementado en un pic 16f876.

Salu2

Desconectado Artifox

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 455
    • Quadbot
RE: control pid
« Respuesta #4 en: 30 de Agosto de 2005, 22:54:00 »
Hola nuevamente, creo que se podria empezar con un control de motor DC. Me parece mas logico hacerlo con el 18F2550 pues ya tiene implementada la multiplicacion a diferencia de la 16F876; pero eso no quiere decir que no se pueda hacer, no he investigado mucho en hacerlo, asi que seria cuestion de probar.

Un detalle seria que para hacer las multiplicaciones en un 16F876 seria por software lo que se traduce en un tiempo mas grande. Como sabras es necesario tener un tiempo de muestreo "constante" y si queremos que el control sea rapido necesitariamos una buena velocidad de procesamiento.

En el caso de control temperatura, lo podriamos hacer con el 16F876 y en el caso de control de velocidad me parece que seria mejor con el 18F2550.

Recuerda que para hacer el control PID vas a necesitar conocer el "sistema" o mejor dicho la funcion de transferencia del sistema, sea el motor o el espacio en el cual se va a controlar la temperatura.

Asumo que lo haras en C, pues este nos soporta los decimales. Yo aun no empiezo a aprender C asi que seria interesante aprenderlo con esta aplicacion.

Te dejo a ti la decision de cual es el sistema que quieres controlar, yo estare en contacto...

Un abrazo Rebotado
Video Quadbot
Saludos desde mi querido Perú.
Si realmente queremos que el mundo cambie debemos empezar por nosotros mismos... ;)

Desconectado calcius

  • PIC10
  • *
  • Mensajes: 45
RE: control pid
« Respuesta #5 en: 31 de Agosto de 2005, 04:22:00 »
en principio usaremos c, yo personalmente suelo usar el ccs, si necesitas algo de información manual en español o algun programa de ejemplo pedirmelo. en cuanto a lo que comentas de que pic usar creo que mejor el 2550 y podiamos empezar con el control de temperatura utilizando una señal 4-20mA para actuar sobre un rele de estado solido.

Como lenguaje de programación tambien se podría utilizar el c18 de microchip, yo empezé a usarlo para una placa de adquisición de datos usb pero a lo mejor no mucha gente lo utiliza por aqui.

Bueno haber si podemos ir haciendo las primeras pruebas, y no se si sería mejor dejar este tema aqui o moverlo a la sección de proyectos

Desconectado kuauhtemok

  • PIC16
  • ***
  • Mensajes: 116
RE: control pid
« Respuesta #6 en: 31 de Agosto de 2005, 12:59:00 »

Yo opino que lo primero es averiguar la funcion de transferencia del sistema a controlar....

podrias publicarlo ?
La felicidad no es mas q la ausencia momentanea del dolor

Desconectado Artifox

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 455
    • Quadbot
RE: control pid
« Respuesta #7 en: 31 de Agosto de 2005, 16:32:00 »
Ok, no hay problema en hacerlo en ccs, tengo la version 3.227 (aunque nunca lo he usado).

Me parece bien mudar el tema a la seccion de proyectos. A ver si uno de los modeladores nos hace el favor que mover todos los mensajes para alla... Flash

Debemos empezar por algun lado, asi que debemos empezar por definir exactamente que es lo que vamos a utilizar para poder setear nuestro PID.

A mi parecer el hardware que  tendra el PIC seria 3 potenciometros para las constantes del PID, un LCD para que nos muestre las constantes que ingresamos y ademas las estapas de entrada/salida al sistema. O tambien podemos ponerle un teclado en vez de los potenciometros... Se necesitara conectar a la PC?? pues podriamos hacerlo usando USB Fumador

Luego debemos definir el sistema a controlar ( temperatura ), no se que tendras en mente, un horno, un sistema de refrigreacion... loco yo tampoco tengo una idea consisa. Ademas de empezar a buscar la forma de sacar el modelo matematico del sistema, para llegar a obtener su funcion de transferencia.

Como te dije antes estoy algo oxidado con esto de control, asi que tendremos que avanzar de a pocos... Una consulta, manejas Matlab??? porque alli podemos trabajar algunas cosas.... Por cierto, yo ando corto de tiempo, asi que seguire todos tus avances ( en verdad quisiera poder investigar e ir dandote mas ayuda pero si hago una cosa mas, mi cerebro hace cortocircuito jeje )

Si puedes busca dentro de Microchip un PDF referido a como hacer un PID con un 18, esta en asembler si mal no recuerdo, lo revise hace mucho y la verdad no encuentro el archivo en mi maquina, estoy seguro que servira de mucho.

Bueno, nos mantenemos en contacto y a ver si los Moderadores nos hacen el favor de mudar nuestro tema....

Un abrazoRebotado
Video Quadbot
Saludos desde mi querido Perú.
Si realmente queremos que el mundo cambie debemos empezar por nosotros mismos... ;)

Desconectado calcius

  • PIC10
  • *
  • Mensajes: 45
RE: control pid
« Respuesta #8 en: 31 de Agosto de 2005, 16:46:00 »
bueno creo que vamos a empezar a ordenar un poco los conceptos, vayamos por partes:

-Como sistema de control de temperatura que mejor que una bombilla con un lm35 para simular unhorno y su correspondiente sensor de temperatura

-En cuanto a matlab lo he usado en la universidad pero si tenemos que usar fourier tendría que repasar un poco el tema

-para empezar creo que podriamos usar el prototipo del lcd y los potenciómetros,

-en cuanto a la función  de transferencia podríamos empezar por una de tipo general de temperatura(aunque nuestra bombilla oscilara mucho mas rapido que si fuera un horno) pero creo que para un primer diseño de pruebas nos podría valer perfectamente

-ese documento de microchip que comentas ya lo vi yo también hace tiempo y creo que lo tengo en el trabajo, le echare un ojo lo antes posible

-en cuanto a tiempo creo que ambos andamos escasos Rebotado yo ahora ando de examenes y por la mañana trabajo asi que me queda poco tiempo libre, pero creo que poco a poco iremos dandole caña a nuestro control je je je

Desconectado gauchosuizo

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 457
RE: control pid
« Respuesta #9 en: 01 de Septiembre de 2005, 00:38:00 »
hola

yo me anoto, tampoco dispongo de mucho tiempo, pero me intereza el tema.

Aloha
Saludos desde Suiza, Pablo.

Desconectado Nocturno

  • Administrador
  • DsPIC33
  • *******
  • Mensajes: 18310
    • MicroPIC
RE: control pid
« Respuesta #10 en: 01 de Septiembre de 2005, 02:52:00 »
Puesto que así lo pedíais, y porque además tiene toda la lógica, he mudado este interesante hilo al subforo de Proyectos.

Desconectado Artifox

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 455
    • Quadbot
RE: control pid
« Respuesta #11 en: 01 de Septiembre de 2005, 11:20:00 »
Gracias Nocturno Rebotado por mudar el hilo....
Video Quadbot
Saludos desde mi querido Perú.
Si realmente queremos que el mundo cambie debemos empezar por nosotros mismos... ;)

Desconectado atlasdelcarinakeel

  • Colaborador
  • PIC18
  • *****
  • Mensajes: 277
RE: control pid
« Respuesta #12 en: 04 de Septiembre de 2005, 12:21:00 »
Si tienes un problema y tiene solucion, para que te preocupas? y si no tiene solucion, para que te preocupas?

Desconectado calcius

  • PIC10
  • *
  • Mensajes: 45
RE: control pid
« Respuesta #13 en: 20 de Septiembre de 2005, 09:55:00 »
Hola a todos tras un largo y arduo periodo de examenes, vuelvo a la carga con la implementación del control pid  Rebotado

En primer lugar he montado un 18f2455 y un lcd para ayudarme en la depuración del proyecto. Empezaré por implementar un control proporcional y haber si puedo hacer algunas pruebas esta semana para saber que tal funciona y ya comento...


Desconectado Jimmy_pop

  • PIC12
  • **
  • Mensajes: 72
RE: control pid
« Respuesta #14 en: 20 de Septiembre de 2005, 13:36:00 »
hola,

implementar un pid digital es sumamente senzillo y el código puede ser fácil de mantener incluso escrito en assembly, yo creo que un 16f876 sirve de sobras (y lo se pq trabajé con él y usaba tiempos de 15ms y cosas parecidas que es un período muy muy pequeño para el control de velocidad de un motor de contínua, que tiene una respuesta lenta en relacion al tiempo que es capaz de dar el pic). Os animo a probar de hacerlo en asm.

lo que ya no es tan simple es diseñar bien el pid, os recomiendo el gnu-octave para hacer los cálculos porque el toolbox de control es francamente bueno.

saludos!