GMD Provider server
GMDPROV server works now on the PBD DAQ. The servers stores the GMD data 4 channels for 60 shots (6 sec):
- PBD.PHFLUX/TUNNEL.ENPULSEIC
- PBD.PHFLUX/BDA.ENPULSEIC
- PBD.PHFLUX/TUNNEL.ENERGYPULSE.FF
- PBD.PHFLUX/BDA.ENERGYPULSE.FF
One can retrieve the channels by sending a request to the corresponding properties including the desired eventID:
- TTF2.DAQ/PBD.GMDPROV/GMDPROV/TUNNEL.REQ.ENPULSEIC
- TTF2.DAQ/PBD.GMDPROV/GMDPROV/BDA.REQ.ENPULSEIC
- TTF2.DAQ/PBD.GMDPROV/GMDPROV/TUNNEL.REQ.ENPULSE.SPECT
- TTF2.DAQ/PBD.GMDPROV/GMDPROV/BDA.REQ.ENPULSE.SPECT
general features
- if 0 is sent then the most recent data will be retrieved.
- if there is no eventID in the server the reply will contain error: ill format.
- All channels are returned as DATA_SPECTRUM type with the original channel name in description and eventID in status.
* in case TTF2.DAQ/PBD.GMDPROV/GMDPROV/TUNNEL.REQ.ENPULSEIC TTF2.DAQ/PBD.GMDPROV/GMDPROV/BDA.REQ.ENPULSEIC the spectrum contains one float. For the others channels the number of entries depends on the number of bunches.
Spectrum:
- channel: 'TTF2.DAQ/PBD.GMDPROV/GMDPROV/BDA.REQ.ENPULSE.SPECT'
- data: [1x1 struct]
- timestamp: 1.4374e+09
- type: 'SPECTRUM'
- error: ''"
the .data contains
- comment_len: 1
- comment_val: ''
- tm: 1.4371e+09
- s_start: 0
- s_inc: 0.1000
- status: 0
- d_spect_array_len: 8192
- d_spect_array_val: [8192x1 double]
Sample programs
- GMD_Provider_doocsread_write_V0.m: Example how not to use doocs write and read (runs on GNU/Linux Ubuntu 16.04 with DOOCS binaries installed only, the results are not what you might expect)
- gmdProviderTest.m: Deprecated example Matlab script to read GMD data synchronised by pulse ID. Runs on any OS, requires Matlab and jDOOCS libraries, which are no longer maintained or runnable.
For working examples see the code maintained on Bitbucket.