LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

¿Porque no tengo disponible las opciones para configurar alarmas en variables compartidas creadas desde un ''control personalizado'' usando el modulo DSC?

Solved!
Go to solution

Saludos estimados colegas, tengo una pregunta con respecto al modulo DSC. Se que mediante este modulo puedo configurar alarmas si se superan o caen por debajo de los limites establecidos los valores especificados en variables compartidas (Hi: Enable/Lo: Enable), sin embargo noto que cuando creo una variable compartida desde un “control/indicador personalizado” (un cluster de números por ejemplo) no tengo disponible estas opciones. De hecho ni en el “NI Distributed System Manager” se pueden ver los valores de estas variables. ¿Como podría hacer para monitorear estas variables y agregar alarmas mediante el DSC?

0 Kudos
Message 1 of 5
(2,383 Views)

Hola Jairo.Gutierrez.

 

En efecto no se pueden configurar alarmas para las variables compartidas con tipos de dato complejos (como clusters o arreglos) más que la alarma de bad status. Adicionalmente, para recuperar la información de ese trace tendrás que hacerlo programáticamente, por lo que los valores no aparecerán ni en MAX ni en el DSM, aunque si se esten guardando.

 

Las dos opciones que te recomiendo serían:

1. Hacer tanto el monitoreo como el loggeo de alarmas programáticamente:

a) Para el monitoreo necesitas usar los VI´s del toolkit DSC (Read Trace), decir que es un tipo de dato variante, y después convertir el variant a tu cluster.

b) Para las alarmas la única manera que se me ocurre es generar eventos a partir de los cambios de valor de la variable y compararlos programáticamente con el límite, y si lo exceden loggear una alarma de usuario que si bien no esta directamente relacionada con ese trace tu puedes saber que a eso se debe la alarma.

 

Para estos casos te recomiendo revisar los ejemplos del módulo DSC para que veas como manipular los traces y las alarmas programáticamente. Así puedes generar eventos a partir de cambios en las variables: https://decibel.ni.com/content/docs/DOC-4375.

 

La segunda opción, que es mas sencilla, es que reemplaces tu variable compartida del cluster por variables donde guardes cada uno de los elementos del cluster. Puedes usar una convención de nombres para saber que las variables pertenecen al mismo cluster, pero tendrás toda la funcionalidad del módulo DSC sin tener que hacerlo programáticamente.

 

Espero haya respondido tu duda.

Aldo H
Ingenieria de Aplicaciones
0 Kudos
Message 2 of 5
(2,376 Views)

Hola Aldo,

 

Agradezco tu respuesta, probé hacer el loggeo de datos programáticamente y si funciona, sin embargo me surge otra interrogante en base a la segunda opción que me propones. Tengo una aplicación corriendo en una sb9612 que se comunica con otra que esta en un touch panel TPC-2106, debido a que son varias las variables compartidas que creé para mostrar información, opte por introducir varias de estas en clusters. Esto lo hice en base a lo que leí en un momento sobre la programación de FPGA donde recomiendan  transmitir al host la misma información usando menos controles/indicadores (con cluster o arreglos). ¿Seria recomendable independizar estas variables para disponer de la funcionalidad del modulo DSC?, ¿Qué repercusión tendrían en la transmisión de los datos agregar mas variables compartidas independientes?

0 Kudos
Message 3 of 5
(2,372 Views)

Hola Jairo.

 

Debido a tu aplicación, como mencionas, es más recomendable transmitir usando un menor número de variables, ya que minimizas el número de conexiones a la red que tiene que hacer el TPC. Si quieres separar las variables, lo que te podría recomendar es tener un programa en la computadora Host que lo único que haga sea tomar datos de esa variable de cluster y pasarlo a variables independientes que puedas loggear. Este proceso consumiria más recursos que guardar programáticamente las alarmas, aunque te daría un loggeo de alarmas mas sencillo de implementar y de interpretar.

 

Definitivamente no te recomiendo reemplazar tu variable de cluster completamente si la estas usando para comunicarte con un touch panel y ya tienes la aplicación desarrollada con esa arquitectura.

Aldo H
Ingenieria de Aplicaciones
0 Kudos
Message 4 of 5
(2,369 Views)
Solution
Accepted by topic author Jairo.Gutierrez

 

Gracias Aldo por tus comentarios.

 

Saludos

0 Kudos
Message 5 of 5
(2,364 Views)