Find VISA resource

I am having trouble finding VISA resources properly. I have no problem detecting instruments that are connected on the GPIB but after they've been detected once LabVIEW is convinced that they're there for ever more, even if I unplug and disconnect the instrument! The only way the list of connected instruments is reset is by completely exiting LabVIEW and rebooting it. Why is this?
I am using LabVIEW 6.1 (though that may not make a difference) and I have attached a VI with two different ways of detecting whether any of four possible instruments are connected. The SubVI is used to give a command to one of the instrument and this is capable of returning an error if the instrument is not connected, whatever the situation. How can this detect the instrument as expected, but the other methods not?
In this VI, I need to detect how many, if any, and which out of four possible instruments are connected. Simple, yet surprisingly difficult!
Any help please?
James
Never say "Oops." Always say "Ah, interesting!"
Solved!
Go to Solution.
Attachments:
Check Visa Connections.llb ‏45 KB

My bad! Here it is again.
Basically, I have an application which can/will conduct different tests which each use different instruments (each instrument has its own GPIB address). Before each new section or test is started i want to detect which instruments are connected and switched on, and if any of the ones needed for the particular test are not detected then an error (pop-up window) will flag up.
The problem I am having has also been verified on other machines (and applications) where we are trying to implement a similar function.
I find that after an instrument (any instrument) has been detected on an address, LabVIEW will not then be able to tell if it has been disconnected (which is a likely scenario). It appears that in both the attempts I made, I get the same result. For example...
Using the VISA Find Resource function, I run the VI with 4 instruments connected. It finds all 4 and identifies which addresses they're on. If I then disconnect any/all of the instruments and run it again, it still says that they're all there. The only way I can make it 'forget' that the instruments had been found before is to completely restart LabVIEW.
The same problem occurs if I search every address to see if any instruments are present. Once found, they won't go away.
However, the subVI controls one of the instruments and if the instrument isn't present then it fails.
Any suggestions?
Never say "Oops." Always say "Ah, interesting!"
Attachments:
Check Visa Connections.llb ‏74 KB

Similar Messages

  • Can't find VISA resource name

    I am trying to run an example code, provided by the manufacturer with a Keithley 2420 3A SourceMeter.  It is powered on, and set up for 488.1 GPIB Protocol.  It is hooked up to my computer using a KUSB-488A GPIB cable.  On the front panel of the example program, there is a drop-down menu labeled "VISA resource name."  The two options available to me are LPT1 and COM1, but I don't think either of these are the right resource name.  Does anybody know what VISA resource name I should be using with the Keithley, or how I can find this out? If it helps, I provided the example program I am using. Thanks in advance!
    Solved!
    Go to Solution.
    Attachments:
    Keithley 24XX Read Single.vi ‏41 KB

    If you read the intructions that come with the Keithley USB-GPIB converter they enclude installation instructions to install the National Instruments compatable version of their driver.
    Yup, just read and follow the set-up instructions.
    Jeff

  • How to create a VISA resource without "VISA FIND" or Serial Poll

    I'm very new to LabVIEW and my experience so far with GPIB/VISA is to pass a GPIB address (from user control) to a C# function I created.  The function will build the correct VISA resource string, and try to connect using a message-based session one at a time to each board address. 
    I'm trying to do a similar action in Labview but so far, the only method I have seen is to use the drop-down Visa Resource.  When I use this, it scans the bus to find all the physically connected devices on the bus but the unfortunate side effect is that all the listeners go into remote mode which typically resets the devices to their default remote connection settings.
    ie: This can turn off a the power o/p of a power supply that I didn't want to control at  that moment etc.
    Can anyone tell me the proper or recommended method?  If I had a user control that allowed the user to enter in a GPIB address, would I just create the resource string myself on the block diagram and feed this into a VISA -OPEN .vi?

    Connect a string control to the VISA Open VI
    LabVIEW Portal

  • VISA Find function to VISA Resource Name

    Hi,
    Can anyone help me with this VISA question. I'm kind of new to
    instrument control, but have been using LV for quite a long time. I'm
    using version 6.02. I discovered the VISA Find Resource function, and
    thought it would be really neat to find the instruments that are sitting
    on my GPIB bus, and then make sure they are the ones I need for my
    testing. The Find resource works great, and returns an array of strings
    that are the resource names of the instruments. i.e. GPIB0::5::INSTR.
    However, the VISA Open (and all the other VISA functions) require a VISA
    resource name control (One of those pruple doohickies with I/O in it).
    I haven't been able to figure out how to get that string from the find
    function into the VISA resou
    rce name control (It looks like a pulldown
    on the front panel) so that I can do a *IDN? query to find out what
    instrument is actually at this address. I've tried property nodes, even
    looked at the invoke node, but to no avail. By the way, the property
    node DID have the VISA resource name, but it was read only.
    Thanks in advance for any help you folks might be able to provide.
    David Dupont
    Airvana Inc. http://www.airvananet.com

    Hello, David!
    I'll do my best to answer your question.
    In LabVIEW 6, you have to assign VISA aliases in Measurement and Automation Explorer. You can assign meaningful VISA Aliases to your instruments that you control using VISA in the Devices and Interfaces section in Measurement & Automation Explorer. The aliases can be used in your LabVIEW application development to refer to your instrument.
    Once you have assigned aliases in MAX, you simply place a VISA Resource Name Constant in your block diagram. Type the alias name into the resource name constant and wire the name constant to the VISA Resuorce Name input of the VISA Write and VISA Read functions to control your instrument.
    I hope this helps.
    Mark Ridgley

  • I cant find my GPIB device in the VISA resources list

    Hi,
    I am using Labview 8.5.1. I am trying to program my Agilent multimeter with Labview. I have downloaded the drivers for the model. HOwever, I dont see the device on the VISA resources list. All I see is COM, LPT1 and refresh. Is there a solution for this?
    Regards,
    Wiki

    Hi r31415smith,
    There maybe a little of confusion here but, I believe when communicating with a GPIB device you would want to use VISA commands and when you are looking to communicate over the serial port you use the VISA-Serial commands.  The Basic Serial Write and Read.vi is looking specifically for a serial port.  
    If you downloaded the keithley drivers from here and installed them using the directions from here.  Then there should be Keithley examples installed on your computer.  If you open Labview 2010 and navigate to Help > Find Instrument Drivers.  A dialog will open up and show you the installed instruments.  Then, if you click on Keithley 24xx it will show you example files for communicating with your instrument.
    I think that if the Basic Serial Read Write had worked in the 8.5 the example file may have been change to only work with a visa serial instead of general VISA.  
    Hopefully this has helped you out and shed some light on what is going on. 
    Regards,
    Mike Altmann
    LabVIEW Platform PSE
    National Instruments

  • Visa resource name can't find

    I'm running a example, visa resource name list couldn't find the port, only com port list, added USB cable (FTDI TTL-232R-3V3-WE) into visa, change visa class I/O session to USB raw, then can see it, but in configure serial port vi, I got this pic. Did I do something wrong or any suggestion? 
    thank you
    Attachments:
    2.PNG ‏32 KB

    Do NOT change the I/O class to USB RAW if you want to use the device as an RS-232 port. If the device does not show up in MAX as an additional com port, first verify that you installed the correct driver that came with the device. Then, see if it appears as a com port in windows device manager. Post back If it shows up in device manager and in Hyperterminal as a com port but MAX still does not list it.

  • No VISA Resources in Labview but all present in MAX

    Hi,
    I am unable to find any VISA resources from LabVIEW, however, all NI hardware is available and working in MAX. I have just installed a PCI-8433/2 as well as a NI PCI-8512 CAN/HS Card. As part of the installation I believe MAX was upgraded to version 4.6.2. I will attach the max configuration report for those who are interested. I am working with LabView 8.2. I also uninstalled an agilent GPIB card and as a result the NI-GPIB card is the sole controller and is GPIB0... instead of the agilent card.
    I have had a similar problem before that was a result of a corrupted database, but I was unable to find this problem on the forums this time and I am not getting any errors. Just an empty VISA Resource control.
    Any suggestions would be greatly appreciated.
    Nate
    MAX Configuration Report
    12/27/2010 1:35:05 PM
    MAX Summary
    My System
    Data Neighborhood
    CAN Channels
    NI-DAQmx Tasks
    V1P1V2P2
    V3P3
    Devices and Interfaces
    GPIB0 (PCI-GPIB)
    Instrument0
    Instrument1
    Instrument2
    Instrument3
    Instrument4
    Instrument5
    Miscellaneous VISA Resources
    GPIB0::INTFC
    GPIB0::16::INSTR
    GPIB0::2::INSTR
    GPIB0::22::INSTR
    GPIB0::7::INSTR
    GPIB0::10::INSTR
    GPIB0::27::INSTR
    GPIB0::3::INSTR
    Network Devices
    NI-DAQmx Devices
    NI USB-9481: "Dev2"
    NI USB-9481: "Dev1"
    NI-XNET Devices
    NI PCI-8512 CAN/HS
    CAN1
    CAN2
    PCI-8433/2
    Port1
    Port2
    PXI System (Unidentified)
    Serial & Parallel
    COM1
    COM6
    COM9
    LPT1
    Scales
    Software
    IVI Compliance Package 3.3
    LabVIEW 8.2
    LabVIEW Run-Time 7.1
    LabVIEW Run-Time 8.0.1
    LabVIEW Run-Time 8.2.1
    LabVIEW Run-Time 8.5.1
    LabVIEW Run-Time 8.6.1
    LabWindows/CVI Run-Time 9.0
    Measurement & Automation Explorer 4.6.2
    Measurement Studio for VS2005
    DotNET
    Common
    NI LabVIEW SignalExpress 3.0
    NI Spy 2.7.1
    NI-488.2 2.46
    NI-CAN 2.7
    NI-DAQmx 8.7.2
    NI-PAL 2.5.3
    NI-Serial 3.6
    NI-USI 1.0.2
    NI-VISA 4.6.2
    NiVisaServer.exe
    NIvisaic.exe
    NI-VISA Runtime 4.6.2
    NI-XNET 1.1
    IVI Drivers
    Advanced
    Instrument Driver Software Modules
    Simulation Driver Software Modules
    Simulation Driver Sessions
    Driver Sessions
    Logical Names
    -Nate
    Solved!
    Go to Solution.

    Now that IS odd.
    Can you show a couple screen shots from MAX?
    First expand the software tab and post a png of the screenshot (I'm not yet convinced you do not have SOME driver issue)
    Next select MAX>TOOLS>NI VISA>VISA Options- Wait for the new screen then expand Mysystem General settings and select Aliases.
    You could also try "Clear all aliases" from there and reboot.
    Jeff

  • Difficulty synchroniz​ing data from VISA resource with data from a physical channel

    Essentially what I'd like my program to do is control the electrical power going (sourcing either current or voltage) into a light and measure the intensity of the light at a given power level, and then do this automatically for ~1000 increments of the source voltage/current.
    One of my lab partners made a program a while back which does what we want("LIV Sweep Rev.vi" the first image in the link at the end of this post), but it's a bit sloppy: the program is able to interact with the power supply (connected directly to the computer via USB) and make it turn on, increase the voltage/current, and record the "IV" characteristics just fine. The program can also interact with the light detector (connected via NI-BNC 2110) and gather the photocurrent data. The problem, however, is that the data wouldn't be in sync. The photocurrent data for when the light was actually supplied with 1V would be improperly recorded in the cell for when 2V are applied to the light. To fix this problem my lab partner added in a time delay so that the detector will pause for ~0.35 sec (user-specified in front panel) before gathering data.
    The program works, but I figured there had to be a better way. The thing about the timing, however, is that it changes from run to run. Sometimes a delay of 0.45 s works well, and other times the power supply will have shut down while the detector is still gathering data (and thus we miss the low end of the sweep). Other times the detector will turn on too early, which will cut off the high end of the sweep.
    (Note: I have next to zero experience with LabVIEW, but I know a little bit of java, so I understand most programming jargon)
    I spent all day yesterday trying to find out how to synchronize two data aquisitions (my attempt is shown in the "LIV SweepSummerDuncanRev3.vi" in the link at the bottom, 2nd image) but I'm running into trouble when I try to trigger the sample clock using the VISA Resource Name for the power supply.
    The programs can be viewed here:
    http://imgur.com/a/Up3eS
    I'd really appreciate any and all advice that you folks have to offer!

    Change the code such that rather than using a ramp from your power supply, just output a single value. Then do your measurement and then step to the next value in your ramp.
    You can use a State Machine (SEarch if you do not know that term in LV).
    Some gear will allow specifying a ramp driven by an external clock. If you widget can handle an external clock/trigger that approach could run faster.
    Without hardware to syncronize the various sub-systems you would have to resort to using a RT OS and depending on the instruments, even that could be hit-n-miss.
    So re-code to step-measure-step-measure etc.
    Ben
    Ben Rayner
    I am currently active on.. MainStream Preppers
    Rayner's Ridge is under construction

  • USBMTC scope VISA resource

    This is my first time using a USBMTC instrument.
    We purchased a Tektronix TBS1052B.
    NI-MAX detected it, and I am able to do a *IDN?  query.
    I am concerned that the VISA resource that is used now on my development PC will change when the program is eventually installed on another PC.
    What is the best solution to this?
    Do I do a scan for all USB resources?

    nyc wrote:
    The target PC is at a contract manufacturer.
    In this case you may need to use the System API to find the USBTMC device (and reaname its Alias) during intitialization of your app.
    Those USB scopes are nice but the darn users keep moving them around So, its best to be safe and make sure there is one present befor you go off and try to use it.
    Like So:
    Jeff

  • Visa Resource name does not list anything

    Hi,
    I recently installed a Agilent 82357B GPIB and along with it I also installed Agilent IO 16.3. This GPIB is hooked up to a power supply. I am able to find and query the device in MAX and Agilent IO, but when I use the Visa Resource Name control in a VI, it does not list anything. Before I used to see LPT1 and COM1, but now even they have disappeared. All these are present in Device Manager. Even VISA interactive control throw an error. Attached are screenshots for some reference.
    HP_GS
    Attachments:
    VisaResource-Refresh.png ‏2 KB
    Visa-IC.png ‏7 KB

    Hi there,
    You might want to read this post about the specific error.
    Also you need to make sure the right class is slected for the visa resource (right click):
    Hope that helps, regards W

  • A "VISA Resource Name" control

    In LabVIEW there is a"VISA Resource Name" control which lists all the VISA resources, is automatically updated when devices are plugged or un-plugged, and has a Browse functionality.
    With CVI you can use NIDAQmx_NewDeviceCtrl( ) on a string control, but this lists only the DAQmx resources.
    Is there another function I can use to have all the VISA resources listed?
    Vix
    In claris non fit interpretatio
    Using LV 2013 SP1 on Win 7 64bit
    Using LV 8.2.1 on WinXP SP3
    Using CVI 2012 SP1 on Win 7 64bit, WinXP and WinXP Embedded
    Using CVI 6.0 on Win2k, WinXP and WinXP Embedded
    Solved!
    Go to Solution.

    there is the function viFindRsrc which you can use to programmatically find all available resources.
    I didn't write in my post, but I've already looked at this function.
    The problem is that I have to write code to update the VISA resource list, periodically calling this function.
    I prefer an automatic function.
    Vix
    In claris non fit interpretatio
    Using LV 2013 SP1 on Win 7 64bit
    Using LV 8.2.1 on WinXP SP3
    Using CVI 2012 SP1 on Win 7 64bit, WinXP and WinXP Embedded
    Using CVI 6.0 on Win2k, WinXP and WinXP Embedded

  • VISA resource name control: want to refresh list of COM ports programatically

    When the app is running, and you first click this control, it takes 2-5 seconds to respond and populate the list for the first time.
    Therefore, I want to auto populate the first time the application is loaded. Can I do this?
    Solved!
    Go to Solution.

    Hi,
    I'm joining in here since the thread addresses delay problems when using VISA resources.
    I would like to share my experience when using VISA on real-time targets.
    The hardware I use is a cRIO NI-9074 with two NI-9870 (4 x RS232 each) and one NI-9871 (4 x RS485). These modules are used in scan mode to avoid excessive port programming in FPGA.
    My first problem was that the twelve COM ports of the NI-9870/9871 modules did not show up in the list of available VISA resources when placing a VISA resource control on the front panel or a VISA resource constant on the block diagram. However, the workaround using "VISA Find Resources" seemed to work fine. When starting the real-time program from the development machine, the list was populated and by indexing the list I was able to use the port.
    BUT: When building an RT executable from this VI, deploying it to the RT target and setting it as startup, nothing happened. It took me some time to find out, that there has to be a significant delay (in my case about 10 s) before calling the VISA Find Resources function. Otherwise it will not give the correct output. By some reasons, the ports do not seem to be available when the RT startup application begins to run. I tried to play with the delay and found out that the resource list would be empty when calling the VISA Find Resources function almost immediately on startup, after a few seconds it would return the ports of the first NI-9870, after seven seconds the ports of two modules, and after about ten seconds all ports would be available.
    I would appreciate if somebody could tell me what happens since it was quite a pain in the ass to solve this issue.
    Best regards,
    Karsten

  • How to call "Edit VISA resource" window from run-time shortcut menu

    Hope somebody is able to help me
    When editing my application I have "Edit VISA resource" menu item.
     You can see it on the first picture
    But when I turm on run-time shortcut menu and run the application I\d like to get same menu item directing me to VISA resource settings window.
    Is it possible or not?
    How can I call different MAX components programmatically? I can invoke MAX with ActiveX, but I can not find how can I invoke exactly "Edit VISA resource" window...
    Thanks to anybody for any help!
    Attachments:
    edit visa resource.png ‏63 KB
    no edit visa resource.png ‏60 KB

    comper wrote:
    Hope somebody is able to help me
    When editing my application I have "Edit VISA resource" menu item.
     You can see it on the first picture
    But when I turm on run-time shortcut menu and run the application I\d like to get same menu item directing me to VISA resource settings window.
    Is it possible or not?
    How can I call different MAX components programmatically? I can invoke MAX with ActiveX, but I can not find how can I invoke exactly "Edit VISA resource" window...
    Thanks to anybody for any help!
    Not sure it is a good idea to be editing VISA resources while the VI is running.  I'm not even sure it's "legal" which might explain why it isn't there.  If all you want to to is be able to change which equipment to talk to, maybe it's best to just to have a VISA resource control and have the user select from there, or maybe a ring control with pre-defined VISA resources.
    Bill
    (Mid-Level minion.)
    My support system ensures that I don't look totally incompetent.
    Proud to say that I've progressed beyond knowing just enough to be dangerous. I now know enough to know that I have no clue about anything at all.

  • Check for empty visa resource?

    When I am developing the VI at my desk and not a the test station PC, the VISA resource name is empty.
    Once the VI is moved to the test station PC, the user can select a VXI board.
    How do I make sure the user has selected a VISA resource before continuing?
    I can wire a Comparision to check for Empty String, and that works. But is there any method that I should use?
    Solved!
    Go to Solution.

    Additionally, you can limit the selectable items by interface type. Right-click VISA Resource Name Control and select I/O Name Filtering.
    National Instruments
    Product Support Engineer

  • Old visa open, error code 1073807343, using VISA with a GPIB device, and VISA resource names

    Hi everyone,
    I'm trying to get a SRS model SR720 LCR meter (manual on this page) working with LabView, connecting it to my PC with an Agilent 82357A GPIB/USB interface (manual on this page). I'm running MAX version 14.0, and NI-VISA version 14.0. I'm running LabView version 13.0f2, 32 bit.
    I followed the directions on this page, and I'm pretty confident I can communicate with my LCR meter, because I can go to NI MAX->GPIB0::17::INSTR under "devices and interfaces", then go to the VISA test panel, go to the I/O tab, and I can enter a few commands from the SR720 manual, like changing the frequency, and I see the light on the LCR meter change to what I just told it to do. Here is a picture, just to illustrate it:
    Also, if I do the *IDN? command, it returns "
    9: Write Operation (*IDN?)
    Return Count: 5 bytes
    10: Read Operation
    Return Count: 41 bytes
    StanfordResearchSystems,SR720,08087,1.03\n
     So, that's good too. I also made the alias of this device "MyLCRmeter", but that shouldn't matter for now.
    Now I'm trying to get it to work in a more usable way. The SR7xx drivers that LabView found for me came with a couple sample programs, one called "Getting Started.vi". I tried to just simply see if it worked, changing the "instrument descriptor" field to "GPIB0::17::INSTR", since that's the one that seemed to be the right device in MAX. Here is a picture of the front panel of "Getting Started.vi":
    Trying to run it like this gave me this error (code -1073807343):
    Old VISA Open in SR715/720 Initialize.vi->SR715/720 Getting Started.vi
    Doing a bit of searching on these forums, I found these few threads (1 2 3), which seem to tell me that, since this program was written, the way you open VISA has changed. In the 2nd of those links, one guy said:
    You just have to replace the Old VISA Open function with the VISA Open that is on the Instrument I/O>VISA>VISA Advanced palette. When you do that, the wire to the string that was used for the resource name will be broken. Delete the string and make the actual VISA Resource Name visible on the front panel. Wire the VISA Resource Name control to the connector pane where the string control was (upper left connection).
    So, I went into the sub-VI Initialize.vi, and did that. Here is a picture of what the front panel and block diagram of the sub-VI Initialize2.vi (I changed the name in case I screwed things up, but I'm pretty sure the new one is the one being called by Getting Started.vi) looked like before I changed anything (you can see the Old VISA Open):
    and here it is after replacing that with the regular VISA Open, deleting the instrument descriptor string and replacing it with a VISA resource, and connecting that to the VISA Open:
    However, as you can see in the image above, and it seems like someone else had this problem in the 2nd thread linked above, I don't see my device listed in the drop-down menu (even if I refresh), only "LPT1" (I don't even know what that is):
    No, I wasnt able to select the visa resource from the pull down menu. somehow it seems disabled or something.
     If I just enter the VISA resource name from MAX manually, GPIB0::17::INSTR, and save and try running that, I get the error(code -1073807346):
    VISA Open in SR715/720 Initialize2.vi->SR715/720 Getting Started.vi
    So I'm not sure where to go from there, or why it's not in the drop down menu to begin with. I'm sorry if I've missed something but I've searched about as far as I can go. If I had to guess, maybe one thing could be that in MAX, under Tools->NI-VISA->VISA Options->My System->Conflict manager, I have both Agilent VISA and NI VISA enabled; I know sometimes problems arise from conflicts between different software fighting over the same hardware. Is this okay, or do I need to change it?
    Thank you and please let me know if there is any other code/screenshots I could provide that could help!

    Hi, I did indeed enable NiVisaTulip.dll under MAX->Tools->NI-VISA->VISA Options->My system->Passports->List of passports. Sorry, I should have mentioned that explicitly.
    By install as primary, do you just mean as it is here, where it is selected as the "Preferred VISA"?
    Or somewhere else? I installed NI-VISA first I believe, and then the Agilent one, and during the installation of the Agilent one, I'm pretty sure I made it not the primary. Here's what I have in the Agilent (it's called Keysight now) Connection Expert software:
    I also have this under the "Keysight 488 options" tab:
    Should that be checked? I don't actually know the role of VISA vs 488 here...
    What could I try?
    Thank you!

Maybe you are looking for

  • Hierarchy issue with Web Intelligence Report

    Hi All, We are facing an issue with OLAP Universe where we are using hierarchy for cost center in reports. BEx query shows correct data in RSRT with hierarchy nodes. We have built a Universe on top of this BEx Query. We are using couple of nodes of c

  • Using usb power to charging

    using usb power to charging ipod touch battery life will lasting long or not ?

  • Adobe Acrobat 9 Pro Customizing and General help

    I'm trying to set-up Adobe 9 Pro so that when you select "Print" or "Print to PDF" that the application automatically defaults to a Specified location and a Specified name as (Date)+(Time).pdf.<br /><br />Currently it prompts you to specify the locat

  • Wish List for Future Releases of FME

    First, I want to sincerely thank the Adobe team responsible for FME. Great job! Great application! We use FMS for 24/7 live cams and live TV streams. We have some suggestions for what might help FME be a more flexible tool for us and others in our si

  • Why I can not...

    Why I can not open normally PC-made Word-documents in my iMac with AppleWorks 6? Is it possible? I have Mac OS X 10.6.8.