Description
The DAFNE orbit is acquired by 4 front-end DEVILs (364, 365, 366, 367) and post processed by the DEVIL204.
The basic elements created by the 4 front-end DEVILs are:
ORBRAK063 (364)
ORBRAK071 (365)
ORBRAK070 (366)
ORBRAK066 (367)
and the final element created by the DEVIL204 is:
GOD**001
The DEVIL204, besides the two conventional GOD**001_STA and GOD**001_DYN forks, builds also a circular buffer of data (containing the actual real-time X and Y orbit projections) accessible in the VME address space. To have this data also available on non-VME processors, a dedicated proxy constantly reads the GOD**001_STA and GOD**001_DYN forks, as well as the circular buffer from VME, and transfers them to memcached.
Source
[DEVIL364, 365, 366, 367] > [DEVIL204] > [Orbit_Proxy]
Requirements
Key name | Source | Write freq. [Hz] | Data size [byte] | Throughput | Fomat | Notes |
---|---|---|---|---|---|---|
GOD**001_STA | Orbit_Proxy | - | 2624 | - | typeDef | LV cluster [flattened to str] |
GOD**001_DYN | Orbit_Proxy | 10 | 46 | 0.45 | typeDef | LV cluster [flattened to str] |
ORBP*DAT_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
ORBE*DAT_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
ORBP*AVG_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
ORBE*AVG_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
ORBP*VAR_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
ORBE*VAR_BUF | Orbit_Proxy | 10 | 1024 | 20 | 2D [DBL] | 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] |
Key name | Source | Write freq. [Hz] | Data size [byte] | Throughput | Fomat | Notes |
---|---|---|---|---|---|---|
GOD**002_STA | DEVIL704 | - | 2624 | - | typeDef | LV cluster [flattened to str] |
GOD**002_DYN | DEVIL704 | 5.5 | 46 | 0.25 | typeDef | LV cluster [flattened to str] |
ORB-E-64-INFO ORB-P-64-INFO | DEVIL704 | - | ~2500 | - | Json document | Static description of the orbit with name, ascissa and index of each element. |
ORBE*NOD_BUF | DEVIL704 | 5.5 | 1024 | 5.5 | Electrons: average@N of the orbit (hor + ver) 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] 64-components array with moving average calculated on the last N samples. | |
ORBP*NOD_BUF | DEVIL704 | 5.5 | 1024 | 5.5 | Positrons: average@N of the orbit (hor + ver) | |
ORBE*STD_BUF | DEVIL704 | 5.5 | 1024 | 5.5 | Electrons: Std. Dev. of the average@N orbit (hor + ver) 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] 64-components array with standard deviation calculated on the last N samples. | |
ORBP*STD_BUF | DEVIL704 | 5.5 | 1024 | 5.5 | Positrons: Std. Dev. of the average@N orbit (hor + ver) 2 rows of 64 DBL (row 0: hor, row 1: ver) [flattened to str] 64-components array with standard deviation calculated on the last N samples. | |
ORBE*USR_BUF | DEVIL704 | 5.5 | ~700 | 3.9 | Electrons: average@8 of the orbit ready for users (hor + ver) 2 rows of m DBL (row 0: hor, row 1: ver) [flattened to str] m-components array with moving average calculated on the last 8 samples. The number of components "m" (typ. 44) depends on the current BPMs setup and the hardware and user masks. The array is ready for viewing. | |
ORBP*USR_BUF | DEVIL704 | 5.5 | ~700 | 3.9 | Positrons: average@8 of the orbit ready for users (hor + ver) 2 rows of m DBL (row 0: hor, row 1: ver) [flattened to str] m-components array with moving average calculated on the last 8 samples. The number of components "m" (typ. 44) depends on the current BPMs setup and the hardware and user masks. The array is ready for viewing. |
Total throughput
kbyte/s | Mbit/s |
---|---|
~30 | ~0.23 |
Keys usage
Example of LabVIEW code to use at level 1 to unflatten and extract the two projections of the orbit: