sábado, 25 de mayo de 2013

15 años de REEA


Parece mentira, pero en Junio del 2013 REEA cumple su 15º aniversario. Durante todo este tiempo hemos sufrido muchos cambios sociales, políticos y tecnológicos. En alguna ocasión estuvimos a punto de abandonar el proyecto, pero 15 años después aquí seguimos al píe del cañón.
Para los jóvenes visitantes simplemente recordar, que cuando nació REEA, allá por el mes de junio de 1998, internet no era era lo que es ahora:
  • Aun no existía Google ni Facebook.
  • Todo el mundo utilizábamos Altavista como buscador principal .
  • Los internautas luchábamos por tener una tarifa plana para nuestra conexión a Internet. En ese momento cada vez que accedíamos a Internet era como realizar una llamada telefónica de tipo local.
  • Esto del ADSL y las "autopistas de la información" era una utopía. todo el mundo nos conectábamos con Modem.
  • La mayoría de los ordenadores disponían de Window 95 y ese mismo año salio al mercado Windows 98. 
  • En esa época los navegadores ya eran gratuitos, pero solamente un par de años atrás "sufrimos" la denominada "guerra de los navegadores" (que por entonces eran de pago) entre Internet Explorer y Netscape.
  • Descargar un archivo de 3 megas era una odisea.
  • La gente aun compraba CD's de música.
  • El concepto WEB 2.0 aun no existía.
  • Tener un portátil era todo un privilegio al alcance de muy pocos. También había que tener una buena "musculatura" para portarlo de un lugar a otro.
  • La mayoría de los mortales, ni nos imaginábamos que años después con el teléfono móvil podríamos, entre otras cosas, navegar por Internet.
En fin, lo importante de todo eso es que aquí seguimos trabajando y deseamos seguir haciéndolo al menos por 15 años más, je.
¡Gracias por vuestra FIDELIDAD!

Trabajando con TIA Portal

Cuanto más utilizo el TIA Portal, y el Step 7 destinado a los S7-1200, más me gusta su concepto de plataforma. Es evidente que en nuevo entorno y su lenguaje de programación han evolucionado y mucho respecto al S7-Microwin y el Step 7 Professional.
"Para muestra, un botón..." En los antiguos entornos, la programación en KOP estaba limitada a una sola red lógica de contactos por segmento. Ahora, en la programación destinada a los S7-1200 y S7-1500 podemos hacer cosas como esta:


sábado, 18 de mayo de 2013

Temporizadores del S7-1200

Tipos de temporizadores IEC

Los autómatas S7-1200 han incorporado en su biblioteca de programación los temporizadores basados en software que dicta la norma IEC 1131-3:
  • TP - Temporizador de impulsos.
  • TON - Temporizador a la conexión.
  • TONR -Temporizador a la conexión con memoria.
  • TOF - Temporizador a al desconexión.
Si eres un programador procedente del entorno de los S7-200, observarás que hay un cambio radical en la forma que se utilizan dichos temporizadores. Si estás habituado a la programación de los temporizadores hardware de los S7-300, también tendrás que adaptarte al nuevo concepto ya que comprobarás que son bastante diferentes,. Sin embargo, si alguna vez has utilizado los temporizadores software (Temporizadores IEC) de la librería Standard Library>Systems Funciton Blocks  del STEP 7, no tendrá ninguna dificultad con los temporizadores de los S7-1200, ya que son prácticamente idénticos.
El siguiente tutorial se basa en el temporizador TON, pero puede ser utilizado de forma similar con los demás tipos.

 

Uso de los temporizadores

Los temporizadores del S7-1200, al estar basados en software, no requieren direccionamiento a una zona de memoria determinada del hardware y por tanto, no se identifican con un número (T1, T37, etc) como ocurre, por ejemplo, en los S7-200. Así, cada vez que se inserta un temporizador en la zona de programación, éste pide que se asigne un bloque de datos (DB) a instancia. Dicho DB debe identificarse mediante un nombre simbólico reconocible y que sea fácilmente distinguible de otros que se puedan utilizar en el mismo programa.

