LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Retentive memory on Compact RIO product

Hello everybody,

 

I'm developing an industrial application with a real time system cRIO.

 

In case of power down or a simply shutdown, the next boot I need to load data as set before.

 

I want to avoid heavy disk writing to preserve system life and CPU resources, so I'd like to know if there is a sort of retentive memory on theese systems.

 

The system should work stand alone without communicate with other devices.

 

Regards.

 

0 Kudos
Message 1 of 9
(2,822 Views)

Hi Marcello,

 

to store data you need to use files on the internal "disk" of the cRIO. That's how they manage "retentive" data as is used on "standard" PACs...

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 2 of 9
(2,817 Views)

Ok but this way I should access to the internal disk one time per second or more..I'm afraid of this way is a little deleterious for the disk considering that the device should have a life of at least 15 years!

 

I'm quite new to cRIO systems, so what do you mean with "internal disk"? Is the disk you can usually access (addressing with path C:\..) or is the memory wich the program reside?

0 Kudos
Message 3 of 9
(2,807 Views)

Hi Marcello,

 

the cRIOs use a flash drive to store data as well as all OS relevant files. Your program is stored in the flash drive too.

On execution the program is loaded into RAM.

 

Please look up the specifications of your cRIO. You will find two values specifying flash size as well as RAM size!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 4 of 9
(2,798 Views)

Do you really need to update the values on disk once per second? How often does the main controller send new commands to the cRIO? Can you update the saved values only when it receives a new setpoint?

 

Alternatively, could you add a small battery and relay to the power system so you could detect a power loss, write to disk, and then shutdown?

0 Kudos
Message 5 of 9
(2,777 Views)

Yes of course I need to update settings just when they change, but we talk about hundreds parameters, so I dont't know how to check that changes.

 

All the parameters are sended via Modbus TCP and in RT module there are no "event interrupt structures".

0 Kudos
Message 6 of 9
(2,587 Views)

Hi marcello,

 

you can easily use user-defined events in the RealTime target!

Best regards,
GerdW


using LV2016/2019/2021 on Win10/11+cRIO, TestStand2016/2019
0 Kudos
Message 7 of 9
(2,578 Views)

@marcello.zoppetti wrote:

Yes of course I need to update settings just when they change, but we talk about hundreds parameters, so I dont't know how to check that changes.


How are you storing the parameters in memory? If they're in a large cluster or array, you can simply periodically check if the current value is the same as some previous value (how frequently you check this is up to you - it can be a time interval, or each time you receive a new set of parameters).

0 Kudos
Message 8 of 9
(2,573 Views)

Yes I will program a user-defined event even if I don't know how much resources needs..I have to try.

 

Actually I have all the parameters on shared variables because they are linked to modbus server..I could collect them addresses and check periodically which of them are changed.

 

Thanks to all!

0 Kudos
Message 9 of 9
(2,561 Views)