Discusiones sobre Productos NI

cancelar
Mostrando los resultados de 
Buscar en lugar de 
Quiere decir: 

convertir de 32 bit float to 16 bit unsigned

Buenos dias tengo una duda estoy utilizando la libreria modbus de Ni version 8.6 y puedo leer mediante modbus registros y convertirlos de 16 bits a 32 bits, mi duda es esta quiero poder escribir de 32 bits a 16 bits ya que al hacerlo se recorre unos digistos, espero su apoyo muchas gracias

0 kudos
Mensaje 1 de 7
6.765 Vistas

Hola itashi;

 

Podrías poner un ejemplo del código que tienes?

Sí sólo quieres hacer una conversión de 32 a 16 bits; puedes usar un I16 que te convertirá la entrada que quieras a un entero de 16 bits.

Si lo que tienes es una cadena de caracteres, deberás usar las funciones dentro de la paleta de String para recortarla

 

Saludos y éxito

0 kudos
Mensaje 2 de 7
6.749 Vistas

Estoy utilizando la libreria modbus y quiero poder convertir 32 bit float a 16 bit el detalle es que si lo hago de este modo se pierden .025 no es tan exacto como cuando lo leo 

0 kudos
Mensaje 3 de 7
6.746 Vistas

Itashi;

 

En efecto, cuando conviertes de  FXP, DBL, SGL o cualuqier tipo de dato decimal a un Integer o Unsigned;  por definición, estos tipos de dato son enteros. 

Si no quieres perder 3 decimales, lo mejor sería multiplicar el número por 1000 antes de convertirlo, tomando en cuenta que el decimal estaría corrido tres posiciones.

 

Exito

0 kudos
Mensaje 4 de 7
6.743 Vistas

lo que pasa es esto en labview quiero convertir de 32 a dos registros de 16 ya que por la libreria modbus solo puedo hacerlo asi, pero en la maquina donde me estan mandando los datos lo leen como flotante de 32 bits pero hay una variacion

0 kudos
Mensaje 5 de 7
6.739 Vistas

Itashi;

 

No entiendo muy bien que es lo que buscas hacer; 

Si lo único que requieres es "cortar" la info de 32 bits y ponerla en 2 registros de 16,,

 

00000000 11111111 00000000 11111111 = 32 bits 

 

convertirlo a 

00000000 11111111 =16 bits

00000000 11111111 = 16 bits

 

Convierte tu dato a string y de ahí haces un "split string" en la posición 16

 

Exito

 

0 kudos
Mensaje 6 de 7
6.736 Vistas

Aqui les paso mi proyecto para que lo vean y estoy ocupando el modsim para generar variables

Descargar todos
0 kudos
Mensaje 7 de 7
6.688 Vistas