LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Log data from 100's cRIO to server

hi

please suggest an architecture.

for receiving and  logging data in SQL standard server edition or citadel enterprise edition from 100's of cRIO.

the cRIO and servers are connected to same LAN network.

there are 50 number of double precision data sent from a single cRIO at 100 millisecond interval.

the cRIO will be sending data to server in asynchronous mode (no sync between CRIO)

1.how to receive and  log data efficiently to data base by keeping the network bandwidth utilisation minimum and no data loss?

2.Can Lab VIEW GUI used to fetch data from cRIO and dump to database?

3.Can OPC servers be used for this application?

0 Kudos
Message 1 of 4
(2,370 Views)

Let's say you have 100 cRIOs sending 50 Dbls 10 times a second, or at 500 points per second.  The following is easy -- set up a Network Stream from each cRIO to a "Clone" (a Pre-Allocated Reentrant VI launched with Start Asynchronous Call) and have the Clone spool the data to a designated file.  Once you start 100 Clones, each dedicated to one cRIO, you should be able to simply stream the data to 100 separate files.

 

What I'm less sure about is how to get the separate Data Streams into a single DataBase (I don't have much experience doing LabVIEW DataBase things) -- one way would be to do this in two steps, collect 100 data files, then have a second routine that reads the files and writes the data to a DataBase.  Clumsy, but then I don't know/use DataBases with LabVIEW ...

 

Bob Schor

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

Very interesting and challenging project!

 

Some comments:

 

A project like this requires a lot of inquiry AND testing. Test early and often.

For example, you don't need the hardware to test logging to the database.

 

Have you considered using EtherCAT expansion chassis? One cRIO can handle several of them.
If possible, this would save a LOT of money and greatly reduce the number of data streams needed.

 

Some questions to consider:


-Do you need to Start and Stop the cRIOs from the host PC?
-What is displayed on the host PC? What controls are needed?
-Do you need timestamps with the data?
-Do you need Status info from the cRIOs in case of errors?

 

----------------------------------------------------------------------------------------------------------------
Founding (and only) member of AUITA - the Anti UI Thread Association.
----------------------------------------------------------------------------------------------------------------
0 Kudos
Message 3 of 4
(2,291 Views)

hi...

ether cat cannot be used in this project because out of 100 cRIO if any network problem. Or controller failure will affect the whole cRIO and process however redundant the network architecture is. every control should be stand alone unit

 

Do you need to Start and Stop the cRIOs from the host PC?

no it works continuously  for 24*365 days


-What is displayed on the host PC? What controls are needed?

Host PC displays a few (say 50 No's) of process values  at a time

 A few control (say 5 No's of configuration parameter for process) .The update rate for configuration parameter is weekly or daily not so often. Mainly monitoring and logging of data is required


-Do you need timestamps with the data?

yes time stamped data is required.in case of network failures the controller should log data into controller memory and control the process. Later on when network is cleared the controller should sync the data with data base.


-Do you need Status info from the cRIOs in case of errors?

yes health monitoring of all cRIO are required .Per hour memory consumption, CPU usage, Connectivity etc. Alarms should be generated in server and logged if there is any abnormality in controller .utility for offline controllers should be there

 

 

 

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