Client-Server with LabVIEW

I have the following Situation , I want to Setup the Labview College License at a Server and make some Clients (the Students) fully accessing the labview on this server Simultaneously, How can i do this? 

Hello Ahmed,
There are two ways to increase the number of licenses available in VLM.
1.) Obtain a new license file from National Instruments.  In addition to the information specified in the linked KB, also include the changes you want to make to you license (add X number of seats).  Then you install this new license file and you will be able to check out more licenses.
2) Enable Overdraft in Volume License Manager. Go to Options»Preferences»Policies, and enable the overdraft policy for VLM.  This will allow you to check out more licenses than you have, but you will have to pay for all of the extra usage when you send in your activity log at the end of the yearly contract period.
Also in relation to the previous question you asked about the installation of LabVIEW.  I would recommend looking at this article on Volume License Installers, which gives you a nice way to install software from a central location (network) and ensure that the clients who install it will automatically begin checking out their licenses from the VLM server.
John B.
Applications Engineer
National Instruments

Similar Messages

  • Error when trying to set up OPC I/O server with LabView 2009

    Hi.I get an error when I try to set up OPC I/O server with LabView 2009 and the DSC module. If I open an empty project, right click ”My Computer”. Select new / I/O Server… and then OPC Client, the following error appears: Unable to browse OPC Server from the selected machine.Error -2147467262 occurred at GetOPCServerList.viPossible reason(s):LabVIEW: (Hex 0x80004002) No such interface supported.  I have tried to repair LabView, but with no luck. Any idea what it could be?

    The problems are not related to each otherOk then. Lets try getting this solved. Lemme dig......

  • VPN Site-to-Site or VPN Client Server with Cisco IP Phone 8941 and 8945

    Hi everyone,
    I decide to deploy a CUCM (BE6K platform), SX20, and IP Phone 8941/8945 on Head Office and Cisco SX10 and IP Phone 8941/8945 for branch offices (actually 9 branch offices).
    The connection will use internet connection for HO and each branch offices.
    And the IT guy want to use kind a VPN client server or VPN site-to-site for the connection through internet,
    what kind of VPN client server or VPN site-to-site that recommended for this deployment?
    and what type of Cisco router that support that kind of VPN (the cheapest one will be great)?
    So the SX10 and IP Phone 8941/8945 in branch offices can work properly through internet connection?
    please advise

    Hi Leo,
    technically, the ipsec users will not use up any premium license seats, so if you have 10 ipsec users connecting first, the premium seats are still free and so you can then still have 10 phones/anyconnect users connect.
    However, the 250 you mention is the global platform limit, so it refers to the sum of premium and non-premium connections. Or in other words, you can have 240 ipsec users and 10 phones,  but not 250 ipsec users and 10 phones.
    If 250 ipsec users and 10 phones would try to connect, it would be first-in, first-served, e.g. you could have 248 ipsec users and 2 phones connected.
    Note: since you have Essentials disabled I'm assuming you are referring to the legacy "Cisco vpnclient" (IKEv1 client) which does not require any license on the ASA. But for the benefit of others reading this thread: if  you do have Anyconnect clients (using SSL or IPsec/IKEv2) for which you currently have an Essentials license, then note that the Essentials and Premium license cannot co-exist. So for e.g. 240 Anyconnect users and no phones, you can use Essentials. For 240 Anyconnect users and 10 phones, you need a 250-seat Premium license (and a vpn phone license).

  • Client-server with  JMX

    I looking for google many time but I dont find an example of solution for my problem. I try to build a server who can exposed a MBean for some clients. For this part it's correct, but when I try to serialize the subclass of my Mbean and I try client-side to chatch them that doesnt work.Do you know how to make that ?
    here un example... but it's my structure is correct to support serializable ? ... and how to set server-side to exposed the Child Class to client ?.. i know for the mbean its correct.. but the subclass..
    public class helloMBean extends Remote{
    public List<Child> getListChild();
    public class hello implement HelloMBean{
    List<Child> lstChild;
    String NameParent;
    lstChild = new ArrayList<Child>();
    public List<Child> getListChild(){
    return lstChild;
    public String getParent()
    return NameParent;
    public void setParent(String name)
    NameParent = name;
    public class Child implements Serializable{
    String Name;
    public Child()
    Edited by: user10365284 on 8 nov. 2012 17:29

    I checked class AuthenticatedUser which does implements through interface UserInfo.
    // Compiled from (version 1.4 : 48.0, super bit)
    public class implements {
    // Field descriptor #50 J
    private static final long serialVersionUID = 6699361079932480379L;
    // Field descriptor #55 Ljava/lang/String;
    public static final java.lang.String REALM_NAME = "wl_realm";
    // Field descriptor #50 J
    private long timeStamp;
    // Field descriptor #55 Ljava/lang/String;
    private java.lang.String name;
    // Field descriptor #59 [B
    private byte[] signature;
    // Field descriptor #61 B
    private byte qos;
    // Field descriptor #63 Ljava/net/InetAddress;
    private inetAddress;
    // Field descriptor #63 Ljava/net/InetAddress;
    private localAddress;
    // Field descriptor #66 I
    private int localPort;
    // Field descriptor #68 Ljava/lang/Object;
    private transient java.lang.Object sslCertificate;
    // Field descriptor #70 Ljava/lang/Class;
    static synthetic java.lang.Class class$weblogic$security$acl$internal$AuthenticatedSubject;
    // Field descriptor #70 Ljava/lang/Class;
    static synthetic java.lang.Class class$weblogic$security$acl$internal$AuthenticatedUser;

  • Sending object between client server with some class without serializable

    Hi friend,
    I need to send the object from server to client via ObjectInputStream and ObjectOutputStream, however, in these objects, some are implements by others, no source code provided, which haven't implement serizlizable, so does anyone can tell me what I can do?
    Thanks your concern.

    Anyone can help? It is urgent!

  • Problem client/server with GUI

    I have a problem with a project im working on. I have a main method that has an infinite loop but before it enters the loop, i draw the GUI. I put a simple print statement and found that it goes through the loop once. Can someone help me to figure out why the file does not send. I tried running this code without the GUI and the file sends.
    here is the code:
    public static void main(String[] args) {
              final String PATH = "/home/dford/Desktop/";
              ClientGUI display = new ClientGUI();
                   Download[] download = new Download[5];
                   int downloadIndex = 0;
                   ServerSocket welcomeSocket = new ServerSocket(9876);
                             Socket connectionSocket = welcomeSocket.accept();
                             if(downloadIndex < 5)
                                  download[downloadIndex++] = new Download(connectionSocket,
                                                                                     PATH + "snake.c");
                        catch(Exception e){}
                        System.out.println("Got here");
                        for(int i=0; i<downloadIndex; i++){
              catch(Exception e){
         }**And im trieing not to use Threads, but if i have to please let me know.
    Edited by: dford425 on Mar 18, 2008 8:03 PM                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

    nevermind, i figured it out

  • Running LabVIEW 7.1 on Windows 2003 Server with Terminal Services

    We are setting up a newtork based solution with LabView. I have looked for documentation on installing LV 7.1 on a Windows 2003 server to run the applications and then have destkops connect to it. Can this be done with a Terminal Services Access solution? Another words, if we were to purchase the LV Volume License Manager, can you install LV 7.1 onto a Windows 2003 server and run the application through TS across a 1GB backbone from the desktop, which makes the server do all the processing?

    On Fri, 29 Oct 2004 07:42:13 -0500, ITIQ wrote:
    > By running a session through Terminal Services you are NOT running
    > anything on the desktop it all runs on the server. So if the software
    > was installed on the server and you had the correct number of licenses
    > that you allow to connect through Terminal Services, would this not be
    > allowed under the EULA?
    Sorry for the delay. I'm surprised Philip didn't get back to us... Phil
    are you there? Based on his comments, I think he misunderstands your
    situation (no offense Phil).
    You and I are both talking about the same thing. You basically want a
    terminal server license. NI will not provide it. They told me (over the
    phone) to get a multi-seat license (MSL). IMO, that's unacceptable. I
    expect a LV license taylored specifically for thin client networks. A
    multi-seat license is for -->installing<-- on multiple machines. It
    conforms to a totally different set of rules. One big one, an MSL assumes
    that you intend to run LV locally to interact with DAQ hardware. Since
    this won't be done with the thin client, you shouldn't have to pay for it.
    > I am not sure if the question is if the license is valid or not, I am
    > first just trying to figure out if you can even install LV on a Windows
    > 2003 server and run it through a Terminal Services Session.
    Since you are talking about a Microsoft operating system, I would say this
    cannot be done without some additional/costly junk installed.
    Here's another option. If the people you're supporting don't have any
    platform dependent things like ActiveX in their LV applications, you
    should consider using a Linux-based terminal server. I know for a fact it
    I've assisted in setting up a network like this before:
    * One Linux terminal server with LabVIEW for Linux (Full Dev)
    * One WinXP box on the network with LabVIEW for Win (Prof Dev)
    * 5 cheap thin clients
    They developed LabVIEW source code on the thin clients and then compiled
    packages on the WinXP box for distribution to their customers. The WinXP
    was only used for compiles so they just hopped on when necessary. The
    eventual plan is for the thin clients to simply open a RemoteDesktop
    (using RDP) terminal session and do the compiles from there. I'm not sure
    how to do that yet... on the Windows side.
    > I see the comments on calling VIs through LV. I am a Network Engineer
    > not a LV Developer, so unfortunately I do not know what a VI is. All I
    > am looking to do is run low end PCs with LV if I have to, but use the
    > server as the workhorse to process all sims etc.
    Phil must have thought you needed a LV application to access the front
    panel controls of another LV application running on a remote machine. The
    VI server is handy in that area but useless in your case.
    Hey, you wanna hear about cheap network infrastructure? We bought our
    thin client boxes for $15 each! Go to if you want more info on
    configuring Linux as a terminal server.
    You, and anyone else, can also email me at gnu_voodoo [at] netzero [dot]
    com for questions/comments.

  • Trouble reading OPC Server values with Labview

    Hello there,
    I am currently working with Siemens Equipment : a Simatic Microbox with an OPC Server.
    I would like to read some variables' values provided by the OPC server with Labview 2012 (and DSC module), but I'm experiencing some difficulties.
    I have set up my OPC Server as an I/O Server in a Labview projet. Then, I have created some Shared Values to treat them in Labview.
    In the Distributed System Manager, I can read NI OPC Client Status :
    Active -> true
    Connected -> false
    Enable logging diagnostic information -> false
    OPC interface version -> OPC DA-3
    Server ProgID -> OPC.SimaticNet.1
    When I want to check any Shared Value, I have the comment : Server Failure.
    I think DCOM/COM configuration of the client and the server are good (I can correctly read values with Siemens OPC Scout).
    Maybe the issue comes from the connection between the OPC Server and Labview.
    Has anyone had a similar problem ?
    Thanks in advance,

    You don't specify whether the server and the client are on the same PC or not.
    I recently run in a situation where the Matrikon client was able to read from a remote server while the Labview program (using Datasocket) could not.
    I suggest to try with Datasocket vi's to see what happens.
    LV 7.0, 7.1, 8.0.1, 2011
    Read OPC ‏17 KB

  • I am using the "G Web Server" with Bridgeview 2.1. The problem I am having is that I have to

    restart the web server once every 2 to 3 days, or the web pages don't show the vi (images). Any ideas to trouble shoot - I dont know if the problem is related to my workstation hardware or a setting that needs to be tweaked on the G Web Server. Thank you.I am using a Pentium 233 machine/ Win 95. The PLC I am collecting info from is a GE Fanuc Series 9030 (?). Ethernet connection.

    restart the web server once every 2 to 3 days, or the web pages don't show the vi (images). Any ideas to trouble shoot - I dont know if the problem is related to my workstation hardware or a setting that needs to be tweaked on the G Web Server. Thank you.Hi,
    we are using the G Web Server with LabVIEW on a WinNT 4 machine. Up to now these works fine. Therefore I would recommend you to choose a more stable OS.
    Maybe you can try to programmatically restart the server every 2 days. Within LabVIEW you would do this by running "HTTP Server". Unfortunatly all connections will be closed, thus be aware of that!
    Hope that helps

  • Why timesten is slow in client/server mode

    i am testing Timesten client/server mode and find that
    it is to slow.
    when using dircet mode, timesten can precoss about 40000 query pre second
    but when change to client/ server mode
    it can only process 1500 query pre second.
    here is my config and test sql.
    A1 number NOT NULL PRIMARY KEY ,
    A2 number,
    A3 number
    network card is 1000m,
    query code:
    PreparedStatement pSel = dbConn.prepareStatement("select a1,a2 from TEST999 where a1=?");
    rs = null;
    int a1=0;
    int a2=0;
    for(int i=0;i<80000 ;i++)
         pSel.setInt(1,i );
    rs=pSel.executeQuery( );
    if ( {
         a1 = rs.getInt(1);
         a2 = rs.getInt(2);
         if( i%8000==0) {
         System.out.println("select "+ i +" res="+a1 +" time " + getTime_v2());
    direct mode time : 80000 query is 2 second
    client/server mode in the same machine : 80000 query is 12 second
    client/server mode in the different machine : 80000 query is 54 second
    any one have idea about this?
    is it the jdbc driver 's promble?

    it is to be expected that there will be a big difference in performance between direct mode and client/server due to much greater overhead in client/server, especially if the client is on a different machine. However, the differences you are seeing here are larger than I would normally expect.
    You say (I think) that the network is 1 GB, correct? What is the hardware spec of the test machine(s)? Have you tuned the O/S network stack for optimal performance?
    Typically, for local client/server using the fastest IPC mode (shmipc) I expect performance of around 20-30% of direct mode and for remote client/server with a GB LAN I would expect performance of around 10-20% of direct mode.

  • Establish a connection through RF modem's on client & server side & to set up PPP communication for data transfer

    can any1 over here help me out in how to establish connection between 2 RF modem's for data transfer , between client & server USing LABVIEW?
    I want to establish a connection between 2 PC's through  RF modem on client & server side & to set up PPP communication for data transfer.
    (I have tried data transfer through RS-232 using TCP/IP whn the 2 PC's are connected over ethernet... which is working.
    I also tried connecting loopback cable between 2 PC's COM port & geting data transfer using VIsa configure serial port & other visa functions  ... which is working)
    can u guide me how to establish connection between 2 RF modem's using LABview?
    & how does the data transfer take place between 2 RF modems through RS-232?
    is it using TCP/IP?
    If you got any links to go abt this issue do send me related links .. or any examples .....
    I am currently using Labview version 8.
    Waiting in anticipation.. reply ASAP..
    thanking you

    Howdy yogan,
    Maybe you could clarify a few things for me, and we'll see how we can help ya. TCP/IP protocol occurs through an ethernet connection; RS-232 communication occurs through an RS-232 serial connection, typically through a cable that has a DB9 connector on both ends. Do you mean that the RF modems in question have the option to communicate via RS-232 and/or via TCP/IP ethernet? Specific information like the manufacturer of your RF modems, the model number of your RF modems, and how you connect the modems to the PC would enable us to give you more efficient support.
    You can check our Instrument Driver Network (IDNet) to see if a plug-and-play/IVI driver already exists for your RF modem. (You'll need to know its manufacturer and model number.) In the case that you do find an IDNet driver for your modem, you can use this KnowledgeBase article for instructions on how to use the driver.
    Another excellent resource to consider is the NI Example Finder. You can access this within LabVIEW by navigating to Help»Find Examples and then searching for serial or TCP/IP examples.
    Message Edited by pBerg on 03-10-2008 04:35 PM
    Warm regards,

  • Interfacin​g Siemens Desigo PXC Building Automation controller with LabVIEW

    Hello everyone,
    I am currently trying to interface Siemens building Automation controller Desigo PXC100-E.D​bal/en/buildingautomation-hvac/building-automation​...
    with LabVIEW using OPC servers. I had once interfaced the S7-300 PLC of Siemens with simatic step-7 software with LabVIEW but in this case I don't which driver should I select and don't know is it possible or not. If any one of you have similar sort of expierence please I need advice..

    As you have described I've done the whole configuration. I am using MatrikonOPC for BACnet and as I've checked my device and the software are working properly. Now what I am trying to is that I am connecting the BACnet OPC server with LabVIEW so that the MatrikonOPC act as a connection layer between my device and LabVIEW. So that I will be able to change values directly from my LV vi. Now when I connect that Bacnet OPC with LabVIEW using the same procedure for PLC it gets connected because it is showing all the tags from the device. But after doing the whole procedure which is the same according to the tutorial 'connecting LV to any PLC using OPC' when I deploy the variables I am getting some error. I am attaching the screenshot of the error. Please let me know if I am doing any thing wrong.
    PS: I am using a virtual machine and I've tried the whole thing with the NI OPC servers as well according to the tutorial but still when i deploy variables I am getting this error.
    OPC_error.JPG ‏22 KB

  • Does anyone have an example of a c++ TCP/IP client that works with labview TCP?IP server ??

    I have the labview TCP/IP client/server working fine, but now I need to do this were labview is the TCP/IP server and the c++ program is the client. Does anybody have a simple C++ TCP/IP client that works with labview TCP/IP server ????

    Thanks, you were right, we modified the c++ program to include the port # in the IP address and it worked.We also forgot to convert the port #. I included my labview and c++ program.
    TCP-IP.llb ‏47 KB
    client.exe ‏40 KB

  • How to control one server with multiple clients via TCP/IP

    I am wanting to control a single server with multiple clients.  Only one client would be active at a time, so there would be no conflict.  I want to use TCP/IP.  So far, I have programmed a cluster that passes data back to the server with no problems.  The challenge come in when a second client is added to the mix.  I have't been able to figure out how to turn each client on and send the appropriate data and then turn it off so it doesn't keep sending the same data to the server. 
    Here are the things that I have considered and did some preliminary testing, but don't really know how to impliment:
    1.  Send a numeric on the front of the cluster packet that tells the server that data is on the way.
    2.  Send a boolean on the front of the cluster packet to somehow turn the server TCP/IP on.
    The problem I have found is that LabVIEW TCP/IP doesn't like to be turned on and off.  If it doesn't get the data it expects, it goes into a reset mode and that kills the response time.
    Any help?

    You should consider implementing a set of simple one-byte commands that can be sent back and forth between the Server and the Clients. You can base all of these ideas off the example in the Example Finder under Networking >> TCP and UDP called Multiple Connections - Server.
    You will have two loops in the server VI: one to wait for new connections, and one to send and receive data from the existing connections. For instance, after one of the clients connects, it can request control of the server to send data to it by sending the character "R" for request. Every time the send/receive loop of the Server executes, the first thing it can do is to check all the existing connections to see if any of the clients have sent a control request ("R"). If so, it will create a buffer (array) of control requests. This could be in the form of Connection IDs or indexes in the array for a particular Connection ID. Your choice.
    After the Server receives a request for contol, if it is not already under control by another client, then it can send a response to the first client on the control request list. For instance, the server could send the first client a "S" command for send. Note that after the clients send their control request, they should execute a TCP Read and wait indefinitely for the server to respond with the one-byte "S" command. Then, once the client in control is finished sending data to the server, it could send the character "X" telling the Server to release it from control.
    The example I mentioned above already does a similar thing. Note how when a client wants to disconnect, they send the letter "Q". You can see this in the Multiple Connections - Client VI. The Server then checks each individual connection to see if it's received this one-byte command, and if it has, it closes the connection to the client. This is what you would want to implement, but instead of having just one command, you'll have to distinguish between a few and build up a buffer of control requests.
    Finally, if a client does decide to disconnect in your application, they could send the command "Q" just like the example above. At this point, close the connection and remove that Connection ID from the array of connections. You will also have to handle the case that this client was in the request control waiting line when it disconnected, in which case you need to delete it from that array as well.
    This will definitely work for you, but it will take some work. Best of luck!
    Jarrod S.
    National Instruments

  • How do I connect multiple telnet clients to a telnet server in LabVIEW?

    Good afternoon,
    I'm writing a telnet server in LabView 6.1 that needs to handle multiple clients. To do this, I modified the "viserver\runvi.llb" example to use the telnet VI's from the Internet Toolkit instead of the TCP VI's. Then I changed the Open VI Reference to point to my telnet handler. Right now my handler just echoes the characters received from the client.
    My software works ok for the first connection. After the server accepts two or more connections, characters typed in one client get echoed to all clients. In addition, only one client will accept characters at a time. The client accepting input changes randomly every few seconds as characters are entered.
    Has anyon
    e gotten the telnet VI's to run in parallel? Not sure if they are thread-safe or not. If you have some experience with this, I have attached my llb if you think you can help.
    Chris Norris
    Carrier Access Corp.
    [email protected]
    (303) 218-5826
    CAC_Telnet_Server.llb ‏92 KB

    I don't think there's a problem with the TCP/connection portion of things. My feeling is that the problem is lurking somewhere in the timing of the application, or in the way LabVIEW task scheduling/multitasking is working compared to the way you expect it to work.
    For instance, I'm wondering why you stuck with 25 seconds (25000 ms) as the timeout value for the Telnet Read in Telnet I assume you're expecting LabVIEW to quickly "sleep" that while loop and move on to check on the while loops of any other Telnet instances that might have been spawned as a result of connection requests from other remote clients.
    Instead, it seems to me (on my system, anyway, with three simultaneous connections active) that LabVIEW is not cyc
    ling through the other Telnet instances as you expect, but is only getting to them to read a byte at a time each time the main loop iterates in response to a byte appearing from the first of the three remote clients.
    If you change the Telnet Read timeout to 50 ms instead, the behavior is closer to what you might expect, but still not perfect.
    Because timing/threading/scheduling is a complicated subject in LabVIEW, I'm going to give LabVIEW the benefit of the doubt and assume it's operating as designed. Maybe someone else can provide more insight into what's happening in this particular case, and whether reentrancy or something else is affecting things.
    One option I would consider if I were in your shoes: program a simpler version of things that mimics Date and cycles through a queue of connections to service them without relying on spawning new reentrant instances of a handler VI.
    I realize that your version of things (along with the reentrancy example
    that ships with LabVIEW) is expressly intended to handle this daemon-style situation, but simpler may be better for the purposes of debugging and development ease.
    My two cents,
    John Lum
    National Instruments

Maybe you are looking for