From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Next Steps - LabVIEW RIO Evaluation Kit

cancel
Showing results for 
Search instead for 
Did you mean: 

Understanding sbRIO storage

Hi,

The sbRIO9636 storage looks like a regular PC. for example the startup application is located on "C:/ni-rt/startup/" ect.

Is this FLASH?

What is it size?

How can I tell remain storage programmatically?

Is it safe to use this storage in my RT application?

How fast can I read/write to this storage? For example can a RT software create or modify a file every 1mS and save it on storage?

Will it ware out the storage (since I think FLASH drives have a limited read and write cycles)?

My main goal is to make rapid measurements and calculations and record results for a limited time. For example measurement once every 1mS for 10 minutes - this yields to 600,000 data points - it will be,lets say, a file between 0.6MB to 6MB (depending on the representation of data)

Then I intend to transfer the file to host PC and analyse it.

Is this a reasonable approach?

0 Kudos
Message 1 of 3
(7,568 Views)

Hi Hazkel,

This is a reasonable approach, but you may need to offload more often depending on file size, file type, and data type. For optimal performance, be sure to split your data acquisition loop and file write/transfer loop into separate processes. Separating the I/O task and disk access in this way allows your timed loop to run with “real-time” performance, meaning that it will always finish on time. Disk access is an 'unbounded' operation, so you can certainly acquire your data at 1mS, then buffer it and send to the other loop to modify the file less frequently. More detailed info can be found in Best Practices for Target FIle I/O with LabVIEW RT.

The eval kit is based off of the sbRIO-9636. The manual has lots of helpful info including that it has 512 MB of Nonvolatile Memory (where you are writing to) and 256 MB of RAM (system memory). Note there is also an SD Card slot that you can access for much more space, which shares the U:\, V:\, and W:\ drive letters with the USB port. Every USB or SD memory device that is plugged into an RT controller gets by default drive letter U:\. Every extra stick gets a n increasing letter (so V:\, W:\ etc..). I wouldn't be too concerned about wearing out the drive, but here's a best practices document on extending its life.

Here is one approach to checking remaining disk size programmatically and changing behavior if space is running low:

Or you can monitor the total amount of Primary Disk Capacity or Primary Disk Free   using the System Configuration API property node (bottom two entries):

Hope this helps!

Deborah

Deborah Burke
NI Hardware and Drivers Product Manager
Certified LabVIEW Architect
0 Kudos
Message 2 of 3
(6,190 Views)

You are just great! thanks a lot.

0 Kudos
Message 3 of 3
(6,190 Views)