06-25-2025 02:08 AM - edited 06-25-2025 02:17 AM
Hello. I am using LabVIEW 2023 and I want to automate which includes an optical copper and a monochromator. I used the commands provided in the manual which works with the VISA Test panel but does work with VISA Write. I enabled the termination character to 13, for carriage return (\r), in VISA Configure Serial Port and even enabled " '\' Codes Display " for the string of VISA Write but still it doesn't work.
I am using a USB connection (USB A to USB B)
I have attached one of my basic code where I want to run the chopper, for which the command is " enable=1 + carriage return ". I have also attached the manual of the chopper just in case.
Can anyone please help me out with this?
06-25-2025 07:15 AM
According to the manual to attached (thanks) and the very tiny code snippet, it should have worked, but how would you know? You only send an "enable=1\r" command to "some unspecified port", and then quit! I didn't read enough of the manual to know what to expect, but I assume that the device would respond with an acknowledgement that you could observe with a VISA Read.
I should have bookmarked it, but there is an excellent video out there by Tim Robinson on how to (properly) use VISA. [Found it -- search for "Reading VISA in LabVIEW Tim Robinson", and it will take you to the video in the LabVIEW Wiki].
Bob Schor
06-25-2025 11:19 AM
I suggest you watch this video: VIWeek 2020/Proper way to communicate over serial
06-26-2025 01:15 AM
Thanks for your response Bob_Schor and RTSLVU but I watched the video and didn't get any proper solution.
I actually kept a PORT control for Visa Resource name like this here.
I had also wired a VISA Read after VISA Write as you said earlier. When I read the buffer from VISA Read I get the same string which I send from the command, just the difference is that it doesn' t include the carriage return (\r).
Like for example, in the below VI I ask for the current frequency but I get the same string.
Where actually I should get a value like this. (This is from the VISA Test Panel)
06-26-2025 03:25 AM - edited 06-26-2025 03:26 AM
Hi Sai,
@Sai_09 wrote:
Like for example, in the below VI I ask for the current frequency but I get the same string.
Did you notice that little arrow in the lower right corner of the "read buffer" string indicator?
This arrow indicates that there is MORE text, but it's not visible! Resize the indicator to show more lines of text…
Or the other way around:
The VISA Testpanel shows messages in \-code display, but your string indicator is set to default display mode. Switch it to also show \-code display!
06-26-2025 05:58 AM
Yes I resized it but its nothing. It just shows like that. Also enabling the '\-code display' for the string indicator for read buffer just made a difference of adding a carriage return(\r). It still gives the same command as response
06-26-2025 06:12 AM
The problem for you is that you are reading to the first \r that VISA has in the buffer.
Look at the VISA test panel. You have multiple \r in the return data.
Either change the termination character, or read more times.