X20 system modules • Other functions • X20CM4810
X20 system User's Manual 3.10
2203
4.26.2.6.3.3 Buffer upload procedure
Before a buffer can be uploaded from the X20CM4810 module, it must first be locked on the module. This can be
done by setting RequestBufferLock01 = 1. The upload can only begin once the buffers have been locked by setting
BufferLockValid01 = 1. If an FFT buffer is being uploaded, it is important to check the asynchronous parameters
CorrFFTRaw01-04 and CorrEnvelope01-04.
If a velocity buffer is being uploaded, it only contains values if the EnableVelocityCalculation bit is set for the re-
spective channel; otherwise, 0 is output. The EnableVelocityCalculation bit can be configured in the "SensorCon-
fig01" register.
A buffer first needs to be requested from the module via the buffer FlatStream (Tx direction). This means:
■
BufferTxByte01: Value 0x83 (frame end and 3 byes are valid)
■
BufferTxByte02: The request buffer from the module
■
BufferTxByte03: High byte of the number of the values to be read (per 4-byte value)
■
BufferTxByte04: Low byte of the number of the values to be read (per 4-byte value)
The sequence is subsequently increased by 1. Once the module has confirmed the sequence, it is important to set
the number of valid bytes to 0 in BufferTxByte since the module would otherwise interpret this as a new request.
The module can temporarily store up to 2 consecutive requests.
As soon as the module receives the request, it begins streaming the requested number of values from the specified
buffer via the buffer FlatStream (Rx direction). Values are always transferred in 16.16 fixed data point format
(1/65536) with the high byte first. A scaling factor is transferred first. All other values are then multiplied by this factor.
With time signal buffers, the first value according to the scaling factor is always the oldest. With FFT buffers, the first
value according to the scaling factor is always 0 Hz. FFT buffers are only valid from the configured MinFrequency
to the configured MaxFrequency of the respective signal (raw or envelope) and the respective channel.
For the time and frequency intervals of individual values, see the "MinFrequencyRaw01" or "MinFrequencyEnve-
lope01" register.
RequestBufferLock01 must be set to 1 throughout the entire uploading process. Once the requested buffers have
been uploaded from the module, the lock can be reset. In the module, the buffers are then once again filled with
Buffer number (Dec)
Chan-
nel 1
Chan-
nel 2
Chan-
nel 3
Chan-
nel 4
Buffer
Max. values, 4 bytes each
9
11
13
15
Raw signal
(filtered to "MaxFrequencyRaw01")
8193
1)
25
27
29
31
Envelope signal
(filtered to "MinFrequencyEnvelope01")
8193
66
70
74
78
FFT amplitude spectrum raw velocity signal
(filtered to "MaxFrequencyRaw01")
4097
67
71
75
79
FFT amplitude spectrum raw acceleration signal
(filtered to "MaxFrequencyRaw01")
4097
82
86
90
94
FFT amplitude spectrum envelope velocity signal
(filtered to "MinFrequencyEnvelope01")
4097
83
87
91
95
FFT amplitude spectrum envelope acceleration signal
(filtered to "MinFrequencyEnvelope01")
4097
1)
The first value in the buffer is the scaling factor.
In special applications it may be necessary to upload larger buffers.
In the SensorConfig01 register, a buffer length of 8192 or 65535 bytes can be configured using bit 14. This makes
it possible to read the raw signal and acceleration signal (buffer number 9, 11, 13, 15, 25, 27, 29 and 31) using
65535 values, including the scaling factor, from the module. However, the FFT buffers also include 4097 values
including a scaling factor and refer to the previous 8192 of the 65535 values of the raw or envelop signal.
After locking the buffer for the upload (RequestBufferLock01) until the next locking, it is necessary to wait until the
longest buffer is filled again. If the buffer tries to lock again before this time elapses, it is prevented by the module
until after the buffer is filled.
Summary of Contents for X20 System
Page 2: ......