Habiendo dejado en la entrada anterior el Posmo configurado, ahora toca realizar un proyecto en Step7 para controlarlo. Como maestro Profibus voy a usar un PLC S7-315-2DP al que voy a conectar una tarjeta simuladora de entradas / salidas digitales para dar las órdenes necesarias al servomotor y visualizar su estado.
Alimento el PLC y el servomotor, conecto el cable Profibus entre ambos y al borne 1 del servomotor un detector inductivo que hará las veces de leva de referenciado.
Ejecuto el Administrador Simatic y creo un proyecto vacío. Inserto un equipo Simatic 300 y abro la configuración hardware. Inserto mi referencia de PLC, la tarjeta simuladora, creo una red Profibus y finalmente añado el Posmo, con lo que me quedaría algo como esto:
26 de diciembre de 2011
23 de diciembre de 2011
Probando un servomotor Posmo A para posicionamiento simple (parte 1ª)
El Simodrive Posmo A es un servomotor de Siemens que hemos montado en multitud de ocasiones. Es sencillo de configurar y programar, y siempre ha dado buen resultado, destacando su fiabilidad. Aprovechando que tengo uno por aquí (referencia 6SN2132-1BC11-1BA1) voy a dedicarle una entrada.
Lo primero que llama la atención es que lleva incorporado el regulador, formado un bloque compacto. Se alimenta con corriente continua, 24 o 48 V según versiones. Como interface de comunicaciones tiene un puerto Profibus. Bajo la tapa lleva unos microinterruptores donde ajustaremos la resistencia terminadora de red y la dirección Profibus. También tiene un bornero donde podremos realizar alimentación separada de electrónica y potencia, y un par de entradas / salidas configurables.
![]() |
| El Posmo A sobre mi mesa preparado para hacer pruebas. |
Etiquetas:
Posmo,
servomotor,
Siemens,
Simocom A
17 de octubre de 2011
Tres maneras de generar pulsos en un controlador Logix5000
Es raro que programando una máquina no sea necesaria una señal pulsante, generalmente para funciones de señalización. En controladores de Rockwell, por ejemplo del tipo SLC 500, podemos echar mano de bits de sistema que cumplen esta función. Sin embargo, en la gama de controladores Logix5000, si necesitamos un pulso deberemos generarlo nosotros. En esta entrada voy a proponer tres maneras de generar una señal pulsante de un segundo de duración: primero usando temporizadores (PULSO_TEMP), luego leyendo el tiempo del sistema (PULSO_SIS) y finalmente usando tareas periódicas (PULSO_TAREA).
El código en lógica de escalera para generar un pulso con temporizadores podría tener este aspecto:
Uso dos temporizadores, uno para controlar el semiciclo activo del pulso y otro para el semiciclo inactivo, y a cada uno de ellos le asigno una duración de 500 ms. Esta es la opción que requiere más programación.
Otra forma de generar el pulso es leyendo el tiempo del sistema.
El código en lógica de escalera para generar un pulso con temporizadores podría tener este aspecto:
![]() |
| (Pincha para ver mejor la imagen) |
Uso dos temporizadores, uno para controlar el semiciclo activo del pulso y otro para el semiciclo inactivo, y a cada uno de ellos le asigno una duración de 500 ms. Esta es la opción que requiere más programación.
Otra forma de generar el pulso es leyendo el tiempo del sistema.
7 de octubre de 2011
Comunicación OPC con un PLC Logix5000 desde Visual Basic
Ya he hablado en el blog de comunicación OPC, en concreto en esta entrada traté el acceso a un WinAC desde Visual Basic. Ahora, aprovechando la configuración que tengo con SoftLogix sobre una máquina virtual, voy a hacer lo mismo.
Mi prueba consistirá en crear un proyecto para SoftLogix en el que definiré un par de tags, OPC_BIT y OPC_DINT, que me servirán para probar la comunicación. En el SoftLogix no voy a hacer nada más, simplemente le transferiré el proyecto, lo pondre en modo Run y monitorizaré el contenido de los tags. Luego generaré un enlace OPC con el RSLinx y desde un programa en Visual Basic leeré y escribiré en los tags del PLC.
Para establecer una comunicación OPC necesitaré un servidor OPC, y Rockwell nos lo proporciona integrado con el RSLinx, pero ojo, deberemos asegurarnos de que no sea la versión lite. Recomiendo echar un vistazo a este documento Cómo obtener resultados con RSLinx Classic (pdf) donde se especifica para qué sirve cada versión de RSLinx.
Mi prueba consistirá en crear un proyecto para SoftLogix en el que definiré un par de tags, OPC_BIT y OPC_DINT, que me servirán para probar la comunicación. En el SoftLogix no voy a hacer nada más, simplemente le transferiré el proyecto, lo pondre en modo Run y monitorizaré el contenido de los tags. Luego generaré un enlace OPC con el RSLinx y desde un programa en Visual Basic leeré y escribiré en los tags del PLC.
Para establecer una comunicación OPC necesitaré un servidor OPC, y Rockwell nos lo proporciona integrado con el RSLinx, pero ojo, deberemos asegurarnos de que no sea la versión lite. Recomiendo echar un vistazo a este documento Cómo obtener resultados con RSLinx Classic (pdf) donde se especifica para qué sirve cada versión de RSLinx.
Etiquetas:
Logix,
OPC,
Rockwell,
RSLogix 5000,
SoftLogix,
Visual Basic
3 de octubre de 2011
Accediendo a un PLC Simatic a través de ethernet con Libnodave
En esta entrada usé la biblioteca libre Libnodave para acceder a un PLC S7-300 desde Visual Basic a través de un adaptador serie/MPI. Varios lectores me hicieron consultas sobre si era posible usarla para acceder a un PLC S7-300/400 a través de ethernet, pero al no tener disponible un controlador adecuado para hacer pruebas pues no tenía respuesta. Sin embargo, de la entrada anterior tengo preparada una máquina virtual con WinAC RTX y su puerto ethernet como puerto de comunicaciones, que creo que es un banco de pruebas ideal para hacer pruebas con Libnodave.
Lo primero que voy a hacer es un proyecto en Step7 con un único DB, por ejemplo el DB10, con un único dato de formato BYTE. Lo transferiero al WinAC y pongo el PLC software en modo Run. Me pongo on line y monitorizo la variable.
En el PLC no voy a tocar nada más. A continuación lo que haré será una aplicación en Visual Basic, usando la biblioteca Libnodave a través de ethernet, que se conectará al PLC y leerá y escribirá en esa variable como prueba que el sistema funciona.
Lo primero que voy a hacer es un proyecto en Step7 con un único DB, por ejemplo el DB10, con un único dato de formato BYTE. Lo transferiero al WinAC y pongo el PLC software en modo Run. Me pongo on line y monitorizo la variable.
En el PLC no voy a tocar nada más. A continuación lo que haré será una aplicación en Visual Basic, usando la biblioteca Libnodave a través de ethernet, que se conectará al PLC y leerá y escribirá en esa variable como prueba que el sistema funciona.
Etiquetas:
Comunicación,
Industrial Ethernet,
libnodave,
Siemens,
Step7,
Visual Basic
30 de septiembre de 2011
Virtualizando WinAC RTX, el PLC software de Siemens
Después de estar trabajando con el SoftLogix de Rockwell sobre máquinas virtuales, me he preguntado si sería posible hacer funcionar al equivalente en Siemens, el WinAC RTX, en las mismas condiciones. Así que me he puesto manos a la obra y he instalado sobre una máquina virtual en VirtualBox con Windows XP el paquete Simatic NET V7.1 + SP1 y WinAC RTX V4.4 + SP1 con su correspondiente licencia. Toda la instalación transcurrió sin problemas:
Ahora el problema es poder configurarlo y programarlo desde otro equipo a través del puerto ethernet. En la web de Siemens hay una guía para hacerlo, está bastante clarita y los pasos que voy a ir explicando están basados en ella.
![]() | |
| WinAC RTX ejecutándose sobre una máquina virtual (pincha sobre la imagen para verla mejor) |
Ahora el problema es poder configurarlo y programarlo desde otro equipo a través del puerto ethernet. En la web de Siemens hay una guía para hacerlo, está bastante clarita y los pasos que voy a ir explicando están basados en ella.
Etiquetas:
Comunicación,
Industrial Ethernet,
PLC Software,
Siemens,
WinAC RTX
Suscribirse a:
Entradas (Atom)








