FAQ/034 KSM-500 - kProgram: kProgram compile error for KAM/MEM/003 due to an excessive number of parameters logged in the memory
August 18, 2014
kProgram reports an error when trying to compile a project with the memory module KAM/MEM/003 due to an excessive number of parameters logged in the memory: ACRA ERROR :: ModuleID(60742):Chassis=00-Slot=06 ( J8 )-Type=0742- Selector=00 Module 60742 has an invalid value of 24402 for 'number of parameters in acq cycle' Max value allowed is 16376
How is this issue overcome?
This problem happens because the KAM/MEM/003 module uses a buffer of 16K (16376) Words to log data into the CompactFlash Card. In each acquisition cycle the parameters are read from the backplane and stored in the 16K buffer for later storage to the CompactFlash Card. When trying to Compile a project in which more than 16K Parameters are to be logged into the memory module per acquisition cycle, the Compiler (Kc) will give the above error message and stop compilation. This problem occurs more often when using long acquisition cycles (even at low sampling frequencies), since more parameters have to be stored in the buffer during the acquisition cycle – e.g. logging 200 parameters at a moderate/slow rate of 100 samples/second results in 200samples x 100Hz = 20000 samples/second. If the acquisition cycle is 1 second, the number of parameters to be stored in the MEM buffer per acquisition cycle is higher than the maximum of 16K allowed, therefore Kc will report an error. Typically this will occur when there is a big difference between the fastest and slowest sample in a system.
To fix this problem two solutions are possible:
- Reduce the number of parameters or sampling rate of the parameters to be logged in the MEM
- Reduce the Acquisition Cycle
Usually the second solution is advisable since it will allow the user to record the required number of parameters at the desired sampling rate. In the previous example (20000 parameters/second) if the Acquisition Cycle is 500ms, only 10000 parameters will be stored in the buffer each Acquisition Cycle and the software will be able to compile the project without errors. If slow parameters are defining the slow acquisition cycle the solution is to over sample these to shorten the acquisition cycle.