Como ya sabrás de otras entradas del blog o si eres alumno del curso de TIA Portal, sabes de mi predilección por hacer las secuencias de automatización es el uso de Set y Reset.
Esta vez te voy a contar cómo se puede usar el desplazamiento de bits en TIA Portal para crear una secuencia.
He de decir, que yo esto no lo uso, pero he visto usar el desplazamiento de bits en Step 7 clásico para realizar secuencias.
Y créeme que se puede usar muy, pero que muy mal.
Así que te voy a explicar cómo veo yo que se debe usar esta herramienta, y cómo no.
¿En qué se basa este método?
Básicamente lo que haces es lo siguiente:
Inicialmente, con las condiciones de partida, cargas un "1" en el bit menos significativo del byte, palabra o doble palabra que quieras usar.
Luego, cuando se cumplan las condiciones de la siguiente etapa, mueves 1 posición hacia la izquierda de la palabra (o el ancho elegido).
De tal forma, que si el bit estaba en el M101.0, pasará a estar en el bit M101.1.
Cuando se cumplan las condiciones para pasar de etapa, pues ese bit pasará a estar en el M101.2
Y así, sucesivamente.
Lo vemos luego más detenidamente en el vídeo, pero a grandes rasgos de lo que se trata es de mover un bit por las diferentes posiciones de una palabra por ejemplo de cara a que cada posición de bit de dicha palabra, es una etapa de la secuencia.
Sustituyes un Set/Reset, por ese movimiento.
De por sí, esto podría parecer una buena forma de hacerlo, pero tiene sus limitaciones, por lo que no me gusta especialmente.
En cualquier caso, te lo voy a explicar por si lo ves, o si lo quieres probar.
Cómo NO debes usar el desplazamiento de bits para crear secuencias
Bajo mi punto de vista, lo que no debes hacer bajo ningún concepto es hacer tantas llamadas al movimiento del bit como partes tenga la secuencia.
Es decir, no poner N bloques de movimiento del bit.
La razón es que es un auténtico sin Dios a poco que se complique el programa.
Piensa que cuando vayas a mantener el programa, tú no vas a ver en ningún lado dónde se le va a dar valor a la marca M101.1 por ejemplo. No hay ningún sitio. Solo verás que se lee su estado, y nada más. Por lo que si quieres ver cuándo se le da valor, tienes que ir a la posición anterior (M101.0), y ver dónde hace la secuencia de mover el bit.
Si tienes 16 bits (por ejemplo), y tienes 16 segmentos con sus 16 movimientos de bit, eso es una chapuza (insisto, bajo mi punto de vista).
No porque el programa no vaya a funcionar bien, sino porque es una forma poco mantenible y muy confusa.
Y créeme, que cuando estás en una avería, te acuerdas de quién programó la secuencia. Bueno, de esta persona, y de varios integrantes de su familia.
Cómo SÍ puedes usar el desplazamiento de bits para crear secuencias.
Bueno, pues está claro ¿no?
Todo debe estar concentrado en un único sitio donde se vean todas las condiciones en un único segmento y en sólo un punto se haga mover los bits.1
Esto simplifica sobremanera el mantenimiento porque si buscas las referencias cruzadas de los bits o de la palabra, enseguida verás el sitio donde se produce la magia.
Tan sencillo como eso.
Muchas veces hacer las cosas bien, es más sencillo que hacerlas mal.
Y puedes pensar que quien va a hacerlas mal entonces... pues créeme que somos muy imaginativos a veces (yo el primero, ojo).
El vídeo de desplazamiento de bits
Como siempre, es más fácil de verlo que de explicarlo con texto, así que let's go!
Fe de erratas
El el vídeo digo que al usar el desplazamiento a la derecha se introducen unos por la izquierda, y eso no es siempre cierto.
Como me han apuntado (Gracias Toni), es incorrecto ya que depende del signo.
Si el bit de signo es 1, se rellenan con 1. Si el bit de signo es 0, se rellenan con 0.
Esto me pasa por ir tan rápido. Pero ya veo que estáis atentos jeje.
¿Qué te ha parecido?
Seguro que habrás visto secuencias hechas con este estilo de programación e incluso seas asiduo de ellas.
Si quieres saber otros métodos de realizar secuencias tienes Grafcet en TIA Portal: 5 formas de crearlo
¿Cómo te gusta programar las secuencias?
Recuerda que si necesitas iniciarte con la programación de TIA Portal tienes el curso de iniciación con el que entender el funcionamiento de los autómatas de Siemens, programar en escalera y las pantallas Basic de Siemens... ¡todo en el mismo curso!

Comentarios (16)