I have to write an application that controls non-NI motion controllers & remote I/O units. Does anybody have opinions about VISA TCP tools versus the Data Communications/Protocols TCP tools? It's a high reliability application where I'll need robust operation, reconnects, maybe keep-alive, etc. Thanks, paul
Solved! Go to Solution.
The only time I use VISA TCP/IP is if the instrument supports the VXI-11or LXI-11 protocols. Many test instruments do, especially ones with multiple connection options (i.e. if they support TCP/IP but also GPIB), but probably not motion controllers.
Otherwise you'll probably want to use the raw TCP/IP tools for more control over when you actually open and close connections, etc.
Thanks Kyle - that's what I thought about the "instrument" interface stuff, but I wonder about the "sockets". I don't see anything in the VISA palette...
but I wonder about the "sockets". I don't see anything in the VISA palette...
The Socket is part of the VISA Resource name. For example:TCPIP0::192.168.0.30::8888::SOCKET is the resource name for my Thermotron temperature controller, using IP address 192.168.0.30 and port 8888.
I will state that I only used the VISA interface for this instrument since there was a good chance I would have to use GPIB or RS-232 to communicate with the same controller (program dependent). VISA abstracts those interfaces from me, so my driver can handle any of those interfaces. In your case, I would also just use the TCP/IP API. It just seems simpler for me to understand.