LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Collate and display data from several workstations

Solved!
Go to solution

Currently data is saved in CSV format locally on several workstations running Labview and the format of data saved is the same for each workstation. Data is saved roughly every 2 minutes at each station and at differing times.

 

The computers on these stations are networked but not saving a copy of their CSV files to server which I know is not ideal but part of original brief.  What is now required is that a computer on the network gathers this data from the workstations and then displays it showing trends across the workstations etc in graphical format and possibly Excel.

 

What I am looking for is some advice on the best way forward.

 

I have looked at shared variables as one possible solution but question is does the workstations send their respective data to the 'central' PC or does this PC 'poll' the workstations which seems inefficient.

 

Another thought was using Active X from workstations to write to an Excel file running on the 'central' PC.

 

Finally thought that having the workstations save their results to a server and then 'central' PC access's that data, collates it and then displays combined results.

 

 

Labview Version 8.5
Labview Version 8.6
Labview Version 2014
0 Kudos
Message 1 of 4
(2,375 Views)
Solution
Accepted by topic author jack1

There are several things still to be specified.

  • Are all of the LabVIEW programs saving individual data saving the data in the same format and the same number of data points?
  • Are all of the LabVIEW programs saving at exactly the same rate?
  • Are all of the data on Machine A being saved in a single file, or is each reading (at 2 minute intervals) in a separate file?
  • Are you attempting to combine the data from the separate machines as it is being collected or after all of the collection has been done, and all of the files have been written?
  • Other than the time-stamp of the data file, is there a "time marker" in (all of) the individual Data Files?
  • If you assume that the data from the various machines are unsynchronized, do you have in mind a way to combine the various time readings?  What if they are sufficiently different that, say, Machine A has 20 more readings (because it started much earlier) than the other PCs?
  • If the various machines are not saving at the same rate, how will you handle this?

One method you could consider is to write a Program that runs on any network-connected PC, including one not participating in the saving of data.  For simplicity, let's assume that each "participatant" machine starts at approximately the same time, saves at exactly the same rate, writes a single data file, and has already closed.  If the "Combining" program knows where all the data files are (because it knows the name of each machine and the location of the file on each machine), it can open all the files, gather all the data, and process it however you desire (including writing a "combined Excel Workbook" with a separate Worksheet for each PC, or combining them all on a single Worksheet).  Just decide what you want to do in the context of the questions that were raised above.

 

Bob Schor

0 Kudos
Message 2 of 4
(2,339 Views)

Thanks for reply Bob, please see answers to your questions posed below.
@Bob_Schor wrote:

There are several things still to be specified.

  • Are all of the LabVIEW programs saving individual data saving the data in the same format and the same number of data points? Yes data is saved on each workstation in same format which is taken from manual test of simply pass/fail on 3 different checks. One test sequence for the 3 tests taking around 2 minutes.
  • Are all of the LabVIEW programs saving at exactly the same rate? No it depends when each of the operators complete the 3 sequence test at their workstation.
  • Are all of the data on Machine A being saved in a single file, or is each reading (at 2 minute intervals) in a separate file? Data on say workstation A is a text file (Tab delimited) that is initially opened when test run starts and then is added to throughout the session one line at a time approx every 2 minutes depending on how fast the operator can conduct the 3 tests.
  • Are you attempting to combine the data from the separate machines as it is being collected or after all of the collection has been done, and all of the files have been written? The data from each workstation would be compared against each other on a regular basis, say every 10 minutes or so as a chart. One option I roughed out was to have one folder on the 'central PC' that had 6 files WS1 to WS6. I then read these 6 files in sequence, extracted the coloum of data from each that was of interest, summed it for each so end up with 6 values that are update dover 10 minutes from the remote workstations. Thoughts were then to put these values to an excel spreadsheet using activeX. I have attached file (2014) as an example.
  • Other than the time-stamp of the data file, is there a "time marker" in (all of) the individual Data Files? The file being sent to the 'central' workstation is an abbreviated extract of the one saved on the workstation itself which does have timestamp each time a test sequence is completed. However the one sent to 'central' pc only has the date sent because the only thing of interest is how many pass/fails has that workstation achived in the 24 hour period.
  • If you assume that the data from the various machines are unsynchronized, do you have in mind a way to combine the various time readings?  What if they are sufficiently different that, say, Machine A has 20 more readings (because it started much earlier) than the other PCs? See response above and the thoughts on having seperate text files being written to by the workstations and read in 'one go' by central PC.
  • If the various machines are not saving at the same rate, how will you handle this? Perhaps as per response above?

I will have a read through your suggestions below and get back to you tomorrow Bob if thats ok and appreciate your detailed input to this problem,

 

Thanks, Jack

 

One method you could consider is to write a Program that runs on any network-connected PC, including one not participating in the saving of data.  For simplicity, let's assume that each "participatant" machine starts at approximately the same time, saves at exactly the same rate, writes a single data file, and has already closed.  If the "Combining" program knows where all the data files are (because it knows the name of each machine and the location of the file on each machine), it can open all the files, gather all the data, and process it however you desire (including writing a "combined Excel Workbook" with a separate Worksheet for each PC, or combining them all on a single Worksheet).  Just decide what you want to do in the context of the questions that were raised above.

 

Bob Schor


 

Labview Version 8.5
Labview Version 8.6
Labview Version 2014
0 Kudos
Message 3 of 4
(2,329 Views)

Bob,

 

After some thought I am going for your solution with the separate networked PC for processing and displaying the data from the workstations. At the moment our client accesses the workstations saved data at various other locations for local analysis so having a separate PC to gather and manipulate the data would be straightforward. 

 

However I have asked if we could use one of their servers to send the workstation data to and then we access the stored data from there by the separate PC.  In my view this would be a more robust sytem with  a backup copy of all data from workstations being held on the server and the standalone PC accessing that as and when required. Its now been confirmed that the update rate is not that critical only that on the hour all values are correct being displayed by the standalone PC.

 

On a side issue the debate is now going on about the use of an Excel spreadsheet embeded in a labview vi (on a Tab) to display the data or Labview column graph. Labview graph looked good but text can only be rotated 90 deg.............. is nothing simple! Also several cycling screens showing various data including Microsoft Word files does not help.......

 

Thanks for your input on this Bob and sorry for delay in reply,

 

Jack

Labview Version 8.5
Labview Version 8.6
Labview Version 2014
0 Kudos
Message 4 of 4
(2,220 Views)