🥇BUCLES FOR, WHILE y REPEAT en TIA PORTAL✅ ▶ Como Programar un LOOP en SCL

Поділитися
Вставка
  • Опубліковано 29 сер 2024
  • Tengo algo que contarte más importante que lo que estás viendo en este vídeo, es muy probable que te interese. Es aquí: www.programaci...

КОМЕНТАРІ • 28

  •  3 роки тому +4

    Tengo algo que contarte más importante que lo que estás viendo en este vídeo, es muy probable que te interese. Es aquí: www.programacionmultidisciplinar.com/inicio

  • @issamsikaddouri6584
    @issamsikaddouri6584 2 роки тому +4

    El mejor canal de programacion de PLC sin duda, tanto por la explicacion IMPECABLE que nos ofreces como tambien por el tiempo que inviertes en prepararlo que se nota.... GRACIAS

    •  2 роки тому +1

      Muchas gracias por esas enormes palabras Issam!! La verdad es que si, intento que cada vídeo sea una obra de arte. Y mejoro con cada uno que hago 🔥🔥
      Un Abrazo máquina!

  • @luiscortesfdz
    @luiscortesfdz 3 роки тому +1

    Yo también quede desconcertado cuando vi el valor de 11 en "i" jajaja.
    Excelente video.

    •  3 роки тому

      Parece que no fui el único 😂

  • @jorgecanales2199
    @jorgecanales2199 Рік тому +1

    Excelente sus vídeos Ing. Abel, les estoy dando caña uno por uno, y estoy aprendiendo bastante con su metodología y si me falla, vuelvo a analizarlo. Como dato interesante para este vídeo, estoy usando TIA 16, y cuando le intento cargar el Loop Infinito el mismo TIA me lo reconoce y no deja cargar el programa.
    Saludos desde México

    •  Рік тому

      Gracias por la info Jorge!
      Desconocía que la v16 ya tuviera la funcionalidad de detectar bucles infinitos, parece que estos de Siemens van mejorando 🤣
      Siempre se aprende algo nuevo.
      Salu2 crack!

  • @manuelrodriguezperez3419
    @manuelrodriguezperez3419 3 роки тому +1

    Buenos días Abel, me gustaría entender la diferencia entre declarar la variable i como
    temporal, o dentro de la DB. Como siempre, gracias por tu esfuerzo.

    •  3 роки тому +5

      En los vídeos de FC y FB hablo sobre ello, aunque ahora que lo pienso, no tengo un vídeo exclusivamente hablando de esto. Pero bueno, la diferencia es que una variable estatica o static, es una variable que guarda el último valor que tuvo antes de que se terminara el ciclo de scan, y en el siguiente ciclo de scan parte de ese último valor. Las variables static solo existen en las DB. Por otro lado, las variables temporales o temp, son variables que no guardan su valor en la memoria de la cpu, por tanto, cuando finaliza el ciclo de scan, la variable temporal pierde su valor y cuando empieza un nuevo ciclo de scan, dicha variable empieza con su valor por defecto, que suele ser 0.
      Un saludo y gracias por el apoyo!

    • @user-vq5tb9jn7n
      @user-vq5tb9jn7n 2 роки тому

      @ y si creas una variable temporal booleana y al final del ciclo scan la dejas seteada con un set? tambien pierde su valor?

    •  2 роки тому

      @@user-vq5tb9jn7n Si, porque el PLC no guarda en memoria el último valor que tenía antes de finalizar el ciclo de scan.

  • @rudymendoza5562
    @rudymendoza5562 2 роки тому +1

    Excelente...!! Tengo una duda. Existen los hilos o multitareas en los PLC de Siemens? Me refiero a que si debo de hacer un bucle esperando una respuesta que demore, hacerlo asíncronamente (o en paralelo) al OB1 para así no perder el control del proceso principal.

    •  2 роки тому +2

      Lo más parecido a los threads que tiene TIA Portal, al igual que en Step 7, es el OB35, Cyclic Interrupt. Se trata de un OB que se ejecuta de manera independiente al OB Main, y más rápido todavía. Lo que hace en realidad es parar la ejecución del main, ejecutar el ob35 y luego retoma el main, así sucesivamente.
      El tema es que un OB Cyclic interrupt se puede ejecutar cada 10 ms si quieres (es configurable), así que en realidad, aunque se pare el main para ejecutar dicho OB, no lo vas ni a notar.
      Saludos!

  • @RamonMartinez-tz3yu
    @RamonMartinez-tz3yu 3 роки тому

    En buena hora ingeniero estos vídeos tutoriales de PLC SIMATIC que está impartiendo, lo hará también en forma práctica con un PLC real? Saludos desde CDMX 🇲🇽.

    •  3 роки тому +2

      Ojala pudiera, pero no dispongo de un PLC físico, ni tampoco de espacio para material para el tema de fuentes de alimentación, bastidor etc. De todas formas, para saber programar un PLC no es necesario tener uno. Aunque si bien es cierto que me gustaría tenerlo para explicar temas sobre todo de hardware.
      Un saludo.

    • @RamonMartinez-tz3yu
      @RamonMartinez-tz3yu 3 роки тому

      Gracias por su respuesta sincera, hice este comentario por qué en el campo de trabajo industrial la programación simulada a veces no es lo que uno espera en la realidad. Hasta pronto y muchas gracias 🇲🇽

    •  3 роки тому +5

      @@RamonMartinez-tz3yu Tengo ejercicios con factory io (y todavía tengo muchos mas que subir) que simulan muy bien una instalación de transportes real, es lo mas parecido a tener un plc real en una instalación.

  • @BrisaConde-qh2ik
    @BrisaConde-qh2ik Рік тому

    Hola ingeniero , excelente contenido ! muchas gracias por compartirlo🙌🙌. Tengo una duda , si mi ciclo scan lo determino de 1 segundo y dentro del main tenga un for y ademas programo de una forma que durante cada ciclo scan el i que cumple la función de iteración tenga diferentes valores , es decir que en el primer ciclo scan tengo un valor de i=3 y por lo tanto demore menos tiempo cuando este en el for pero en el siguiente ciclo scan el i=100 por lo tanto demorara mas en la funcion for. Entonces el tiempo de ciclo scan que yo determino no se respeta ? por que en algunos casos el for puede demorar hasta mas del tiempo del ciclo scan , por ejemplo en el while cuando entra a infinito

    •  Рік тому +1

      Buenas pelecero,
      El ciclo de scan no lo puedes determinar tu, lo que si puedes determinar es el ciclo de vigilancia o watchdog, que te salta un aviso si el ciclo de scan excede el configurado en el watchdog.
      El ciclo de scan es variable, y depende del programa que esté ejecutando el PLC; su extensión, tipo de lenguaje, recursos utilizados, bucles...
      Además piensa que al final un PLC es como un ordenador, nunca va a ejecutar lo mismo en el mismo tiempo, ya que el PLC tiene ejecutando en segundo plano subrutinas, invisibles para nosotros, pero que existen.
      Luego, un ciclo de scan de 1 segundo es una locura, eso significa que algo hay mal en el programa, directamente es imposible que tengas ese ciclo de scan. Si quieres ver el ciclo de scan, en online y diagnóstico lo puedes ver. Eso si, solo el ciclo de scan de un PLC real es auténtico. Si estás simulando con PLCSIM el ciclo de scan que te aparece, también es simulado, y de hecho, es un ciclo de scan falso, ya que se basa en los recursos de tu propio ordenador.
      Salu2!

    • @BrisaConde-qh2ik
      @BrisaConde-qh2ik Рік тому

      @ Muchas gracias por la explicación ingeniero , solo tengo un duda en cuestión de los temporizadores , como el ciclo scan trabajo con ellos , por q los temporizadores vi que se puede poner segundos y minutos .

  • @josetomaslopezguillen6322
    @josetomaslopezguillen6322 3 роки тому

    Y las que se declaran como constant dentro de la interfaz de bloque, aunque no venga al caso puedes poner un ejemplo de un caso en el que se declare algo ahí?:)

    •  3 роки тому +1

      Una variable constant es una variable constante, es decir, es una variable la cual le asignas un valor en su valor de arranque y ese va a ser su valor siempre, y no lo puedes cambiar. De hecho, si declararas una linea de código alterando su valor, el compilador de tia portal te daría error.
      Yo rara vez uso constantes, y no las he visto apenas usarse, porque básicamente podrías usar una variable static o temp y en el primer segmento de la función, llamar a dicha variable y asignarle el valor deseado para el resto de ejecución del programa.
      Por ejemplo, si estás programando una secuencia de pasos, tipo grafcet, podrías declarar las etapas como variables const, por ejemplo si quieres q tu etapa de seguridad sea el número 100, declaras como const EtapaSeguridad = 100. Pero ya te digo, apenas se usan el tipo const.
      Un saludo.

  • @gerardodenovalesdelapuente8688
    @gerardodenovalesdelapuente8688 2 роки тому

    Buenas Abel, al hacer uso de "EXIT" dentro de un bucle dentro de otro (bucles anidados), ¿éste hace que el programa salga sólo del primer bucle o nos sacaría de todos los bucles anidados?

    •  2 роки тому

      Solo del bucle donde se llame

  • @electronicayautomatizacion9217
    @electronicayautomatizacion9217 2 роки тому

    hola Ing, tiene algún video de como configurar las entradas de conteo rápido? , es que tengo una aplicación de un contador de pastillas y tengo algunas dudas, saludos.

  • @hersonguzman8662
    @hersonguzman8662 Рік тому

    Excelente . Gracias .