[etherlab-users] how to preserve nvram writing cycles when SDO settings are needed at startup ?

Sebastien Blanchet blanchet at iram.fr
Fri Jul 25 12:16:12 CEST 2014


Hi,

How to preserve NVRAM writing cycles when SDO settings are needed at startup?

Context:
I have an encoder interface (Beckhoff EL5021), and I have to change the setting
for the parameter "Analog Resolution" @ 0x8001:11
This parameter is stored in a NVRAM, that supports about 100,000 writing cycles 
(according to Beckhoff Support Engineers)

There are at least two ways to setup this parameter:
1- using command "ethercat upload/download"
    pros: it preserves NVRAM writing cycles because I can check the value before 
changing it.
    cons: it must be repeated again when replacing modules

2- using ecrt_slave_config_sdoXX to define a list of SDO command to apply on startup
    pros: nothing special to do when replacing modules
    cons: it wastes NVRAM writing cycles, when applied on an already configured 
module (for example, when program restarts)

For the moment I am thinking about running a dedicated script based on ethercat 
upload/download (method #1) before starting the ethercat control program, but it 
is very inelegant, so I wonder if someone have a better idea.

Note: in TwinCAT, Beckhoff uses a smart start-up list: the new values are 
written only if needed.

best regards
-- 
Sebastien BLANCHET



More information about the Etherlab-users mailing list