LabView - Problema en Labview con RS232

   
Vista:

Problema en Labview con RS232

Publicado por Xabi (6 intervenciones) el 14/01/2008 09:29:55
Hola a tod@s

Tengo un problema coin la comunicaciçon Rs232 del labview 8.2, me aparece el siguiente mensaje de error:

Error -1073807202 occurred at Property Node in VISA Configure Serial Port (Serial Instr).vi->proyecto_modificado.vi

Possible reason(s):

LabVIEW: (Hex 0xBFFF009E) VISA or a code library required by VISA could not be located or loaded.

por lo que entiendo es que no puede cargar el modulo de la comunicación RS232, mi pregunta es ¿como puedo solucionar este problema?

gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Problema en Labview con RS232

Publicado por Carlos Pastor Paz (82 intervenciones) el 15/01/2008 12:23:01
Hola,
seguramente reinstalando el módulo de las funciones VISA se solucione el problema.
Es posible que esto te suceda si tienes alguna otra versión de Labview, creo que la 7.0 o la 7.1 daban problemas con las VISA.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por xabi (6 intervenciones) el 16/01/2008 18:44:33
Gracias por la respuesta, es lo que me temía, Tema solucionado

ahora tengo otra pregunta sobre el mismo tema la comunicación rs232

cuando colocas el modulo VISA READ debes poner un nómero de bits determinado, pero si transfieres un número de bits variables, es decir en cada comunicación no sabes cuantos bits transfieres, como lo haces?

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por Carlos Pastor Paz (82 intervenciones) el 18/01/2008 09:27:58
Hola,
la lectura en el puerto serie se realiza de la siguiente forma:

El controlador serie está recibiendo datos y almacenándolos en el buffer hasta que tenga el nº de datos que le has especificado. Pero tienes también un parámetro que es tiempo máximo de espera. Si cuando pasa ese tiempo no has recibido el nº de datos que especificaste, te da los datos que tenga en ese momento.

Por tanto si tu sabes cual es el nº de datos máximo que tiene una trama pon ese nº de datos o un valor mayor. Y en el tiempo de espera el tiempo máximo que tarda el transmisor en mandar la trama más larga.

Con esto hay que tener cuidado ya que si pones un tiempo muy grande puede que se te mezclen tramas.
Por ejemplo--> Tiempo de espera 2 segundos y nº máximo de datos 100
El transmisor envía una trama de 30 datos y a los 100ms envía otra trama de 70 datos. --> vas a recibir una sola trama de 100 datos.

No se si me he explicado muy bien, si tienes dudas pregunta.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por xabi (6 intervenciones) el 18/01/2008 11:23:47
Gracias por la contestación, la he entendido bien

lo he solucionado de otra forma, en el programa del micro asi qu esiempre envío 8 datos por lo que siempre leera 8 datos independientemente del tiempo, lo qu em epasa ahora esque tengo otro problema.

me da un erro diciendome que me el puerto de entrada pero no puede acceder a el:

Error -1073807246 occurred at Property Node (arg 1) in VISA Configure Serial Port (Serial Instr).vi->proyecto_modificado.vi

Error -1073807246 occurred at VISA Read in proyecto_modificado.vi

Possible reason(s):

VISA: (Hex 0xBFFF0072) The resource is valid, but VISA cannot currently access it.

el primer erro me lo da la configuración del puerto y el segundo la visa read.

Otra pregunta, cuando envió datos desde el labview, esté lo hace como caracteres, pues bien si yo quiero envíar un número , por ejemplo el 198 debo envíar los caracter '1',' 9',' 8', no??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por Carlos Pastor Paz (82 intervenciones) el 18/01/2008 11:56:19
Hola de nuevo,
los errores supongo que sean porque cuando cierras el programa no liberas el puerto serie por lo que cuando quieres acceder de nuevo a él no te deja porque ya tiene una comunicación abierta, por eso te dice que reconoce el puerto pero no puede acceder a él. Cuando termines la comunicación usa el "VISA close" para liberar la comunicación.

Por otro lado si tu quieres mandar el 198, no tienes que mandar '1', '9' y '8' sino que en un string mandas el 198. El puerto serie ya se encarga de mandar los códigos ASCII correspondientes a cada byte. Un byte para el '1' otro para el '8' y otro para el '9' por lo que cuando tu le mandes el 198 el puerto serie mandará 3 bytes con los códigos ASCII correspondientes a cada uno de los números.

Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por xabi (6 intervenciones) el 18/01/2008 12:08:57
Gracias de nuevo por las contestaciones.

Pero tengo más dudas, xd

El visa close lo he cambiado de sitio a ver si funciona, luego te dire, pero me preocupa más los números, por ahora.

te explico lo que quiero hacer y me das tú opinión

yo quiero envíar, siempre, 6 bytes

(NRegistro,Alarma,Negativo,Temperatura), donde Nregistro,alarma,negativo son o0 o 1, el problema lo tengo en la temperatura, ya que está puede ser de 1,2 o 3 digitos dependiendo de su valor, entonces hay alguan forma de hacer que los numero me los mande, por ejemplo el 3 como 003?, el 70 como 070?, o tengo que diferenciar por programa las centenas decenas y unidades y rellenarlas según me de el caso?

Gracias por al ayuda que me estas ayudando mucho y me queda poco para terminar el PFDC.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por xabi (6 intervenciones) el 18/01/2008 12:27:41
He comprobado lo de la comunicación y el fallo me daba porque no tenia conectado el error in, así que una cosa menos,
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por Carlos Pastor Paz (82 intervenciones) el 18/01/2008 13:44:31
A ver si me aclaro,
tenemos:
NRegistro: '1' o '0' en decimal --> 1byte
Alarma: '1' o '0' en decimal --> 1byte
Negativo '1' o '0' en decimal --> 1byte
Temperatura '0' ...'999' en decimal --->3bytes

Esto quiere decir que, cada número en decimal está compuesto por 8 bits, es decir un bite. El puerto serie te codifica los caracteres pon la tabla ASCII por lo que si tu pones un 70 te va a mandar dos bytes. uno para el '7' y otro para el '0' y depende del receptor cómo interprete los datos. Si tu quieres mandar siempre 6bytes lo que tienes que hacer es mandar siempre 3bytes para la temperatura y sabiendo esto codificar el receptor para que interprete de forma correcta los caracteres enviados.

Te mando un vi a tu correo para que veas la forma de escribir los datos en el puerto serie y la forma de interpretarlos en el receptor.

Espero te sea de utilidad.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por xabi (6 intervenciones) el 18/01/2008 14:13:36
Muchas gracias

esperare ese correo!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Problema en Labview con RS232

Publicado por JDGB (1 intervención) el 30/10/2013 22:43:07
Hola:
Necesito saber como puedo dejar el canal de comunicacion abierto, para que el write y el read sean constantes, tengo que leer el valor de un sensor, y enviarlo por rs232, pero tiene que ser cada 100ms, ya he tratado de todo, pero la unica manera es dando en "RUN" TANTO EN EL PROGRAMA DE WRITE COMO EN EL DE READ, AYUDA
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar