excelente video Carlos, solo una cuestion, en mi caso tengo que con ese mismo boton resetear por ejemplo la falla de un motor (OL) e igual con ese mismo boton encender y apagar, que se complica mas, y todavia se puede hacer mas complejo si quisieras que fuera momentaneo, no se diga para un motor reversible que ahi si la logica esta mas comleja jeje
A mi me tocó utilizarlo debido a que tenía una HMI que no permitía colocar botones Mantenidos, y yo no quería poner 2 botones, uno de encendido y uno de apagado debido al espacio (tenía que poner muchos botones) así que ahí aplique este método. Lo interesante aquí es que este simple ejercicio te ayuda entender cómo funciona Ladder, paso a paso ves como va evaluando los estados el programa, contacto por contacto, bobina por bobina
Hola Carlos Tengo varias consultas, y no sabía realmente donde ponerlas, y como este video hablas de botón y explicas ciclo, he decidio ponerlas aquí. En esta visualización, con un botón activamos una entrada. ¿hay forma de activar con un sólo botón en la visualización, varias entradas? yo lo he intentado poniendo una coma, o punto y coma en la variable tecla o conmutar, pero no lo compila. ¿En codesys hay un first scan como en siemens, que sólo funciona en el primer incio de ciclo.? Cuando estamos programando en PLC_PROG un segmento, donde queremos setear LA ETAPA 0 y por seguridad resetear todas las etapas desde la 1 a la 6 por ejemplo. En siemens también existe un set o reset donde le dicen desde que número hasta que número quieres que setees o resetees ¿ hay algo similar en codesys? o hab´ria que hacerlo una por una poniendo derivaciones de conducto, yo las he puesto todas las derivaciones en el mismo segmento y no me funcionan los reset. ¿ habría que poner los reset, cada uno en un segmento diferente? En programación o en visualización si queremos que una entrada tenga un valor nada más ejecutar el programa. ¿Como lo haríamos?. En programación imagino que con el first scan equivalente en siemens, pero en visualizacion ¿como? Saludos
Hola Carlos, buen día... 1Botón, varias entradas --- Hasta donde sé, no se puede, igual y ya lo sabes pero activaría un contacto NO y después varias bobinas FirstScan -- En su momento busqué pero no encontré un bit, lo que yo hago es poner una línea con un R_TRIG que active una bobina , esa bobina solo se activará una vez después que el Controlador pase a modo RUN, si se apaga y enciende hará lo mismo, ya decido yo si utilizar un contacto de esa bobina para poner otra en SET. Ahora recuerda que en Codesys cada programa principal se asigna a una tarea, si tienes 2 o más tareas pues cada programa tendría que tener su propia lógica, en caso de que trabajes con variables locales. SET/RESET Etapas--- Una disculpa Carlos pero no entendí a que te refieres Valor inicial -- puedes usar la opción de "Valor Inicial", en la ventana de "declarar variable" aparece una opción de "Valor Inicial", ahí tu le puedes asignar un valor, cada vez que reinicies tu programa se tomará ese valor, la manera de declarar es la siguiente: Boton: BOOL := true; Numero: INT := 100; Si en tu lógica tienes alguna otra condición que pueda modificar tu valor pudiera ser que no "se logre ver" que tome ese valor al inicio, pero si lo hace... No se si me de a entender, igual si no entendí bien alguna duda hazmelo saber y muchas gracias por comentar :D
Hola Carlos SET/RESET: Imagina que tienes un ciclo electroneumático A+ B- B+ T2S A-. A la hora de programar en un segmento tengo que setear una memoria (por ejemplo de la etapa 1, que serían las condiciones iniciales) y lo que hago es resetear todas las etapas que vienen después, por si en algún momento se ha quedado alguna pillada) Es decir que en el segmento donde programo el set, en el mismo segmento con una derivación pongo reset etapa2, etapa3, etapa4, para asegurarme que los dos cilindros están en su posición. ¿hay algo para utilizar un soló reset y que resetea la etapa2, etapa3,etapa4? En siemens si existe, tu pones reset y tienes debajo la opción de poner 1 a 4. (con un sólo set, podrías setear varias entradas a la vez) ¿En codesys por cada segmento de programación tengo que poner sólo un set o reset? Es decir podría poner varias derivaciones en el mismo segmento con un contacto que me activen 4 set distintos o 4 reset distintos, o tendría que poner 4 segmentos diferentes, cada uno con una línea con su contacto? Si no me he explicado me lo dices y te envío una captura de pantalla por mail. Gracias por todo lo demás, lo compruebo haber si me sale. Saludos
@@carlosgallego1076 Hola Carlos, bueno no se si entendí al 100% la duda, le explico lo que entendí. Cuando menciona "Etapa1, Etapa2, Etapa3, etc.", ¿Se refiere a variables?, de ser así pues lo primero que comenta de si hay una opción que con solo 1 SET/RESET a mi experiencia podría decirle que no hay una opción como esa. Lo segundo, si es posible poner varias bobinas en una misma línea, solo que las va colocando como "en paralelo", una debajo de otra, ahí puede indicar si quiere que sean SET o Reset o NO o NC, en los vídeos que tengo con las escenas de Factory IO puede ver como las uso, al menos 2 bobinas en un solo renglón. Le dejo uno de esos vídeos, en el minuto 20:03 puede verlo en los renglones 2 y 4. ua-cam.com/video/DrPCLnJ7kTM/v-deo.html Ahora, para programar procesos secuenciales, que son "paso a paso" yo prefiero hacerlo como lo muestro en esos vídeos, SET y RESET en un mismo paso. Cuando se cumplen las condiciones de un paso actual desactivo ese paso y activo el siguiente, ahora también para los pasos utilizo variables de tipo INT o DINT, ¿Por qué?, porque en realidad yo lo veo como BITS, así ya solo tengo que declarar 1 variable y puede acceder a 16 bits (INT) o 32 bits (DINT) y en caso de que me falten pasos (BITS) pues lo convierto a arreglo de INT o DINT, otra ventaja es que cuando sucede una alarma o quiero "Reiniciar" el sistema para poner en FALSE TODAS las bobinas basta con enviar un 0 a la variable de tipo INT-DINT, así por ejemplo, si me encontraba en un paso con SET Pasos.10, cuando yo escriba el 0 en Pasos pues el bit Pasos.10 cambiará a FALSE. Comenteme si entendí bien las dudas, y para la cuestión de la lógica secuencial si le parece buena opción, podemos programar una sesión remota y le explico como yo la utilizo, tengo mas ejemplos en PLC Allen Bradley pero es casi lo mismo que hago en los vídeos de Factory IO.
@@vcpp4156 ok, that could be a great video. At this moment I can said that you need a timer TON and I recommend use a MOVE where you move the actual ET(elapsed time) to another variable. And with that you could start an ADD function, where you can make an addition of the actual time and the “backup” time or accumulated time
Este vídeo forma parte del curso en Ladder que estamos creando, los invito a ver la lista de reproducción (Y)
ua-cam.com/video/ZRkj4nGty74/v-deo.html
DESPUES DE MIRAR CUARENTA MIL VIDEOS EN UA-camS SOBRE EL CICLO DE SCAN, ESTE ME RESOLVIÓ LA DUDA, MUCHAS GRACIAS!!!!
Que bueno Gustavo. De hecho éste es uno de mis videos favoritos, me dejó mucho aprendizaje
Muchas gracias x tu enseñanza!! 💪
🙌🏼Por nada amigo
Gracias Carlos por los aportes!!
Enhorabuena por tu trabajo!
Gracias por tus videos, he aprendido mucho y el programa codesys me parece un herramienta excelente.
Gracias por tu comentario Fabian, es bueno saber que el contenido sea de ayuda...
excelente video bro, muchas gracias ayudas mucho
Gracias mi buen 🙌🏼🙌🏼
Muy buenos tus videos Carlos!!
Enhorabuena por tu trabajo!!
Muchas gracias por tu comentario Diego, que bueno que te haya gustado el vídeo y espero te sea de ayuda...
excelente video Carlos, solo una cuestion, en mi caso tengo que con ese mismo boton resetear por ejemplo la falla de un motor (OL) e igual con ese mismo boton encender y apagar, que se complica mas, y todavia se puede hacer mas complejo si quisieras que fuera momentaneo, no se diga para un motor reversible que ahi si la logica esta mas comleja jeje
Hola Juan Pablo, es un poco revuelto lo que me comentas, pero todo se puede hacer con memorias o también conocidas como banderas
Algo tan simple y no recuerdo usarlo nunca. Gracias
A mi me tocó utilizarlo debido a que tenía una HMI que no permitía colocar botones Mantenidos, y yo no quería poner 2 botones, uno de encendido y uno de apagado debido al espacio (tenía que poner muchos botones) así que ahí aplique este método.
Lo interesante aquí es que este simple ejercicio te ayuda entender cómo funciona Ladder, paso a paso ves como va evaluando los estados el programa, contacto por contacto, bobina por bobina
Hola amigo aquí apoyando tu video
Gracias por el apoyo amigo, se agradece mucho (Y)
Gracias.
A ti Christian...
Hola Carlos
Tengo varias consultas, y no sabía realmente donde ponerlas, y como este video hablas de botón y explicas ciclo, he decidio ponerlas aquí.
En esta visualización, con un botón activamos una entrada. ¿hay forma de activar con un sólo botón en la visualización, varias entradas? yo lo he intentado poniendo una coma, o punto y coma en la variable tecla o conmutar, pero no lo compila.
¿En codesys hay un first scan como en siemens, que sólo funciona en el primer incio de ciclo.?
Cuando estamos programando en PLC_PROG un segmento, donde queremos setear LA ETAPA 0 y por seguridad resetear todas las etapas desde la 1 a la 6 por ejemplo. En siemens también existe un set o reset donde le dicen desde que número hasta que número quieres que setees o resetees ¿ hay algo similar en codesys? o hab´ria que hacerlo una por una poniendo derivaciones de conducto, yo las he puesto todas las derivaciones en el mismo segmento y no me funcionan los reset. ¿ habría que poner los reset, cada uno en un segmento diferente?
En programación o en visualización si queremos que una entrada tenga un valor nada más ejecutar el programa. ¿Como lo haríamos?. En programación imagino que con el first scan equivalente en siemens, pero en visualizacion ¿como?
Saludos
Hola Carlos, buen día...
1Botón, varias entradas --- Hasta donde sé, no se puede, igual y ya lo sabes pero activaría un contacto NO y después varias bobinas
FirstScan -- En su momento busqué pero no encontré un bit, lo que yo hago es poner una línea con un R_TRIG que active una bobina , esa bobina solo se activará una vez después que el Controlador pase a modo RUN, si se apaga y enciende hará lo mismo, ya decido yo si utilizar un contacto de esa bobina para poner otra en SET. Ahora recuerda que en Codesys cada programa principal se asigna a una tarea, si tienes 2 o más tareas pues cada programa tendría que tener su propia lógica, en caso de que trabajes con variables locales.
SET/RESET Etapas--- Una disculpa Carlos pero no entendí a que te refieres
Valor inicial -- puedes usar la opción de "Valor Inicial", en la ventana de "declarar variable" aparece una opción de "Valor Inicial", ahí tu le puedes asignar un valor, cada vez que reinicies tu programa se tomará ese valor, la manera de declarar es la siguiente:
Boton: BOOL := true;
Numero: INT := 100;
Si en tu lógica tienes alguna otra condición que pueda modificar tu valor pudiera ser que no "se logre ver" que tome ese valor al inicio, pero si lo hace...
No se si me de a entender, igual si no entendí bien alguna duda hazmelo saber y muchas gracias por comentar :D
Hola Carlos
SET/RESET: Imagina que tienes un ciclo electroneumático A+ B- B+ T2S A-. A la hora de programar en un segmento tengo que setear una memoria (por ejemplo de la etapa 1, que serían las condiciones iniciales) y lo que hago es resetear todas las etapas que vienen después, por si en algún momento se ha quedado alguna pillada) Es decir que en el segmento donde programo el set, en el mismo segmento con una derivación pongo reset etapa2, etapa3, etapa4, para asegurarme que los dos cilindros están en su posición.
¿hay algo para utilizar un soló reset y que resetea la etapa2, etapa3,etapa4? En siemens si existe, tu pones reset y tienes debajo la opción de poner 1 a 4. (con un sólo set, podrías setear varias entradas a la vez)
¿En codesys por cada segmento de programación tengo que poner sólo un set o reset? Es decir podría poner varias derivaciones en el mismo segmento con un contacto que me activen 4 set distintos o 4 reset distintos, o tendría que poner 4 segmentos diferentes, cada uno con una línea con su contacto?
Si no me he explicado me lo dices y te envío una captura de pantalla por mail.
Gracias por todo lo demás, lo compruebo haber si me sale.
Saludos
@@carlosgallego1076 Hola Carlos, bueno no se si entendí al 100% la duda, le explico lo que entendí.
Cuando menciona "Etapa1, Etapa2, Etapa3, etc.", ¿Se refiere a variables?, de ser así pues lo primero que comenta de si hay una opción que con solo 1 SET/RESET a mi experiencia podría decirle que no hay una opción como esa.
Lo segundo, si es posible poner varias bobinas en una misma línea, solo que las va colocando como "en paralelo", una debajo de otra, ahí puede indicar si quiere que sean SET o Reset o NO o NC, en los vídeos que tengo con las escenas de Factory IO puede ver como las uso, al menos 2 bobinas en un solo renglón. Le dejo uno de esos vídeos, en el minuto 20:03 puede verlo en los renglones 2 y 4.
ua-cam.com/video/DrPCLnJ7kTM/v-deo.html
Ahora, para programar procesos secuenciales, que son "paso a paso" yo prefiero hacerlo como lo muestro en esos vídeos, SET y RESET en un mismo paso. Cuando se cumplen las condiciones de un paso actual desactivo ese paso y activo el siguiente, ahora también para los pasos utilizo variables de tipo INT o DINT, ¿Por qué?, porque en realidad yo lo veo como BITS, así ya solo tengo que declarar 1 variable y puede acceder a 16 bits (INT) o 32 bits (DINT) y en caso de que me falten pasos (BITS) pues lo convierto a arreglo de INT o DINT, otra ventaja es que cuando sucede una alarma o quiero "Reiniciar" el sistema para poner en FALSE TODAS las bobinas basta con enviar un 0 a la variable de tipo INT-DINT, así por ejemplo, si me encontraba en un paso con SET Pasos.10, cuando yo escriba el 0 en Pasos pues el bit Pasos.10 cambiará a FALSE.
Comenteme si entendí bien las dudas, y para la cuestión de la lógica secuencial si le parece buena opción, podemos programar una sesión remota y le explico como yo la utilizo, tengo mas ejemplos en PLC Allen Bradley pero es casi lo mismo que hago en los vídeos de Factory IO.
Make video on counter using pi
Hi VCP P, thank you for comment!
Could you be more explicit on your suggestion?, please :D
Thank you!
@@CarlosAbner I want to know, how to make motor runing counting in raspberry pi with codesys. So I will make data for energy consumption of my motor.
@@vcpp4156 So, Do you want to register the time while is running?
Yes. In raspberry with codesys
@@vcpp4156 ok, that could be a great video. At this moment I can said that you need a timer TON and I recommend use a MOVE where you move the actual ET(elapsed time) to another variable. And with that you could start an ADD function, where you can make an addition of the actual time and the “backup” time or accumulated time