Está en la página 1de 2

Control Analogo con S7-300 - Ayuda [Archivo] - Foro infoPLC Auto...

1 de 2

http://www.infoplc.net/foro/archive/index.php/t-4627.html

Foro infoPLC Automatas y Automatizacion Industrial > PLC / PC Control > Siemens > Control Analogo con S7-300 Ayuda
PDA

Ver la versin completa : Control Analogo con S7-300 - Ayuda

Kuyayo

07/12/2010, 03:29

Hola a todos los del foro, les comento que necesito ayuda para hacer un control analogo con el Siemens S7-300
CPU 313C, la idea es Si o Si utilizar el Bloque FB41 con entrada y salida de 4 a 20mA puede ser control directo o
inverso, necesito si alguien tiene algun proyecto hecho o alguna imagen que me oriente por favor ya que hay
parametros que no comprendo y nose si solo hay que insertar el bloque FB41 o algunos bloques adicionales de
conversores.
Saludos a todos!

valeno

09/12/2010, 14:17

Amigo, esto es lo que entiendo al parecer quieres hacer un control PID o PI, para ello debers de usar el FB41
pero no es necesario dar direccin a todas las variables que tiene el bloque para empezar basta con SP_int y PV_in
ambos en formato real; aparte el FB41 lo tienes que llamar en el OB35 aconsejable con eso ya puedes empezar a
probar, por defecto este bloque hace control PI existe un bit de habilitacin para el tiempo derivativo.
Espero te sea til la ayuda.

Txispo

15/12/2010, 21:30

Hola,
si tienes una 313C, tendrs por ah la documentacin sobre las funciones tecnolgicas. En uno de esos
documentos te habla de los programas de ejemplo que vienen en el CD con la CPU. En todo caso te los puedes
bajar de la web de siemens.
El caso es que las CPUs 31xC a partir de la 313 tienen incorporadas varias SFCs para el control continuo,
especialmente orientado al control de temperatura. Uno de los ejemplos simula un proceso (lo simula mediante
tres bloques TM_LAG seguidos) y lo controla con la SFB41.
En concreto la SFB41 es un PID especialmente orientado a procesos trmicos con funcin de autosintona. Mira el
ejemplo, que est muy bien hecho.
Si no quieres usar ese PID, puedes irte al genrico de SIEMENS, que es el bloque de librera FB41 CONT_C.
Hay un PDF que se instala con el S7 que es "STEP7-Regulacin PID", bastante claro.
(s7pidcod.pdf).
Recuerda, como dice valeno, que es un FB, y por tanto puedes dejar cosas en blanco y coger el valor por defecto
del DB de instancia.
Un parmetro importante es CYCLE, que tiene que coincidir con el ciclo de llamada que especifiques en el OB35.

Kuyayo

16/12/2010, 22:23

Miren muchas gracias por la ayuda pero aun no logro efectuar de buena manera el control, reailize esto con
escalamiento y no me funciono simule la entrada con un calibrador de lazo y la salida la medi con un multitester.
Esta es la programacion que tengo hecha:
http://www.imagengratis.org/images/analogo.jpg
Mi idea es ingresar 4 a 20mA y a la salida tener ya sea un control directo o inverso en 4 a 20mA los parametros
los configurare yo, me comentaron que no es necesario hacer ese escalamiento que tengo hecho ya que en el
bloque FB41 puedo ingresar los 4 a 20mA sin necesidad de transformar el numero en coma flotante, que saben de
eso?
Saludos!

Txispo

16/12/2010, 23:03

Hola,
si tienes bien configurada la tarjeta en el HW Config, puedes usar la funcin SCALE (FC105). Le pasas la direccin
de periferia (PIW752) y el valor en coma flotante para el 0% y el 100%.
Con respecto a meter directamente la entrada, puedes hacerlo en la entrada PV_PER activando
PV_PER_ON=TRUE, pero tendrs que calcular el factor de ajuste y el offset para meterlo en PV_FAC y PV_OFF.
MUY IMPORTANTE: NO llames al FB en el OB1. Llmalo en el OB35 (alarma cclica) y en el parmetro Cycle le
pasas el tiempo de llamada.

07/09/2015 16:31

Control Analogo con S7-300 - Ayuda [Archivo] - Foro infoPLC Auto...

2 de 2

http://www.infoplc.net/foro/archive/index.php/t-4627.html

Por ltimo, tienes que ponerle la consigna en la entrada SP_INT.


Los parmetros cambian mucho para cada proceso. La ganancia (GAIN) es positiva en procesos directos (a ms
control ms variable: p. ej: calentar) y negativa en procesos inversos (a ms control menos variable: P. ej,
refrigerar).
Yo suelo ajustar los parmetros del PID en el DB de instancia, en lugar de pasarle constantes en la llamada. Haz la
prueba a usar un control PI poniendo P_SEL e I_SEL a true y D_SEL a false.
Pon por ejemplo un tiempo integral TI de 10s y una ganancia GAIN de 2 (-2 si ests enfriando). Desconozco tu
proceso, as que es muy probable que estos parmetros sean psimos.
Yo suelo usar magnitudes fisicas, as que primero leo las analgicas con SCALE, y trabajo en coma flotante para
conseguir una salida LMN que posteriormente convierto con UNSCALE en la salida que necesite.
En STEP7 hay una herramienta llamada para ajustar PIDs que accede directamente al DB de instancia del PID y te
permite darle valores a las variables sin necesidad de pasrselas como entrada (SIMATIC>STEP7>PArametrizar
regulacin PID).

Kuyayo

17/12/2010, 21:10

Hola a todos.
@Txispo : Te comento que realize gran parte de lo que me dijiste, maana voi a cargarlo al plc, i simular entrada
con calibrador de lazo y medir salida con multitester. Lo que realize esta en la siguiente imagen.
http://www.imagengratis.org/images/analogodirect.jpg
La tabla de parametros del FB41, es esta:
http://www.imagengratis.org/images/analogodiuyu.jpg
Realize un control PI, donde trabajo con rangos de un estanque de 0 a 100% con un Set point del 80%, llame al
bloque FB41 desde el OB35, creo no tener problemas, en lo unico que me dificulta es para simularlo con el
"Simulador del Step 7" me lanza un error el cual no se que sera, en fin, maana lo simulo con calibrador de lazo y
comento, como me fue.
Ojala puedas dar un vistazo a las imagenes y ver si algo esta malo.
Saludos!

20/12/2010, 23:36

Txispo

Hola,
no te molestes mucho en probarlo con el PLCSim, porque simplemente no sirve de nada. No creo que puedas
simular el comportamiento de su sistema, de modo que el control no te funcionar. Fjate que el valor medido lo
metes a mano, y es imposible que imites a tu sistema. Adems, no tengo ni idea de cmo de exacto es el ciclo del
OB35 en el simulador.
La nica forma que se me ocurre de probarlo (y es un buen berenjenal) es modelando tu sistema y desarrollando
un programa para tu PLC que se comporte igual. En los ejemplos que te he indicado antes del control de
temperatura hay un bloque FB100 "PROC_C" que simula una dinmica de tercer orden, con tres constantes de
tiempo... Se trata de construir una FB que tenga por entrada el dato que tu vas a sacar por la salida, y que te
genere un valor similar al que leeras del sistema real.... Vamos, una funcin que "imite" a tu sistema.
Pero que no es nada fcil, vaya....
Powered by vBulletin Version 4.2.2 Copyright 2015 vBulletin Solutions, Inc. All rights reserved.

07/09/2015 16:31

También podría gustarte