el 11-10-2011 09:39 AM
saludos, estoy haciendo una aplicacion que muestrea valores como temperatura corriente y voltaje, cada uno en un diferente VI y por diferentes puertos, cuando un puerto no esta funcionando adecuadamente sale un mensaje de ERROR, pero este mensaje bloquea la transferencia de datos de los otros puertos, por ejemplo hay problemas con el puerto de temperaturas y mis datos de voltaje y corriente no se actualizan porque esta el mensaje presente, y hasta no hacer clic en ACEPTAR estos no siguen trabajando. todos mis datos son en tiempo real asi como la transferencia. que puedo hacer para que este mensaje de error no afecte a mis otros VI?
¡Resuelto! Ir a solución.
el 11-10-2011 11:22 AM
Hola Joseablerto esto tiene que ver con el manejo de error de tu programa.
En LabVIEW si no manejas el error en forma manual entra el manejo automático de errores de LabVIEW con el cual lo que va a hacer es desplegar el mensaje de error. la forma mas sencilla es cablear los cluster de error para pasar el error a algún lugar en donde lo vas a manejar ya sea para tratarlo o hacer algo con el, como mandar el mensaje, pero de esta forma tu controlas que esta pasando y no detienes la ejecución de tu programa
http://www.ni.com/academic/students/learnlabview/debugging.htm
Custom Error Handling In LabVIEW
Saludos
el 11-10-2011 04:30 PM
si, eso entiendo claramente, pero al desplegarse el aviso de error, se detiene el programa, esperando que se presione ACEPTAR para revisar los errores, yo quiero saber si se puede seguir ejecutando mi programa sin necesidad de presionar ACEPTAR o sin necesidad de revisar los errores, porque en mi ejecutable yo cuento por ejemplo con 2 datos de voltaje que cambian en tiempo real, pero si hay problema con uno de ellos el otro se "estanca", no recibe nuevos datos hasta que no sea solucionado el problema. en si si un voltaje (bateria) deja de funcionar, no tiene porque afectar al otro.
algun ejemplo tal vez para poder guiarme.
muchas gracias
el 11-11-2011 08:07 AM
Saludos,
Aunque no es muy recomendado, en la ventana "Dialog & User Interface" hay una caja denominada "Clear Errors" que puede eliminar el error que está deteniendo tu vi.
Otra manera es leer por cluster el código del error que se te está presentando y sólo eliminas ese error en específico, así en caso de que se te presente otro error el VI se detendría (ejemplo, ver imagen code.png).
Jorge N.
el 11-11-2011 09:30 AM
Hola Jose Alberto como te menciona Jorge eso es por el manejo automático del error, para hacer tu el manejo de error debes de usar los cables de los clusters y con eso puedes controlar que se va a hacer con el error incluso puedes hacer que no se despliegue nada o que vuelva a intentar conectarse, y la opción de desactivar el manejo automático sin tener ningún manejo manual no es recomendable.
Saludos
el 11-11-2011 09:51 AM
uhm entonces, en caso uno de mis puertos no comunique, como puedo colocar una alerta pero sin que este afecte el funcionamiento de mi ejecutable?
si de mi ejecutable donde yo utilizo 2 puertos, y en uno de ellos no se detecta error, mande un mensaje que no interfiera con la transmisión del otro puerto.
en si mi proposito es que si un puerto no funciona, no tiene que interferir con la transmision de mi otro puerto.
muchas gracias por las recomendaciones
el 11-11-2011 10:13 AM
Saludos,
Una vez que sepas el código del error que aparece cuando no conmunique tu puerto, lo puedes manejar con la caja "Simple Error Handler". Tu escoges si quieres que se abra una ventana o no, o si quieres que tu error sólo aparezca como un warning en tu programa.
Jorge N.
el 11-11-2011 11:07 AM
una pregunta.
cómo se maneja el SIMPLE ERROR HANDLER?, algun ejemplo para las conecciones a esta,
ya tengo claro lo que quiero, deseo determinar el error y mostrarlo pero que no se detenga el VI esa es la opcion de mensaje 3, pero no se como hacer las conecciones. algun ejemplo?
gracias
el 11-11-2011 01:28 PM
Lee la ayuda de la caja, está muy bien detallada.
Aquí tienes un link tambien:
Jorge N.