11 abr 2010

Turulo USB09 con LabVIEW 8.6

En este proyecto se presenta la comunicación USB de tipo Bulk Transfer utilizando labVIEW 8.6 y la tarjeta de adquisición Turulo USB09. La comunicación se realiza a través de una librería picusb.vi . El puente que establece la comunicación entre el Microcontrolador y la PC se realiza mediante las librerías USB del software CCS C Compiler y el driver de la tarjeta de adquisicion  para Microsoft Windows XP y Windows 7.  


La pequeña práctica se basara el control de encendido de leds y relevadores de la tarjeta Turulo, dichas salidas son del puerto D (PORTD), estas salidas se manipularan  utilizando botones en labVIEW a traves de la libreria picusb.vi. También al mismo tiempo se adquiere una señal analógica del puerto AN4 de la tarjeta Turulo, los datos capturados se enviaran a labview y seran graficados.





A continuación seguimos todos los pasos para echar andar nuestro proyecto utilizando labview.




1.-Tener la Turulo USB09.



 
para aquellos que no cuentan con esta tarjeta pueden realizar la practica desarrollando este pequeño circuito.





Circuito electronico

En la siguiente figura se muestra el diagrama de como funciona los reguladores de voltaje, los hay interno y externos. Nosotros utilizaremos el regulador interno, para ello conectamos el capacitor en la entrada Vusb .


El regulador interno usb lo habilitamos con el siguiente codigo en CCS:

#fuse VREGEN


Configuración de Oscilador
Otro aspecto muy importante es la configuración de oscilador en los PIC's de la familia 18Fxx5x que son los que soportan el USB 2.0( datasheet 18F2455-2550-4455-4550 ).

La configuracion del oscilador nos indica que se debe obtener una entrada de 4Mhz independientemente de cualquier crystal que se este utilizando.

El módulo USB Clock Source tiene a su entrada un PLL Prescaler, o sea un divisor de frecuencia. En cada una de sus salidas vamos a tener FOSC dividida por 1, 2, 3, 4, 5, 6, 10 ó 12. Y mediante PLLDIV que no es mas que un Multiplexor vamos a seleccionar la que deseamos usar.

Así si nuestro cristal es de 20 Mhz y en PLLDIV colocamos un 100 estaremos dividiendo por 5 el valor de FOSC con lo que tendremos 4 Mhz a la salida del MUX. Si por el contrario el cristal es de 4 Mhz y en PLLDIV colocamos un 000 entonces dividiremos por 1 FOSC con lo que tendremos también 4 Mhz a la salida del MUX.

Esta salida del MUX es lo que utilizamos para inyectársela al PLL de 96 Mhz. Si le metemos 4 Mhz él genera 96 Mhz. Es esta capacidad de pasar de 4 Mhz a 96 Mhz la que nos da la posibilidad de usar un montón de cristales distintos.

Pero 96 Mhz es el doble de lo que nos hace falta para el USB que son 48 Mhz. Asi que inmediatamente después tenemos que tener, y tenemos, un divisor por 2 que es el segundo camino por el que llegamos a USBDIV y en este caso le pondremos un 1 para usar la señal proveniente del PLL

Observemos que además de inyectar la señal oscilante en USBDIV también se conecta la señal del PLL a 96 Mhz en un Postscaler, otro divisor, en este caso por 2, 3, 4 ó 6 y cuyas señales van al CPUDIV. O sea que podemos generar una señal de reloj para nuestro PIC, no para el USB sino para la velocidad de ejecución de nuestro programa tomándola del PLL y que puede ser de 16 Mhz, 24 Mhz, 32 Mhz ó 48 Mhz.

Pero además la señal original llegaba en paralelo al Oscilator Postcaler, otro divisor más, que de forma directa, sin pasar por el módulo PLL nos divide la frecuencia original del cristal por 1, 2, 3 ó 4 y que también va a parar al CPUDIV pero desde otro origen. Con este módulo podemos obtener otra gama de frecuencias distinta para hacer correr el programa.

Cual de ambos CPUDIV vamos a utilizar lo seleccionamos con el switch FOSC3:FOSC0 que es de donde sacaremos la definitiva frecuencia de ejecución de programas.

Por último también tenemos disponible una entrada proveniente del Primary Clock y que dividida por 4 llega también a FSEN y podemos utilizarla en lugar de la que le llega desde el canal directo/PLL.

Como puedes ver es toda una maravilla cómo esta montado este tema de los osciladores, sobre todo por lo que respecta a las inmensas capacidades que tiene para hacer correr nuestro PIC a decenas de velocidades distintas siendo capaz, al mismo tiempo de tener disponibles los 48 Mhz imprescindibles para el USB 2.0.

Por lo tanto nuestro circuito o configuración quedaria de la siguiente manera:

Realizado en CCS C : 

#fuses HSPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN

2-Firmware Turulo USB09 realizado en CCS C Compiler.

El firmware es un pequeño código de bajo nivel que se realiza para poder controlar entradas y salidas dependiendo de las necesidades del usuario. Además este pequeño código tendrá el objetivo de poder entenderse con la computadora o PC, realizando así la función de avisarte en el momento que ha sido conectado y detectado por la PC. En ese momento el firmware estará en espera de cualquier dato que se esté enviando por la PC atreves de cualquier software que se esté utilizando, en nuestro caso utilizaremos LabVIEW 8.6. Acontinuación se muestra en un pequeño diagrama a bloques de lo que hace el firmware.

Descarga el firmware (PicUSB)

Despues de haberlo descargado pasamos a compilarlo y observaremos que genera 4 warning, no se espanten esto es normal.



Cuando conectemos por primera vez nuestro dipositivo nos preguntara sobre el driver espesifico del dispositivo, le damos la ruta en donde se encuentra nuestro drivers.


 
Descarga el drivers(PicUSB-Driver)



Le damos finalizar y nos vamos administrador de dispositivo para si nuestro dispositivo quedo bien configurado por el ordenador. Aparecera con el nombre Tarjeta de adquisción (PicUSB-LabVIEW).


Le damos doble clic para ver la informacion del dispositivo, y saber si fue configurado con exito.


Observamos en el cuadro de texto que nos indica que Este dispositivo esta funcionando correctamente. Ahora es momento de enviar y recibir informacion del dipositivo PicUSB desde la plataforma LabVIEW.

3. Envió y Recepción de datos desde LabVIEW

La programación en labVIEW (PicUSB-LabVIEW) se realizo a través de un subvi (picusb) que realize para poder manipular facilmente el dispositivo usb. El subvi creado se muestra en la siguiente figura, donde muestra la configuracion que se tiene que realizar.

Descarga el subvi ( picusb)

Para tener agregado este modulo(SubVI) a labVIEW, debe copiarse a la siguente direccion
C:\Archivos de programa\National Instruments\LabVIEW 8.6\user.lib\picusb

Cuando hayamos realizado esto, nuestro modulo aparecerá agregado en labview.



El subi creado tienes las siguientes entradas:

Vid_Pid: Es el nombre del vendedor y producto con el que fue configurado nuestro dispositivo, en nuestro caso: "vid_0X04d8&pid_0010"

N.bytes a escribir: Nos indica el numero de bytes o el tamño del dato que vamos a transferir.

Dato a Enviar: Indica el dato que se va a enviar.

Retardo de entrada y salida: Nos indica a cada cuanto tiempo haremos la capturar de datos. El tiempo tiene que indicarse en milisegundos.

N.bytes a Recibir: Aqui indicaremos el tamaño de datos que estamos enviando del dispositivo usb (microcontrolador o PicUSB).

Dato Recibido: En esta parte es donde capturaremos los datos que se estan enviando del dispocitivo y lo visualisamos en un grafica si estamos enviando datos de temperatura o el termometro que tiene labview, esto depende de lo que se este controlando.

En la siguiente figura se muestra un ejemplo como utilize esta pequeña libreria o subvi que diseñe, en una programacion estructura de labview o diagrama a bloque .


La programacion virtual (Panel Frontal) del proyecto se observa en la siguiente figura:



En la figura, los botones que se muestran son para encender y apagar los leds que se mostro en el diagrama de circuito del dispositivo o tambien nos puede servir para accionar valvulas, motores o cualquier carga. y la grafica para ver como va cambiando una señal analogica con respecto al tiempo. Esta señal puede derivar de cualquier sensor analogico.

Descargar el proyecto completo (Picusb-LabVIEW)

El proyecto completo lo podemos observar detalladamente en el video que publique en youtube.



Con esto se presento una metodología que permite la comunicación entre un microcontrolador PIC18F4550 y LabVIEW para tareas de adquisición de datos. Los resultados obtenidos demuestran que la metodología implementada funciona perfectamente, se logra trasferir datos de alta velocidad. Con esta técnica se pretende que estudiante e investigadores puedan construir una tarjeta de adquisición de datos y que pueda implementarse para tareas de simulación, supervisión y control.

REFERENCIAS:

[1]Cueto, J. A. (2009). Comunicación USB de Alta Velocidad entre LABVIEW y un Microcontrolador para la Adquisicón de Datos en Tiempo Real. CONAGOLFO 2009, (pág. 5). Tuxtla Gutierrez, Chiapas.

[2] Gary W. Johnson, R. J. (2006). LabVIEW Graphical Programming, Fourth Edition. New York: McGraw-Hill.

[3] Jan Axelson. (2001). USB Complete Everything You Need to Develop Custom USB Peripherals,Third Edition. Madison, WI: Lakeview Research.

[4] Lazaro, A. M. (2005). LABVIEW 7.1: PROGRAMACION GRAFICA PARA EL CONTROL DE INSTRUMENTACION, Cuarta Edición. Texas: Thomson.

[5] National Instruments (2008). http://www.ni.com/

[6] Universal Serial Bus (2008). http://www.usb.org/

[7] Microchip (2008). http://www.microchip.com/

[8] Usb Desencadenado


