NI Home
Cart Carro | Ayuda
Hello Events Academic NI Developer Zone Support Solutions Products & Services Contact NI MyNI
Está aquí: 
NI Home > NI Developer Zone > NI Discussion Forums


Responder
Member
Lou_5486
Mensajes publicados: 22
0 Kudos

Pausar adquisición

Hola a todos,

 

primero de todo, gracias a los que sabéis mucho de labview y programación y contestáis las preguntas, me habéis resuelto muchas cuestiones y os estoy muy agradecida. 

 

Tengo unas pregunta que haceros, ¿se puede detener momentáneamente una adquisición de datos sin que el DAQmx Read de un error?

 

Mi programa es el de la imagen. El proceso real es un circuito de agua cerrado, donde tengo una bomba centrífuga (caudal constante), una válvula de control (para variar el caudal) y un caudalímetro de turbina (que mide el caudal).

Cuando la válvula está cerrada el caudal es cero, y el caudalímetro al no detectar ninguna señal, da un error y detiene el programa. 

¿Existe alguna estructura de programación para que cuando el voltaje es cero (válvula cerrada) el DAQmx Read se quede como en pausa o algo parecido?

 

Un saludo,

 

Lou

Member
Julio9
Mensajes publicados: 180
0 Kudos

Re: Pausar adquisición

Hola Lou_5486

 

Etaba la imagen que nos añadiste y queria preguntarte el porque tenias los status de error de ambas mendiciones conectadas a la compuerta Or para que detenga el ciclo si sucede algun error? De cual de las dos  tareas es donde se produce el error?

 

Saludos 

 

Julio Mena

Member
Lou_5486
Mensajes publicados: 22
0 Kudos

Re: Pausar adquisición

Hola,

 

el error se produce en el DAQmxRead (El segundo desde abajo). Lo de juntar el estatus era para detener el ciclo si alguno de los DAQmx daba error, eso me lo copié de algún sitio, porque no entiendo demasiado de programación.

 

¿Crees que si quito eso se terminará mi problema?

 

Saludos,

 

Lou

Member
Julio9
Mensajes publicados: 180
0 Kudos

Re: Pausar adquisición

Hola Lou_5486

 

Si eso que encontraste de ponerlo es para que cuando se genere un error se detenga el ciclo y te informe que se ha producido un error, si lo borras si seguira corriendo tu programa, sin embargo se quedara con error entonces ya el DAQmx Read ya no te leeria correctamente. Queria preguntarte si tu programa siempre empieza en cero? o ya se me ocurrio una idea, yo creo suponer que tienes conectado fisicamente la salida del canal analogo que estas produciendo al canal de tu contador, entonces utilizando un case cuando el voltaje que mandas escribir en DAQmx Wirte sea cero cambie el case que engloba la parte de arriba de tu ciclo while para que no se ejecute esa parte, y cuando este voltaje cambie se cambie de case y funcione las funcion de DAQmx Read y las funciones que tiene. De esta manera puedes dejar la parte de los status para si llega a ocurrir algun problema se detenga el programa y pueda ver que fue lo que paso. 

 

Saludos

 

Julio Mena

Al usar este sitio Web, usted acepta los Términos de Uso del mismo. Por favor, lea estos Términos de Uso cuidadosamente antes de usar alguna parte de este sitio. Diríjase a este enlace para obtener información sobre la política de violación a los derechos de autor de ni.com.
Mi Perfil | Privacidad | Aviso Legal | Comuníquese con NI © 2011 National Instruments Corporation. All rights reserved.    |    Enviar esta página Enviar esta página