LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

the best way to run an application on multiple pcs?

Hi :),

 

I would like to have a main application running in a PC (server), and reading and controlling some features on the client PCs (all in the same network). The features to access are not the same for each client PC.

Which is the best way to make my application, using web services, remote panel? 

 

Thanks

0 Kudos
Message 1 of 6
(2,664 Views)
Your question is a bit too vague. What kind of features are you trying to read and control? Is this one-way communicaton, or two-way? Is it synchronized, or asynchronous? Can it happen with more than one client at a time?
0 Kudos
Message 2 of 6
(2,658 Views)

Your question is a bit too vague. What kind of features are you trying to read and control? Is this one-way communicaton, or two-way? Is it synchronized, or asynchronous? Can it happen with more than one client at a time?

Hi,

 

At the PC Server I want to build an application wich have control of all the system. Each PC client will display and control part of the information contained in the PC server (two-way of communication).

Maybe given a pratical example it'll be easy to understand:

 

  • PC server will control and display Temperature 1,  Temperature 2 and Temperature 3;
  • PC client 1 will control and display Temperature 1;
  • PC client 2 will control and display Temperature 2;
  • PC client 3 will control and display Temperature 2 and Temperature 3; 

 

All the information that is changed in the server or in the clients should be updated in all of them. This Update doesn't need to be at the same time(can take some few seconds). It is possible that PC client 2 and 3 want to take control of Temperatute 2 at the same time.

 

Thanks in advance :).

0 Kudos
Message 3 of 6
(2,634 Views)
It sounds to me like a network published shared variable is what you're looking for. You can read more about these in the LabVIEW Help. When it comes to building the executables, be sure to read this: How do I Deploy Network Shared Variables from a Compiled Executable?
Message 4 of 6
(2,596 Views)

I have used Action Engines to implement that type of architecture.

 

All of the Action Engines execute on the Server.

 

I started by developing the Server app and then got it working the way I needed.

 

Then using VI server I developed (on the server) the apps that run on the other machines after debugging I moved these apps to the other machines and still used the VI server (just changed the IP of the machine serving teh AEs) to serve the Action Engines to the client machines.

 

I hope that helps,

 

Ben

Retired Senior Automation Systems Architect with Data Science Automation LabVIEW Champion Knight of NI and Prepper LinkedIn Profile YouTube Channel
Message 5 of 6
(2,591 Views)

It sounds to me like a network published shared variable is what you're looking for. You can read more about these in the LabVIEW Help. When it comes to building the executables, be sure to read this: How do I Deploy Network Shared Variables from a Compiled Executable?

Thanks for your replies. I think I'll follow smercurio_fc suggestion: using shared variables to do my applications. However, thanks also for your reply Ben :). I didn't know action engines, maybe in the future I'll use this solution for another type of applications.

Smercurio_fc, Do you know if I have a limit number of PCs to implement this solution?

 

Thanks 🙂

0 Kudos
Message 6 of 6
(2,546 Views)