• Skip to primary navigation
  • Skip to main content

ProgramaciónSiemens

Cursos online de automatización industrial con PLC Siemens

  • Cursos
  • Mi cuenta
    • Mi cuenta
    • Blog
    • Foros
    • Curso de iniciación a la Industria 4.0
    • Curso Express de TIA Portal
    • Curso de WinCC Flexible 2008
    • Crear HMI con OPC y VB.NET
    • Crear HMI con Snap7 y VB.NET
    • Curso de TIA Portal para CPU 1200
    • Curso de Step 7 V5.x
    • Curso de comunicaciones IE y Profinet
  • Contacto

Step 7… AWL, FUP o KOP ¿Cuál elijo?

Step 7… AWL, FUP o KOP ¿Cuál elijo?

por Iñigo Gútiez · 42 Comments

Antes de responder a la pregunta de que lenguaje escoger en Step 7, repasemos un poco de qué lenguajes disponemos.

  • FUP
  • KOP
  • AWL

Cada uno tiene sus ventajas e inconvenientes.

Contenido

  • 1 ¿Qué lenguaje uso para programar en Step 7?
  • 2 FUP
  • 3 KOP
  • 4 AWL

¿Qué lenguaje uso para programar en Step 7?

grafico lenguajes awl fup kop Step7

 

FUP

Es un lenguaje de Step7 gráfico que utiliza los cuadros del álgebra booleana para representar la lógica. Asimismo, permite representar funciones complejas (p.ej. funciones matemáticas) mediante cuadros lógicos.

Tiene la ventaja de ver agrupados por bloques las diferentes lógicas y tener bloques complejos.

Cuando hay mucha lógica booleana en serie suele ser más compacto y más fácil de ver el segmento completo.

KOP

Es un esquema de contatos, escalera o ladder.

Es un lenguaje de Step 7 gráfico y  probablemente el más extendido en todos los lenguajes de programación y por tanto el más similar a otros.

Probablemente es el más fácil de entender por personal proveniente de la industria eléctrica y técnicos eléctricos.

En definitiva, es la representación que habría que cablear si se quisiera hacer el mismo programa que realizas con el PLC.

AWL

Es un lenguaje de programación textual orientado a la máquina.

En un programa creado en AWL, las instrucciones equivalen en gran medida a los pasos con los que la CPU ejecuta el programa.

Para facilitar la programación, AWL se ha ampliado con estructuras de lenguajes de alto nivel (tales como accesos estructurados a datos y parámetros de bloques).

Es el más completo y el más complejo visualmente de seguir.

Para instucciones sencillas es muy útil pero cuando se quiere hacer una lógica un poco compleja el trabajo de seguimiento y de depuración es complicado y fácilmente susceptible de cometer errores.

En su haber, si lo que necesitas no lo puedes programar en AWL, es que no se puede programar con ninguno de los 3.

Por otra parte ambos lenguajes gráficos son traducibles a AWL, pero no al revés y no necesariamente entre ellos.

Si bien normalmente KOP y FUP son traducibles entre sí, no siempre es así.

Dependerá de la construcción del segmento en cuestión para que se pueda.

Como se aprecia en el gráfico, todo lo que se programe en KOP y FUP puede ser programado en AWL.
Pero no sólamente no todo no será traducido entre el lenguaje gráfico y AWL, sino que además habrá procedimientos que sólo podamos realizarlos en AWL y en ningún caso en FUP o en KOP.
Por ejemplo, el uso de punteros será exclusivo del lenguaje AWL.
Es decir, AWL será el lenguaje universal dentro del Step 7 y el equivalente de programación en un PC sería como un lenguaje ensamblador (salvando las distancias, claro está).

Respondiendo a la pregunta.. ¿cuál es el mejor? Pues ya siento que hayas leido hastá aquí porque no tengo una respuesta a ello. Depende.

A título personal te diré que en mis inicios y por provenir del ámbito académico y de programación para PC, me gustaba más los diagramas de bloques (FUP).

Hoy he de decir que sin duda me parece más práctico el lenguaje KOP ya que me permite visualizar más segmentos del código como norma general.

El lenguaje AWL es totalmente necesario como ya veremos en su momento para multitud de tareas que sólo así se pueden hacer o porque, aunque parezca mentira, es más fácil de usar.

Por tanto, puedes usar indistintamente cualquiera de ellos, si bien lo normal y lógico es usar uno de los lenguajes gráficos acompañado por AWL cuando no quede más remedio.

¿Qué lenguaje es el que sueles usar tú en Step 7 y por qué?

Recordarte que si estás interesado en formarte en Step 7, puede que te interese adquirir el libro «Cómo programar en Step 7 y no morir en el intento» donde puedes encontrar no sólamente el curso completo gratuito, sino muchas más entradas del blog que como sabes se irán actualizando para los que lo adquieran de forma gratuita.

Si estás interesado, puedes echarle un vistazo a este enlace donde se explica qué es lo que contiene el libro, el precio y los métodos de pago.

Fuentes:

  • Los lenguajes básicos FUP KOP y AWL
  • Programar con STEP 7
Iñigo Gútiez

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.

Filed Under: Teoría Tagged With: AWL FUP KOP Lenguajes

Reader Interactions

    Deja un comentario Cancelar

    Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

    42 Comentarios

  1. PedroN says

    21 enero, 2013 at 21:45

    Para complementar los tres lenguajes estándar del Step7 explicados por Iñigo en el post, creo que merece la pena mencionar el paquete de software opcional S7-SCL (Structured Control Language) como otro lenguaje más de programación disponible para la familia S7. Es un lenguaje de alto nivel, muy parecido al PASCAL con estructuras tipo IF…THEN…ELESE, DO..WHILE, etc. orientado a un manejo ágil y eficaz de ciertos tipos de datos y con el que los informáticos se sienten ‘como en casa’ a la hora de programar. Al igual que en AWL, para visualizar un proceso ‘on-line’ y poder diagnosticar un posible fallo requiere de unas habilidades sobrehumanas por parte del programador.. 🙂

    Saludos cordiales.

    Responder
  2. Iñigo Gútiez says

    22 enero, 2013 at 18:31

    Hola Pedro,

    Gracias por comentar. Efectivamente queda el SCL. Sinceramente lo he usado muy muy poco… con lo que me gustaba a mi el Pascal!!!
    También haremos algún ejemplo algún día, cómo no.

    Un saludo,

    Responder
    • sandro says

      24 julio, 2014 at 21:52

      buenas tardes quiero descargarme un sof para el s7 200 siemens sera que alguien me puede mandar un link a mi direccion que es s…com gracias saludos

      Responder
      • Iñigo Gútiez says

        25 julio, 2014 at 0:16

        Hola Sandro,

        Lamentablemente el software es de pago y no puedo permitir este tipo de solicitudes. He anulado tu email y ya de paso aprovechando tu email recuerdo que no se pueden postear este tipo de solicitudes.

        Un saludo

        Responder
  3. J.C.M.Castillo says

    5 febrero, 2013 at 15:10

    Respondo a tu pregunta ¿Qué lenguaje es el que sueles usar tú en Step 7 y por qué?

    Yo utilizo los siguientes lenguajes por este orden:

    KOP
    S7-GRAH
    AWL
    SCL (Estoy en ello)

    FUP (solamente para el LOGO!)

    Enhorabuena por tu blog.

    Responder
  4. Iñigo Gútiez says

    5 febrero, 2013 at 20:43

    Graph? Uff no puedo con él… no me gusta nada.

    Puedo hacer, a día de hoy, todo lo que necesito con KOP, incluyendo por supuesto un diagrama de etapas.. con Set /Reset bien puestito arreglado.
    ¿Qué ventajas le ves al uso del Graph?

    Responder
    • J.C.M.Castillo says

      5 febrero, 2013 at 22:12

      Es una pena que no utilices el GRAPH es maravilloso hacer con él. Los programas secuenciales se hacen en un plis plas y tiene un potencia enorme que a simple vista no se aprecia, pero una vez que vas conociendo los entresijos de la aplicación, te vas dando cuenta de su gran poder. La gestión de paradas, rearmes, modos de funcionamiento (manual, automático, semiautomático) es coser y cantar.
      He hecho muchos programas en KOP (y lo seguiré haciendo para los S7-200 y S7-1200), pero es una pena que no se pueda hacer la programación de dichos autómatas con una herramienta similar al S7-GRAPH.
      En fin, es evidente que me encanta ¿no?.
      Lo mismo me animo y creo un ejemplo en el que se muestre la potencia de dicha y lo cuelgo en la web.

      Responder
  5. Iñigo Gútiez says

    6 febrero, 2013 at 20:06

    Supongo que será cuestión de las experiencias de cada uno.
    Yo cuando he tenido que enfrentarme con Graph es en el mantenimiento de las instalaciones y el seguimiento de las averías es para mi gusto más confuso y difícil de seguir con respecto a KOP.

    Claro que también hay programas hechos en KOP que para seguir una avería con perdón «te cagas» porque sólo lo entiende el que lo programó y ya me gustaría verle a él unos meses después siguiendo su propio programa en una avería.

    Pero bueno, son gajes del oficio supongo.

    Responder
    • GR says

      7 febrero, 2013 at 17:15

      Llevo ya más de 10 años programando habitualmente con Siemens y el 99% de las aplicaciones que he visto estaban en KOP, dejando para otros lenguajes funciones específicas.

      La máquina que más me costó entender estaba hecha principalmente en KOP por un programador que era un «virtuoso» de los punteros, moviendo bloques de memoria a diestro y siniestro. Compadezco al técnico que hoy en día tenga que hacer el mantenimiento de esa máquina.

      Un saludo.

      Responder
  6. Iñigo Gútiez says

    7 febrero, 2013 at 17:56

    Los punteros están muy bien para ciertas cosas pero no hay que usarlos bajo mi punto de vista como deporte.
    En mi caso yo he programado instalaciones completas y mantenido otras.
    Hay algunos que da gusto ver el programa y lo fácil que puede ser seguirlo desde alguien que no lo ha visto nunca y otros que sudas.
    Por ejemplo hoy he estado pegándose con un programa al 90% en AWL conectado con un robot fanuc programado en karel.
    Casi pido la cuenta.
    Usar AWL para lógica booleana más allá de hacer un and es como para matar al que lo use habiendo kop o fup… Habia trozos de código de vete a saber cuantos paréntesis. Una locura.

    En fin. A ver si puedo subir hoy la nueva entrada aunque para los veteranos no aporte casi nada… Hoy va de configuración de hardware. Sencillo para no agobiar a los que empiezan jeje.
    Un saludo.

    Responder
  7. Carlos says

    25 febrero, 2013 at 18:09

    Sin duda alguna el KOP para operaciones booleanas. El AWL para operaciones matemáticas mas complejas y punteros. El SCL es una auténtica joya, y merece la pena conocerlo.

    Responder
  8. Iñigo Gútiez says

    25 febrero, 2013 at 18:58

    Estoy contigo Carlos,

    El KOP para todo lo booleano y el AWL para el resto… y muy poquito por no decir nada FUP. Cosa curiosa teniendo en cuenta que es con el que empecé y al que estaba acostumbrado.

    El SCL no le he sacado partido. Puede también por falta de necesidad en mis proyectos.
    ¿Para qué sueles usarlo?

    Un saludo y gracias por comentar

    Responder
    • Carlos says

      28 febrero, 2013 at 11:14

      La verdad que no programo demasiado en Siemens. Habitualmente trabajo con Omron que tiene 2 lenguajes, ladder y texto estructurado. El texto estructurado le da una potencia increíble al PLC y es muy similar al SCL. He hecho modificaciones en programas de otros con SCL y me ha gustado este lenguaje. Creo que para programas complejos con muchos cálculos matemáticos, puede ser mas claro que el AWL. Quizá es porque el primer lenguaje que aprendí en mi vida fue el BASIC y le veo cierto parecido.
      Por otra lado el FUP lo he utilizado en el LOGO! y no termino de pillarle el gustillo. Eso que en la escuela estudié electrónica basada en puertas lógicas y se parece mucho a al FUP.

      Responder
  9. Iñigo Gútiez says

    28 febrero, 2013 at 19:38

    El Basic… ¡cómo me gustaba! Claro que era un crio de 7º de EGB cuando empecé con clases extra escolares jeje.

    Responder
  10. Jorge says

    20 abril, 2013 at 17:54

    Bajo mi modesta opinion, como estudiante de programación industrial. AWL una vez que tienes pensado el programa sale solo. Yo utilizo mucho los saltos SPL, SPB,SPA y en FCs me encanta. Supongo que para gustos los colores.

    Responder
  11. Jorge says

    20 abril, 2013 at 17:57

    Porcierto, enhorabuena por tus publicaciones. Lo sigo mucho debido la intensidad de clases que tengo y no tengo tiempo para preprarme todas. Sin embargo tus tutoriales son increibles para solucionar pequeñas dudas que se hacen muy pesadas sino se logra coger el concepto.

    Responder
  12. Iñigo Gútiez says

    22 abril, 2013 at 19:41

    Hola Jorge,
    AWL es ideal cuando quieres hacer operaciones no booleanas.
    Cuando son sólamente boolenas a mi juicio es mucho mejor tanto FUP como KOP ya que en una lógica complicada AWL puede ser un auténtico dolor.

    Responder
  13. Leopoldo Conde says

    8 agosto, 2013 at 16:56

    AWL, sin ninguna duda al menos es la opcion mas «rapida» para trabajar, por lo menos en mi caso.
    Cuando me debo de enfrentar a otros tipos de programacion, coo KOP, sufroooooo….jejejeje
    Por cierto, en el 1200, seguimos con la carencia de no poder desarrollar en AWL, una pena.

    Responder
  14. Iñigo Gútiez says

    8 agosto, 2013 at 17:36

    Hola Leopoldo,

    Gracias por el comentario.

    Lo que son las cosas, a mi lo que me parece una tortura es el AWL a pelo para todo… en cuanto quieres hacer una lógica booleana un poco compleja se me antoja una pesadilla.
    Pero para gustos, los colores.

    Eso sí, cuando es tema de aritmética, no hay color de hacerlo en AWL a hacerlo en FUP/KOP, que entonces las tornas se vuelven.

    Un saludo

    Responder
  15. Juan Ramón says

    11 agosto, 2013 at 17:26

    hola una pregunta muy sencilla pero que me trae de cabeza, tengo el CD para instalarme el Step7 Profesional 2006 SR5, y no hay manera de instalarlo , mi sistema operativo es el Windows7, por narices me tengo que cambiar el sistema operativo e instalarme el XP? tambien me he descargado de la pagina de siemens su programa pero no logro abrirlo

    Un saludo y gracias

    Responder
    • J.C.M.Castillo says

      14 agosto, 2013 at 16:45

      Hay versiones de Step 7 que funcionan en Windows 7 32y64bits. Me temo que debes hacerte con alguna de ellas. Que yo sepa la última versión del Step 7 es la 5.5 SP3. Funciona sin problemas en W7 64bits.
      Otra opción es crear una unidad virtual de Windows XP e instalar en ella tu Step7.

      Responder
  16. gabriel says

    24 agosto, 2013 at 0:48

    Lo que son las cosas!!!! Yo empeze en kop y hoy estoy aprendiendo awl y scl. Son lenjuajes potentes con lo k ustedes hacen mencion. Llegue a awl a traves de un plc s5. E increiblemente me sorprende ese plc por la potencia que tiene haciendo mencion y tomando en cuenta sus años. Siempre pienso k esta en el baul de los recuerdos y aparece

    Responder
  17. Antonio says

    26 agosto, 2013 at 0:43

    La verdad creo que va a depender mucho de que se quiera hacer en el PLC, cada lenguaje tiene su fuerza en comparacion a los demas a la hora de usarlo. Ademas de decir que cada quien con el tiempo se familiariza mas con algun lenguaje en especial.

    Responder
  18. anferro says

    27 agosto, 2013 at 17:11

    muy buen aporte gracias

    Responder
  19. José Luis Llames says

    2 octubre, 2013 at 18:07

    Estoy absolutamente de acuerdo con lo que explicaste. Me reafirma más en la utilización que hago de los lenguajes que son KOP+AWL. Un saludo.

    Responder
    • Iñigo Gútiez says

      2 octubre, 2013 at 18:17

      Sí. Creo firmemente que es el mejor cocktail (dejando a parte SCL que es otra guerra).
      Gracias por comentar,

      Responder
  20. Roberto says

    11 octubre, 2013 at 13:27

    Yo lo cierto que en la carrera me enseñaron AWL para todo haciendo redes de petri, pero desde que uso KOP para algebra booleana es mas sencillo buscar las averías.
    El KOP tiene un factor visual que por ejemplo el AWL no tiene.

    EL AWL lo uso para contadores (que uso alguna marca en un DB) algún tipo de temporizador especial, transferencia de Bytes etc.

    GRAPH es muy potente porque simplifica mucho las vigilancias y es facil de seguir. Problema ocupa mucha memoria en el autómata y si no tienes una familia de gama alta,es imposible usarlo.

    SCL es muy potente y solo lo uso para punteros, matrices y calculos complejos, sobre todo cuando hay que calcular formulas fisicas complejas.

    Conclusion:
    – Siempre KOP salvo para 4 cosillas que uso AWL.
    – SCL para cosas complejas (al menos en mi empresa apenas de usa)

    Responder
    • Ángel says

      23 octubre, 2013 at 10:33

      Totalmente de acuerdo con Roberto (…y con Íñigo).

      Yo cuando programo, procuro pensar en el cliente y no en mí como programador (me he pegado con programas en AWL o SCL que son una tortura a la hora de realizar un mantenimiento o un diagnóstico…)

      Por eso, y pensando siempre en el usuario final:

      – KOP
      – SCL para cosas complejas

      Responder
  21. Jordahnme says

    21 noviembre, 2013 at 0:49

    Bien ahi Angel todo el mundo hablo que le gusta que no le gusta o que le parece mas sencillo como si ellos se van a quedar con la programacion el objetivo es el usuario final que cualquier programador no tenga dificultades en interpretar yo programo en KOP+FUP que resulta ser mas universales

    Responder
    • Carlos says

      4 marzo, 2014 at 2:46

      Estoy con Ángel, el KOP es mucho más intuitivo y gráfico, lo cual le facilita bastante al cliente o al que viene detrás.
      Más de alguna vez me ha tocado resolver una avería por teléfono, y lo que estaba programado en KOP, guiando a alguien con conocimientos básicos he podido, otra máquina que estaba en AWL fue imposible.
      Por sencillez y por ser más gráfico, más intuitivo y más universal me quedo con KOP, salvo que no quede más remedio, o el programa tenga operaciones tan complejas que para entenderlo lo de menos sea el lenguaje y me facilite hacerlo en AWL

      Responder
  22. hugoi says

    8 junio, 2018 at 17:03

    muy buenos dias, un favor estoy probando una ejercicio y este tiene 22 lineas o segmentos en step 7-micro win en KOP, cuando lo llevo a S7-200 no me aparecen sino solo 12 lineas, pero cuando reviso el programa en la ventana OB1 (awl) ahi si aparecen, a que se puede deber¡¡¡ es un tema de capacidad de archivos o hay que llamarla de otra forma que no sea cargar programa.

    Responder
    • Iñigo Gútiez says

      10 junio, 2018 at 19:38

      Hola Hugo,
      No sabría decirte, con Microwin no tengo experiencia.
      Saludos

      Responder
  23. Angel says

    7 septiembre, 2018 at 5:31

    Que significan las siglas (AWL, FUP y KOP)????

    Responder
    • Iñigo Gútiez says

      7 septiembre, 2018 at 6:38

      Pues de memoria no me lo sé, pero básicamente awl es lista de instrucciones, KOP es escalera, y fup diagrama de bloques.
      Puedes googlear un poco para encontrar las palabras en alemán.

      Responder
  24. gerardo says

    12 abril, 2019 at 23:28

    bien!!!!!!!!!!!!!!

    Responder
  25. gerardo says

    12 abril, 2019 at 23:43

    buen trabajo, quiero preguntar si has realizado algún proyecto en lenguaje KOP utilizando PID?

    Responder
  26. Alejandro says

    23 julio, 2020 at 1:37

    hola, en la situacion de awl cuando existe una falla o sensor lee mal, como se corrije.
    se modifica a 0.0 por a 0.1?

    Responder
    • Iñigo Gútiez says

      26 julio, 2020 at 12:42

      Cuando un sensor lee mal, lo que hay que hacer es cambiar el sensor, no el programa.

      Responder
  27. telmar says

    7 enero, 2021 at 10:02

    No habia regresado tu sitio web por un tiempo, porque me pareció que era pesado, pero los últimos posts son de buena calidad, así que supongo que voy a añadirte a mi lista de sitios web cotidiana. Te lo mereces amigo. 🙂

    Saludos

    Responder

