LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

VISA TCP/IP Resource name for a device on the second ethernet card

Hello,
 
   I am trying to use MAX to create a VISA TCP/IP resource name for a Thermotron 3800 temp chamber that is connected to the 2nd ethernet card in my PC with a patch cable. I can use internet explorer and type in the IP of the thermotron and communicate with the thermotron 3800. However when I try to use MAX to create a resource name I get TCPIP0::192.168.4.22 which results in errros when I try to communicate with the Thermotron.
   It appears to me that MAX always wants to use the 1st ethernet card in the system, which I am assuming is TCPIP0. However my device is on the second ethernet card with I am assuming is TCPIP1.
  I have tried the "auto-detect" option for VXI-11 and they do not work. So does anyone have any ideas?
 
Regards,
 
Kaspar
Regards,


Kaspar
0 Kudos
Message 1 of 16
(9,062 Views)
Kaspar,

Unfortunately, we have seen problems with auto detection of VXI-11 Instruments from MAX if the instrument is on a network only reachable from the second NIC. But this only affects the ability to automatically detect such instruments. Just before writing you this reply, I verified that I can in fact create a TCPIP resource and open a Test Panel to such a resource from MAX if I know the ip-address (or hostname) and its LAN Device name (in most cases inst0). I did this by selecting 'Manual Entry of LAN Instrument' in the Add TCPIP Device wizard. I assume you already know the ip address because you can view the web page of the device. If you don't know the LAN device name, you might temporarily connect your instr to a subnet where you can automatically add it to MAX, and view the resource name from there. Since the LAN device name won't change for the instrument when moving it back to its original network, you can use this workaround to find the complete information about the resource string that should be used to access the instrument.

Also, being able to use such an instrument in one of your VIs doesn't require that you add it to your system using MAX. If you haven't added the instrument, it will not show up if you do a find resource or if you are using the 'VISA Resource Name Control'. You can, however, wire in a constant to 'VISA Open' in your VI with resource name in it  and successfully open a session to that instrument from your program.

From your post I couldn't be sure whether you have tried manually adding the instrument to your machine and whether you have tried to open a session to it from your machine without adding it in MAX. Please let me know if you have further questions regarding my explanation or if you were able to successfully solve your problem.

Thanks,
Pankaj
Message 2 of 16
(9,037 Views)

Hello,

  Thank you for getting back to me. I have manually created a VISA TCP/IP resource in MAX for the correct IP address and I am still getting errors. Here is the error message hat I am getting.

 

TH3800 Initialize.vi<ERR>Driver Status:  (Hex 0xBFFF0011) Insufficient location information or the requested device or resource is not present in the system

  

  I have attach a very simple vi I wrote just to get started working with the temp chamber. It is VERY simple. it just calls the initialize vi to see if the temp chamber is recognized, which unfortunately fails.

Regards,

 

 Kaspar

 

 

Regards,


Kaspar
0 Kudos
Message 3 of 16
(9,010 Views)
Kaspar,

Let's back up a bit. I couldn't get the initialize.vi from your attachment, but from the top-level VI, I can see that you are using a resource string that should be used for communicating with a raw socket. From your first post, it seems to me that you have a VXI-11 instrument. For such instruments, the resource string is of the format:
       TCPIP0::<hostname or ip>::<LAN device name>::INSTR
The device-name usually is inst0 for most devices.

Now to manually create a resource of this type, you have to select 'Manual Entry of LAN Instrument' from the menu while adding the resource.  My last post describes how to figure out the LAN device-name if you don't already know.

Once you have added the instrument in MAX, the first step is to check if you can access the device from MAX itself. For e.g. if the resource name in MAX tree comes up with a yellow exclamation mark, it means there is some problem. You can select your resource and try to open a session to it by using the 'Open VISA Test Panel' button around the top of MAX. If successful, you will see a new window on which you can do some preliminary testing by writing commands to the instrument and reading its responses.

Please let me know if this much is working. If this is not working, we will need to figure out some other way to make this work. If this is working but your VI doesn't work (after setting the correct resource string) we might need to debug the vi itself. Either way, please let me know how this goes.

