Programación en ladder: estructura de un programa

Programación en ladder: estructura de un programa

La programación en ladder es sin duda la programación de autómatas programables más extendida, incluidos los PLC Siemens.

Si aún no tienes claro qué es exactamente este lenguaje y por qué domina la industria, empieza por KOP o Ladder: el lenguaje más usado para programar PLC.

Esta entrada va a ser más de estilo de programación que de herramientas disponibles dentro de step 7.

Hay muchos programadores que son defensores y enamorados de Grafcet. A mi personalmente como programador y mantenedor de las instalaciones no me gusta. Puede ser que por desconocimiento, por falta de uso ya que trabajo con ello pero muy muy poco, o por una manía personal.

La cuestión es que para el grado de automatización en el que me muevo dentro de este sector de la automoción no he encontrado aún una razón por la que usar Grafcet ya que con un ladder bien estructurado es más que suficiente.

¿Qué ventajas tiene una programación en ladder para estructurar un programa en step 7?

  • Es universal. Lo va a enteder todo el mundo y todo es estandar con la programación de escalera normal.
  • No necesita un software especial de pago como es Grafcet.
  • A mi juicio más fácil de seguir si está bien estructurado.
  • Muy compacto. Más que los diagramas de bloques, por ejemplo.

¿Cómo funciona este tipo de programación en ladder?

Lo primero que he de decir es que todo esto entra dentro de la forma de programar de cada uno. Yo te voy a contar esta forma, que la puedes adaptar, copiar literalmente o crear una nueva desde cero. Es una forma de hacerlo, nada más. No es palabra de Dios, ni mucho menos.

Básicamente la idea es coger tu máquina y dividirla en movimientos lo más sencillos posibles pero que tengan una entidad suficiente como para ser merecedor de dedicarle un par de  FC sólo para él. Nada nuevo.

Lo siguiente es asignar una palabra o una doble palabra para este FC.

Finalmente la idea es establecer unas condiciones iniciales de arranque de la secuencia.

Cuando se cumpla, haremos un SET del primer bit. Imaginemos la M0.0.

Esto arrancaría la secuencia. Una vez iniciada esta M0.0 realizará una acción simple. Cuando se cumpla la acción asociada y las condiciones de control de esta M0.0, haremos un SET de la M0.1 y haremos un RESET de M0.0.

Sucesivamente, con las condiciones del siguiente estado, activaremos la M0.2 y resetearemos el M0.1 y así sucesivamente.

  programación en ladder

Ahora bien, para que este sistema funcione bien, sea claro y no se complique más de lo necesario la programación en ladder, las condiciones deben estar lo más resumidas posibles (usando variables intermedias) y no se deben activar las salidas.

Para ello vamos a dividir esta parte de la automatización en dos:

  • Un FC para la lógica explicada y las condiciones de inicio/finalización de los segmentos
  • Un FC/FB  para las salidas de los actuadores con una pequeña lógica de la parte auto con la de manual.

Lógicamente, y dependiendo de cada caso, puede que haya varios FC para la lógica pero solo una para las salidas, por ejemplo. Lo importante es el concepto de separar la lógica por un lado y las salidas por otro.

El vídeo

Como siempre, te dejo con un vídeo explicativo donde se ve mejor lo ya comentado.

 

 ¿Qué te parece?

Espero tus comentarios.

Supongo que algo así usa casi todo el mundo para sus proyectos. En cualquier caso me gustaría saber si usas este método o usas otro y por qué.

Finalmente decir que esta entrada será incluida en la próxima actualización del libro Cómo programar en Step 7 y no morir en el intento. Como ya sabrás para todos aquellos que lo han comprado las actualizaciones del libro son gratuitas. Además, el proyecto de este vídeo será incluido como parte del material añadido.

Si no lo tienes y te interesa comprarlo, puedes pasarte por este enlace donde te explica cuánto cuesta y cómo comprarlo.

Comentarios (6)
henry
Como esta amigo, le escribo de Bolvia, quisiera saber si dicta clases on line desde cero. desde ya muy agradecido y saludos. Le dejo mi correo para cualquier cosa: [email protected] Saludos Henry.
Iñigo Gútiez
Hola Henry, No, actualmente no realizo este tipo de servicios. Solo doy soporte a los estudiantes de los cursos. Un saludo!
jhozer
cual es la diferencia con el lenguaje normal de kop, osea eso se conoce como control secuencial y el normal se conoce pues como el basico pero cual es la diferencia ademas del orden ? yo podria tener un mismo programa en el basico de compuertas y hacer lo mismo en control secuencial, podria hacer una bifurcacion usando solo compuertas y temporisadores ??
Iñigo Gútiez
Es KOP, nada más. No existe el concepto de secuencial y normal en KOP. Otra cosa es qué uso le des, que eso depende de ti.
William Martínez
Hola, necesito programar en KOP plc's Siemens ante una oportunidad de trabajo. Necesito comenzar desde cero con ejemplos básicos porque se que me a a costar un poco supongo que al principio, que me aconsejas. Muchas gracias. William Martínez
Iñigo Gútiez
Echa un vistazo al curso express: https://programacionsiemens.com/cursos/curso-express-de-tia-portal/