el 05-01-2013 08:26 PM
Tengo un problema, estoy haciendo una secuencia de luces con una DAQ 6009 y labview 2012 32 bits, y una de las opciones es prender de derecha a izquierda dejando encendido el led anterior por ejemplo prende led 1, prende led 2, prende led 3…. Led 8, después apaga led 8, apaga led 7, apaga led 6…..led 1, pero no sé cómo hacer que la daq mande a la protoboard la señal de que se quede prendido el led anterior, la otra secuencia con la que tengo problema es prenden en pares, por ejemplo led 1,3,5,7 prenden mientras led 2,4,6,8 están apagando pasan 500 mlseg. y cambia prende led 2,4,6,8 y se apaga led 1,3,5,7 quedaría algo así 10101010 y después 01010101
Soy nuevo en esto espero que me puedan ayudar que tengan excelente día.
el 05-02-2013 10:44 AM
Hola,
Creo que tienes los conceptos claros de como hacerlo, sube tu código o una imagen para ayudarte a dar con la solución de tu problema.
Saludos,
el 05-02-2013 11:51 AM
Hola Gracias por responder, en seguita te anexo lo que llevo, solo tengo 2 secuencias porque no sé cómo hacer que prendan 2 o más a la vez, o se apaguen.
el 05-02-2013 04:06 PM
Hola,
No lo puedo abrir porque tu version de labview es 2012 y yo solo tengo la 2009, por favor guardalo usando Save for Previous Versions... y selecciona 2009 y vuelvelo a subir.
Gracias,
el 05-02-2013 08:46 PM
ok, aqui anexo la nueva copia. gracias!
05-03-2013 09:59 AM - editado 05-03-2013 09:59 AM
Hola,
Ya pude ver tu código y entendi que te esta sucediendo, tal como lo tienes no estas escribiendo un bit al DAQ, sino que por el contrario estas escribiendo todo el puerto, entonces para pasar varios leds encendidos no tienes que pasar el numero que enciende uno y luego el que enciende el otro porque asi como lo tienes solo queda encendido el ultimo que escribiste, lo que debes hacer es pasar el numero equivalente a todos los leds encendidos.
Te muestro los valores binarios y enteros para que entiendas mejor:
Led 1 y 2 => 11000000 => 192
Led 2 y 3 => 01100000 => 96
Led 3 y 4 => 00110000 => 48
Led 4 y 5 => 00011000 => 24
Led 5 y 6 => 00001100 => 12
Led 6 y 7 => 00000110 => 6
Led 7 y 8 => 00000011 => 3
Led 1-2 => 11000000 => 192
Led 1-3 => 11100000 => 224
Led 1-4 => 11110000 => 240
Led 1-5 => 11111000 => 248
Led 1-6 => 11111100 => 252
Led 1-7 => 11111110 => 254
Led 1-8 => 11111111 => 255
Led 7-8 => 00000011 => 3
Led 6-8 => 00000111 => 7
Led 5-8 => 00001111 => 15
Led 4-8 => 00011111 => 31
Led 3-8 => 00111111 => 63
Led 2-8 => 01111111 => 127
Led 1-8 => 11111111 => 255
Haz tu los cambios que yo no tengo el DAQ. Hay algunas mejoras que se pueden hacer a nivel de programación, pero para empezar esta bien como lo tienes ya que esta bastante sencillo y entendible.
Saludos Cordiales,
el 05-04-2013 04:55 PM
Muchas gracias!! También pensé otra manera aquí la anexo como posible solución, la solución que me propones la voy a utilizar también gracias!
05-06-2013 02:33 AM - editado 05-06-2013 02:34 AM
iAmbriz, Mis sugerencias complementando lo que dice LUIS:
1. No utilice el llamado al DAQ ASSISTANT en varias partes de su código, si usted observa cada vez que hace el llamado lo hace para hacer la misma función ( Salidas digitales ) por lo tanto solo es necesario hacer un solo llamado ( además al hacer múltiples llamados malgasta recursos y hace que el VI pese mas, por ejemplo si observa su VI pesa casi 1,5M algo muy grande para un código tan sencillo ), lo que debe hacer es un solo llamado y por código ajustar los valores para ingresar al Daq assistant,
2. Evite usar la "Flat Sequence Structure", esta estructura solo se debe usar cuando sea necesario.
3. Mi sugerencia para su código, es ingresar de una forma adecuada los datos ( Como le comento LUIS ), utilizar una matriz para guardar todas las posibles secuencias, seleccionar cual se va a visualizar con el selector y finalmente utilizar adecuadamente el DAQ ASSISTANT ( Observe la imagen donde se tomo los valores que menciono LUIS), este ejemplo le puede ayudar, claro esta que se puede mejorar ya que por ejemplo solo cambia de secuencia al completar un ciclo de los leds, algo que pueda que no necesite.
el 11-28-2014 07:34 PM
Me puenden hacer el favor de vorver a subir el harchivo pero para vercion 2013 les agradeseria mucho
el 12-02-2014 12:04 PM
Hola RomanGames2003,
En LabVIEW puedes compartir un código con otros desarrolladores simplemente creando un "snippet" o algo así como un "pantallazo" o print screen pero de solo la parte del código. Así, guarda la imagen que compartió Jockelnice más arriba (verás que es una imagen PNG) y simplemente la arrastras hacia el diagrama de bloques de LabVIEW. Para más detalles, te dejo este enlace con información sobre los "snippets" en LabVIEW.
Use VI Snippet to Store and Share Reusable Code Sections
Espero que te ayude esta información 🙂