Difficulty communicating with a GPIB instrument using VISA

Hi all

I am trying to create a Subvi allowing communication between a computer and a spectrometer to MS260i. This is an old spectrometer and can only be interfaced via GPIB or RS232. I chose to use a GPIB-USB-HS adapter to connect it to the computer. The following parameters in the NOT-MAX I would easily send commands to the spectrometer when you use the Communicator of NOR-488. 2. I have also attached a picture of a wavelength successfully query.

However, I am unable to do a Subvi with the same settings. For example, the following VI

Returns the following error

Is there something that I forget? I also noticed that even if I saved the GPIB interface properties, these do come up not by default when you use the Communicator of NOR-488. 2. Indeed, I have to manually configure EOS settings every time that I reopen it tool.

Any help would be greatly appreciated.

Did you do a right-click on the control of the chain and select ' \'Codes display? If you do not, the stop character is not sent.

Tags: NI Hardware

Similar Questions

  • No communication with a gpib instrument

    How can I send CR and LF at the end of writing with the instrument control.

    Instead of/r/n, use \r and \n.

    You can also configure the GPIB controller to add these characters if I remember correctly (I know you can do it with LabVIEW). I don't have a GPIB interface installed and do not exactly remember the procedure, but there is an option somewhere to change what is sent with the EOI.

  • Problem with 2 GPIB instruments

    Hello everyone,

    I work in a program with LabView 2015 this control 2 instruments, the Rohde & Schwarz Smiq02b signal generator and Analyzer of spectrum n9010a Agilent EXA. I use the cable Agilent - 82357 B USB/GPIB to connect my laptop with these two instruments (PC-> EXA-> Doganovic). I also installed the two drivers of instruments from their official websites.

    The program worked correctly until I had to format my computer and reinstall LabView but something wrong now.

    The problem comes when I run the program, is unable to initialize the SMIQ02b, the program stops and opens a new window of block diagram. This block diagram belongs to a block driver the instruments within this scheme, there is a VISA write flashing block.

    This only happens when I'm initializing two instruments in the same program, if I create a new VI and use the Doganovic only, I have no problem.

    I don't know what is happening, it is very strange that it worked well before, and now this happens.

    That's what I installed in my laptop:

    -2015 LabView
    -NI Device Drivers (included NI-VISA 14.0 and NOR-488. 2 14.0)

    -Agilent IO libraries Suite (configured as secondary VISA) 17.1

    -Passport OR VISA for tulip IT

    I'll be very grateful if someone could help me with this.

    Thank you!

    You set a breakpoint, it's what's causing the break.

  • Problem with getting communication with old instrument GPIB-ENET/100

    Hello!

    I'm trying to get my program in VB.net to communicate with an older instrument (Infratek 305 A, measure of power) via a GPIB-ENET/100 device.

    The manual of the instrument does not say what GPIB standard, it supports, but the instrument is detected by the measurement and Automation Explorer.

    Detected by that I mean that MAE has detected an instrument located on the right GPIB address, but indicated identification is the output measure instrument string

    instead of the name of instrument (as shown for some more recent instruments of Agilent).

    When I run my application, I followed the communication with NISpy.

    Configuration of the device seems to work and I present only once in the program.

    The problem is reading data from the instrument. Whenever I read the data, I get a correct string of the instrument. But the problem is

    I get the same data in two consecutive and all readings first after that I get new data and also these new data are received in two consecutive readings.

    According to the manual of the instrument the instrument generates the data as follows:

    "A row of data ends with CRLF. The instrument can send multiple rows of data. "When all of the data transfer is complete the EOI (end or identify) is sent.

    My endpoint settings are:

    Send EOI to write complete: YES

    Terminate read on EOS: No.

    EOS byte: 2

    8 bit EOS compare: YES

    Define EOI with EOS on write: No.

    How can I configure the GPIB-ENET/100 to work with my instrument?

    Here are som NISpy logs:

    # Configuration #.

    61 ibwrt(UD3, "C0C2C4C8..", 10 (0xA))
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:43.671 call duration 00:00:00.079
    ibsta: 0 x 100 iberr: 0 ibcntl: 10 (0xa)

    62 ThreadIbcntl()

    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:43.750 call duration 00:00:00.000
    ibsta: 0 x 100 iberr: 0 ibcntl: 10 (0xa)

    63 ibwrt(UD3, "K0K3K5K9..", 10 (0xA))
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:43.765 call duration 00:00:00.125
    ibsta: 0 x 100 iberr: 0 ibcntl: 10 (0xa)

    64 ThreadIbcntl()
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:43.890 call duration 00:00:00.000
    ibsta: 0 x 100 iberr: 0 ibcntl: 10 (0xa)

    65 ibwrt(UD3, "F14F18F24..", 11 (0xB))
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:43.890 call duration 00:00:09.250
    ibsta: 0 x 100 iberr: 0 ibcntl: 11 (0xb)

    66 ThreadIbcntl()
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:54:53.140 call duration 00:00:00.000
    ibsta: 0 x 100 iberr: 0 ibcntl: 11 (0xb)

    ### LU ###

    437 ibrd(UD3, "*AC/1.0A480V/...", 1024 (0x400))
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:58:52.484 call duration 00:00:00.094
    ibsta: 0 x 2100 iberr: 0 ibcntl: 225 (0xe1)

    438 ThreadIbcntl()
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:58:52.578 call duration 00:00:00.000
    ibsta: 0 x 2100 iberr: 0 ibcntl: 225 (0xe1)

    439 ThreadIbcntl()
    PID: 0x0000113C Thread ID: 0x000008B4
    Departure time: 13:58:52.578 call duration 00:00:00.000
    ibsta: 0 x 2100 iberr: 0 ibcntl: 225 (0xe1)

    Hello!

    I don't have the opportunity to test with other controllers.

    However, I found a solution to my problem.

    The instrument should output 4 lines of data.

    L1 - line with comments

    L2 - line with current values

    L3 - line with the values of voltage

    L4 - line with power values

    The first line of the reading stops the instrument of implementation of additional measures.

    The measurements in the instrument began reading the last line of data (L4)

    The problem was that the instrument for a reason any also released a fifth line, which was empty.

    Read this line 5' th stopped the instrument again.

    By configuring the HW to finish reading on EOS, with EOS PMQS, the value byte, I could read the

    buffer of the instrument with a line output instead. This way I could read just L1 - L4

    and the instrument could work again.

    Next time I should read data from the Instr. first of all, I would like to read the empty line, then

    L1 - L4.

    Why the outputs Instr. an additional empty line will be left not resolved.

    My problem is solved.

  • Facilitate communication instrument via VISA/dll library

    Hi, I just receive a new piece of equipment that I would like to order via Labview and I am having trouble to communicate began with the device - a spectrometer in Acton (previous on the topic post). The device can connect via a usb or RS-232 cable and appears in as COM 5 and correctly Device Manager the label as the spectrometer of acton.

    I have the instrument dll file and the header file and a detailed description of all the functions but I'm scared, I am at a loss to know how to start. I already wrote labview programs to communicate via the read/write functions VISA but this instrument communicated through hexagonal orders and seemed easier for me to work with this new instrument where it looks like I need to send commands to chain - I'm getting lost in the syntax and correct structuring of the functions. The node to call a library function lists the functions of the dll, but I'm not clear on how to take of the generic Sub funcname (void); and match it to their arguments and the functions described.

    I'm also not sure what options I have to communicate with the instrument, is using the dll with node to call a library function at a level equivalent to sending a command string via the entry VISA, or are what they used in combination or can the nodes to call a library function be used alone for release with the instrument? I understand that these questions are very basic/generic I have just had trouble finding resources to learn the answers to these questions as links to be NEITHER documentation/examples or other messages from the forum would be greatly appreciated.

    I am including as an example some info on the first basic command I would start as per - a simple device search command:

    ----------------------------------------------------------------------------------

    "detailed description":

    ARC_Search_For_Mono, function used to search for attached Monochromators. With the
    exception of ARC_Ver, must be the first function call.
    Delphi: function ARC_Search_For_Mono (on Num_Found: integer): wordbool;
    STDCALL;
    VB: Private Declare Function ARC_Search_For_Mono Lib "ARC_SpectraPro.dll".
    (Num_Found As Long) As Integer
    Num_Found: The number of research Instruments Acton found and listed.
    Enumeration list begins with zero and ends with Num_Found minus one.
    Result: True, if all of the instruments where found.

    ----------------------------------------------------------------------------------

    a code in the dll header file:

    typedef unsigned _int16 (CALLBACK * LPFNDLL_Search_For_Mono) (long &);)

    ----------------------------------------------------------------------------------

    Any help would be appreciated, I think I just need a little help to get started. Thanks in advance!

    Because you neglected post in the the model number of this intrument, everything would be conjecture at this point.

  • Communication with the niVisa (GPIB) do not work next to a serial interface

    Hello

    I programmed an application in C++ (Visual C++ with MFC, running on XP). On the one hand, I control devices of different measure (also from different suppliers). All communication is done with niVisa (Version 4.6). On the other side, I send remote commands to a generator via the serial interface. To do this, I use CSerialPort, it's a Wrapper MFC of the Windows API. Thus, niVisa is not used for the serial connection.

    It works without any problem until I connect the measurement equipment (any type of) via Ethernet.

    When I now connect the scope via GPIB (I use a NI PCI-GPIB), communication works without any problem as long as I wouldn't send anything on RS232. After I send something to my generator (and close the com-port), the next Commander of VISA will give me an error (VI_ERROR_ABORT). Now, I can log in again and everything works normally again (until I have again send something on the com-port).

    For me, it's a really strange question. Any ideas? Any help?

    Best regards

    Michael

    OK, I finally found the problem.

    When you use the serial port, you can write data with normal writing (WriteFile()) function or with the tip (WriteFileEx()). Do not now ask me for more details on the difference, it's something with the mode "" overlap...

    After I send all the data with WriteFileEx, VISA-connection via GPIB produces an error. So I went to the basis of WriteFile() and everything works. Don't ask my consistency betwenn VISA (with GPIB and just GBIB) and the connection series. I'm just happy right now...

    Michael

  • potential problems with executable files using VISA

    Hi, I have a LV 2012 SP1 source code developed under Windows 7. The source code uses VISA for serial communication. I built from this source code executables that work without problems on a PC with Windows 7.
    Now I use Windows 8 and build the executables from the same source code, I have used before. However, when you use the new executables (under Windows 8) on the same PC with Windows 7 as before, I get an error in the communication of VISA.

    The error is: property node (arg 1) in .vi VISA set up a Serial Port (Instr)

    Once again: 1. executables built under Windows 7 work on a PC under Windows 7

    2. executables built under Windows 8 will not work on a Windows 7 PC (error VISA)

    the source code is the same

    Suggestions, which could be at the origin of this are most welcome.

    An EXE that uses the VISA must be the VISA installed runtime.  It is like not having not drivers for your program.  Create a Setup program using the similar project about how you made an EXE file.  Include the exe in the installation program and under additional installers choose the software that is required by the EXE.  This will usually include the runtime LabVIEW and VISA.  From 2013 the additional installers will try to predict the software needed by the EXE.

  • With LabVIEW how to control an instrument with a RS232 output, using a USB RS232 converter cable.

    With LabVIEW how to control an instrument with a RS232 output, using a USB RS232 converter cable, since I do not have rs232 ports. I have two instruments I want for the control in this way. One is a guarantee of strength Imada SPAS with RS232 output. The other is a micrometer Panasonic HL-G103-S-J laser sensor which is RS422. I have done significant programming LabVIEW using GPIB, but I have no experience with devices such as these. No matter what tutorial or examples would be greatly appreciated.

    Thank you.

    When you plug the USB-RS-232 converter, it installs a driver under Windows which makes it look like any other RS-232 port.  You may need to install the driver of everything that came on the CD with the converter.  It will get a Com as Com5 port number according to what is the next available number.

  • can I use communicator with outlook express

    can I use communicator with express Fi, outlook yes how? Thank you

    I don't think so.  See here: http://office.microsoft.com/en-us/communicator-help/ its mainly an office feature as far as I know.  You can ask in the forum Board here: http://answers.microsoft.com/en-us/office

    Steve

  • RS 232 communication with a projector

    Hello! I work in communication with my prjector. The controls are pretty simple, just PWR it for OFF\r PWR to turn off and LAMP? How many hours have the lamp worked \r to land the aircraft. So I just used the example of the writing/reading series with labview, but had a few problems.

    1º) it works but it keeps giving me an error, I can't handle. Is the current operation of visa wait time. I tried it here and all the people say something on the lines of commands, but I put them and set up in the port, so I don't really know how to handle this error. Another thing, it is how can I put \r or 0xD for my end of just the default write command?

    2º) how can I make my request just be an exe that you don't have to press ' EXECUTE ' always to use it?

    3º) my last question is to ask questions about how to manage this thing, I need to read used with the control LAMP lamp hours?, and projector will answer me with something like: LAMP = xxx. How to handle this response to send it via TCP/IP? Should I have to create a new variable or something? I mean, I just need with another application in order to power switch of the projector via tcp/ip and calling hours of lamps via TCP/IP, so I don't really know how to handle. Thanks for all the peoples and let me know if you need more information, I'm not native English sorry for my mistakes.

    Edit: I forgot to put my vi.

    1. you will obviously get a timeout when you send the commands that do not generate a frequency of the instrument. Only do a reading when you send the LAMP? interview and to automatically send \r, set the stop to "0 D" character.

    2. you have the app Builder to create an exe file. In order to make the VI automatically running, go to the properties of VI > execution and check "run then '.

    3. I do not understand. First, you talk about RS - 232 and now you want to convert this TCP/IP communication VI?

  • Problem with PCI-GPIB card control Agilent 8648 D generator interface

    Hello

    I downloaded the driver Plug-and-Play (project-style) for Agilent 8648 A generator of signals. I use LabVIEW 2011.

    I open the file project and resource VISA name menu, select COM1. Note that I use 82350B of the PCI-GPIB Interface Card.

    I run the project, and I get timeout error.

    Is there a problem in the PCI-GPIB interface or am I missing something? I'm new to LabView and PCI-GPIB interface, and I'd appreciate any help.

    Thank you

    Nabil Gharib

    Given that you do not use a NI GPIB, go to MAX, select software and NI-VISA. In the right window, click the Options of VISA, and then select passports under general settings. Check on the passport of NI-VISA for Tulip.

    I'm assumimg you loaded the driver of Agilent and tested the communication with their software.

  • Read several GPIB instruments

    Hello

    I have a question of time, when I want to read the GPIB instruments at the same time (1 to 24 instruments with 2 cards GPIB - GPIB0 and GPIB1).  The user can choose the number of instruments that it will read.

    For 17 instruments chosen for example, is an array of 17 lines connected to a loop where playback GPIB is made (see TestVi and Loop.jpeg). It took about 5 seconds to get all the data.

    But if I just copy 17 times playback (configured as a falling) Vi in a simple vi as in Untitled2.vi, tool around 1.5 sec to get all the data for the same conifguration! (See without for loop.jpeg)

    How could I read as fast as in the 2 without title vi with a for loop or something else in order to allow users to set more or less instruments without copying playback Vi once the configuration has changed?

    I tried to use call a VI dynamically , but it did not work.

    Thank you for your help

    Hello Anthony,.

    You should be able to find examples in the Finder for example of NOR (help > OR Finder in LabVIEW example) by searching for the term "Asynchronous".

    In 2013, there are a few examples located in the place shown in my sceenshot.

  • Assistant device communicating with pressure gauge, but still get error 1073807246 after conversion of Win7

    I have a simple .vi I used last year to connect with a manometer. There is no pressure journal and intrigue over time. Our computers just got converted to Windows 7, and now I can't get the .vi to work. I can go in the wizard of the Instrument and send a command to the gauge and the gauge will react appropriately. But, when I run the program, didn't get any pressure on my face or in my log file information.

    I searched the error code and tried several things including http://www.ni.com/support/labview/visa/verr3.htm. I'm guessing it's a simple solution, I don't know what it is. Help a newbie!

    Are you absolutely sure that you have closed all other programs that may access the port? Having MAX open with a panel of test VISA or an older version of LabVIEW would cause the error.

  • urgent request: how to read the value of a register using VISA read?

    Hello world

    This is a very urgent investigation. can someone help me please? Thank you very much!!

    I wrote a few commands in several registers using VISA write. now, I want to read the value of a different register.

    But the bytes returned are just the commands, I wrote before and a few other commands that I don't know what they are for.

    This is the format of the command, and I enclose the sheet... I want to read the value of register (0 * 41)

    .

    Ravens, if you have something more than me, do not so much it at all =)

    The command you have posted has several components:

    The gray area of the transport layer uses for a checksum

    several bits set to 0.

    a single bit to define if it's a read/write operation

    a byte to identify the register of interests.

    two bytes for the data.

    With what you have provided, there are only three things we need to worry:

    (1) set the R/W bit to 0 to mean we're reading rather than write.

    (2) set the second byte 0 x 41 to focus on the register of interests.

    (3) with a reading, I can't imagine the last issue of two bytes.  They probably ignored.  The documentation you provided does nothing to explain this.  The most logical thing I can think is that these two bits contain the data, you go to the registry if you set the R/W bit to 1.

    There are two parts to this communication.  The first part is an entry VISA to send this control unit.  It is likely that you will need to complete the message.  You will need to know how to do this.

    The device must respond with the message that you mentioned in the original post.  Crows is right.  He's coming back as a string.  You can use the subset of string to separate the components defined by the standard.  You can use these components to determine if the data is legitimate and then do what you want with the data.

  • can I use visa.vi to rs232 db25 port?

    can I use visa.vi to rs232 db25 port? because where the use of rs232 to the parallel port (db25).

    and also any vi to read the data of the series.

    IM new in labview I just learn the tutorial to youtube.

    If not can someone give me an idea how or can give me an example vi.

    TNX...

    Your front panel can be... catchy (and frankly annoying), but your VI does not make much sense. If you want that your 'start' code when the user presses a façade 'Start' button, then you have to sit and wait for the user to press start, doesn't depend on the user to press Start before you run your VI.

    In addition, you have:

    • Wired the value that configures 'Port' at the entrance to "Activate the tank of termination" of the VISA. Why? You should know whether it should be enabled based on what you're trying to talk. The unit will stop his messages with a specific character? If so, a real thread of this entry and a value of thread at the end tank entry matches the value ASCII of the nature of the instrument used to put an end to his messages.
    • Wired a zero for the number of bytes Read VISA. Why? This means that you do not read anything by definition.
    • Do you need to wait a certain amount of time after sending the order before data are available?
    • Do you need to terminate the order that you send with something?
    • You currently have the set loop in place as an infinite loop. This means that the only way to stop your VI is using the button abandon in the toolbar. IT OF BAD. Provide a stop button on your façade to allow your VI finish properly.

    See attached mod as a better starting point.

Maybe you are looking for

  • Tecra 9100 crashes after a few minutes

    My Tecra9100 (P4, 1.8 Ghz) freezes after a few minutes. He shows no reaction on the keyboard or mouse input.No matter if I am using Windows XP, Linux or simply enter the BIOS. Restart the system leads to a shorter period until the freezing point (a f

  • IMessage no sync'ing with iphone

    I think it happened because I updated my password and now imessage on my Macbook and imessage on my iphone are out of sync. Whenever I someone message from my Mac, it appears as "iCloud" and not my name, they kept in their phone. I have connected to

  • Re: Satellite L655-19 - screen promblem or not

    Hello. Two weeks ago, that I have a laptop Toshiba Satellite L655 - 19(d) to private use. At the beginning I do not pay attention to the quality of the screen image. But now, even remotely from the meter, I see that the distance between pixels. That'

  • write the spreadsheet help

  • No communication with the Dell AIO 926 printer.

    My Dell, Windows Vista, computer will not communicate with my Dell AIO 926 printer.  I went through the troubleshooting guides and the printer is powered and cables are connected correctly.  I downloaded Windows 'FIX IT' and there is no problems foun