LeCroy Satellite#
Name |
LeCroy |
---|---|
Description |
Satellite controlling a LeCroy oscilloscope using the LeCrunch library |
Language |
Python |
Description#
This satellite uses the LeCrunch3 library by Nicola Minafra,
based on LeCrunch2 and LeCrunch, to control and fetch each channel waveform from a LeCroy Waverunner
series scope.
Using a TCP connection to the scope’s Waverunner
software, it provides a simplified method to start a single- or sequenced-waveform acquisition
and transmits it through the CDTP to Constellation receivers.
Requirements#
This satellite requires the [lecroy]
component, which can be installed with:
pip install ConstellationDAQ[lecroy]
pip install --no-build-isolation -e .[lecroy]
Supported devices#
This satellite is compatible with a broad class of Teledyne-LeCroy
devices, and was successfully tested with a Waverunner 8104
.
The device to be controlled by this satellite can be accessed via the ip_address
and port
configuration parameters.
By default the port is set to 1861 by the embedded acquisition software.
To set up the TCP transfer, run the “Utilities Setup” from the “Utilities” menu, switch to the “Remote” tab and enable the “TCPIP (VICP)” option. The IP address to use in this satellite will be provided beside the selection box.
Parameters#
Parameter |
Description |
Type |
Default Value |
---|---|---|---|
|
Scope IP address |
String |
- |
|
TCP port to connect to |
Integer |
1861 |
|
Timeout before giving up on frames retrieval |
Float |
5s |
|
Number of triggers to combine in a readout in sequence mode |
Integer |
1 |
Metrics#
Metric |
Description |
Value Type |
Metric Type |
Interval |
---|---|---|---|---|
|
Number of triggers collected so far |
Integer |
|
10s |
Custom Commands#
Command |
Description |
Arguments |
Return Value |
Allowed States |
---|---|---|---|---|
|
Retrieve the number of triggers collected so far |
- |
Integer |
any |
Output data format#
Data are packed as follows, using double precision floats for each word:
Group |
Word |
Description |
---|---|---|
Global header |
Trigger times |
Absolute timing of each trigger in the sequence |
Number of samples |
Number of samples in all triggers in all sequences (run-level) |
|
Channel header |
Trigger offsets |
Channel-level timing offset (with respect to the absolute timing in the global header) of each individual trigger in the sequence |
Wave array |
Number of samples * number of triggers/sequence double precision floats providing the sample amplitude (in V) for the given time slice |
Additionally, a beginning-of-run event is generated with the following attributes:
Parameter |
Description |
Type |
---|---|---|
|
Absolute timing for the first trigger |
String |
|
Sampling period (in s) |
Float |
|
Comma-separated list of channels enabled in readout |
[Integers] |
|
Number of triggers combined in a readout in sequence mode |
Integer |
Framework Parameters#
This satellite inherits the following framework parameters from its base classes:
Parameters inherited from DataSender
#
None
Parameters inherited from Satellite
#
Autonomous Operation#
Parameter |
Type |
Description |
Default Value |
---|---|---|---|
|
Role name |
Role this satellite should take in the Constellation. Accepted values are |
|
Transition Orchestration#
Parameters to control autonomous transition orchestration of satellites:
Parameter |
Type |
Description |
Default Value |
---|---|---|---|
|
Unsigned integer |
Timeout in seconds to wait for all conditions to be satisfied for conditional transitioning |
|
|
List of strings |
List of canonical names of remote satellites for conditional transitioning in |
- |
|
List of strings |
List of canonical names of remote satellites for conditional transitioning in |
- |
|
List of strings |
List of canonical names of remote satellites for conditional transitioning in |
- |
|
List of strings |
List of canonical names of remote satellites for conditional transitioning in |
- |
|
List of strings |
List of canonical names of remote satellites for conditional transitioning in |
- |
Framework Metrics#
This satellite inherits the following framework metrics from its base classes:
Metrics inherited from DataSender
#
None
Metrics inherited from Satellite
#
None