el 01-22-2013 12:29 PM
Hola,
Esta extraño ese comportamiento, veo que dices que tienes dos VI, sera que estas tratando de hacer comunicacion con los dos al mismo tiempo?
Saludos,
el 01-23-2013 12:45 PM
Hola,
Estoy mirando el código dentro de Init.vi y el error 5002 ocurre cuando luego de abierto el puerto excede el limite de reintentos de comunicarse exitosamente con el Arduino ya sea pq no tiene respueta o no se sincroniza.
Haz encontrado el problema? Sino dime cual código estas usando en tu Arduino UNO para mirarlo.
Saludos,
el 01-23-2013 01:39 PM
El codigo de arduino que le cargo a la tarjeta viene dentro de los drivers propios de arduino se cargan el la tarjeta a traves de sketch
el 01-23-2013 03:46 PM
Hola,
Buscando información sobre tu error encontre esto Why Do I Get Error 5002 When Using the LabVIEW Interface for Arduino? creo que tu comunicación es USB así que solo faltaría revisar la opción 5.
Make sure that the baud rate specified as an input to Init.VI matches the baud rate specified in the firmware by #define DEFAULTBAUDRATE X (where X is the baud rate).
Tambien encontre esto otro ERROR 5002 with UNO board on Init donde muestran una modificación al código fuente de LabVIEW.
Espero te sea de ayuda.
Saludos,
el 01-23-2013 05:46 PM
Hola de nuevo
Revisando el codigo del programa paso a paso
el programa se queda aqui
Esto hace que la condicion de aqui no se cumpla la condicion TRUE
Y esto hace que genere un codigo de error
la Verdad no tengo mucha idea pero con un poco de ayuda creo que podremos solucionar el problema
un saludo y muchas gracias por todo
el 01-24-2013 08:43 AM
Hola,
Eso sucede pq LabVIEW nunca recibe la palabra "sync" del Arduino, parece que solo se presenta con el Arduino UNO.
En el segundo enlace que te coloque sale una imagen de una modificacion que realizo alguien para cerrar el puerto en caso de que la comunicacion fallara. Ya que a veces si no cierras el puerto correctamen puede que necesites cerrar todo el labview o reiniciar el computador.
Lo MUY extraño de tu caso es que si logras obtener la comunicación haciendo un reset a mitad del proceso, eso no tiene sentido para mi a menos que el arduino este mandando la sincronizacion a penas enciende sin esperar, o tal vez tengas el buffer de salida lleno al momento de iniciar la comunicacion o algo asi, o que el arduino al encender trate de funcionar a 115200 y luego haga cambios del baudrates, algo asi explicaria pq no inicializa correctamente luego de un rato encendido.
Estas haciendo la comunicación por USB? Puedes probar con un baudrate bajo digamos 9600 y ver si ocurre los mismo?
Saludos,
el 01-24-2013 09:18 AM
He utilizado un sniffer para saber lo que esta haciendo mi puerto serie en cada momento
Como se observa en la primera fase esta esperando a recivir el sync el momento que yo pulso reset este recibe sync y empeiza la comunicacion y empieza enviar y recibir datos
la comunicacion es serie y si pongo otra velocidad diferente a 115200 no comunica
el 01-24-2013 09:23 AM
Hola,
Para que funcione con una velocidad diferente tienes que cambiarlo tanto en LabVIEW como en el código del Arduino.
Puedes darle reset en otro punto, o encenderlo sin correr el programa de LabVIEW y fijarte si igual manda el sync inmediatamente al encender o si efectivamente lo manda como respuesta a lo que se manda desde LabVIEW.
Saludos,
el 11-14-2013 05:56 PM
would be a better option settings that you check the reading speed of the port in the device properties, it should be similar to these setting in your program