el 12-23-2013 09:20 AM
Amigos estoy trabajando, con un arduino que controla la posición de un motor paso a paso (la posición la determina un potenciometro), el programa para manipular la posición esta grabada en el arduino, no uso la toolkit de Arduino para labview, uso las herramientas VISA para ello, para leer la posición no tengo ningún problema, lo que no puedo es hacer que a través de Labview sólo la posición del motor, cosa la que aún no he podido, si alguien pudiera echarme una manito con esto lo agradecería.
el 12-26-2013 09:54 AM
Hola eduardo.rivera!!
Muchas gracias por utilizar los foros de National Instruments!! Para poder apoyarte de la mejor manera posible, quisiera entender primero lo que no has logrado implementar utilizando LabVIEW. Por lo que veo en tu post, hasta el momento puedes leer únicamente la posición del motor utilizando las funciones de NI-VISA. ¿Correcto? ¿Entonces cuál es el parámetro que no has logrado leer con LabVIEW?
Si pudieras compartirnos el código que tienes implementado en LabVIEW, sería más fácil para nosotros apoyarte.
Espero tu respuesta!
Saludos!!
el 12-26-2013 10:54 AM
Hola eduardo,
Creo que redactaste mejor lo que querias en el otro post:
Tengo un problema parecido, uso un arduino para poder controlar la posición de un motor paso a paso (la lectura de la posición la hago a través de un potenciometro), estoy usando la herramientas de VISA ya que el programa para manejar el motor está cargado en el arduino. Mi idea es a través de Labview sólo leer (ya lo hice) y además de poder escribir, o sea definirle la posición, justamente esto es lo que aún no puedo lograr si alguien pudiera ayudarme en este tema, lo agradecería.
Por lo que entiendo tu problema esta en enviar un valor (posicion) desde LabVIEW al Arduino.
Si no lo has hecho ya revisa esta información Comunicación Serial Utilizando LabVIEW con un Microcontrolador
Te adjunto un VI (sin probar) que deberia recibir un byte y escribir un byte lo que te permite manejar numeros enteros entre 0 y 255. Puedes hacer una prueba inicial con eso haciendo que lo que escribas te lo retorne para asegurarte que funcione. En caso de que necesites varios bytes tendrias que dividir por ejemplo un integer de 32 bit en 4 bytes y enviarlos y luego rearmarlo, eso si quieres trabajar en binario, la otra opcion es mandar cada digito en ascii y al final un caracter de finalizacion y rearmarlo, es cuestion de lo que se te haga mas facil. Empieza probando el ejemplo, entiende como funciona y luego si necesitas algo mas nos das los detalles para tratar de guiarte.
Saludos,
el 12-26-2013 12:39 PM
Muchas gracias me ha servido a la perfección, MUCHAS GRACIAS!!
el 12-27-2013 05:16 PM
Habra una forma de escribir continuamente sin necesidad de tener un valor boleano para dar esa orden?
02-08-2014 11:24 AM - editado 02-08-2014 11:28 AM
En este artículo se presenta un procedimiento para la lectura de un puerto analógico de la placa Arduino UNO R3, los datos analógicos se enviarán a través de la comunicación serie con el PC y pueden ser controlados desde el panel frontal de nuestro programa a través de un indicador gráfico.https://decibel.ni.com/content/docs/DOC-33278
el 02-08-2014 11:25 AM
En este artículo se presenta un procedimiento para la lectura de los puertos analógicos de placa Arduino UNO R3, en el que se instaló un escudo Joystick. Los datos analógicos se relacionan con la posición de mando y pueden ser controlados desde el panel frontal de nuestro programa, para el cual utilizamos la comunicación en serie.https://decibel.ni.com/content/docs/DOC-33281
Más información sobre el escudo para Arduino https://www.sparkfun.com/products/9760
el 02-08-2014 11:27 AM
En este artículo se presenta un procedimiento para la lectura de los puertos digitales de la placa Arduino UNO R3, en el que se instaló un escudo Joystick. Los datos digitales se relacionan a D3, D4, D5, D6 y los botones pueden ser controlados desde el panel frontal de nuestro programa, para el cual utilizamos la comunicación en serie. https://decibel.ni.com/content/docs/DOC-34659
Más información sobre el escudo para Arduino https://www.sparkfun.com/products/9760
el 10-30-2014 06:18 PM
Habra una forma de escribir continuamente sin necesidad de tener un valor boleano para dar esa orden?
tambien tengo esa duda? no puedo enviar un dato continuamente si no se da la orden , cuando se escribe en el buffer no toma el dato. como se podria hacer ya que necesito que el se envie un dato que esta cambiando constantemente.
muchas gracias si alguien me puede colaborar.
el 10-30-2014 06:24 PM
si es posible, se debe realizar la escritura del puerto desde que inicia el programa