En el campo PT del temporizador debe escribirse el tiempo de preselección en formato TIME. Por ejemplo: T#3S (tres segundos) ó T#1M10S (un minuto 10 segundos) ó T#100Ms (cien milisegundos).

Ejemplo 1: Activación directa de una salida una vez transcurrido un tiempo.

Un uso inmediato de los temporizadores, consiste en utilizar la salida Q, de tipo binario, para activar  de forma directa, una vez que se ha superado el tiempo de preselección PT, elementos de programación en formato de bit como salidas, marcas o cualquier otra combinación lógica.

Ejemplo 2: Asociación de contactos a un temporizador.

Al no ser temporizadores hardware y no existir un direccionamiento directo a una zona de memoria específica para ellos, ya no es posible asignar, como se hacía en otros PLC's, contactos a los temporizadores mediante su identificador: T1, T2, T3, etc.  No obstante, para hacer algo similar se puede recurrir a diferentes técnicas.
  • Opción 1: Uso de una marca asociada al temporizador.
Cuando la marca es "verdadera", los contactos asociados invierten su valor lógico, activando o desactivando los segmentos en los que se encuentran programados.
 
Se puede decir que esta es una solución muy "eléctrica" similar a la utilizada en los automatismos cableados con relés.
  • Opción 2: Uso de la variable Q del DB a instancia asociado al temporizador.
En este caso no es necesario asignar ninguna bobina a la salida Q del temporizador. Sin embargo, los contactos asociados deben leer el valor de dicha salida directamente del DB a instancia. Para ello cada contacto  debe tener la siguiente sintaxis: "Nombre del DB".Q (en nuestro ejemplo "Temp_1".Q).

Ejemplo 3: Uso de un solo temporizador para acciones a diferentes valores de tiempo.

Lo visto anteriormente requiere usar un temporizador por cada conmutación temporizada que se desee realizar. Es decir, si se desea activar una salida a los 5 segundos y otra a los 10 segundos, es necesario utilizar dos temporizadores independientes configurados, cada uno de ellos, con sus respectivos tiempos de preselección.
Sin embargo, si se lee el valor de la salida ET del temporizador a a través de una variable o a través de DB a instancia, es posible realizar acciones a diferentes valores de tiempo de un mismo temporizador.
  • Opción 1: Comparar el valor de una variable asignada a la salida ET del temporizador.
La variable debe tener el formato de doble entero (DInt) y debe escribirse en la salida ET del temporizador. El tiempo se almacena en ella en formato de milisegundos. Por tanto, las operaciones de comparación deben hacerse teniendo esto en cuenta.
En el siguiente ejemplo se muestra como la salida Q0.6 se activa si el tiempo de temporizador es mayor o igual a 3 segundos (3000ms) y la Q0.7 lo hace si el tiempo es superior o igual a 8 segundos (8000ms).
  • Opción 2: Comparar el valor de la salida ET del temporizador.
De igual forma que para la salida Q del del DB a instancia, es posible leer la salida ET (que tiene formato DInt) y operar con ella en las comparaciones sin necesidad de crear ninguna variable intermedia.
En las comparaciones se puede utilizar una constate numérica en ms o directamente emplear el dato en formato TIME:
 

sábado, 11 de mayo de 2013

Sobre la instalación de TIA Portal 12 con Step 7 Pro