Trackbacks

  1. Buenas prácticas de programación en S7Programación SIEMENS dice:
    7 marzo, 2013 a las 0:13

    […] de las entradas que más consultas recibe el blog es la de qué lenguaje elegir a la a hora de programar en Step […]

    Responder
  2. AWL en Step 7 - Programación de PLC SiemensProgramación SIEMENS dice:
    6 octubre, 2013 a las 2:07

    […] qué es el AWL. El AWL no es mas que  uno de los tres lenguajes básicos de Step 7. En la entrada AWL, FUP, KOP… ¿cuál elijo? definíamos un poco de qué se trata cada […]

    Responder
  3. Operaciones en Step 7 (I) - Lógica con bits - Programación SIEMENS dice:
    15 marzo, 2015 a las 0:10

    […] Son las operaciones básicas sobre las que vas a sustentar todos tus proyectos. Tanto en FUP como en KOP funcionan de la misma forma si bien KOP tendrá una apariencia de esquema cableado mientras que en FUP tiene una apariencia de programación de bloques lógicos como ya explicamos con anterioridad. […]

    Responder
  • Aviso Legal y Política de Privacidad
  • Condiciones de Venta
  • Política de cookies
  • Contacto
  • Blog

Copyright © 2021 · Programación Siemens · Todos los derechos reservados

