From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discusiones sobre Productos NI

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

Enviar array constante de comandos ascii

¡Resuelto!
Ir a solución

Hola muy buenas a todos,

Necesitaria la ayuda de alguien en un problemilla que tengo. Les cuento:

Tengo un array constante (A) de, en este ejemplo, de 6 elementos que quiero enviar al puerto VISA serial. Esto funciona: el problema es que no se porque no recibe el array de salida (C) y Model geräte (C) completamente los datos....a veces recibe la respuesta de dos elementos, a veces de tres...etc... envia los 6 comandos pero no se muestran todos en el array de salida. La array constante (A), esta compuesta de comandos (Hex) que se envia al aparato y el recibe con al expresion !xxxx.

Puede alguien solamente guiarme en que estoy haciendo mal?Necesitaria la respuesta hoy si alguien es tan amable.

Muchas gracias por anticipadoArray constant to VISA serial.pngFront panel_array constant to Serial.png

Array constant to VISA serial.png

 

0 kudos
Mensaje 1 de 9
2.551 Vistas

Hola:

Te recomiendo que envíes los comandos de uno en uno, es decir, envíes un comando y esperas su respuesta. A continuación con el siguiente comando, y así sucesivamente.

Saludos y suerte.moisan

 


@ApoloBerlin  ha escrito:

Hola muy buenas a todos,

Necesitaria la ayuda de alguien en un problemilla que tengo. Les cuento:

Tengo un array constante (A) de, en este ejemplo, de 6 elementos que quiero enviar al puerto VISA serial. Esto funciona: el problema es que no se porque no recibe el array de salida (C) y Model geräte (C) completamente los datos....a veces recibe la respuesta de dos elementos, a veces de tres...etc... envia los 6 comandos pero no se muestran todos en el array de salida. La array constante (A), esta compuesta de comandos (Hex) que se envia al aparato y el recibe con al expresion !xxxx.

Puede alguien solamente guiarme en que estoy haciendo mal?Necesitaria la respuesta hoy si alguien es tan amable.

Muchas gracias por anticipadoArray constant to VISA serial.pngFront panel_array constant to Serial.png

Array constant to VISA serial.png

 


 

_________________________________________
https://aulamoisan.uva.es

0 kudos
Mensaje 2 de 9
2.379 Vistas

Holamoisan,

Estono me sirve ya que precisamente lo que quiero es automatizar el envio de los comandos. Ya se k puefo uno auno...

Gracias de todos modos

0 kudos
Mensaje 3 de 9
2.373 Vistas

Lo puedes tener automatizado sin problema haciendo el envío de comandos de uno en uno.

Abres el puerto, envías un comando, esperas la respuesta, envías otro comando, envías la respuesta, .... al final cierras el puerto.

Para que lo haga automáticamente pones dentro del bucle que tienes en la parte superior la parte de escritura y lectura.

 

_________________________________________
https://aulamoisan.uva.es

0 kudos
Mensaje 4 de 9
2.366 Vistas

Hola Moisan,

Muy buena idea lo de poner el visa Write y Read dentro del loop For, pero ya no se muy bien porque pero a mi no me funciona..Mismo resultado en el array de salida (Moel geäte /Array2).podrias darme alguna pista?GraciasSnippets Eloi_for loop.pngFront panel_array constant to Serial2.png

0 kudos
Mensaje 5 de 9
2.342 Vistas

Te recomiendo dos cosas:

1.- Quita el Shift Register.

2.- En la salida del bucle activa la Indexación.

Suerte... moisan

0E428DFF-5478-4526-ABBD-8020EDE17412.jpeg

_________________________________________
https://aulamoisan.uva.es

0 kudos
Mensaje 6 de 9
2.332 Vistas

Hola moisan,

Gracias por antemano por tus respuestas.cada vez estoy mas cerca creo..jiji

Ahora funciona perfecto, pero en la salida (array "Model Geräte"), salen los datos pero todos en una fila.Osea que no existe el cambio de Lines (CR). Ya lo he echo en el concatenate string, pero no sale en forma de matriz. todo en una fila. No se que puede ser. Alguna idea?

Front panel_array constant to Serial_sin carry.pngSnippets Eloi_for loop2.png

0 kudos
Mensaje 7 de 9
2.325 Vistas
Solución
Aceptado por el autor del tema ApoloBerlin

Todavía tienes algún error en tu código.

Los datos que obtienes del Read tienes que sacarlos del bucle For porque en los indicadores únicamente visualizas la respuesta del último comando enviado. Te sugiero que actives Highlight Execution para ver los datos que vas recibiendo.

Al sacarlo del bucle utiliza el Modo Tunel Indexing para ver todos los resultados obtenidos.

_________________________________________
https://aulamoisan.uva.es

0 kudos
Mensaje 8 de 9
2.310 Vistas

Muchas gracias moisan.Aparte de lo que me indicaste lo que hice fué sacar del for loop el visaread y funciona perfectamente.

0 kudos
Mensaje 9 de 9
2.249 Vistas