Necesitamos ver estado de bits dentro de unas variables donde se han almacenado datos, (función SCATTER TIA Portal) que son de tipo Word, Dword, etc… pero queremos conocer y utilizar el estado de un solo bit dentro de estas variables.
¿Para qué necesitamos ver estado de bits en una variable?
En ocasiones, disponemos de variables de tipo WORD, o DWORD donde se almacenan datos a lo largo del programa. Pero, necesitamos conocer el estado de solamente uno de los bits dentro de ese WORD o DWORD.
Por ejemplo, imaginad que los errores de la máquina se almacenan dentro de este WORD. Y en ese WORD, el error que nos indica que ha fallado un presostato nos lo dice el Bit número 11 de ese WORD.
Utilizar la función SCATTER TIA Portal para ver estado de bits.
Con la función Scatter TIA Portal vamos a poder acceder a todos los bits dentro de esa variable y conocer así el estado de cada uno de ellos. Esta función coge un bloque de bits y los coloca en un array de bits.
Por lo tanto, para utilizar esta función tenemos que crear un DB de datos y, en su interior crear una variable de tipo “Array[…] of Bool” de manera que la función Scatter TIA Portal pueda coger la variable de su entrada y pueda mover todos esos datos en forma de Booleanos a este Array dentro del DB.
Dónde se encuentra la función Scatter TIA Portal.
Por consiguiente, si queremos utilizar la función Scatter TIA Portal para ver el estado de bits dentro de una variable, tenemos que ir a la pestaña de instrucciones dentro de un bloque de tu proyecto, por ejemplo, dentro de un FC.
Dentro de las instrucciones, debemos de buscar la opción de Instrucciones básicas y posteriormente buscar la carpeta de funciones de Transferencia y ahí encontraremos la función Scatter.
Finalmente, al seleccionar esta función, la arrastramos al segmento que necesitemos y automáticamente quedará insertada en dicho segmento, lista para usar y rellenar los campos de la función para su correcto funcionamiento.
Cómo usar la función SCATTER TIA Portal.
Para utilizar la función Scatter TIA Portal para ver estado de bits dentro de una variable, tenemos que seguir estos pasos:
- Crear un DB de datos.
- Crear una variable dentro del DB.
- La variable será tipo Array of Bool.
- La cantidad dentro del array depende de los datos que quieras visualizar.
Por consiguiente, lo primero que hay que crear es un array de datos de tipo Bool, donde se van a almacenar toda la descomposición que generará la función Scatter. Para ello, creamos un DB de datos y dentro un Array de Booleanos.
Mientras tanto, al crear el array de tipo Bool, tenemos que poner entre corchetes la longitud de este. Por ello, si la variable de la que queremos ver el estado de los bits es de tipo Word significa que va a ocupar 15 bits, por lo que el Array tendrá el siguiente valor entre corchetes: [0..15].
Como resultado, una vez creado el array ya podemos llamar a la función Scatter, desde el árbol de instrucciones y colocarlo en el segmento. Una vez insertado, debemos rellenar los campos de la función, tanto de los parámetros de entrada “IN” y los parámetros “OUT” así como insertar un contacto de habilitación de la función en el parámetro “EN”.
Asimismo, pondremos una marca para habilitar la función. Y en el parámetro IN podremos el WORD que habíamos creado como “Alarmas_Generadas”. En el parámetro OUT pondremos el array creado en el DB de datos.
Ver los valores ONLINE de los bits.
Finalmente, una vez ejecutada la función y nos ponemos ONLINE, cuando se active la habilitación de la función, veremos como el valor que hay en el parámetro de entrada se refleja en los bits del Array que hemos colocado en la salida de la función Scatter TIA Portal.
Por consiguiente, en este ejemplo ONLINE, vemos como la variable WORD tiene un valor de “15”, con lo cual en el Array de bits se activará el Bit número “4”, que se corresponde con ese valor “15” del WORD.
Por lo tanto, para ver estado de bits de una variable es muy sencillo utilizando la función Scatter TIA Portal que te permitirá comprobar todos los bits dentro de una variable tipo Byte Word o Dword.
Para acabar, ¿sabrías hacer una intermitencia de una salida del PLC? ¿Cómo lo harías? Seguro que estás pensando en utilizar temporizadores. Olvídate de complicaciones, te voy a enseñar cómo hacer una intermitencia con la utilización de un solo contacto en TIA Portal, fácil y muy rápido, utilizando las marcas de ciclo en TIA Portal. Son unas marcas especiales que generan pulsos de reloj del PLC. Pero hay que cambiar cosas en la configuración de Hardware, por ello, te lo explico todo al detalle para que sea fácil:
Por cierto, si puede ser, déjame un comentario y dime lo que piensas sobre el artículo: bueno o malo, si crees que le falta algo, si te ha ayudado, lo que sea. De esta manera, yo podré mejorarlo y nos servirá a todos. Te contestaré en menos de 24h. Muchas gracias.