Puerto serial labview

HOLA QUE MAS ,
ESTOY REALIZANDO MI PROYECTO DE GRADO DE INGENIERIA ELECTRONICA ,DICHO PROYECTO SE BASA EN UN PIC 16F874a  QUE REALIZA MEDICIONES ANALOGAS  A TRES SEÑALES DIFERENTES Y LUEGO LAS TRANSMITE AL PUERTO SERIAL DEL COMPUTADOR ,YA HE REALIZADO PRUEBAS EN LABVIEW Y RECIBE BIEN LOS DATOS DEL MICRO PERO TENGO UNA INCONVENIENTE QUE LOS DATOS NECESITO QUE LOS LEA EN UN ORDEN ESPECIFICO, YA LE COLOQUE CARACTERES PARA SEPARALOS EN LABVIEW PERO NO SE QUE PASA CON EL PUERTO SI SE BLOQUEA O NOSE PERO EN UN MOMENTO NO LEE NINGUN DATO O LA CADENA DE DATOS SE CORRE Y NO ES FIJO LA LECTURA , LA IDEA ES RECIBIR LOS DATOS EN EL ORDEN ESPECIFICO PARA VIZUALIZARLO EN DIFERENTES GRAFICAS PERO NO PUEDO POR EL PROBLEMA ANTERIOR, YA HIZE PRUEBAS EN HIPERTERMINAL Y RECIBE BIEN ,,,,,,,,,,,,,,,CONSULTE Y ME DIJERON QUE ERA EL BUFFER DEL PUERTO SERIAL ENTONCES NO SE DONDE ES EL PROBLEMA SI EN EL PIC O EN LABVIEW  EN EL"PUERTO SERIAL"
AGRADECERIA SU COLABORACION EN ESTE ASPECTO............ 

Hola,
    Me imagino que tienes algún problema en tu código. Si lo adjuntas será más fácil ayudarte.
    Algunas otras cosas que podrías revisar:
La cajita que recibe los datos tiene una opción de terminaton char, deshabilitalo si no lo estas usando, ya que no te interesa que un valor de voltaje 0x13 sea confundido con un carácter de terminación y te de un comportamiento inesperado.
Si tienes etapas de alto consumo de potencia (como motores eléctricos) trata de separar la alimentación análogica de tu parte digital, y utiliza un condensador cerámico de 0,1uF lo más cercano a la alimentación de tu micro.
Mantener un pin intermitente, te permite visualizar a través de un led que tu micro no se ha colgado, y en labview tambien pudieses hacer lo mismo.
Saludos.
Luis A. Mata C.
Ing. Electrónico
Anaco - Venezuela