Pankaj

Message 4 of 16
(8,987 Views)
Hello,
 
   Thanks for getting back to me. I have tried what you suggested it is not working.I have opened up a ticket with NI on this issue. Is it "appropriate" tp post the ticket number here?
 
Regards,
 
Kaspar
Regards,


Kaspar
0 Kudos
Message 5 of 16
(8,978 Views)
Kaspar,

I believe there wouldn't be any problem if you post it. I will be able to see the details of the conversation you had with the engineer you spoke to and maybe have some suggestions.

Pankaj

Message 6 of 16
(8,971 Views)

Hello,

 

  The ticket number is 1068893

 

Regards,

 

Kaspar

Regards,


Kaspar
0 Kudos
Message 7 of 16
(8,952 Views)
Kaspar,

Found the SR and after looking at the notes, it looks like you were not able to discover the device even if you connected it to the network of your primary NIC. If that is true, then it may be the case that the instrument is not a VXI-11 device. In your earlier reply, you said you tried my suggestion and it didn't work. Could you please let me know what resource name you were using when adding the instrument, and what was the result of adding the device in MAX (i.e. if there was the yellow exclamation mark, etc.).

To simplify things and make sure we are on the right track, it would be helpful if you connected the device to a computer with only one NIC and see if you can add it on that machine (automatically discover or manually add). The next step would be to try to add it on the machine with 2 NICs, but with this device connected to the network of the 1st NIC. If both these  steps are successful, only then should we try to add it to the second NIC's network.

It might also be useful if you could contact the manufacturer and find out whether this was a VXI-11 compliant instrument and if so, what should the VISA resource name for this be.

Pankaj
Message 8 of 16
(8,922 Views)

Hello,

 

  I will perform the tests you requested. I will also physically remove the 2nd ethernet card from the PC to make it a single ethernet card computer.

Regards,

 

Kaspar

Regards,


Kaspar
0 Kudos
Message 9 of 16
(8,912 Views)
Hi Kaspar,

I also set up an Ethernet based device on a second network adapter connected via a cross-over cable.  The device was a VXI-11 compliant signal generator, and because it was on the second network adapter, it did not auto-detect in MAX, as Pankaj explained.  I was able to detect in using the Manual Method and specifying the instrument name.

After I recognized the device in MAX, I was also able to open a VISA test panel to verify communication could be established.  Then I moved over to LabVIEW and tested the device as well.  This demonstrated that LabVIEW and MAX should be able to utilize the second network card. 

Also, I wanted to note that although the device was on my second network card, the VISA Resource name I specified was TCPIP
0::<ip address>::inst0::INSTR.  When I tried TCPIP1::<ip address>::inst0::INSTR, communication failed with the same error you receive, "insufficient location information or the device is not present in the system."  Therefore, as we move forward with testing, I think you should be attempting to use the TCPIP0 VISA resource, or TCPIP, with no number at all.

On the VXI-11 compliance front, I am starting to believe this device isn't VXI-11 compliant.  I can't find any indication on Thermotron's website that the 3800  temperature chamber controller is VXI-11 compliant.  Furthermore, the documentation that ships with the LabVIEW driver specifies that the correct syntax for referencing the controller as a VISA resource over Ethernet is:  "TCPIP[board]::<host address>::<port>::SOCKET", which indicates this board is expecting to use raw sockets.

I know you have attempted to connect using this type of resource, and we haven't had any luck so far.  My next suspicion is that the McAfee firewall you are using is somehow crippling the LabVIEW communication.


Pankaj:  Is there a specific port or application that VISA uses to connect to Ethernet devices that we need to be opening up on the firewall?  Kaspar has already added LabVIEW.exe to his list of firewall exceptions.

Cheers,
Spex
National Instruments

To the pessimist, the glass is half empty; to the optimist, the glass is half full; to the engineer, the glass is twice as big as it needs to be has a 2x safety factor...
Message 10 of 16
(8,888 Views)