· ¿Quién soy? · Misión, Visión y valores

7 pasos para programar mas ordenado y profesional op

7 pasos para programar más ordenado y profesional

Recibirás de forma TOTALMENTE GRATUITA:

  • Un PDF con los pasos para programar de forma más eficiente, limpia y profesional

PROGRAMACIÓN SIEMENS te informa que los datos de carácter personal que nos proporciones rellenando el presente formulario serán tratados por Iñigo Gútiez Chagartegui como responsable de esta web. La finalidad de la recogida y tratamiento de los datos personales que te solicitamos es para enviarte nuestras publicaciones, promociones de productos y/o servicios y recursos exclusivos. La legitimación se realiza a través del consentimiento del interesado. Te informamos que los datos que nos facilitas estarán ubicados en los servidores de ActiveCampaign, LLC  (proveedor de email marketing), ubicada en EEUU. ActiveCampaign, LLC
 está acogido al acuerdo EU-US Privacy Shield. Puedes ver la política de privacidad de ActiveCampaign en https://www.activecampaign.com/privacy-policy/. El hecho de que no introduzcas los datos de carácter personal que aparecen en el formulario como obligatorios podrá tener como consecuencia que no pueda atender tu solicitud. Podrás ejercer tus derechos de acceso, rectificación, limitación y suprimir los datos en info@programacionsiemens.com así como el derecho a presentar una reclamación ante una autoridad de control. Puedes consultar la información adicional y detallada sobre Protección de Datos en nuestra política de privacidad.

x