Actualizaciones

  1. Conexion con windows 7 (32bits y 64bits)
  2. Correccion del error de lectura no continuo by herrera 


PROYECTOS REALIZADOS CON ESTA METODOLOGIA

Control de temperatura de un refrigerador ( Realizado por Nano)





185 comentarios:

  1. HOLA !!

    MUY BUEN TRABAJO!!

    COMO LE HAGO PARA IR ALMACENANDO LA INFORMACION EN FUNCION DEL TIEMPO
    DE UN MUESTREO COMO EL DE TU VIDEO

    SALUDOS..,

    ResponderEliminar
  2. En la librería o el SubVI(picusb.vi) que hice tiene para hacer lecturas en un determinado tiempo al igual para enviar datos, esto depende de tus necesidades. Para guardar tu información utiliza el write to measurement file, esto te hara un escritura constante en el editor de texto, donde aparecera la lectura incluyendo fecha y hora. Espero haber respondido tu pregunta.

    ResponderEliminar
  3. SIi exelente aplicacion....
    Me imagino que se tendria que hacer un arreglo de programacion para que se pueda hacer ingresar datos digitales y salidas analogicas a la PC. Puesto que solamente podemos ver que usando la computadora mando los pulsos para que se enciendan los led y usando el potenciomentro ingresan datos anologicos pero lo pueden hacer viciversa??? si hacer algun cambio al programa????

    ResponderEliminar
  4. claro que se puede, lo datos que valla mandando
    pór ejemplo de una herramienta Knob de labview lo puedes almacenar en un variable y esa variable lo utilizas en pwm set_pwm1_duty(variable), y puedes controlar la velocidad de un motor, la intensidad de luz de un foco.etc.

    ResponderEliminar
  5. Hermano tu proyecto es excelente, actualmente me encuentro realizando una tarjeta de adquisicion de datos con ese modelo de microcontrolador, qusiera saber si tienes tiempo para que me puedas asesorar en algunas dudas que tengo. Mi nombre es Franklin Gonzalez y soy de Venezuela, mi correo es frank0311@gmail.com escribeme si tienes la disponibilidad para asesorarme. Gracias

    ResponderEliminar
  6. Franklin Puedes empezar con el pequeño diagrama que muestro en paso 1. lo demas es sale de tu imaginacion para diseña tarjeta de acuerdo a tus necesidades y si tienes problema con el diseño te enviare el de mi tarjeta que realize.

    ResponderEliminar
  7. Excelente aporte mi hermano
    Tu me podiras hacer un favor y explicarme un poco mas detallado la comunicacion del usb a pc utilizando labview te lo agradeceria

    ResponderEliminar
  8. Mi hermano excelente aporte
    Tu me harias un favor tu podrias dejar un manual mas detallado como realizar la comunicacion por usb utilizando labview
    se te agradece

    ResponderEliminar
  9. Primero que nada EXCELENTE aporte Adrian y Felicitaciones por el diploma !!!!, tu tutorial es uno de los mas completos de los cientos que he visitado, y te digo que lo pondre en practica lo antes posible. Cualquier cosa te pregunto, jejejeje ;)

    ResponderEliminar
  10. Excelente trabajo José, pero tengo una consulta, que hay detrás de tu subVI, podrías poner el código fuente ya que está protegido, es con motivos educativos.
    Saludos,

    Jorge Valerio - Perú
    j.valerio@ieee.org

    ResponderEliminar
  11. Hola,

    Soy estudiante de fisica en la UNI, y me gustaria reproducir tu tarjeta de adquisicion de datos, reproducire el modelo de la web, pero tu tarjeta se ve mas cool.

    Espero me puedas ayudar si se me presenta algun problema, mi correo es cquisihualpa_at_gmail.com

    Saludos

    ResponderEliminar
  12. Voi a subir tema especial para diseñar una tarjeta de adquisicion de datos usb.

    .8 E/S Digitales
    .4 E analogicas
    .2 PWM
    .Salida RX/TX
    .Display LCD 16x2
    .Dos leds
    .Reset
    .Memoria Micro SD
    .I2C

    Algo mas que le agregue para tener una tarjeta entrenadora de pic18f4550 usb.

    ResponderEliminar
  13. Hola Jose, te queria felicitar por tu aporte tan valioso,y por el diploma merecido, ademas te queria hacer una pregunta, es posible tabajar este proyecto con una conexion USB 1.0?,

    Elmer

    ResponderEliminar
  14. La especificación USB 1.0 (denominada de baja velocidad) es la primera que se estableció en 1996, y debido a su baja velocidad (0,192MB/s) sólo se utiliza para dispositivos de interfaz humana como ratones, teclados, trackballs, etc.

    Claro que si se puede, solo que cambian los conceptos. Seria usb cdc(emulando el puerto serial COM)

    ResponderEliminar
  15. Hola José, primero para felicitarte por tu trabajo, yo tambiene estoy trabajando en una tarjeta de adquisción, claro con menos experiencia e incluso me estoy basando en tu avances; pero me gusta la idea de que comiences con el tema de la tarjeta especial estare esperando, ahi dejo mi correo a ver si me alcanzas mas avances
    ed_wil_5@hotmail.com

    ResponderEliminar
  16. compadre primeramente felicitarlo por su trabajo, estoy interesado en ese trabajo porque estamos trabajando un proyecto similar a ese, pero este es adquirir los datos de un motor de inyeccion electronica para realizar un simulador de averias en plataforma labview; que ademas es con fines educativos recurda que el conocimiento es del mundo y para el mundo, estor interesado en ver el codigo del subvi pero se encuentra protejido tal vez puedas colaborarme con ello....
    este es mi correo viktoramdif@hotmail.com

    ResponderEliminar
  17. Elmer: Osea que este proyecto asi como esta solo funciona en un puerto USB 2.0 no en uno 1.0?

    ResponderEliminar
  18. Elmer: yo realmente me encuentro muy interesado en tu proyecto y de hecho estoy comprando todas las partes aqui en mi pais Guatemala, para armarlo y probarlo pero tengo un inconveniente y es que mi version de labview es la 8.5 y actualizarlo a la 8.6 me saldria muy caro asi que no se si seria posible que postearas tu proyecto en version 8.5 ya que no me deja abrirlo, realmente te lo agradeceria de por vida, y de antemano gracias y exitos.

    ResponderEliminar
  19. una pregunta cuales son las contraseñas para el archivo PDF
    y para editar los archivos VI???

    ResponderEliminar
  20. Holas jose te comento que acabo de implementar tu proyecto..
    estubo exelente hasta el momento que instale el driver..
    -me reconoce el dispositivo genial, pero cuando abro el archivo de labview me aparecen 2 warning (acerca de las librerias vi) bueno no le hago caso y corro el programa y activo las salidas y no me enciende ningun led... el led se torna verde osea que la conexion usb es correcta.

    -he revisado el pic y esta funcionando correctamente puesto que la computadora lo puede leer el dispositivo cuando lo conecto..

    No tendras alguna idea... que esta fallando...??

    PD: estoy siguiendo todos los pasos que dejaste, estoy usando labview 8.6 espero tu pronta respuesta

    ResponderEliminar
  21. Holas jose...
    te comento que acabo de implementar el proyecto pero
    no funciona
    te cuento que lo instala el dispositivo cuando lo conecte a la pc
    pero cuando abro el archivo de labview me aparecen 2 warning (acerca de PicUSB,vi) bueno no hago caso y corro el programa y bueno el el de conectividad se torna verde cuando activo alguna de las salidas no me logra encender ningun led no se si tendras alguna idea de lo que esta sucediendo..

    PD:estoy usando labview 8,6 y todos los pasos que dejaste, ah por cierto estoy usando windows vista (aunque no creo q sea el problema el sistema operativo).

    ResponderEliminar
  22. Hola Jose Adrian termine de comprar todas las partes y arme el proyecto siguiendo paso a paso todo el post y me funciono de maravilla en una laptop pentium III 1.2 Ghz, 256 RAM y USB 1.0, casi obsoleta, jejejejeje, pero funciono muy bien, asi que te agradecemos desde Guatemala :-)

    ResponderEliminar
  23. Para echar andar el proyecto necesitamos windows xp y windows 7 de 32 bits. esta comprobado que funciona.

    ResponderEliminar
  24. Hola nuevamente.

    Una consulta: EL driver es independiente de LabVIEW, verdad es decir una vez reconocido el dispositivo, puedo intentar la comunicacion con otro lenguaje de programacion como C++ o quizas MatLAB?

    Alguien me podria ayudar con ello!!!

    ResponderEliminar
  25. Claro elquisi, asi es. El driver solo te sirve, para que entre la computadora y el dispositivo se establesca un puente de comunicacion. Queda de cualquiera utilizarlo con los distitos lenguajes de programacion que existe.

    saludos!!

    ResponderEliminar
  26. holas jose me parece exelente de hacer un foro especial para la tarjeta de adquisicion de datos..
    todo es perfecto lo que me encantaria es que pudieras hacer comentarios a cada linea para que podamos entender la programacion

    y si pudieras proponer circuitos adiccionales para implementar la parte de potencia y cuando se trabaja en DC

    Gracias..

    ResponderEliminar
  27. Hola José! Excelente post, me encanto! Tengo que entregar un proyecto esta semana (viernes). Es un refrigerador con celda peltier, tiene un LCD mostrando la temperatura y el estado de la celda (prendido/apagado) Y tengo que comunicarlo via usb a labview precisamente y mostrar la misma información del LCD. Voy a utilizar todos los recursos que proporcionaste y comentaré aqui. De todas formas te agradecería mucho si me apoyaras en dado caso que tenga algún problema! Ya que no tengo mucho tiempo :P

    Saludos!

    ResponderEliminar
  28. jose soy estudiando de ingenieria mecanica me gustaria q me dieras el diagrama del circuito q parece en el video... te agradeceria si me lo mandaras a mi correo...eguerrerosil@hotmail.com

    ResponderEliminar
  29. Eduardo:hola jose soy estudiando de ingenieria mecanica me gustaria saber cual es el diagrama del circuito aparece en el video.. te lo agradeceria si me lo mandaras a mi correo.. eguerrerosil@hotmail.com buen proyecto

    ResponderEliminar
  30. Otra preguntota José, no me quedo muy claro lo del cristal, esque en tu programa del ccs tienes el reloj a 48Mhz, pero en tu diagrama dices que se utiliza uno de 20Mhz, es correcto verdad?

    ResponderEliminar
  31. SALUDOS
    buen material lo he armado siguiendo todos los pasos el driver esta instalado y se establecido la conexion con labview sin embargo tengo algunos problemas despues de un rato de estar encendiendo los leds parace ser q el pic no recibe nada y me a sido imposible leer el dato del pot, he revisado el puerto A y esta en buenas condiciones, tambien he revisado el cable y he probado hasta con otro pic(nuevo) y he obtenido los mismos resultados espero me puedas ayudar
    gracias

    ResponderEliminar
  32. Nano los 48MHz es la maxima velocidad que puede trabajar el usb internamente. Esto es independiente del oscilador externo que le pongas, arriba se explica el porque o la configuracion del oscilador.

    ResponderEliminar
  33. Hola que tal, he reproducido tu proyecto pero tuve el problema que el dato leido en el puerto analógico no se actualiza, para actualizar el valor leido tengo que desconectar y conectar nuevamente, por lo tanto volver a correr el programa. ¿Sabes por que? te agradeceria que me respondieras la duda. Gracias de antemano

    ResponderEliminar
  34. Ya quedo todo! =) Luego te enseño el proyecto final, filme una parte pero esta bien feo el video, no vale la pena!

    Saludos y gracias, me has ayudado mucho

    ResponderEliminar
  35. que tal jose quisiera aver si me pudieras ayudar con este proyecto ya que se un poco de electronica y saber como cargar el pic y si tienes otro diagrama que tenga mas entradas analogicas y sobre el Subvi ya que lo trato de descargar y no puedo

    ResponderEliminar
  36. Adrian, buen dia, fijate que tengo el mismo problema que los colegas anteriores que no me lee el potenciometro, solo me da un valor constante inicial y no cambia, ya he revisado cuidadosamente los pines del puerto el cable igual que aquellos pero nada, asi que yo te agradeceria tambien si nos pudieras ayudar, gracias Adrian.

    Elmer

    ResponderEliminar
  37. antonio: py para tener mas entradas analogas como se tendria que utilizar orto pic o que..

    ResponderEliminar
  38. voy a checar el error de lectura, lo que pasa que le subvi esta actualizado, el que aparece en el video es la vercion anterior. Lo checare y luego vuelvo a subir el SubVI.

    Saludos A todos!!!!

    suerte!!!!

    ResponderEliminar
  39. Qué onda Adrian, como te prometí, unos videos de mi proyecto! Realmente podría cablearlo mejor pero..pues por la falta de tiempo quedó asi. Al igual lo estoy alimentando con una fuente, pero "supuestamente" estará alimentado con bateria de coche (o sea en el cenicero..)

    Saludos

    Termometro con control ON/OFF :
    http://qik.com/video/6665366

    Funcionalidad USB Labview:
    http://qik.com/video/6671271

    ResponderEliminar
  40. Muy Buen proyecto nano. Tubiste algun problema en la adquisicion de los valores del lm35, se refrescaba. lo digo por el problema que han tenido los demas compañeros que no muy les funiciona. En mi caso funuciona perfectamente bien. y pues si los problemas continuan tendre que subir la version anterior del SUbVI.

    Saludos Esperamos tus comentarios de tus resultados..

    ResponderEliminar
  41. Muy buen proyecto hermano...pero una pregunta, tu sabes como hacer para que el programa que diseñes en labview se pueda guardar como un ejecutable?, me baje una versión pirata de internet (Labview 8.5)

    ResponderEliminar
  42. hola adrian quisera saber si se puede tener mas entradas analogicas y digitales con este pic y se tiene que cambiar la programacion en el pic o se tiene que añadir mas en el labview y como le haria ya que se muy poco de labview y programacion de pic , si funciona si utizo el labview 9 ,
    otro pregunta como le hago para combiar el nombre al dipositivo y que paraesca con otro monbre por decir el mio (juan) ps ya que tu nos dice que se configura desde el archivo picusb.h pero cuando la pongo copilar no me aparese el .hex

    ResponderEliminar
  43. Que onda Adrian,

    No tuve ningún problema, pero yo no utilizé un LM35, utilizé un Maxim DS80B20!

    De momento, tengo problemas! ya no hace nada, no se que le habrá pasado, estoy checando en este instante!

    SAludos

    ResponderEliminar
  44. Tendre que subir la version anterior del subVI.

    ResponderEliminar
  45. Ya pueden descargar la version anterior tanto el subvi (picusb) y el programa desarrollado en labview(PicUSB-LabVIEW),espero si les funcione perfectamente bien..

    Saludos!!!

    ResponderEliminar
  46. Fueron unos cortos circuitos, quien sabe porqué, pero ya esta todo bien, limpie la placa por debajo y chequé bien las pistas! El día de hoy estuve optimizando mi código! Cuando termine bien bien te enviaré todo si gustas!

    Saludos

    ResponderEliminar
  47. Para tener muchas entradas analogicas, solo es necesario activar los demas canales; por ejemplo:

    #define Temperatura envia[0]
    #define Humedad envia[1]
    #define Potenciometro envia[2]

    //declaramos variables globales
    void temp (void);
    void hum (void);
    void poten (void);
    int8 recibe[2];
    int8 envia[3];
    int8 dato,dato1,dato2;

    void temp (void)
    {
    set_adc_channel(0); ( canal an0) delay_us(4); dato=read_adc();
    delay_us(10);
    Temperatura=dato;
    }


    void hum (void)
    {
    set_adc_channel(1); (canal an1) delay_us(4); dato1=read_adc();
    delay_us(10);
    Humedad=dato1;
    }

    void poten (void)
    {
    set_adc_channel(2); (canal an2) delay_us(4); dato2=read_adc();
    delay_us(10);
    Potenciometro=dato2;
    }

    solo variamos los canales y mandamos el paquete de 3 byte a labview..

    Saludos!!

    ResponderEliminar
  48. PERO EN QUE PARTE TIENE QUE IR EN EL CODIGO
    /Asignacion de variables
    #define LEDV PIN_C1
    #define LEDR PIN_C0
    #define LED_ON output_high
    #define LED_OFF output_low

    #define modo recibe[0]
    #define param recibe[1]
    #define Temperatura envia[0]

    //declaramos variables globales
    void temp (void);
    int8 recibe[2];
    int8 envia[1];
    int8 dato;


    void main(void)
    {
    set_tris_d(0x00); //Configuracion para el puerto D como salida
    output_d(0x00); //Limpiamos el puerto D
    setup_timer_0(RTCC_INTERNAL);
    setup_timer_1(T1_DISABLED);
    setup_timer_2(T2_DISABLED,0,1);
    disable_interrupts(GLOBAL); //deshabilitamos todas las interrupciones

    LED_OFF(LEDV); //Apagamos led Verde
    LED_ON(LEDR); //Encendemos led Rojo

    usb_init(); //inicializamos el USB
    usb_task(); //habilita periferico usb e interrupciones
    usb_wait_for_enumeration(); //esperamos hasta que el PicUSB sea configurado por el host

    setup_port_a( ALL_ANALOG ); //habilitamos el puerto a para entrada analogica
    setup_adc(ADC_CLOCK_INTERNAL); //Utilizamos el reloj interno

    LED_OFF(LEDR); //Apagamos el led Rojo
    LED_ON(LEDV); //encendemos led verde

    while (TRUE)
    {
    if(usb_enumerated()) //Si el PicUSB está configurado
    {
    if (usb_kbhit(1)) //Si el endpoint de salida contiene datos del host
    {
    usb_get_packet(1, recibe, 2); //Cachamos el paquete de tamaño 2bytes del EP1 y almacenamos en recibe



    if (modo==1)//modo salida digital d1,d2,d3,d4,d5,d6,d7,d8
    {
    output_d(param); //El dato param recibido lo mandamos al puerto o registro d

    }
    else if(modo==2)//modo analogico temperatura
    {
    temp(); //Adquirimos la señal analogica
    usb_put_packet(1,envia,2,USB_DTS_TOGGLE); //enviamos el paquete de tamaño 1byte del EP1 al PC
    }
    else if(modo==4)//Todo al mismo tiempo
    {
    temp();
    usb_put_packet(1,envia,2,USB_DTS_TOGGLE);
    output_d(param);

    }
    else
    output_d(0x00);// Limpiamos el puerto D
    }
    }
    }
    }

    void temp (void)
    {
    set_adc_channel(2); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    Temperatura=dato; // El dato leido lo almacenamos en Temperatura

    }

    Y COMO SERIA EN LABVIEW

    ResponderEliminar
  49. OTROVES ADRIAN COMO LE HAGO PARA GENERAR EL ARCHIVO.HEX CON EL Compilador CCS HAY QUE LE DOY EN COPILAR Y NO ME ARROGA EL .HEX

    ResponderEliminar
  50. El codigo que te mande son funciones que tienes que agregar al ultimo del codigo, en donde esta la lectura de la temperatura, y las variables Al princiopio del programa antes del main() en donde estan declaradas las demas variables globales.

    y para generar el archivo .hex tienes que abrir el PicUSB.c y tienes que compilarlo con CCS C Compiler..

    Suerte!!! saludos

    ResponderEliminar
  51. hola jose he implementado tu trabajo en protoboard pero al momento de adquirir los datos no llegan en tiempo real . tengo de desconectarlo y volver a conectar para q cambie los valores ingresados poq?.. tambien tuu sub vi esta protegido verdad cual es la clave si se podria saber para entenderlo mejor la comuinicacion usb saludos mi correo es zavejo@hotmail.com

    ResponderEliminar
  52. Hola Jose, en primer lugar felicitarte por el trabajo desarrollado con labview y el pic, gracias por compartir tus avances con todos.

    Comentarte que arme el circuito y hice correr el programa de labview, pero existe un problema con el potenciometro, estoy usando el pin 4 del pic con la entrada analogica, pero solo recibe el dato en el momento que se conecta el pic, posterior a eso no cambia el valor, aun cuando el potenciometro esté variando, no funciona de acuerdo al video que compartiste con nosotros, por favor te pido que me colabores con eso, pienso que podria ser que no se esta manteniendo la conexion USB viva, como en el picbasic pro, se usa el USB_Service, en ccs no tengo conocimiento que mantiene la conexion USB viva, te pido me colabores con esa duda.

    Un fuerte abrazo!

    René Portugal

    ResponderEliminar
  53. Mi email es rene_portugal@msn.com.

    Saludos mi hermano!

    ResponderEliminar
  54. Pueden hacer las descargas de l programa realizado el labview con la nueva subvi...

    Eso resolvera sus problemas.

    ResponderEliminar
  55. Disculpa la pregunta mi hermano, donde puedo descargar la nueva subvi?

    Un abrazo

    ResponderEliminar
  56. hola adrian otraves por aki ensable todo pero al correr la aplicacion en lABVIEW no me actualiza las señales peude ser que no me funcione con vista
    ia que tengo que desconectar y conectar para que se actualiza

    ResponderEliminar
  57. Tienes que volver a descargar las aplicaciones que publique. El programa en labview(Picusb-LabVIEW) y el subVI( picusb).
    Saludos!!

    ResponderEliminar
  58. HOLA MI ESTIMADO JOSE.

    Comentarte que volví a descargar los archivos "Picusb-LabVIEW" y "picusb", y el problema persiste, seguí todos los pasos que señalaste en tu blog y la señal analógica no se actualiza sino al momento de conectar al computador.

    Esperando tu respuesta, me despido afectuosamente.

    Un abrazo hermano

    René

    ResponderEliminar
  59. exelente tu aportacion amigo espero sigas asi ammm yo consegui que ya funcionara mi tarjeta pero la enlace con matlab ya logre mandar un dato analogico pero pues tengo dudas de como seria el codigo en el pic para mandar varios ddatos analogicos a la vez

    ResponderEliminar
  60. ME PODRIAS AYUDAR CON EL PROGRAMA, ES QUE NECESITO ACOPLARLO A UN 18F2550 Y NO SE MUCHO DE CCS C, Y LAS LIBRERIAS Y EL DRIVER TIENE QUE IR EN UNA CARPETA O DIERCCION EN ESPECIFICO? GRACIAS, QUE RIFADO.

    ResponderEliminar
  61. tambiem se duede tener salidas anologicas con este pic y como la avilitastes o como es la prgramacion del pic y en labview..

    ResponderEliminar
  62. DISCULPEN COMO LE HACEN PARA GENERAR EL ARCHIVO.hex IA QUE NO SE COMO UTILIZAR EL CCS COMPILER O TIENES QUE TENER UN PLUGINS OK

    ResponderEliminar
  63. hola buen dia como puedo colocar la imagen del dispositivo, es decir tu colocaste en el driver el simbolo de NI, pero como lo hiciste tiene que ver algo con el driver, o donde se edita gracias

    ResponderEliminar
  64. HOLA ADRIAN QUERIA PEDIRTE UN FAVORSOTE SI YA ES MAS CON QUE NOS EXPLICASTES PARA LOGRAR ESTE PROYECTO PERO TENGO UN PROBLEMON COMO YA LO DIJE ANTERIORMENTE QUE NO SE COMO COPILAR EL CODIGO QUISIERA SI ME PODIAS HACERMELO TE LO GRADESERIA BASTANTE IA QUE QUIERO QUE TENGA TODAS LAS ENTRADAS ANOLOGAS HABILITADAS Y 3 SALIDAS ANOLOGICAS SIN MAS ME DESPIDO..

    ResponderEliminar
  65. holas adrian un favor me podrias mandar el esquematico de tu diseño te dejare mi correo improvisado1@hotmail.com
    gracias por el aporte.

    ResponderEliminar
  66. Hola Jose. Como estas, comentarte que los problemas persisten en torno a la no actualizacion de los datos capturados por la entrada analogica, si podrias subir todo lo necesario en un solo archivo a megaupload te agradeceria mucho hermano,

    Un abrazo

    René Portugal

    ResponderEliminar
  67. Amigo, muy bueno el Post.

    He intentado bloggear algunos proyectos paso a paso pero no me ha quedado mucho tiempo.

    Sin embargo, tu trabajo me motiva mucho para hacerlo, ya que el desarrollo de nuestros países en el área tecnológica lo necesita.

    Estamos en contacto y muchas gracias !!

    ResponderEliminar
  68. Buenas amigo, mira ya comence con la tarjeta, soy franklin, no habia escrito porque estaba full con las clases del postgrado. Cuantas entradas analogicas y digitales tienes tu tarjeta?? y cuantas salidas tiene tanto digitales como analogicas?

    ResponderEliminar
  69. Antes Felicitarte, pero sabes estuve probando en proteus 7 sp4 bueno instalo el driver lo conecta hasta ahi vacan le ejecuto el programane labview 8.6 y bueno es ahi donde no hace nada de nada solo se pone lenta la interfaz a la hora de activar los pulsador pero en proteus nada de nada--- bueno no se si me puedas ayudar con eso porke para ensamblar no tengo mis cosas a la mano. y volver a felicitarte por el este gran trabajo..:
    saludos:P

    ResponderEliminar
  70. Existe un error en el firmware en vez de leer el canal 2 debe ser el canal 0 (AN0)del pin numero 2 del microcontrolador. otra forma de corregirlo seria poner el sensor el la entrada PIN4/RA2/AN2..

    Saludos

    ResponderEliminar
  71. hola adrian he probado de tods modo para que me lea la señal de analoga pero no lo consigo solo puede encender los led estoy utilizando win 7 y labview 8.6 de prueva me puse a habilitar las demas entradas anologicas y personalizar el nombre del dispositivo y grabo el microncontrolador pero al momento de conectar el al usb si lo reconoce pero al correr el programa no me enciende tengo que desconectar y conectar para que me encienda los led como el problema del la entrada analoga . como kle puedo hacer para que funcione.

    ResponderEliminar
  72. hola adrian tengo el miusmo problema de que no se puede actualizar la entrada estoy utilizando win7 y labvciew 8.6 tambien tube problemas al habilitar los demas canales ps grabo el pic y al correr el programa este no me actualiza las entradas y las salidas tengo que desconectar y conectar de nuevo nesesito saber como por que tengo un proyecto de final de curso y me gusto para automatizar un tanque que calienta el agua y el nivel lo tiene constante y tambien se puede tener salidas analogas
    hay que me interesan tener una 4 y las demas de entrdas

    ResponderEliminar
  73. hola adrian tengo el mismo problema de que no me actualiza la señal y descargue los nuevos sub.vi
    pero nada que podra ser. tambien se puede tener unas salidas analogas

    ResponderEliminar
  74. He estado mirando este blog, esta interesante pero me parece poco profesional y etico de tu parte no mensionar al verdadero autor de este trabajo que es el amigo J1M (www.hobbypic), todo los codigos del pic y el labview el los ha desarrollado y lo unico que tu has hecho es copiarlos, talvez tienes el merito de haber modificado las linea de codigo de la entrada analogica, pero realmente te mececes el diploma de reconocimineto? cual es tu aporte?
    Ademas la comunicacion del Pic con el labview es muy lenta, no es de alta velocidad como tu afirmas, como se esto? por que ya tambien baje los mismos archivos que tu de la pagina de J1M.

    Me sorprende esta actitu tuya apesar de que pertences al mismo foro (www.todopic.net) que J1M

    Espero que no elimines este comentario?

    ResponderEliminar
  75. Hola !!
    Ante todo un saludo hacia tu persona; estoy siguiendo todo los pasos pero casi soy un poco novato en labview2009esa versión estoy utilizando me funciona al perfecto pero tengo; tengo un problema en la entrada analógica no me funciona el potenciómetro pero la salida si como resuelvo eso o en que estoy fallando.
    Por último quisiera q me ayudes con algunas salidas analógicas tanto en labview y el pic USB
    Le agradecería anticipadamente su respuesta gracias
    Tal vez a mi correo algunas pautas --->alder007@hotmail.com

    ResponderEliminar
  76. Andrei en esta publicacion creo que puse las referencias que yo utilize para sacar adelante mi proyecto. Puedes checarlas creo que ahi biene muchos ejemplos y en lo que es labview realize un subvi para poder manipular de manera facil el microcontrolador. Saludos!

    ResponderEliminar
  77. me parece muy vanano el proyecto mi pregunta esta con la libreria picusb.vi cual es la contraseña para poderlo ver la libreria que no entiendo como esta hecho gracias

    ResponderEliminar
  78. holas amigo adrian estube probando tu proyecto. todo esta bien lo holas mi nombre es daniel y estube probando tu proyecto todo esta ok lo unico que no me gusta es que cada vez que presiono run en labview y despues preciono stop.. y de nuevo le doy click en run no me enciende ningun led y despues tengo que desconectar el dispositivo usb para que funcione de nuevo..
    podrias decirme porque es que sucede eso???

    gracias..
    espero tu pronta respuesta saludos..

    ResponderEliminar
  79. Hola, tengo el mismo problema que todos, tengo que desconectar el usb para que labview capte un cambio de voltaje.

    ¿Me podrías proporcionar la clave del subvi para ver si logro arreglar el problema?
    Me sería de mucha ayuda.

    mi mail es dalemedi@gmail.com

    ResponderEliminar
  80. hola ante todo un saludo quisiera que ayudes como lo isiste tu subvi..
    o podrias decirme tu contraseña como lo diseñaste. gracias alticipadamente su respuesta

    ResponderEliminar
  81. pana... arrechisimo! en verdad me emociona todo esto. lastima que todavia no he empezado con labview. solo he experimentado con pic y ahora gracias a ti voy a meterme en ese mundo.

    Un saludo desde Venezuela.

    ResponderEliminar
  82. REYNALDO CLAROS LAMUS7 de agosto de 2010, 17:23

    Hola a todos,

    El problema no esta en el subvi (felicitaciones por tan grandioso componente) el error se encuentra en el codigo fuente del PIC.

    Ya tengo listo todos los archivos necesarios (codigo fuente, driver actualizado y manual de instalacion en windows 7) para que funcione correctamente en windows de 32 y 64 bits. Totalmente probado.

    Como puedo subir los archivos?

    ResponderEliminar
  83. Que tal jose antes que nada dejame felicitarte por el buen trabajo que hiciste con esta tarjeta.Me gustaria saber si es posible que publiques el codigo de la tarjeta con las expansiones que le hiciste. Apenas estoy relacionandome con esto de los pics y me gustaria saber mas acerca de la interfaz usb. Y gracais por este aporte.

    ResponderEliminar
  84. Exelente, gracias por compartirlo.

    Saludos
    Alejandro

    ResponderEliminar
  85. hola me podiran ayudar quiero hacerlo con 8 sensores de motores pero al mandar el paquete solo me lee el primer dato y los demas en 0 , este e mi codigo osea

    #include <18F4550.h>
    #DEVICE ADC=8
    #fuses HSPLL,MCLR,NOWDT,NOPROTECT,NOLVP,NODEBUG,USBDIV,PLL5,CPUDIV1,VREGEN
    #use delay(clock=48000000)
    #define USB_HID_DEVICE FALSE //deshabilitamos el uso de las directivas HID
    #define USB_EP1_TX_ENABLE USB_ENABLE_BULK //turn on EP1(EndPoint1) for IN bulk/interrupt transfers
    #define USB_EP1_RX_ENABLE USB_ENABLE_BULK //turn on EP1(EndPoint1) for OUT bulk/interrupt transfers
    #define USB_EP1_TX_SIZE 8 //size to allocate for the tx endpoint 1 buffer
    #define USB_EP1_RX_SIZE 8 //size to allocate for the rx endpoint 1 buffer

    #include //Microchip PIC18Fxx5x Hardware layer for CCS's PIC USB driver
    #include //Configuración del USB y los descriptores para este dispositivo
    #include //handles usb setup tokens and get descriptor reports


    //Asignacion de variables
    #define LEDV PIN_C1
    #define LEDR PIN_C0
    #define LED_ON output_high
    #define LED_OFF output_low

    #define modo recibe[0]
    #define param recibe[1]
    #define motor1 envia[0]
    #define motor2 envia[1]
    #define motor3 envia[2]
    #define motor4 envia[3]
    #define motor5 envia[4]
    #define motor6 envia[5]
    #define motor7 envia[6]
    #define motor8 envia[7]
    //declaramos variables globales
    int8 envia[8];
    void mot1 (void);
    void mot2 (void);
    void mot3 (void);
    void mot4 (void);
    void mot5 (void);
    void mot6 (void);
    void mot7 (void);
    void mot8 (void);
    int8 recibe[2];

    int8 dato1,dato2,dato3,dato4,dato5,dato6,dato7,dato8;


    void main(void)
    {
    set_tris_d(0x00); //Configuracion para el puerto D como salida
    output_d(0x00); //Limpiamos el puerto D
    setup_timer_0(RTCC_INTERNAL);
    setup_timer_1(T1_DISABLED);
    setup_timer_2(T2_DISABLED,0,1);
    disable_interrupts(GLOBAL); //deshabilitamos todas las interrupciones

    LED_OFF(LEDV); //Apagamos led Verde
    LED_ON(LEDR);
    usb_init(); //inicializamos el USB
    usb_task(); //habilita periferico usb e interrupciones
    usb_wait_for_enumeration(); //esperamos hasta que el PicUSB sea configurado por el host

    setup_port_a( ALL_ANALOG ); //habilitamos el puerto a para entrada analogica
    setup_adc(ADC_CLOCK_INTERNAL); //Utilizamos el reloj interno

    LED_OFF(LEDR); //Apagamos el led Rojo
    LED_ON(LEDV); //encendemos led verde

    while (TRUE)
    {
    if(usb_enumerated()) //Si el PicUSB está configurado
    {
    if (usb_kbhit(1)) //Si el endpoint de salida contiene datos del host
    {
    usb_get_packet(1, recibe, 2); //Cachamos el paquete de tamaño 2bytes del EP1 y almacenamos en recibe

    if (modo==1)//modo salida digital d1,d2,d3,d4,d5,d6,d7,d8
    {
    output_d(param); //El dato param recibido lo mandamos al puerto o registro d

    }

    ResponderEliminar
  86. else if(modo==2)//modo analogico temperatura
    {
    mot1();
    mot2();
    mot3();
    mot4();
    mot5();
    mot6();
    mot7();
    mot8(); //Adquirimos las señales analogica
    usb_put_packet(1,envia,8,USB_DTS_TOGGLE); //enviamos el paquete de tamaño 1byte del EP1 al PC
    }
    else if(modo==4)//Todo al mismo tiempo
    {
    mot1();
    mot2();
    mot3();
    mot4();
    mot5();
    mot6();
    mot7();
    mot8(); //Adquirimos las señales analogica
    usb_put_packet(1,envia,8,USB_DTS_TOGGLE);
    output_d(param);

    }
    else
    output_d(0x00);// Limpiamos el puerto D
    }
    }
    }
    }
    ¨
    void mot1 (void)
    {
    set_adc_channel(0); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato1=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor1=dato1; // El dato leido lo almacenamos en Temperatura

    }

    void mot2 (void)
    {
    set_adc_channel(1); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato2=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor2=dato2; // El dato leido lo almacenamos en Temperatura

    }
    void mot3 (void)
    {
    set_adc_channel(2); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato3=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor3=dato3; // El dato leido lo almacenamos en Temperatura

    }

    void mot4 (void)
    {
    set_adc_channel(3); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato4=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor4=dato4; // El dato leido lo almacenamos en Temperatura

    }
    void mot5 (void)
    {
    set_adc_channel(4); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato5=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor5=dato5; // El dato leido lo almacenamos en Temperatura

    }

    void mot6 (void)
    {
    set_adc_channel(5); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato6=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor6=dato6; // El dato leido lo almacenamos en Temperatura

    }

    void mot7 (void)
    {
    set_adc_channel(6); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato7=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor7=dato7; // El dato leido lo almacenamos en Temperatura

    }

    void mot8 (void)
    {
    set_adc_channel(7); // Tomamos datos del canal 5 (Pin4 RA2/AN2)
    delay_us(4); // Hacemos un retardo de 4 ms
    dato8=read_adc(); // Leemos el dato
    delay_us(10); // Hacemos un retardo de 10 ms
    motor8=dato8; // El dato leido lo almacenamos en Temperatura

    }

    ResponderEliminar
  87. mi duda es que tengo una cadena de 8 bit ejemplo
    envio = [10 20 30 40 50 60 70 80]; que seria cada uno el dato del los motores, pero en labview solo me reconoce el 10 y los demas me lo tomas como 0 osea [10 0 0 0 0 0 0 0]; le cambie en RX Y TX 8 y nada :(

    ResponderEliminar
  88. muhahajaj ya solucione el problema era del suvib solo tenia que colocarlo par que recibiera 8 bit en la constate, ahora quiero implemetarlo en win7 pero ahora no le me actualiza en proteus me va bien pero al montarlo se queda con la primera lectura y no actualiza :( alguien me podrai ayudar

    ResponderEliminar
  89. Buenos días:

    Adrian antes que nada quiero felicitarlo por su proyecto el cual esta muy interesante, pero tengo el mismo problema que han comentando algunos foristas. El pc ya reconoce el équipo, pero al momento de realizar la ejecución en lab view no encienden los leds , que puede ser ? estoy trabajando windows 7.

    Gracias de nuevo

    ResponderEliminar
  90. MUY BUEN PROYECTO. ESTOY INTERESADO EN HACER UNA TARJETA PARECIDA PERO TENGO DUDAS RESPECTO A LA PROGRAMACION. SE PUEDE HACER DESDE MPLAB. TE AGRADECERIA SI ME FACILITARAS EL ESQUEMATICO.

    SALUDOS DESDE COLOMBIA

    mago1280@hotmail.com

    ResponderEliminar
  91. buen trabajo carnal.!!
    felicidades!!1

    ResponderEliminar
  92. hola amigo!!
    funciona este trabajo con windows vistaaa?
    hice los pasos pero ala hora de correrlo no pasa nd!!

    ResponderEliminar
  93. Exelente trabajo amigo :D, yo estoy presisamente desarrollando una aplicación USB y me basé en el trabajo que hay en la página de "muchotrasto", lo que me faltaba era hacerlo con LabView y este trabajo se ve muy bien, voy a desarrollar lo que necesito y si tengo dudas, espero me orienten, gracias.

    ResponderEliminar
  94. Claro aqui estoy para ayudar. Saludos a todos
    y mucho exito..

    ResponderEliminar
  95. Hola de nuevo :P, pues ya he probado lo que has publicado en el blog y lo de los leds funciona perfectamente, el problema que tengo, al parecer igual que los otros compañeros que han comentado, es con el AN0, ya que no me actualiza el dato leído del convertidor, si no hasta que reinicie el PIC o conecte y desconecte; segun he leido los comentarios el amigo: REYNALDO CLAROS LAMUS, dijo haber encontrado el problema; ¿ya saben cual es? o cual sería la solución amigo Jose, por cierto los nuevos archivos que estan en Megaupload no funcionan, pues con esos probé mi tarjeta.... de todas formas gracias, pero esperaría saber si alguien ya encontró esa solución........

    ResponderEliminar
  96. Hola de nuevo :P, pues ya he probado lo que has publicado en el blog y lo de los leds funciona perfectamente, el problema que tengo, al parecer igual que los otros compañeros que han comentado, es con el AN0, ya que no me actualiza el dato leído del convertidor, si no hasta que reinicie el PIC o conecte y desconecte; segun he leido los comentarios el amigo: REYNALDO CLAROS LAMUS, dijo haber encontrado el problema; ¿ya saben cual es? o cual sería la solución amigo Jose, por cierto los nuevos archivos que estan en Megaupload no funcionan, pues con esos probé mi tarjeta.... de todas formas gracias, pero esperaría saber si alguien ya encontró esa solución........

    ResponderEliminar
  97. Hola de nuevo :P, pues ya he probado lo que has publicado en el blog y lo de los leds funciona perfectamente, el problema que tengo, al parecer igual que los otros compañeros que han comentado, es con el AN0, ya que no me actualiza el dato leído del convertidor, si no hasta que reinicie el PIC o conecte y desconecte; segun he leido los comentarios el amigo: REYNALDO CLAROS LAMUS, dijo haber encontrado el problema; ¿ya saben cual es? o cual sería la solución amigo Jose, por cierto los nuevos archivos que estan en Megaupload no funcionan, pues con esos probé mi tarjeta.... de todas formas gracias, pero esperaría saber si alguien ya encontró esa solución........

    ResponderEliminar
  98. El mismo problema me enfrenté. Los cuentos de conversión analógica a cabo sólo si me detengo y ejecutar el VI no contious. ¿Puedes por favor me dan el material actualizado. Gracias de antemano. correspondencia identificar dxnpolestar@gmail.com - lee

    ResponderEliminar
  99. hola estoy desarrollando mi proyecto de grado para el cual consiste en el diseño de la tarjeta de adquisicion de datos con el pic 18f4550 para analizar señales en labview..
    he ensayado miles de codigos en el pic c
    por medio de las librerias y ejemplos que trae el mismo programa para realizar la comunicacion en el modo HID... pero el programa me arroja un error que ya no se como
    corregirlo ya que me dice que no reconoce el dispositivo y que no puede abrir el archivo este es el codigo que modifique en base a lo anterior no se si es cuestion de la version que tengo del pic c agradeceria mucho su ayuda
    la verdad no he podido salir de ahi y ya no tengo tiempo

    ResponderEliminar
  100. cual es el pass del subvi picusb?

    ResponderEliminar
  101. Hola, enhorabuena por el proyecto, esta trabajado y tu explicación es muy buena.

    Estoy inmerso en un proyecto de hacer un osciloscopio que se visualice por PC. He elegido para visualizarlo el LABview. Agradecería que si pudieras me ayudaras en algunas dudas que tengo...

    ¿Que comunicación me recomiendas, Bulk o CDC? Lo hago por USB 2.0 pero el ancho de banda del osciloscopio, debido a que es de bajo coste, no supera los 200kHz

    Si utilizo la comunicación Bulk aprovecharía todo lo que nos enseñas por aqui. Necesitaria tratar con el Knob, para modificar el V/Div y el Time/Div, que por lo he leido lo tratas con la instrucción set_pwm1_duty(variable).
    Viendo tu proyecto, parece ser que la más recomendable es la comunicación Bulk, pero espero tu opinión.

    Gracias, saludos,

    Enrique

    ResponderEliminar
  102. claro te recomiendo, que utilices la comunicacion usb full speed(bulk)..te ayudara mucho, ademas tienes un ancho de banda muy grande y la veclocidad es muy buena 12Mbs. luego te paso ese proyecto parace que lo tengo por ahi.. saludos!

    ResponderEliminar
  103. muchas gracias por tu rápida respuesta, me decanto entonces por la comunicación full speed.
    Cualquier cosa sirve de ayuda, si tienes algun proyecto parecido o cualquier información. te dejo mi mail.

    enalonso1988@gmail.com

    Gracias de nuevo y enhorabuena otra vez por el trabajo!

    saludos!

    ResponderEliminar
  104. Muchas gracias por tu rápida respuesta, me decanto entonces por la comunicación Bulk

    Te dejo me mail, cualquier información o proyecto sería de ayuda: enalonso1988@gmail.com.

    Muchas gracias de nuevo y enhorabuena otra vez por tu proyectazo, saludos!

    ResponderEliminar
  105. muchas gracias por tu rápida ayuda. me decanto entonces por la bulk.

    te dejo mi correo, cualquier información o proyecto que dices, sería de gran ayuda.

    enalonso1988@gmail.com
    enalonso@hotmail.com

    gracias de nuevo, enhorabuena y saludos!

    ResponderEliminar
  106. muchas gracias por tu rápida ayuda.
    me decanto entonces por la bulk.

    te dejo mi correo, cualquier información o proyecto que dices, sería de gran ayuda.

    enalonso1988@gmail.com

    gracias de nuevo, enhorabuena y saludos!

    ResponderEliminar
  107. gracias!!
    te dejo mi correo
    enalonso1988@gmail.com

    cualquier cosa sirve de ayuda! saludos!!

    ResponderEliminar
  108. adrian te felicito, soy estudinate de sistemas y necesito hacer algo parcido me podrias ayudar en lo del subvi como lo trataste seria bueno que colocaras el subvi sin contraseña ya que la idea es que todos aprendamos asi como tu utilizastes la informacion el proyecto base de hobbypic deberias ayudarnos con lo del subvi (contraseña) o indicarnos como lo contruistes cono tratastes la señal en labview

    ResponderEliminar
  109. Buen día:
    Necesito ayuda en la configuracion en LabView.
    No se como visualizar las graficas

    Gracias

    ResponderEliminar
  110. Muy uen proyecto, se agradece este aporte, pero tengo una duda, por que solo utilizas un adc de 8 bits, si el 18f4550 puede usar 10, ademas mejoraria la resolucion, otra limitacion es que el numero de muetras por segundo es hasta 100, o me equivoco, saludos, y si aguien quiere hacerlo funcionar en windows 7 tengo las modificaciones hechas, mi correo es sistem_71189@hotmail.com; y i alguien est interesado en controlar cualquier dispositivo por usb ya sea con labview o en java, pero por bluetooth usando el celular pues puedo facilitar la informacion, lo posteare en adelante, estoy preparando un tutorial; gracias por el aporte, mi servira muchisimo

    ResponderEliminar
  111. La idea es del modulo visto en este programa sacar d diferentes graficas para 5 diferentes señales de entrada.... pro no se como sacar mas de una grafica....

    ResponderEliminar
  112. mmmmm, pues si entiendo bien, lo que puedes hacer es: que en el módulo del compa Adrian, le pongas que vas a recibir 5 bytes por ejemplo, que correspondan a los datos que quiereas, una ves recibidos en LabView los puedes ir separando y gradficarlos, creo yo :D, suerte, de todas formas yo igual ando trabajando en eso y andare por aca por cualquier cosa :D .

    ResponderEliminar
  113. mmmmm, pues si entiendo bien, lo que puedes hacer es: que en el módulo del compa Adrian, le pongas que vas a recibir 5 bytes por ejemplo, que correspondan a los datos que quiereas, una ves recibidos en LabView los puedes ir separando y gradficarlos, creo yo :D, suerte, de todas formas yo igual ando trabajando en eso y andare por aca por cualquier cosa :D .

    ResponderEliminar
  114. buen proyecto adrian, se nota el esmero y la dedicacion que le pusiste,estoy tratando de hacer una tarjeta pero tengo problemas con el esquematico, podrias mandarme el que tu utilizaste para tener una base para realizarlo.
    romaher20@hotmail.com. :)

    ResponderEliminar
  115. adrian muy bueno el projecto, lo felicito, quisiera saber si me puedes mandar el esquematico de tu tarjeta para probarla
    gracias de antemano
    jabm32@hotmail.com

    ResponderEliminar
  116. adrian lo felicito por el proyecto, muy bueno esta, quisiera saber si me puedes enviar el esquematico de la tarjeta para probarla gracias

    jabm32@hotmail.com

    ResponderEliminar
  117. Muy buen trabajo Adrian! Me puede ayudar mucho para un trabajo que tengo que realizar, podés mandarme el esquema de la tarjeta que está en tu video?
    Tengo que medir tiempos (velocidad) entre 2 entradas digitales que ronda los 2 ms con 2 decimales de presición y una señal con forma de campana analógica que dura unos 5 ms (necesito por lo menos 100 muestras en ese tiempo, para dibujarla), será posible hacerlo con este pic modificando algo tu proyecto?
    Mi mail: sar1@netcoop.com.ar
    Desde ya muchas gracias!!

    ResponderEliminar
  118. Hola a todos, les comento que intento bajar el picusb.vi y el enlace aparece bloqueado, agradezco si me dicen en donde lo puedo descargar.

    Att, Rodrigo
    Colombia
    redk292@yahoo.com

    ResponderEliminar
  119. Que onda, pues yo ahorita ando medio apurado :P, jejeje, igual ando usando lo del compa Adrian, pongo este enlace, donde esta lo del picusb y todo lo necesario para hecharlo a andar
    suerte...
    http://www.megaupload.com/?d=46F9YI8K

    ResponderEliminar
  120. He probado con lo propuesto por VICTOR HUGO, pero no me reconoce el driver... cual usa???, me interesa muchisimo el poder hechar a volar este proyecto, les agradeceria si pueden postear mas informacion...

    Saludos

    ResponderEliminar
  121. Si funciona Alejandro, este comprimido sólo tiene el código necesario para actualizar la conversión del ADC, el driver a usar es el mismo que ha puesto Adrian aca en su blog, o igual puedes usar el actualizado de este mismo blog para Win7.

    ResponderEliminar
  122. Intentamos descargar el proyecto completo pero los link de descarga estan desactivados, sera que puede subir los link nuevamente o enviarme el proyecto completo al correo leonardo-asb326@hotmail.com , vijap85@hotmail.com
    me parece que su proyecto es super bueno y me gustaria hacerlo para mi clase de instrumentacion que debo presentar el 30 de noviembre de 2010. gracias.
    att: leonardo sarrazola

    ResponderEliminar
  123. Tengo hecho el montaje que propones pero al conectar por usb con el pc no me aparece nada, no me reconoce la conexión del usb. Alguien sabe porque puede ser??? Lo he comprobado todo y están bien las conexiones y el firmware del pic está bien cargado.
    Alguna idea...???

    ResponderEliminar
  124. mmmmm, cual firmware tienes??, si es el mio acabo de observar algo, que le deje las líneas para que el PIC trabaje en modo bootloader, a´si que se solucionaria con suprimir totalmente las siguientes líneas del proyecto que subi en megaupload :

    #define LOADER_END 0x7FF
    #define LOADER_SIZE 0x6FF
    #build(reset=LOADER_END+1, interrupt=LOADER_END+9)
    #org 0, LOADER_END {} // nothing will replace the bootloader memory space
    // END OF bootloader definition

    Esas líneas, borralas, asi ya no debe dar problemas, solo marca 4 warnings, pero es normal :P, suerte, cualquier otra cosa x aca andare :D.

    (Apenas me di cuenta de eso, quizàs tambien fue el problema de Alejandro, sorry, olvide quitar esas lineas :P)

    ResponderEliminar
  125. probe el codigo que mensionas VICTOR pero no me reconoce el dispositivo que crees que pase, con el codigo viejo si lo detectaba

    ResponderEliminar
  126. HOLA ADRIAN : muy buen proyecto viejo felicidades, soy estudiante de ingenieria en mecatronica, pero quiero que mis entradas de datos sean digitales, ya que lo estoy usando para manipular un plc y usar labview como una HMI y todo va bien solo que como esta protegido el sub del labview poes no se como hacerle me puedes orientar o decirme como hacerle te lo agradeceria mucho, te dejo mi correo quizaman_12@hotmail.com ok poes saludos y te cuidas gracias por el aporte.

    ResponderEliminar
  127. al anónimo ya le deje una respuesta, checa esas lineas que te menciono, borralas totalmente, y debe reconocerlo, el driver es el del proyecto de Adrian, observen que el VID es el de Microchip y el ID es el 0x10, de ahi en fuera ya debe funcionar, de todas formas los invito a visitar el nuevo foro que Adrian ha creado, hay que entrar ahi :D :
    http://www.foros.net/viewtopic.php?t=3&mforum=uElectronika

    Cualquier otra cosa x aca ando, aprovechen que ando x aca :P

    ResponderEliminar
  128. Hola amigo, me serbio tu página mucho ahora estoy haciendo una SCADA de una mescladora de concreto utilizando DSC ya tengo entradas analógicas y salidas digitales no sé si me podrías ayudar en las entradas digitales lo programe en ccs pero el labview no me funciona quisiera que me guíes en donde estoy fallando; anticipadamente le doy gracias a su persona con el apoyo
    Le doy mi correo aver si nos comunicamos
    Alder007@hotmail.com

    ResponderEliminar
  129. hola buen dia. implemente este proyecto instale el driver para windows 7 64 bits, todo funcionaba perfecto, pero de un dia a otro me dejo de reconocer el dispositivo, y al irme a administrador de dispositivos me aparece como "microchip custom USB Device y ya no me lo reconoce. alguna idea de como corregir este problema
    romaher20@hotmail.com

    ResponderEliminar
  130. excelente aporte funciona muy bien, pero igual que a la mayoria el CAD para el termometro presenta problemas, si puedes ayudarnos con este problema ya implemete el codigo que proponen de solucion, haciendo sus respectivas correcciones pero tampoco funciona
    insisto muy buen aporte

    ResponderEliminar
  131. hola amigo excelente aporte tu aplicacion esta genial pero lo probe en win xp con LabView 2009 y no recibe lo datos q envio del uC no se si me puedes colaborar con esta duda gracias y felicitaciones

    ResponderEliminar
  132. Prueba con los siguientes link:

    1. Conexion con windows 7 (32bits y 64bits)
    2. Correccion del error de lectura no continuo

    Espero y esto ayude a resolver tu problema

    suerte que te diviertas amigo.

    ResponderEliminar
  133. 1.- http://uelectronika.blogspot.com/2010/07/conexion-picusb-labview-con-windows-7.html

    2.- http://uelectronika.blogspot.com/2010/09/correccion-de-error-de-lectura-no.html

    ResponderEliminar
  134. Hola excelente aporte primero que todo, pero la adquisición de los datos hacia el pc, aun tiene problemas, ya hice la corrección que realizo herrera y ahora no reconoce la tarjeta

    ResponderEliminar
  135. se puede programar el pic en Mplab??podrias dar algun ejemplo?

    ResponderEliminar
  136. felicidades por tu trabajo y sobre todo por compartirlo y explicarlo tan bien

    ResponderEliminar
  137. la clave para poder ver el diagrama de bloques?

    ResponderEliminar
  138. Hola compañeros! Muy buen trabajo.
    He estado utilizándolo pero al final tengo un problema, necesito enviar más de 8bytes. Hay alguna forma de conseguir esto? Ya sea cambiando el código o lo que sea.
    Muchas gracias.

    Germán

    ResponderEliminar
  139. Hola! Muy buen trabajo. Lo he utilizado pero tengo un problema... necesito enviar más de 9bytes, este va de 0 a 8 pero en mi proyecto necesito enviar más. Alguna solución posible?? Es muy urgente para mi proyecto final de carrera!

    ResponderEliminar
  140. Solo tienes que cambiar la tamaño de bytes a enviar,en este caso son 9. los tienes que mandar en una cadena de string. y el mi crocontrolador tienes que cambiar el codigo, de lo que quieras que haga cada bytes recibido.. saludoss
    suerte!!

    ResponderEliminar
  141. Hola adrianjpc. Creo que nos hemos liado... yo hablo de los datos enviados desde el pic al pc y creo que tú me hablas de datos enviados de pc al pic, puede ser?
    He cambiado en labview el no. de bytes a recibir que son 9 y pongo 12 por ejemplo, pero al ampliar el instrumento "Unbundle by name" (la cajita donde sale el nombre de los bytes que recibes, para entendernos) aunque la amplíe me sale siempre con el byte 8 y no sé como cambiarlo...

    ResponderEliminar
  142. Hola Adrian, he cambiado el tamaño de bytes a enviar y he puesto 12, pero al ampliar el unbundle (caja con los nombres de cada byte) siempre como último se queda el byte 8 y no puedo cambiar el nombre.
    Muchas gracias!!

    Germán

    ResponderEliminar
  143. Sorry, I dont know your language. Your project's very good, I like it very much. So, Can you send for me password usb vi, I hope you send for me.

    Good luck to you.

    ResponderEliminar
  144. HOLA A TODOS
    Alguien me podria enviarel codigo para poder activar 5 entradas analogas.

    tangela5@hotmail.com

    ResponderEliminar
  145. Hola mi nombre es Andrés
    Soy estudiante de ingeniería electrónica y estoy realizando un proyecto en el cual necesito ingresar datos de un GPS a Labview por lo tanto me gustaría que por favor me enviaras la clave del diagrama de bloques del VI. Muchas gracias.

    andresmaratri@gmail.com

    ResponderEliminar
  146. hola primero que nada agradecer que compartas tu proyecto, he intentado hecharlo a andar en labview 2010 pero me dice que picusb no es ejecutable doy run en picusb y me dice que no encuentra o no se pudo cargar la libreria mpusbapi.dll y trato de ver el error y me dice que esta protegido con pasword no se que hacer la libreria esta en la carpeta picusb dentro de users.lib deberia de funcionar. te dejo mi correo por si me puedes ayudar.
    adamebatman@hotmail.com

    ResponderEliminar
  147. excelente aporte hombre mil gracias .... me gustaría ver la posibilidad de tener el pcb que usas en tu proyecto .. de antemano mil gracias

    ResponderEliminar
  148. hola ke tal Adrian, antes que nada pues felicitarte por tu proyecto, la verdad es bastante sorprendente, ademas de la aplicacion en labview, parece que tiene ventajas sobre visual basic; sabes estoy en un proyecto similar pero usando visual basic y pues keria saber si me puedes echar una mano con el codigo del pic, lo que necesito que haga es recibir una cadena de caracteres por el puerto serial RS232 a una velocidad de 2400 baudios y posteriormente el dato recibido mandarlo via usb a una pc. estoy utilizando el codigo de ejemplo que trae ccs (ex_usb_hid) claro modificando un poco el codigo lo simule en proteus y todo funciona bien pero al montarlo fisicamente la pc si me detecta el dispositivo usb pero no hace nada no envia ni recibe datos, aqui esta el main de mi codigo espero me puedas ayudar...
    mi correo es: pics_infinity@hotmail.com
    de antemano muchas gracias


    void main(void)
    {
    int8 out_data[20]; //int o char
    int8 send_timer=0;

    usb_init_cs();
    while (TRUE)
    {
    usb_task();
    usb_debug_task();
    if (usb_enumerated())
    {
    if (!send_timer)
    {
    send_timer=250;

    gets(buffer);
    delay_ms(20);
    out_data[0] =buffer[0];
    out_data[1] = buffer[1];
    out_data[2] =buffer[2];
    out_data[3] = buffer[3];
    out_data[4] = buffer[4];
    out_data[5] = buffer[5];
    out_data[6] = buffer[6];
    out_data[7] = buffer[7];
    out_data[8] = buffer[8];
    out_data[9] = buffer[9];
    out_data[10] = buffer[10];
    out_data[11] = buffer[11];
    out_data[12] = buffer[12];
    delay_ms(20);
    if (usb_put_packet(1, out_data,64,USB_DTS_TOGGLE))
    printf("\r\n<-- Enviando Datos via USB");
    }
    send_timer--;
    delay_ms(1);
    }
    }
    }

    pics_infinity@hotmail.com

    ResponderEliminar
  149. excelente trabajo, Podrías decirme como cambiaste la imagen de el dispositivo en el panel de control despues de ser instalado, gracias.

    ResponderEliminar
  150. hola que tal mira trato de ejecutar el programa en labview con la version 2009 y me dice que el SubVI no es ejecutable quisiera saber si me pudieras orientar al respecto

    te dejo mi correo allanffp@hotmail.es

    ResponderEliminar
  151. Hola excelente trabajo mira lo que quiero hacer es lo siguiente quiero tener la mayor cantidad de entradas y salidas solo para manejar varias cosas no se si me podrías asesorar y gracias por compartir tu proyecto mi msn es percy_507@hotmail.com

    ResponderEliminar
  152. Hola excelente trabajo mira lo que quiero hacer es lo siguiente quiero tener la mayor cantidad de entradas y salidas solo para manejar varias cosas no se si me podrías asesorar y gracias por compartir tu proyecto mi msn es percy_507@hotmail.com

    ResponderEliminar
  153. Una pregunta como logras que el controlador en propiedades del sistema quede con el icono de labview, he hecho programas anteriores con el controlador de microchip pero este viene con mchpubs.inf y mchpubs.sys y no colocan ni un icono en las propiedades del sistema solo sale un signo de interrogacion, pero el que tu proporcionas viene con los dos anteriores mas mchpubs.dll, bueno en fin no se como logras cambiar ese icono si me puedes ayudar con una explicacion gracias

    ResponderEliminar
  154. Muchas gracias por compartir tu proyecto, está muy bueno y muy util.

    ResponderEliminar
  155. hola adrian monte el proyecto y funciona perfecto todo como esta en el video pero intente ponerle entradas digitales y una salida pwm pero el compilador me bota un error de compilacion.
    sera que puedes por favor ayudarme con esto
    te dejo mi correo y link de mi proyecto en youtube.

    leonardo-asb326@hotmail.com

    http://www.youtube.com/watch?v=PoUuXpFfwT0

    mil gracias

    ResponderEliminar
  156. La verdad te la rifaste con este proyecto, eres un orgullo mexicano, este proyecto esta genial genial. felicidades!!

    ResponderEliminar
  157. Hola Jose Adrian Perez, excelente aporte, hermano,tratare de seguir tus pasos para lograr la comunicacion usb-pc via labview. eres un gran maestro.

    muchas gracias.

    cperez

    ResponderEliminar
  158. hola Jose Adrian Perez, he comprado una tarjeta PIC18F14K50 USB Breakout Board v3 - With USB Bootloader. y la reconoce la pc.
    Pregunta... para que me funcione igual como tu proyecto que tengo que hacer. tengo instalado el labview.
    gracias.

    cperez

    cperez

    ResponderEliminar
  159. hola Jose Adrian cuelga pues la contraseña del diagrama de bloques

    ResponderEliminar
  160. Adrian, excelente aporte... pero tengo una duda no se como leer el dato desde la entrada analogica tengo conectado un lm35 directamente pero no puedo leer aabsolutamente nada que puede ser???

    ResponderEliminar
  161. Adrian, excelente aporte pero tengo una duda... no puedo leer absolutamente nada desde la entrada analogica... tengo conectado un lm35 directamente y no puedo lograr leer un solo dato, que es lo que puedo hacer o tengo que hacer?? saludos

    ResponderEliminar
  162. hola jose como puedo hacer que el porgrama corra sin q me genere ningun error en mi caso no tengo el turulo lo ago con el circuito q publicaste funciona bien y cada led q significa

    ResponderEliminar
  163. Hola que tal. Tengo un problema con la instalacion del driver, cuando lo instalo me aarecen lo siguiente: en el administrador de dispositivos el pic me aparece como "Custom USB Devices" y no como "tarjeta de adquisicion"y "Microchip Custom USB device" y cuando le das propiedades en estado del dispositivo: "Este dispositivo no puede iniciar. (Código 10)".
    si alguien tiene alguna solucion a este problema por favor mandenme un correo a jrgv_1990@hotmail.com. se los agradecere mucho. gracias

    ResponderEliminar
  164. HOLA COMO HAGO PARA MANIPULAR VARIASS TARJETAS DE ADQUISICION DE DATOS COMO ESTA??

    ResponderEliminar
  165. excellente pasate a mi blog ;) tambien trabajo con una tarjeta de adquicision de datos CDC con xbee ( inalambricamente) y labview

    ResponderEliminar
  166. Hola Adrian! Excelente trabajo! Mis felicitaciones.
    Recien me estoy iniciando en esto del USB y me interesaria ver el codigo dentro del VI, de ser posible te pediria que me envies la clave para desbloquearlo y asi poder leerlo, mi mail es gaspargomez975@hotmail.com.
    Nunca esta demas el agradecimiento a las personas que luchan por el software libre y de calidad, asi que MUCHAS GRACIAS!!!
    Saludos!

    ResponderEliminar
  167. hola jose hize el proyecto como hay aparece descarge el aplicativo he hize el montaje del circuito pero no me funciona podrias ayudarme por favor....

    ResponderEliminar
  168. hola jose adrian soy de colombia y pues escribo por que he hecho paso a paso todo el montaje del circuito,y pues al correr el aplicativo de lab view en el programa no me funciona, y pues no se que pueda ocurrir y pues por ello pido ayuda,podrias colaborarme

    ResponderEliminar
  169. hola jose adrian, te escribo pues tengo un problema cuando conecto mi tarjeta con la pc me sale de que es un dispositivo desconocido le instalo el driver del windows7 de 64bits y persiste que es un dispositivo desconocido te agradeceria una solucion. mi correo es pcob15@hotmail.com

    ResponderEliminar
  170. picc.hostei.com mas info y mas tarjetas! ;)

    ResponderEliminar
  171. Hola amigo que tal. Solo tienes que cargar el drivers de windows 7 de 64 dependiendo de tu arquitectura, desistala los drivers y vuelvelo a instalar.Saludos

    ResponderEliminar
  172. hola amigo

    me gustaría adquirir la tarjeta turulo usb09 pero no se como o donde me ayudas con eso
    Gracias

    ResponderEliminar
  173. Hola amigo que tal. En 2012 sacare version modificada y actualizada en este blog la anunciare y la compartire con ustedes con muchos ejemplos. Saludos

    escribe adrian-jpc@hotmail.com
    y por el facebook adrianjpc
    http://www.facebook.com/adrianjpc

    ResponderEliminar
  174. Hola Buenas noches, he realizado todo lo que dice el tutorial pero al momento de capturar la señal no me la captura, que puedo hacer?

    ResponderEliminar
  175. hola q tal... genial tu proyecto FELICIDADES, yo me encuentro en desarrollo de un proyecto (para mi titulación), en el cual debo de monitorear que una máquina seleccionadora de jitomate este funcionando correctamente, por lo tanto debo de monitorear que los sensores, motores y demas dispositivos esten activandose y desactivando correctamente, en si no es un super proceso el que tengo que monitorear, pero lo tengo que hacer es que sea mediante un dsPIC y LABVIEW, mediante el puerto USB, espero me puedas orientar.... tngo la siguiente duda, en el vi del USB que nos presentas que significa "Vid_Pid:", disculpa pero no me queda bien claro, otra cosa mas, con ese vi que creeaste, se pueden recibir varias señales? (sensores, botones) y tambien cuantas señales de salida se pueden generar... o eso ya depende de lo que se genere en todo el codigo dentro de LABVIEW.... Bueno espero y si me puedas orientar por q como lo vez ando super perdidooo... Muchas Gracias por tu amable atención

    ResponderEliminar
  176. adrian una consulta, se puede utilizar la estructuras de usb slave en tu trabajo de labview?. gracias

    ResponderEliminar
  177. amigo estoy necesitando la contraseña para ver el diagrama de bloques. seria posible que me la des? por si es posible mi mail es segu239@hotmail.com. gracias

    ResponderEliminar
  178. Buen día Adrian...
    Ya no tienes tu artículo anunciado en Mercadolibre... aún sigues fabricando las tarjetas Turulo? con qué versiones después de la 8.6 de labview es compatible? puede funcionar con un SO Win 7 a 64 bits..? Si es así, cómo le podemos hacer para poderte comprar 1 d estas tarjetas? Saludos

    ResponderEliminar
  179. soy estudiante y quisiera saver si este proyecto puede funcionar con labview 2011.....por su respuesta grax...

    ResponderEliminar
  180. me funciona perfecto en Win 7 pero solo me funciona al enviar 1 Byte al momento de enviar 6 en labview solo me lee un dato estoy introduciendo una señal analoga al puerto con un potenciometro pero vario el mismo y en labview el valor es constante, que puedo hacer para que me lea los 6 datos?

    ResponderEliminar
  181. podria alguien subir los archivos de nuevo dieron de baja megaupload

    ResponderEliminar
  182. Hola que tal, soy marcos de argentina. Ando trabajando en el desarrollo de una placa de adquisición con el pic 18f4550 y buscando por internet me di con el proyecto este, pero al momento de bajar el firmware y el vi para LabView me doy con que son links del difunto Megaupload. Habra alguna posibilidad de resubirlos en otro servidor o si pudieras enviarmelo a mi mail coletti.marcos@gmail.com

    Desde ya muchas gracias y felicitaciones por el proyecto

    ResponderEliminar
  183. ola adrian:
    felicitaciones por tu excelente proyecto. me gustaria saber si me puedes colaborar con el codigo del pic. mi correo es cossfajohn@gmail.com

    GRACIAS.

    ResponderEliminar

Comenten