el 08-04-2011 02:15 PM
Mi intención es comandar un regulador de presión de forma de producir un pulso de 1/10 de segundo
más un tiempo de relajación de los restantes 9/10 de segundo, y repetir ese ciclo de pulso y relajación
por ejemplo 100 veces.
Para ello he definido una señal que comprende el pulso y la relajación con el propósito que se repitiera
en el ciclo while cada vez, con el tiempo indicado en el generador de señal. Pero esto no me funcionó como pretendía,
los cilcos -Si no lo temporizo- se producen a mucha mayor velocidad que uno por segundo.
¿Es que acaso no se toma como intervalo entre puntos el por mi definido en el generador de señal (5 ms)?
¿No es el simulador de señal quien comanda el tiempo de ejecución del ciclo while al que pertenece?
Asunto menor, ¿ por qué no puedo crear una variable local para manejar el segundo stop al apretar solamente el primero?
DAQ USB-6229
el 08-05-2011 06:43 AM
Hola,
Lo de la variable local con el Stop:
- En el front pantel botón derecho-->Mechanical Action -->"Switch when released" y no "Latch when released"
- Ahora ya puedes crear la variable Local.
Que generador de senyal utilitzas ? Por lo que cuentas tienes por un Lado un generador de senyal que hace cosas de manera "independiente" (a su bola, a la velocidad que se ha programado lo que sea interno del generador para que lo haga) y luego tienes otras cosas controladas desde el while desde el PC (estas utilizan el timer interno de tu PC, independiente del del generador.... por lo que not ienen sincronización).
Yo intentaria bajar un nivel en la programación del generador y hacer todo el control desde el LabVIEW. Así el único timer que llevará el fluo de la comunicación serà el del PC.
Vaya bien,
Oriol
el 08-05-2011 09:41 AM
Muy amable por tu respuesta Oriol,
mi PC se comunica con un DAQ USB 6229, y la generación de la señal con el pulso la definí con el "Simulate Arbitrary Signal"
y en el primer intento lo coloqué dentro de un único ciclo while que también tenía definida una tarea para adquirir los datos
de una celda de carga. Ese primer intento no funcionó, el Simulate Arbitrary Signal estaba definido para que la señal se
repitiera en cada iteraciòn, pero solo escribìa un dato de la celda de carga y no producìa el pulso (de un segundo de perìodo)
definido.
Como entiendo que el ciclo while dura el tiempo necesario para que todas las tareas internas se completen, decidì separar
en dos ciclos while por un lado la adquisiciòn de datos y por otra la generaciòn del pulso. No creo que sea la soluciòn correcta
pero intenté ese camino, que tampoco funciona como deseo.
Cualquier sugerencia o corrección se los agradeceré.
Saludos, iet_fer