You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 7 Next »

Document status
DRAFT
Document owner
DesignerAlessandro Stecchi
DevelopersAlessandro Stecchi
QA

Description

Wall Current Monitor

Static Fork

DBFile example
#WCMT*001
@HCI(S)[DI32,abc,HU32]
0,WCMT*001,0
@VMEMAP(S)[HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32]
0,48,80,48,200,400,200,100000,200000,100000
@ADCMODULE(A)[abc,A16M,DU32,DU32]
CALIBRAT,E3FF6000,0,1
SIGNALS_,E3FF6000,1,1
@SYSTEM(S)[abc]
/u2/dcs/source_linux/0_classes/WCM/code/wcproto_server.sh

Dynamic Fork

DBFile example
#WCMT*001
@HCI(S)[(DBL),DI32,DI32,HI32,DU32,DU32,DI32,TF,TF,TF,TF]
WCMT*001,0,000,0,0,1000,0,1,0,1,0
@VMEMAP(S)[HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32,HU32]
0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
@SYSTEM(S)[DI16,DI16,DBL:4:9,DBL:4:9]
0,0,0.0:0.1:0.2:0.3:0.4:0.5:0.6:0.7:0.8:1.0:1.1:1.2:1.3:1.4:1.5:1.6:1.7:1.8:2.0:2.1:2.2:2.3:2.4:2.5:2.6:2.7:2.8:3.0:3.1:3.2:3.3:3.4:3.5:3.6:3.7:3.8,10.0:10.1:10.2:10.3:10.4:10.5:10.6:10.7:10.8:11.0:11.1:11.2:11.3:11.4:11
.5:11.6:11.7:11.8:12.0:12.1:12.2:12.3:12.4:12.5:12.6:12.7:12.8:13.0:13.1:13.2:13.3:13.4:13.5:13.6:13.7:13.8

WCM Acquisition Arrays

The WCM class has two live buffers of acquired data: one for the monitors crossed by the elecrons beam and one for the monitors crossed by the positrons beam.
Each buffer is a LabVIEW 2D-array DBL.

General information on LabVIEW 2D-arrays

LabVIEW 2D-arrays are written in memcached as two I32 numbers (number of rows and number o columns) followed by a series of DBL numbers (ordered row by row). The following example, reports the representation of a 2-rows, 3-cols array with the values: row 0 = [0,1,2], row 1 = [10,11,12]
Example of 2D array (3 columns, 2 rows):

|< #rows >|< #cols >|        a00        |        a01        |        a02        |        a10        |        a11        |        a12        |
                    |                          first row                        |                          last row                         |
|---------|---------|-------------------|-------------------|-------------------|-------------------|-------------------|-------------------|
 0000 0002 0000 0003 0000 0000 0000 0000 3FF0 0000 0000 0000 4000 0000 0000 0000 4024 0000 0000 0000 4026 0000 0000 0000 4028 0000 0000 0000

Specific information on WCM 2D-arrays

In the WCM class case, the two 2-D arrays dimesions are: #rows = 4, #cols=9, so both arrays begin with:

|< #rows >|< #cols >|      2D array     | ...
                    |    row=0, col=0   | ...
|---------|---------|-------------------| ...
 0000 0004 0000 0009 XXXX XXXX XXXX XXXX| ...

The two WCM arrays are written, one after the other, at the end of the dynamic fork, after the two I16 values "mode" and "status". Each array consists of (4 * 9) = 36 DBL components = 288 byte, plus the two I32 leading values for the two dimensions, for a total of 296 byte.

  • "mode" I32 (0=positrons, 1=electrons) at offset 10910 [byte]
  • "status" I32 (0=LSP, 1=LBT, 2=LTA, 3=AMR / LSP+AMR) at offset 11110 [byte]
  • First array starting at offset 11310 [byte] 
  • Second array starting at offset 40910 [byte]

... write here more info on array content ...


Details


  • No labels