Algunas aclaraciones y detalles sobre los paquetes para programar los PLC's y paneles de operación de Siemens:
  • El TIA Portal Basic V12 incorpora STEP 7 Basic y WinCC Basic, con lo que es posible programar los S7-1200 y los Basic Panels de Siemens sin necesidad de instalar paquetes adicionales.
  • Para programar los S7-300, S7-400 y S7-1500 es necesario instalar a mayores el paquete STEP 7 Profesional V12.
  • Para programar los Comfort Panels, los PC Panes o aplicaciones PC con RunTime, es necesario instalar a mayores alguna de las versiones Comfort, Advanced o Professional de WinCC V12.
  • El STEP Profesional V12 (versión evaluación) se puede descargar desde la web de Siemens (Haz clic aquí). Es necesario darse de alta para poder efectuar la descarga. A mi el correo de confirmación me llegó a los 5 o 6 días.
  • Para instalar esta versión, no es necesario tener instalado el TIA Portal 12 Basic ya que el S7 Pro 12 lo tiene incorporado.
  • Si está instalado previamente la versión Basic, no es necesario hacer nada más. Esta nueva versión se encarga de actualizar todo el PORTAL.
  • Si el equipo tiene instalado el TIA portal V11, éste nos se desinstalará y se mantiene junto con la V12. Yo recomiendo tener los dos ya que los archivos generados por la nueva V12 tienen un formato diferente.
  • El simulador (PLCSim V12) es necesario instalarlo por separado. De momento solamente se pueden simular los programas para el 1500, pero parece que en la próxima revisión (SP) del TIA Portal, se podrán simular los programas del 1200.
  • El simulador para los S7-300 y S7-400 (PLCSim V5.5) es el mismo que se ya tiene el Step 7. Éste si se instala con el paquete del TIA Portal sin necesidad de hacer nada especial. El concepto de simulación es idéntico al utilizado en Step 7.
  • Ambos TIA Portal (V11 y V12) puede estar instalados en el mismo equipo junto con el Step 7 V5.5 y Wincc Flexible 2008+SP3 sin problemas. No entran en conflicto y todo funciona en perfecta armonía.
  • WinCC Flexible SP3 es la única versión que se puede instalar sobre Windows 7. 
  • Para los que aun quieran seguir utilizando los S7-200, se puede tener instalado el microwin SP8 o SP9 no entra en conflicto con nada de los visto anteriormente. El problema es que el en los equipos con Win 7 64 bits no hay posibilidad de establecer la comunicación con el PLC. En este caso es necesario instalarlo en una máquina virtual con Windows XP. al menos eso es lo que yo he tenido que hacer.

lunes, 6 de mayo de 2013

domingo, 5 de mayo de 2013

Iniciación a la programación en SCL (I)

Aquí dejo 4 sencillos ejemplos para perder el miedo a la programación en SCL. Pueden ser programados y probados en los autómatas S7-1200 de Siemens (Firmware 2.0 o superior) a través del STEP 7 Basic.

Recuerda:  
SCL es un lenguaje de texto estructurado cuya sintaxis es similar a otros lenguajes de alto nivel y propósito general como el Pascal o el C.

1. Lo primero que se debe hacer es crear una tabla con las variables de entradas y salidas que se van a utilizar en la programación.
2. Se crea una función (FC) y se elige el lenguaje SCL.
  
3. Desde el OB1 se llama a dicha función de forma incondicional. 

4. El código SCL debe escribirse en el bloque FC.

 Ejemplos de programación SCL

------------------------------------------------------------------------------------------

Ejemplo 1: Control de una salida a través  una entrada.

Código SCL:
 
 Circuito equivalente en KOP:
------------------------------------------------------------------------------------------

Ejemplo 2: Control de una salida mediante Set/Reset.

Código SCL:
 
Circuito equivalente en KOP:


------------------------------------------------------------------------------------------

Ejemplo 3: Asociación serie (AND) de dos variables de entrada.

Código SCL: 
Circuito equivalente en KOP:
------------------------------------------------------------------------------------------

Ejemplo 4: Activación de un temporización a la conexión (TON).

Código SCL: 
 Circuito equivalente en KOP:



sábado, 4 de mayo de 2013

Comunicación OPC con S7-1200

Vídeotutorial que muestra como comunicar el OPC Kepware con un controlador S7-1200 de Siemens.  También es válido para los OPC's: TolBook y de National Instruments


miércoles, 1 de mayo de 2013

Conexión entre WinCC RT y S7-1200

Tutorial que muestra los pasos a seguir para establecer la comunicación entre el WinCC RT V12 Advnaced y un controlador de Simenes S7-1200.

www.plc-hmi-scadas.com

Excelente web dedicada a los PLC's, HMI y Scadas. Dispone de tutoriales con ejemplos de programación y configuración de equipos de diferentes firmas comerciales. Una web para tener siempre "cerca".

Manuales S7-1200

Manuales imprescindibles para configurar y programar los controladores S7-1200 de SIEMENS: