Este caso es verídico, ya que he tenido que conectar 3 pantallas por MPI hace unos días.
Resulta que por necesidades de producción, he tenido que conectar dos máquinas, que tienen sus propias pantallas, con una tercera máquina, que también tiene su pantalla.
La instalación ya tiene algo más de 10 años, y por entonces las pantallas se programaban en Protool y normalmente se conectaban en MPI, como es el caso. Sí, ha llovido un poco.
Hasta ahí, podría parecer que no da para mucha historia, pero tiene su cosa, si no eres consciente de algunos detalles.
En la siguiente imagen, indico un poco cómo estaba las redes y cómo ha quedado finalmente al unirlos todos mediante un repetidor (representado en azul).
Cada PLC tienen configuraciones similares, teniendo como características importantes para este caso, las siguientes:
- CPU 315 2DP
- Una o dos pantallas por CPU
- Una tarjeta CP Profibus con varios enlaces FDL para conectarse entre ellas y con otras CPU y máquinas
- Una tarjeta CP Ethernet. Se usa para conectarse un HMI/Supervisor realizado en VB.NET a través de un OPC de Siemens.
Podrías pensar que no hay mucho misterio en ello, pero ojo, porque puedes tener problemas.
Como ves, son más de 3 TP en la topología, pero solo una TP de las CPU1 y 2 son las que hay que conectar a la CPU3.
Contenido
¿Qué debo tener en cuenta para conectar 3 pantallas por MPI?
El cableado
Lo primero que tienes que tener en cuenta es la topología de la red que quieres construir.
En general, los puntos a unir no van a estar tan fácil para conectar la red todas en serie, y será más fácil y económico colocar un Repetidor RS 485
En este caso, la CPU1 y 2 están muy cerca entre sí, por lo que lo ideal era echar un cable de una a la otra, y a su vez conectarlo con la CPU 3. El tema es, que nos faltan puntos de conexión para poder tener 3 ramales. Esto lo resolvemos con el repetidor.
El bicho, tiene la pinta de la imagen, y hablaremos sobre estos aparatitos en otra entrada.
El número de direcciones.
Debes recordar que las conexiones MPI tienen bastantes limitaciones si lo comparamos simplemente con Profibus. Entre estas limitaciones, están el número de nodos, es decir, cuantos módulos puedes conectar en la red. Concretamente son 31 como máximo.
Y ahí entran muchos elementos: las cpu, las TP, las CP…
¿Comor?
Pues sí, querido padawan, las CP también cuentan para el número de direcciones MPI totales.
En este caso no hay problema en cuanto a número de elementos, pero sí en cuanto a su direccionamiento.
El direccionamiento.
Normalmente cuando configuras una CPU, con sus tarjetas etc, las direcciones son siempre las mismas: la CPU tiene dirección de profibus 2, y las tarjetas, pues la 3, la 4… y así sucesivamente.
Por tanto, a la hora de conectar las 3 redes MPI en una sola, tienes que tener en cuenta que las direcciones no pueden pisarse entre ellas, por lo que tendrás que cambiar unas cuantas direcciones entre CPU, TP y tarjetas varias de tal forma que sean unívocas.
Configurar el hardware.
Por tanto, deberás cambiar las direcciones de 2 de las 3 CPU, por ejemplo, la CPU1 y la CPU2.
Ojo, porque al cambiar las direcciones MPI de las DP, tienes que cargar el hardware desde el administrador de hardware y luego desde NetPro, la configuración de redes de forma obligatoria, porque si no lo haces así, te puede pasar que no funcionen los enlaces con otras CPU o con el supervisor, por ejemplo.
Configurar el repetidor
Tal y como muestra la topología de la imagen, habrá que colocar los switches del repetidor en ON/ON/OFF para aislar la salida superior del repetidor y tener conexión entre la parte superior e inferior. La resistencia de finalización de la parte inferior tendrá que estar en OFF ya que vas a conectar a ambos lados del repetidor.
Cargas y listo ¿no?
Pues podría parecer que sí, pero no. No en este caso debido a cómo estaba configurada la CPU.
¿y por qué?
Porque en el caso de la CPU 3 a la que queremos conectarnos, nos encontramos con que tenía la configuración de comunicación de esta guisa:
- PC/PG: 1
- OP:1
- Step 7: 12
Enlaces totales de la CPU: 16
Habida cuenta de la reserva de enlaces y de las conexiones externas existentes ¿qué paso?… pues que las TP no se podías poner todas a la vez funcionando.
Podía conectar 2 de las 3, pero siempre había una que se caía en función del juego que hiciera con las resistencias de terminación de la red.
Evidentemente, tuve que aumentar el número de enlaces OP hasta 3, y las pantallas empezaron a funcionar, pasando a esta configuración:
- PC/PG: 1
- OP:3
- Step 7: 12
Enlaces totales de la CPU: 16
¿Pues ya está no?
¡Error!
Tras hacer eso, efectivamente las TP funcionaban conectadas a la misma CPU, pero dejó de funcionar la conexión con el supervisor y su enlace S7 por ethernet.
¿y eso?
Pues porque si te fijas, la reserva realizada eran: 1+3+12 = 16, es decir, no hay enlaces libres para que la CPU maneje enlaces según necesidad.
Por tanto, para dejarlo funcional del todo, tuve que cambiar la configuación a:
- PC/PG: 1
- OP:3
- Step 7: 10
Por tanto, dejando 2 enlaces libres, vuelve a funcionar todo perfectamente. Podría haber dejado los enlaces S7 con una numeración más pequeña ya que solo necesitamos 1 en este caso.
¿Te ha pasado alguna vez algo así?
Vale, ni es común conectar 3 pantallas por MPI , ni es común que esté así la configuración de las comunicaciones, pero ya ves, hay que revisar todo, porque siempre hay algo que no está como debiera o piensas.
¿Te ha pasado alguna vez algo parecida?
Enseño a programar PLC de Siemens a través de mis cursos.
Más información sobre mi aquí
Puedes seguirme en cualquiera de las siguientes redes sociales.
14 Comentarios
Cuando dices que las direcciones de las CP’s se tienen en cuenta para la red, supongo que siempre y cuando estén en el misma red, sino no tendrían que tenerse en cuenta o podrían repetirse las direcciones.
Aunque entiendo lo dejar los enlaces libre, no que no me queda claro es para que los utiliza, y si no se asignan con anterioridad, si no que se deja a la cpu unos libres para comunicación
Sí sí claro, lo de las CP siempre estando en la misma red.
Lo de los enlaces lo cuento porque no estaba bien configurado. La idea de reservar enlaces es para que la CPU no asigne recursos según se van conectando o demandando.
El problema es que al tener una configuración 1,1,12 quedaban 2 enlaces libres. Uno para un enlace y una TP exclusivamente.
Si colocas un 1,3,12, reservas los dos enlaces libres para esas TP, entonces no funciona el enlace.
Si pones 1,3,10, dejas libre 2 enlaces y por tanto, el enlace que está fuera del proyecto, lo puede conectar.
Saludos
Nunca he tenido esta experiencia, muy bueno el tutorial.
A que se refiere la resistencia?
La resistencia de finalización de la parte inferior tendrá que estar en OFF ya que vas a conectar a ambos lados del repetidor.
Hasta cuanto metros puedo utilizar este enlace.
Saludos
La resistencia de cerrar el lazo profibus. En la parte inferior efectivamente está en OFF para que la salida (derecha del repetidor) esté conectado al bus.
Los metros depende de la velocidad de transmisión. Pero 100 metros en principio sin problemas.
Saludos
Super interesante!! El tema de la comunicaciones es otro mundo donde se podía tocar algo!!
Tengo pensado sacar un curso de comunicaciones a lo largo de este año (espero). Saludos
saludos.
Tengo una pregunta de Wincc flexible 2008.
Si en un respaldo del programa plc no tengo comentarios ni símbolos, que variables toma la pantalla HMI para que funcione?
No tiene nada que ver una cosa con la otra. En el HMI tú defines las direcciones de memoria de forma absoluta o simbólica tomándolas del PLC. Si las tomas de forma simbólica, en el momento de la programación, no tienes que introducir las direcciones en el PLC, ya que vienen definidas como tal en el símbolo. Pero también puedes crear a mano la variable y darle la dirección.
Si no tienes mas que el programa leido desde el PLC, el HMI sigue tomando las direcciones con las que se programó. Eso sí, si tampoco tienes el proyecto del la pantalla, tampoco verás dónde apuntan las variables ni modificar el HMI.
Pero no es necesario tener el programa del PLC comentado para que una pantalla HMI la puedas programar y que funcione.
Saludos
Muchas gracias Iñigo y te felicito por tu pagina, es única.
Otra pregunta en un respaldo de un HMI realizado con ProSave es posible hacer modificaciones de la aplicación o solo es posible hacerlo con el archivo
original con el que fue configurado el HMI. O HAY OTRA MANERA DE HAECERLO.
No project, no party.
Si no tienes el proyecto, no lo puedes modificar. Con el prosave lo que haces es una copia de seguridad del runtime y los datos que pueda tener (recetas, usuarios), pero no puedes modificarlo.
Saludos
cComo puedo hacer para prender y apagar de una misma entrada,
gracias muy bueno su Blog
¿te refiere a realizar un telerruptor? Si es así, echale un vistazo a esta entrada: Ejemplo de telerruptor
Saludos
¿Y se podrían comunicar 2 HMIs siemens con una cpu 200?
Las HMIs se programarian con wincc flexible 2008 y estarían en la misma red.
¿Cómo se haría?
Gracias de antemano,
Un saludo,
¿Con un 200? No sabría decirte, apenas lo he tocado y está completamente descatalogado. Tendrás que revisar las posibilidades de esos PLC en las especificaciones técnicas googleando un poco.