el 09-19-2011 02:46 PM
Otra cosa bien importante, el DAQ Assistant consume muchos recursos, a lo mejor no estás alcanzando a refrescar lo suficientemente rápido tu programa.
Trata de utilizar VIs de bajo nivel de DAQmx
Utiliza alguno de los ejemplos que vienen en LabVIEW example finder.
el 09-20-2011 03:46 AM
Sí, ese es el SubVI que utilizo.
Supongo te refieres al ciclo while, pero no entiendo porque dices que no debería ir. Te adjunto el VI donde hago la adquisición de datos, para que veas como la estoy haciendo.
Estaba pensando modificar la parte derivativa en el VI del PID, agregarle el filtro en la parte derivativa, de hecho ya obtuve la ecuación de diferencias para poder hacer la programación. ¿Crees que esto ayude ayude?.
No sabia lo del DAQ assistant, ya busqué algunos ejemplos del LabVIEW example finder y encontre varios que podría utilizar.
el 09-20-2011 09:54 AM
Lo que sucede cuando tienes un ciclo en un subVI es que cuando el VI principal accesa a tu SubVI este se queda ciclado y no regresa al VI principal.
Otra cosa, intenta primero hacer un PD, ya que la I mete un retrazo y es más dificil de controlar y esta solo sirve para hacer que el error sea 0, pero si no la utilizas tendras un error mínimo y despereciable.
Ahora, viendo tu VI principal, creo que la arquitectura la podemos mejorar!
Te dejo una liga sobre la liga de maestro esclavo.
Esta te sirve porque estamos leyendo de manera muy rápida y estamos procesando la información de manera independiente.
el 09-20-2011 09:54 AM
Olvide poner la liga
http://zone.ni.com/devzone/cda/tut/p/id/3022
el 09-20-2011 04:33 PM
Ok, tomaré en cuenta lo del controlador PD.
Ya revisé la liga, es muy interesante la forma que me sugeriste.
Y con respecto al ciclo, en los SubVI que LABVIEW ofrece igualmente lo utilizan, por ejemplo el PID.VI basico.
Gracias por toda la ayuda que me has proporcionado, intentaré de esta forma, cualquier cosa te comento.
Saludos, Angel.