3 de agosto de 2009

Mapeado de entradas/salidas en un PLC Beckhoff BC3100

[ACTUALIZACIÓN: Alguien de Beckhoff ha leído el blog y el departamento comercial se ha puesto en contacto conmigo para hacer alguna aclaración. Entiendo por lo que me cuenta que es normal que el KS2000 no haga bien la configuración con el BC3100, ya que no está soportada esta función, y aclara que "la serie BC3100 fue de los primeros PLCs con I/F PROFIBUS DP y que actualmente el BC3150 soporta el System Manager para poder vincular sus variables globales a E/S físicas del PLC." De todas formas no me gustaría que quedase la impresión de que no me ha gustado programar en Beckhoff, tan sólo he usado el PLC para una función muy concreta y ha funcionado perfectamente.]

En mi primera entrada conté como se realizaba la comunicación Profibus entre un PLC Beckhoff BC3100 y un Siemens S7-300; las pruebas las hice con un técnico de Beckhoff y claro, con su ayuda todo salió rodado. Ahora me he puesto yo solo contra el BC3100 y no ha salido todo tan bien. Este PLC es un poco particular con el mapeado de entradas/salidas, ya que no solo depende de la posición de las tarjetas en el bastidor, si no que también importa el tipo de tarjeta. En teoría, si nos conectamos con la aplicación KS2000 de Beckhoff al PLC con todos sus módulos conectados debería leer el mapeado y mostrárnoslo... pero por lo visto, al menos con este PLC, falla:


En la captura de pantalla que he hecho después de obtener la configuración con el KS2000 se puede ver que el área de memoria de la tarjeta KL1512 (contaje rápido, 2 canales) se solapa con el área de memoria de la KL6031 (comunicación serie RS232). Además hay un módulo de 2 entradas digitales KL1002 y otro de 2 salidas digitales KL2012, al que les asigna las direcciones 8.0 y 8.1, y así mapeado no responde.

Así que para ver el mapeado hay que hacerlo de otra forma, utilizando el 'TwinCAT System Manager' para generar manualmente una configuración. El proceso es el siguiente.

Ejecutamos el 'TwinCAT System Manager' y vamos al apartado de 'Configuración E/S'.


Botón derecho sobre 'Dispositivos de E/S' y pulsar sobre 'Agregar dispositivo...'


Insertamos como dispositivo de E/S, bajo el epígrafe 'Ethernet', el elemento 'Interfaz de Ethernet virtual'.


Bajo 'Dispositivos de E/S' aparece el elemento que hemos insertado 'Dispositivo 1 (Virtual-Ethernet)', hacemos clic con el botón derecho y seleccionamos 'Agregar box...'


Insertamos un 'BC9000', no importa que no coincida con nuestro PLC.


Sobre el elemento que acabamos de introducir hacemos clic con el botón derecho y seleccionamos 'Agregar terminal...'
Ahora deberemos ir seleccionando los componentes que van acompañando al BC3100, en mi caso un KL1002, un KL2012, un KL1512 y un KL6031.


NOTA: Al seleccionar las tarjetas debemos fijarnos que sean del tipo 'BC PLC' (en el icono del árbol de componentes aparecen las letras 'PLC'). Es fácil equivocarse ya que las mismas tarjetas aparecen en distintas zonas.





Ya está la configuración hecha, ahora vamos a exportarla, para ello botón derecho sobre el BC9000 y seleccionamos 'Exportar información de variable...'


Con esto ya temenos la configuración guardada en un fichero de extensión '.exp'. Ahora abrimos el 'TwinCAT PLC Control' con nuestro proyecto y seleccionamos en el menú 'Project' la opción 'Import'.


Seleccionamos el fichero que generamos previamente, y en el árbol de proyecto, al lado de la declaración de variables globales, aparece la sección 'Twincat_Import'.


Si hacemos doble clic sobre 'Twincat_Import', a la derecha aparecerá el mapeado buscado.


Y listo, ya sabemos donde leer y escribir.

Por supuesto, si ves algo que esté mal o cualquier apreciación que quieras hacer, en los comentarios o en mi correo notasdeautomatizacion@gmail.com.

No hay comentarios:

Publicar un comentario

Por favor, no pidas copias de programas comerciales, licencias o números de serie.