Similar Messages

  • Captura de datos por el puerto serial

    Buenas noches,
    Tengo un problema con la captura de datos por el puerto serial. Logro capturar la cadena de datos, pero el problema es que se desordena la cadena de datos.
    Agradecere cualquier ayuda, ya que soy nuevo en LabView.
    ¡Resuelto!
    Ir a solución.
    Adjuntos:
    dato en desorden.png ‏44 KB
    dato sincronizado.png ‏45 KB

    Parece que el dispositivo conectado simepre transmite sin que haya un comando de inicio; igualmente parece que el paquete de 64 bytes es terminado por un retorno de carro.
    Creo que el problema es que no tienes sincronización entre la transmisión y la lectura: podrías modificar el código para parar la lectura en el retorno de carro, algo así:
    Proud to use LW/CVI from 3.1 on.
    My contributions to the Developer Zone Community
    If I have helped you, why not giving me a kudos?

  • Separar datos puerto serial

    Buen día,
    Tengo un hardware que me envia datos por el puerto serial, pero no siempre envía la misma cantidad de datos. Lo que sí se manteninene constante es la estructura de los datos. Me envia dos valores delimitados por una coma (,). El primer valor será un valor entre 1 y 4, y el otro es un valor aleatorio. 
    Lo que quiero lograr, es separar estos dos datos y almacenarlos en indicadores strings separados. En efecto, pude lograrlo como lo ven en la imagen:
    Este codigo me funciona solo si recibo una sola trama de datos. Sin embargo, cuando recibo tres tramas por ejemplo, el resultado se ve como aparece en la imagen:
    Despues de la primera trama de datos, no me separa los siguientes dos datos despues de la coma. 
    El resultado que quiero obtener es como se visualiza en la imagen:
    Agradezco de antemano el soporte y la ayuda que puedan brindarme.
    El hardware lo tengo configurado para que me delimite los dos datos por una coma (,), pero puedo utilizar un espacio o un tab. De igual forma,  el line ending lo tengo configurado como CRLF, pero puedo configurarlo además por LF o None. 
    Les comento esto ultimo por si es mas factible utilizar alguna de estas configuraciones para realizar la separacion de las cadenas de texto.
    Gracias de antemano por la respuesta.
    Saludos,
    Norberto G.
     

    Hola Roberto, estas son las respuestas:
    El instrumento ¿no contesta algo especial al *IDN? inicial? En este caso ¿puedes quitarlo?
       R: No contesta nada. Incluso hice la prueba eliminando la funcion Open y Write, y me trabaja de igual forma. No hay cambio.
    Tu instrumento ¿envia las tramas sin pedido? ¿Estas seguro de que envía dos tramas?
       R: Sí envia los datos sin pedido. Es un lector de radiofrecuencia, que continuamente esta activo buscando tags. Yo no tengo que indicarle cuando enviar los datos. Cuando coloco un tag, automaticamente envia los datos. Si coloco varios tags a la vez, de igual forma los envía todos a la vez.
    Veo que borras los errores del VISA read: ¿no será que recibes un error que explica por qué no recibes más datos y no lo ves?
       R: Lo borro porque me envia siempre el error de Timeout. Y pienso que es porque no siempre voy a recibir la misma cantidad de bytes de datos, ya que a veces no recibiré datos de tags, y en otras ocasiones sí recibiré varios datos. Coloqué esta funcion de borrar xq no me afecta en nada el funcionamiento del programa.
    Saludos

  • LEER ESCRIBIR PUERTOS SERIALES DEL FP2120

    Hola a todos :
    Queria preguntar una duda, sobre los puertos seriales del FP2120, estos puertos actuan del mismo modo que el de una CPU al que se puede leer y escribir sobre el, si es asi que numeros tienen estos puertos y si se programan igual que el puerto serie de una CPU cualquiera.
    Si alguien sabe por ahi se agradece el detalle
    Gracias!!

    Que tal Daniel,
    Recuerdo hace mucho haber hecho algo similar en un cFP. Lo que no me acuerdo para serte sincero es si lo hice usando el cFP como un puerto serial remoto (desde una PC) o si hice un servidor interno para el cFP. Por lo que menciona ese documento entonces debi haberlo hecho haciendo un servidor interno. Y tiene sentido ya que VISA Server creo que no se puede instalar en cFP, el instalador de aplicaciones remotas no lo muestra como opcion, o te marca un error al tratar de bajarlo.
    No es muy dificil hacer un servidor, haz un VI que este corriendo en el cFP y recopilando un buffer FIFO del puerto serial, y en ese orden ese buffer mandalo por TCP/IP a tu PC, lo ventajoso de esto es que ya al recibir tu buffer lo tienes en ASCII y asi mismo lo transmites a TCP/IP. O bien, haz uso de las variables compartidas de LV, con esas puedes estar monitoreando desde una PC una variable de humedad que tienes adquiriendo por serial en tu cFP. Esta opcion tambien es via TCP/IP.
    Nestor
    National Instruments

  • Como utilizar la NI 9870 solo como simples puertos seriales?

    Que tal!!
    estoy tratando de controlar algunos drivers a traves de varios puertos seriales y como mi pc no cuenta con ellos, adquirí la tarjeta NI 9870 para ello. el problema es que ya realicé lo que indica la información de esta liga http://digital.ni.com/public.nsf/allkb/2BAD2D3A7DE25EB2862576D6007EDB22?OpenDocument y esta otra http://digital.ni.com/public.nsf/allkb/16989C708E5AF2C1862578A90067D9DC . no quiero meter proghramación en FPGA ya que no cuento con el conocimiento para ello. ya habia logrado que me aparecieran las opciones de elegir los puertos pero no tenia comunicación y debido a eso intenté activar la tarjeta en modulo fpga en mi proyecto por lo que despues de eso los puertos que ya me aparecian en el MAX desaparecieron y en las opciones para configuras los puertos seriales también. espero me puedan apoyar con esto.
    gracias
    Ing. Rene Guerrero
    ¡Resuelto!
    Ir a solución.

    Hola Reno32
    Segui los pasos que menciona el siguiente KB y efectivamente ahora podía ver los puertos de mi NI 9870 en MAX. Despúes, seleccione a el modo de FPGA y los puertos desaparecieron de MAX. Esto tiene sentido, ya que la opción de ver los puertos en MAX es exclusiva para el modo de Scan Interface. 
    Lo que realice para que me volvieran a aparecer los puertos en MAX, fue regresar el chasis a Scan Interface. Para hacer esto di click derecho sobre el chasis >> Properties, y en Porgramming Mode seleccione Scan Interface de nuevo. 
    Por último di click derecho al chasis (ojo en el chasis no en el controlador) y seleccione Deploy All. Con esto ya deben de volver a aparecer los puertos al refrescar MAX. 
    Espero que estos pasos le resulten útiles Rene. Saludos !
    Omar R.
    Applications Engineer

  • Abrir puerto serial

    Hola
    Me he topado con un pequeño problema.
    Lo que intento hacer es comunicarme con u modulo de pago, esto con el fin de mandarle comandos de manera serial y ver que los leds esten funcionales.El problema surge puesto que no se manda el comando como tal, o eso es lo que yo pienso ya que el modulo no hace absolutamente nada.
    En la imagen podran ver el codigo tal cual lo tengo, al igual el comando que le estoy enviando (Este debe ser caracteres de bytes).
    La respuesta de la tarjeta es una muy diferente a la que me deberia dar por eso es que pienso que no se esta enviando el codigo correctamente.
    Me podrian ayudar a ver cual es el problema?
    Gracias
    Saludos

    Hola,
        Me imagino que tienes algún problema en tu código. Si lo adjuntas será más fácil ayudarte.
        Algunas otras cosas que podrías revisar:
    La cajita que recibe los datos tiene una opción de terminaton char, deshabilitalo si no lo estas usando, ya que no te interesa que un valor de voltaje 0x13 sea confundido con un carácter de terminación y te de un comportamiento inesperado.
    Si tienes etapas de alto consumo de potencia (como motores eléctricos) trata de separar la alimentación análogica de tu parte digital, y utiliza un condensador cerámico de 0,1uF lo más cercano a la alimentación de tu micro.
    Mantener un pin intermitente, te permite visualizar a través de un led que tu micro no se ha colgado, y en labview tambien pudieses hacer lo mismo.
    Saludos.
    Luis A. Mata C.
    Ing. Electrónico
    Anaco - Venezuela

  • Serial Labview VI's for contorlling a Yaskawa SMC-4040?

    Hello All!
    Just wondering if any has or knows where there might be any Labview VI's for a Yaskawa SMC-4040 controller using the serial port?
    Thanks,
    Greg Newsome
    Test Engineer

    Greg--
          I just want to verify, this motion device doesn't need a controller.  It is essentially a stand-alone instrument where you'll just send commands for whatever motion you need it to preform. Is this correct?
          If so, the driver that will allow you to send commands to your ports is NI-VISA.  I think what you are looking for, or the best option, would be if there is an "Instument Driver" for this device. Instrument drivers are packages of all the commands you would send using VISA.  I've looked and cannot see one on our website.  If we do not have it, your best bet is to contact the manufacturer and see if they have anything.
          If you cannot find an instrument driver, you will still be able to communicate to the instrument manually using the VISA VI's and the command set for your instrument.  The best way to see how to do this is to open an example from the NI Example Finder in LabVIEW.  Go to "Help>>Find Examples"  then Navigate to "Hardware Input and Output>>Serial"  folder. I would suggest looking at the code for "Basic Serial Write and Read".  If you have any questions let me know.
    Regards,
    John H
    Applications Engineer
    National Instruments

  • Serial labview

    i can´t write in my microcontroller a mega32 with labview but i can read (only number)
    In visual basic    work  Ok   tx and rx and  in the terminal of codevision
    no puedo mandar lo que deseo de labview a un microcontrolador(numeros)
    del microcontrolador a labview si puedo y hasta lo garfico pero solo recibir
    no creo que este mal mi programa del microcontrolador por que lo probe en un programa en visual basic y jalo bien al igual que en una terminal en codevision.    funciona bien en estos  rx  tx
    [email protected]

    I don't know what else to say that isn't explained on the front panels of the examples. If you use the basic example, be sure you do not delete the \r\n controls characters that are in the 'string to write' control. Those are the Carriage Return/Line Feed control codes. You haven't explained anything at all of how you've programmed the micro. Does it expect a CR or LF at the end of a command? Does it expect it to receive text?
    I have no idea what you are refering to when you say 'visual basic example'.

  • El codigo String que envio por puerto serial se envia en ASCII y no en Bytes

    Hola
    Tengo una gran duda, estoy intentando controlar una placa de modulo de pago mediante labview. La conexion se logro con exito pero el envio de datos no.
    Estoy intentando mandarle un codigo en Bytes pero lo envia en ASCII y no se el porque. Me gustaria saber que puedo hacer ya que he intentado usar "Byte Array to String" pero no me resulto.
    Gracias por su ayuda.
    Atte. Andres P.

    Hola,
        Me imagino que tienes algún problema en tu código. Si lo adjuntas será más fácil ayudarte.
        Algunas otras cosas que podrías revisar:
    La cajita que recibe los datos tiene una opción de terminaton char, deshabilitalo si no lo estas usando, ya que no te interesa que un valor de voltaje 0x13 sea confundido con un carácter de terminación y te de un comportamiento inesperado.
    Si tienes etapas de alto consumo de potencia (como motores eléctricos) trata de separar la alimentación análogica de tu parte digital, y utiliza un condensador cerámico de 0,1uF lo más cercano a la alimentación de tu micro.
    Mantener un pin intermitente, te permite visualizar a través de un led que tu micro no se ha colgado, y en labview tambien pudieses hacer lo mismo.
    Saludos.
    Luis A. Mata C.
    Ing. Electrónico
    Anaco - Venezuela

  • Tiene el GP60 puerto Serial-ATA III (6 Gb/s)???

    No he sido capaz de encontrar en las especificaciones este dato.
    Podria alguien confirmarme si GP60 es SATA 3 (6Gb/s)??
    Gracias

    Sí, GP60 tiene 2 puertos de USB 3.0 y 1 puerto de USB 2.0: http://www.msi.com/product/nb/GP60.html#specification

  • Serial LabView - 16bit microcontroller communication

    I'm trying to make a Man - Maschine Interface (vizualization) between LabView and Infineon 167CR microcontroller. Communication between the both works fine, but I'm trying to figure out nice and convenient way to recognize the datas sent and to sort them so that I know whether it's engines temperature or engine speed data. Maybe someone already did something similar ???? Thanx in advance

    there are a variety of ways of doing this depending on how much flexibility you need. if the data packet contents are constant, define a 'start of message' character or sequence of characters. convert your datavalues into single-precision and convert to hex. append all these 4-byte strings and put your start of message at the beginning of the whole thing and transmit it. at the other end the receiver scans for the start of message and (after stripping it off) takes the remainder, breaks it up into 4-byte chunks and converts each chunk back into a single precision number. a number's position in the message defines the value it represents.
    Certified Professional Instructor
    Certified LabVIEW Architect
    LabVIEW Champion
    "... after all, He's not a tame lion..."
    Be thinking ahead and mark your dance card for NI Week 2015 now: TS 6139 - Object Oriented First Steps

  • LabVIEW serial VI for LakeShore Temp. Monitor #208

    Hi folks,
    does somebody have a ready-to-go serial LabVIEW VI to control the
    LakeShore temperature monitor model 208 or know a source for download?
    The National Instruments website doesn't support any serial-driven
    LakeShore Instruments (GPIB driven well).
    Thanks in advance - David

    While I don't have any experience with the LakeShore devices, don't give
    up on the GPIB drivers. Very often manufacturers of instruments with
    multiple control interfaces will use the same command structure and
    protocol for all the interfaces (to keep their firmware simple probibly).
    If such is the case for LakeShore the conversion to serial could be very
    trivial. For example, if NIs GPIB version uses the VISA drivers all you
    might have to do is change one initialization string because VISA can do
    serial IO as well.
    Mike...
    David Rabanus wrote:
    > Hi folks,
    >
    > does somebody have a ready-to-go serial LabVIEW VI to control the
    > LakeShore temperature monitor model 208 or know a source for download?
    > The National Instruments website doesn't support any serial-driven
    > LakeShore Instruments (GPIB driven well).
    >
    > Thanks in advance - David

  • Labview y Step 7

    Estoy usando el Step7 para programar un PLC s7200 para realizar ejemplos modbus rtu usando el puerto seria de mi PC; me ha funcionado perfectamente el step 7 hasta que realicé un ejemplo en labview de comunicacion modbus con el PLC (el ejemplo funcionó perfecto) pues ahora no puedo comunicar el step 7 con el PLC pues me dice "imposible abrir el puerto puede que otro porgrama lo este usando"; no quiero desinstalar Labview; conocen qué ejecutable o archivo es el que esta capturando el puerto?
    Tengo instalado Lbview full development system, Real Time y DSC en version de pruebas. 
    solo dispongo de un puerto serial en la PC
    no dispongo de conversores USB/485  ni el cable USB de siemens

    hello DANIEL; thanks by your concern
    1. Is it an executable LabVIEW application or is it a .vi file running from LabVIEW Development environment? R: actually, i don`t know; i created a project (.lvproj) and therefore a .vi and a .lvlib.
    2. Did you make sure to close the port session reference before finishing execution in the LabVIEW program? R: mi project does not use VISA; because is a MODBUS RTU communication with a s7 200 PLC.
    3.Do you close LabVIEW completely before trying to use the Step 7 software again? i closed the project then i closed labview. but i think that the capturer could be in one of the others programs that comes with LV, because in the LV folder was installed this subfolders: Real Time, DSC, Datasocket, NI serial (where i think is the problem. i don`t know), opc service 2013 and visa .
    the thing is, i`m not sure about this so i need some information. am i wrong?
    4. If you reboot the computer, does that releases the port? No, it doesn`t.

  • Lectura puerto serie Xbee

    Saludos,
    Deseo elaborar una interface en labview que me muestre los valores de dos sensores analógicos conectados cada uno a módulos Xbee independientes. Encontre una publicación referente a una libreria en Labview para trabajar con modulos Xbee serie 2 en modo API, de esta publicación estracte la parte de lectura de tramas API de los Xbee que esta basada en una estructura productor consumidor. Despues de probar y consultar varias fuentes logre crear una interface que funciona de forma parcial, el problema radica en que la interface solo me muestra la información proveniente de un módulo Xbee y  la informacion del segundo módulo Xbee se pierde, si apago el módulo del cual estaba recibiendo información enpiezo a recibir la información del módulo que queda encendido.
    Adjunto el proyecto como lo he depuerado hasta la fecha para que me colaboren con una revisión que me ayude a resolver mis inconvenientes.
    nota: para ejecutar la interface se debe abrir el proyecto y abrir el VI principal prueba2403
    Attachments:
    Labview.zip ‏59 KB

    Respecto a tu  afirmación, no estás equivocado, utilizo una interfaz XBee-USB para la recepción de información en la computadora. En esta tarjeta está montado un módulo XBee configurado como coordinador zigbee en modo API, este coordinador recibe  información de dos módulos configurados como dispositivos finales que tienen conectados cada uno un sensor analógico y leds que hacen la vez de encendido u apagado de un actuadores.
    ¿Es posible que esté recibiendo datos de ambos sensores pensando que es solo uno?
    Este es mi dilema!, LabView recibe información de ambos módulos  e interpreta los datos de los sensores conectados a ellos  cuando esta encendido cualquiera de los módulos, si enciendo los dos al tiempo muestra información de ambos al inicio pero luego solo muestra la información proveniente de un módulo.
    ¿Cómo identifico de dónde viene el dato del sensor?
    Cada módulo XBee trae una dirección de 64bits que viene de fábrica similar a la MAC de una tarjeta de red para PC, en mi caso utilizo una parte de esta dirección para identificar de donde proviene la información de cada sensor, el VI que hace esto se llama selección módulos, este VI usa una estructura case para verificar la dirección de procedencia de la trama, y dependiendo de la dirección hace una conversión de Hex a decimal y calcula valores de temperatura o nivel.
    El inconveniente que se presenta no radica en identificar de donde proviene a información,  ya que el programa si lo hace. A mi parecer el problema se presenta en el VI lector de tramas, este VI lee la información del puerto serial y la almacena en un queue que luego se pasa como referencia a un proceso paralelo donde se verifica si la información recibida corresponde a una trama API y si es así,  este proceso genera un cluster que contiene la trama y la almacena en un queue. Es aquí donde pienso que se presenta la perdida de información, no se si por sobre flujo (el muestreo de los sensores se realiza cada 500ms) o talvez por una mala configuración del puerto serial.
    Para que tengan más claridad al respecto, adjunto la publicación en PDF de donde tome esta forma de leer las tramas.
    Attachments:
    xbee labview.pdf ‏360 KB

  • Como hacer un telerrupto​r en labview

    necesito encender y apagar un led con la misma  señal en este caso una señal por el puerto serial
    si ingresa un dos al puerto serial, encienda un led y si vuelve a entrar un dos por el puerto serial, que apague el led.
    gracias: [email protected]

    Que tal Roni;
    Para comunicarte con el puerto serial en LabVIEW se utiliza VISA, que de hecho tiene funciones ya diseñadas para comunicación con el puerto serial, te anexo ligas a un documento que explica como utilizar dichas funciones y a un ejemplo que puedes utilizar como guía.
    http://zone.ni.com/devzone/cda/tut/p/id/7907
    http://zone.ni.com/devzone/cda/epd/p/id/2665
    Espero que la información te sea de ayuda.
    Suerte
    Francisco Arellano
    National Instruments Mexico
    Field Systems Engineer - Energy Segment
    www.ni.com/soporte

Maybe you are looking for

  • How do I change the pencil tool to smooth or ink in CC?

    In most other versions of flash that I'm aware of, you could change the settings on the pencil tool to smooth or ink, rather than straighten, which straightens out all of your lines and puts in fun corners and makes shapes into rectangles for you. In

  • Where can i find  an upgrade disc???

    i have this so called problem i wanna upgrade to leopard 10.5 because most apps now adays are not compatible with tiger i see that i have all the hard ware requirements for leopard but i have no idea how to get my hands on leopard and weather or not

  • How can I know the size of DB Table

    Hi, Guys, 1. How can I know the size of the DB Table in terms of kb 2. If I delete some records from the Table, does the actual size of the Table remains  same or will it be reduced. 3. If size remains same after deletion, how to reduce the size ( i.

  • LSMW record uploding is not proper

    Hi friends, Iam doing LSMW.Every thing is fine  now..but iam not getting proper loading data.Iam putting foreground for checking...i thought its problem with file .. I am uploading the file from my own desktop(presentaion server) tab delimited text f

  • How can i build a java parser/interpreter

    How can i build a java parser/interpreter i know java offers a tokenizer, how can i use it for build a parser or interpreter that recognize tags like this: <query db="db1" select="row1, row2"> and then perform some actions