Autor Tema: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias  (Leído 3596 veces)

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

Desconectado aghor

  • PIC10
  • *
  • Mensajes: 19
Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« en: 07 de Junio de 2006, 12:57:46 »
Hola amigos, felicito a kienes llevaron a practica este foro que es una herramienta imprescindible. Bien, soy de chile,y este es un proyecto que tiene mi mente,(ojo...no yo, mi mente) que desea controlar el comportamiento de un sistema (celda de vapor) con una electrovavula on-off comandada y sensada por una termocupla. Bien, lo que difiere de otros proyectos con este es que aqui la pendiente no será constante o gradiente de temperatura va en relacion al tiempo transcurrido. Me explico con un ejemplo.
Tiempo      ºC
0-10m               Tºambiente - 28º(dependiendo del clima)
10-35m                 28º  - 48º
35-103m               48° - 51°C
103-113m             La celda se abre (vaja a Tº ambiente) celda de cierra y aumentar T a 51º
113-140m              51° - 55°C
140- 240m             55° - 57°C
240- 253m             57° - 48°C

Yo he estudiado el tema buscando una aproximacion con el control PID, ademas ayer analizaba la opción de implementarlo con logica difusa, pero ya me está dando la desesperacion y no me gustaria tener que hecerlo con plc. Si alguien hubiese hecho algo similar con microcontrolador o conosca como modelar un comportamiento asi me heche un guante.... :-/

Ojalá solo fuera establecer las condiciones dentro del algoritmo del pic, respecto del tiempo exacto de cada ciclo.

muchas gracias  :mrgreen:

Desconectado jfh900

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3595
Re: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« Respuesta #1 en: 07 de Junio de 2006, 18:36:43 »
En principio el proyecto es sencillo, pero no esta claro el objetivo a perseguir, se necesita saber cual es la variable independiente (el tiempo, la tensión de la termocupla) [por cierto en España lo llamamos termopares] y que deberiamos de tener como salida (temperatura según la tabla, tensión...), si nos aclaras este punto te podremos ayudar.

Un saludo.
* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús

Desconectado aghor

  • PIC10
  • *
  • Mensajes: 19
Re: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« Respuesta #2 en: 08 de Junio de 2006, 00:43:44 »
Bueno, agradezco vuestra atencion me llegué a emocionar  :?

 Siendo directo la variable independiente aqui es tiempo, y es la temperatura la que debo controlar para que se ajuste a un modelo predeterminado por teoria. Dicho en palabras menos enredadas:  :shock:

Erase una vez que una panaderia donde existía una curva (o receta) de temperatura versus tiempo para obtener un producto optimo y que versa asi, por ejemplo:

"...encienda y cierre el horno,durante los 10 primeros minutos lleve la temperatura "suavemente" de 10ºC a 25ºC, despues durante la hora siguiente solo aumente 10ºC,luego apague el horno por 5 minutos, encienda el horno y llevelo "rapidamente" a 35ºC, en la hora final aumente otros 10ºC, completada la hora necesita que llevar el horno a 28ºC en 10 minutos antes de apagar..."  es como una receta de cocina... o un algoritmo rigido que necesito "automatizar".

Lo que nos da un ciclo rigido en cuanto a tiempo de: 10+60+5+60+10[m] = 2,25horas.

Por una parte tengo para ello: un sensor de temperatura, una electrovalvula on-off que entrega vapor para calentar el horno y un controlador adecuado. Ideal seria usar un timer.

Creo que la enredé más aun... lo siento  :mrgreen:

Me avisan,  y prometo publicar la solucion y el proyecto completo cuando lo tenga.

Desconectado Chaly29

  • Moderador Global
  • DsPIC33
  • *****
  • Mensajes: 4315
Re: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« Respuesta #3 en: 08 de Junio de 2006, 03:40:59 »
Hola aghor, si bien la temperatura es variable por llo que interprete el tiempo (o los tiempos) son siempre los mismos, por lo que yo haria seria que el PIC controle la temperatura del horno en base al tiempo que a transcurrido desdes el inicion del proceso, entonces por medio del firmware del PIC tu le das las ordenes de que por ejemplo en los primeros 10min. haga esto, en los 60min. siguiente haga aquello, y de esa menra asta completar los 2H25M (ojo, 2H25M no es lo mismo que 2,25horas, 2,25horas = 2H15M)

Bueno, esta es mi opinion en base a lo que e interpretado por la lectura de tus post, de esta manera no tendrias que complicarte la vida con controles PID y logica difusa.

Un saludo.

Atte. CARLOS.

La teoría es cuando se sabe todo y nada funciona. La práctica es cuando todo funciona y nadie sabe por qué.

Desconectado jfh900

  • Moderadores
  • DsPIC30
  • *****
  • Mensajes: 3595
Re: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« Respuesta #4 en: 08 de Junio de 2006, 06:17:51 »
Aquí tienes una función escrita en "C" que te calcula los puntos de temperatura según la curva definida a intervalos lineales:

Código: CSS
  1. function Curva(int tiempo; float temperatura_a): int
  2. {
  3. // Coeficientes
  4.         float m,n;
  5.  
  6.         if ((tiempo < 10)&&(temperatura_a<28)
  7.                 {
  8.                 // Calculamos los coeficientes
  9.                 // Ecuaciones Lineales: y=m*x+n m=(y1-y2)/(x1-x2) n=y1-m*x1
  10.                 // Valores iniciales: y1=temperatura_a y2=28
  11.                 // x1=0 x2=10
  12.                 m=(28-temperatura_a)/(10-0);
  13.                 n=temperatura_a;
  14.                 }
  15.         if ((tiempo >= 10)&&(tiempo<=35)
  16.                 {
  17.                 m=0.0441176
  18.                 n=46.4558
  19.                 }
  20. // Resto de intervalos........
  21.  
  22.         return=Cell(m*tiempo+n);
  23. }

Falta de completar la función para el resto de intervalos, pero esto ya es sencillo.

Un saludo.
* Cuando hables, procura que tus palabras sean mejores que el silencio.
* 'Todos somos ignorantes, lo que ocurre es que no todos ignoramos las mismas cosas.' Albert Einstein.
* No hay nada peor que un experto para evitar el progreso en un campo
* "La vida es como una novela. No importa que sea larga, sino que esté bien narrada" Seneca
* La vida no se vive por las veces que respiras, sino por los momentos que dejan sin aliento.
* Dios dijo: ∇·E=ρ/ε0 ; ∇·B=0 ; ∇xE=-dB/dt ; ∇xB= μ0ε0dE/dt..y la luz se hizo..!!..

Desde España Jesús

Desconectado aghor

  • PIC10
  • *
  • Mensajes: 19
Re: Hola amigos, necesito un Maaaaaanso empujón virtual....gracias
« Respuesta #5 en: 08 de Junio de 2006, 13:23:29 »
Nuevamente muchas gracias !!!!!

Chaly29
2,25h ser muy distinto a 2 horas mas 25 minutos.........el error ha sido mio mai friend.....

gracias por la corrección  :D

 
Amigo ffh900
:shock: Nunca visualizé el problema como intersección de varias rectas  :shock: asombroso  :mrgreen:

Me siento hasta avergonzado, bueno caaaaaaaaaaaaaaasi un poco avergonzado.

Nota: " maaaaanso" en mi pais quiere decir...= muy grande o gigante...

chaito ! 8)
« Última modificación: 08 de Junio de 2006, 13:33:22 por aghor »