SEPIA
Software documentation for the APEX SEPIA receivers
|
A virtual class representing a cartridge. More...
#include <cartridge.h>
Public Slots | |
void | resetBand () |
Reset cartridge to warm-up conditions. More... | |
void | run () |
Start up a cartridge. More... | |
virtual void | initBand (bool withDeflux)=0 |
Initialize a band. More... | |
virtual void | shutdownBand ()=0 |
Shut down a band. More... | |
virtual void | tuneLO (double ghz) |
Tune the LO using tuning table. More... | |
virtual void | tuneMixer (Mixer::Polarization pol) |
Tune a mixer. More... | |
void | tuneSystem (double ghz) |
Tune both LO and mixers to a given LO frequency using tuning table. More... | |
virtual void | demagnetize (Mixer::Polarization pol, Mixer::Element sis)=0 |
De-magnetize a mixer element. More... | |
virtual void | deflux (Mixer::Polarization pol)=0 |
De-flux both mixer elements of given polarization. More... | |
void | disable () |
Disable band. | |
void | enable () |
Enable band. | |
void | demagnetizeMixers (bool p0s1, bool p0s2, bool p1s1, bool p1s2) |
De-magnetize specified mixer elements. More... | |
void | defluxMixers (bool p0, bool p1) |
De-flux both specified polarizations. More... | |
void | setLNADefaults () |
Set LNA voltages to the values given in configuration file. | |
void | cleanup () |
Clean up cartridge operations as part of band shutdown. More... | |
void | updateYIG (int value) |
Set a new YIG value. More... | |
void | changeSynthFreq (double ghz) |
Set synthesizer frequency. More... | |
void | changeSynthLevel (double dBm) |
Set synthesizer level. More... | |
void | switchSynth (bool flag) |
Turn Synthesizer on/off. More... | |
void | IVscan (Mixer::Polarization pol, Mixer::Element sis, double from, double to, int steps, bool withPower) |
Perform an IV scan on one mixer. More... | |
void | scanMixers (double from, double to, int steps) |
Perform an IV scan on all mixers. More... | |
void | resetSisVoltages () |
Set all SiS voltages to 0.0 mV in the recommended way. | |
void | resetCoilCurrents () |
Set all magnetic coil currents to 0.0 mA in the recommended way. | |
void | resetLNAs () |
Sets all LNA drain voltages and currents to zero. | |
void | setCoilCurrents () |
Set magnetic coil currents to the values given in configuration file. | |
void | setPaGateVoltages () |
Set PA gate voltages to prescribed values in configuration file. | |
void | showCurve (Mixer::Polarization pol, Mixer::Element sis, QVector< double > x, QVector< double > y, QVector< double > z, const QString &xlab=QString::fromUtf8("mixer bias [mV]"), const QString &ylab=QString::fromUtf8("mixer current [µA]")) |
Signal GUI to display results from IV scan. More... | |
bool | pllControl (float *vcorr, float *vlock) |
Check status of PLL. More... | |
void | cryoControl (bool flag) |
Turn cryo control loop on/off. More... | |
void | preparePLL (bool upper) |
Prepare PLL for locking. More... | |
void | addChannel (Sepia::Channel channel) |
void | removeChannel (Sepia::Channel channel) |
float | getRealValue (QString name) |
Get a float value via its name. More... | |
bool | getFlag (QString name) |
Get a boolean value via its name. More... | |
unsigned short | getWord (QString name) |
Get a 16 bit unsigned integer via its name. More... | |
Signals | |
void | demagnetized (Mixer::Polarization pol, Mixer::Element sis, bool ok) |
A signal emitted when the mixer element is de-magnetized . More... | |
void | defluxed (Mixer::Polarization pol, bool ok) |
A signal emitted when a mixer polarization is defluxed. More... | |
void | faulted (Sepia::ErrorCode code) |
A signal emitted when an error has occured. | |
void | pllStatus (bool locked, float Vlock, float Vcorr) |
Signal the PLL signal. More... | |
void | updateMonitorItem (const QString &name, DWORD addr, float v, char unit, int gain) |
Send latest reading of a monitor item. More... | |
void | percentDone (int percent) |
Report how many percentof an operation is done. More... | |
void | statusMessage (const QString &msg) |
Send a status message. More... | |
void | synthConnected (bool flag) |
A signal emitted to indicate synthesizer connection status. More... | |
void | synthSwitched (bool on) |
A signal emitted to indicate synthesizer status. More... | |
void | synthFreqChanged (double ghz) |
A signal emitted when synthesizer frequency changed. More... | |
void | synthLevelChanged (double dbm) |
A signal emitted when synthesizer level changed. More... | |
void | yigChanged (int value) |
A signal emitted when YIG setting changed. More... | |
void | pointReady (Mixer::Polarization pol, Mixer::Element sis, int i, double mV, double mA, double mW) |
A signal emitted when a new point of an IV scan has been taken. More... | |
void | traceReady (Mixer::Polarization pol, Mixer::Element sis, QVector< double > x, QVector< double > y, QVector< double > z, const QString &xlab, const QString &ylab) |
A signal emitted when a new trace, i.e. data from a mixer scan, is available. More... | |
void | LOtuned (bool ok) |
A signal emitted when LO tuning is done. More... | |
void | LOmodified (bool flag) |
A signal emitted when LO tuning was modified. More... | |
void | newCmdLOfrequency (double ghz) |
Signal a new commanded LO frequency. More... | |
void | newCmdHarmonic (int harmonic) |
Signal a new harmonic for LO tuning. More... | |
void | mixerTuned (Mixer::Polarization pol, bool ok) |
A signal emitted when mixer tuning is done. More... | |
void | systemTuned (bool ok) |
A signal emitted when system tuning (i.e. both LO and mixer) is done. More... | |
void | newMixerCurrent (Mixer::Polarization pol, Mixer::Element sis, float mA) |
Signal a new actual mixer current. More... | |
void | newCmdMixerBias (Mixer::Polarization pol, Mixer::Element sis, float mV) |
Signal a new commanded mixer bias. More... | |
void | newMixerBias (Mixer::Polarization pol, Mixer::Element sis, float mV) |
Signal a new actual mixer bias. More... | |
void | newMixerPower (Mixer::Polarization pol, Mixer::Element sis, float mW) |
Signal a new total power reading. More... | |
void | newCoilCurrent (Mixer::Polarization pol, Mixer::Element sis, float mA) |
Signal a new actual coil current. More... | |
void | newCmdCoilCurrent (Mixer::Polarization pol, Mixer::Element sis, float mA) |
Signal a new commanded coil current. More... | |
void | newDrainVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float V) |
Signal a new actual drain voltage for an LNA. More... | |
void | newCmdDrainVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float V) |
Signal a new commanded drain voltage for an LNA. More... | |
void | newDrainCurrent (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float mA) |
Signal a new actual drain current for an LNA. More... | |
void | newCmdDrainCurrent (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float mA) |
Signal a new commanded drain current for an LNA. More... | |
void | newGateVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float V) |
Signal a new actual gate voltage for an LNA. More... | |
void | newCmdPaDrainVoltage (Mixer::Polarization pol, float V) |
Signal a new actual gate voltage for a given PA. More... | |
void | stabilize (double T) |
A signal emitted when temperature stabilization should be turned on. | |
Public Member Functions | |
Cartridge (const QString &name, Sepia::Channel channel, double WCAmultiplier, double YIGmultiplier, double lowerYigLimit, double upperYigLimit, QObject *parent=0) | |
Construct a Cartridge object. More... | |
virtual | ~Cartridge () |
Destructor. | |
void | setMonitorChannels (const QStringList &channels) |
Define the list of CANbus addressable items which should be monitored. More... | |
double | lowerLimit () const |
Return the lower limit of the LO tuning range in GHz. More... | |
double | upperLimit () const |
Return the upper limit of the LO tuning range in GHz. More... | |
float | biasOffset (int pol, int sis) const |
Return the bias offset. More... | |
float | currentOffset (int pol, int sis) const |
Return the current offset. More... | |
float | coilCurrentPreset (int pol, int sis) const |
Return the default setting of the coil current. More... | |
float | gateVoltagePreset (int pol) const |
Return the default setting of the gate voltage. More... | |
QVector< double > | biasTrace (int pol, int sis) const |
Retrieve the results for the mixer bias from the latest IV scan. More... | |
QVector< double > | currentTrace (int pol, int sis) const |
Retrieve the results for the mixer current from the latest IV scan. More... | |
QVector< double > | powerTrace (int pol, int sis) const |
Retrieve the results for the total power from the latest IV scan. More... | |
int | getYIG () const |
Get the lates YIG setting. More... | |
double | synthFreq () const |
Get the current synthesizer frequency. More... | |
double | synthLevel () const |
Get the current synthesizer level setting. More... | |
float | sisCurrent (Mixer::Polarization pol, Mixer::Element sis) |
Get the mixer current. More... | |
float | sisVoltage (Mixer::Polarization pol, Mixer::Element sis) |
Get the mixer bias. More... | |
float | sisPower (Mixer::Polarization pol, Mixer::Element sis) |
Get the mixer total power. More... | |
float | drainVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage) |
Get the drain voltage of an LNA. More... | |
float | drainCurrent (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage) |
Get the drain current of an LNA. More... | |
float | gateVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage) |
Get the gate voltage of an LNA. More... | |
float | paGateVoltage (Mixer::Polarization pol) |
Get the gate voltage of a PA. More... | |
float | paDrainVoltage (Mixer::Polarization pol) |
Get the drain voltage of a PA. More... | |
float | paDrainCurrent (Mixer::Polarization pol) |
Get the drain current of a PA. More... | |
void | setCoilCurrent (Mixer::Polarization pol, Mixer::Element sis, float mA, bool fast=false) |
Set a new coil current value of a mixer element. More... | |
void | setSisVoltage (Mixer::Polarization pol, Mixer::Element sis, float mV, bool fast=false) |
Set a new bias voltage of a mixer element. More... | |
bool | sisOpenLoop (Mixer::Polarization pol, Mixer::Element sis) |
Get the open loop mode of a mixer element. More... | |
void | setSisOpenLoop (Mixer::Polarization pol, Mixer::Element sis, bool flag) |
Switch a mixer element to open loop mode. More... | |
void | setDrainVoltage (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage stage, float V) |
Set the drain voltage for given LNA. More... | |
void | setDrainCurrent (Mixer::Polarization pol, Mixer::Element sis, LNA::Stage, float mA) |
Set the drain current for given LNA. More... | |
void | setLNAenable (Mixer::Polarization pol, Mixer::Element sis, bool flag) |
Enable LNA operation. More... | |
void | setPaGateVoltage (Mixer::Polarization pol, float V) |
Set the gate voltage for given PA. More... | |
void | setPaDrainVoltage (Mixer::Polarization pol, float V) |
Set the drain voltage for given PA. More... | |
void | setAmcADrainVoltage (float V) |
Set the AMC-A drain voltage. More... | |
void | setAmcBDrainVoltage (float V) |
Set the AMC-B drain voltage. More... | |
void | setAmcEDrainVoltage (float V) |
Set the AMC-E drain voltage. More... | |
void | setAmcAGateVoltage (float V) |
Set the AMC-A gate voltage. More... | |
void | setAmcBGateVoltage (float V) |
Set the AMC-B gate voltage. More... | |
void | setAmcEGateVoltage (float V) |
Set the AMC-E gate voltage. More... | |
void | setAmcDMultVoltage (float V) |
Set the AMC-MULT_D voltage. More... | |
float | amcAGateVoltage () |
Get the current AMC_A gate voltage. More... | |
float | amcADrainVoltage () |
Get the current AMC_A drain voltage. More... | |
float | amcADrainCurrent () |
Get the current AMC_A drain current. More... | |
float | amcBGateVoltage () |
Get the current AMC_B gate voltage. More... | |
float | amcBDrainVoltage () |
Get the current AMC_B drain voltage. More... | |
float | amcBDrainCurrent () |
Get the current AMC_B drain current. More... | |
float | amcEGateVoltage () |
Get the current AMC_E gate voltage. More... | |
float | amcEDrainVoltage () |
Get the current AMC_E drain voltage. More... | |
float | amcEDrainCurrent () |
Get the current AMC_E drain current. More... | |
float | amcMultiDVoltage () |
Get the current AMC-MULT_D voltage. More... | |
float | amcMonitor5V () |
Get the AMC 5V monitor signal. More... | |
float | coilCurrent (Mixer::Polarization pol, Mixer::Element sis) |
Get a coil current reading. More... | |
float | coilVoltage (Mixer::Polarization pol, Mixer::Element sis) |
Get a coil voltage reading. More... | |
float | heaterCurrent (Mixer::Polarization pol) |
Get a reading of the heater current. More... | |
float | mixerTemperature (Mixer::Polarization pol) |
Get a reading of the mixer temperature. More... | |
void | heaterState (Mixer::Polarization pol, bool on) |
Set the heater state. More... | |
void | toggleHeater (Mixer::Polarization pol) |
Toggle the heater state, i.e. switch off, then on. More... | |
float | pllLockVoltage () |
Get the PLL lock voltage. More... | |
float | pllCorrVoltage () |
Get the PLL correction voltage. More... | |
float | pllRefTotalPower () |
Get the PLL reference total power. More... | |
float | pllIfTotalPower () |
Get the PLL IF total power. More... | |
float | pllAssemblyTemperature () |
Get the PLL assembly temperature. More... | |
bool | LOlockLatch () |
Get the state of the PLL lock latch. More... | |
void | LOclearLatch () |
Clear the PLL lock latch. | |
void | setNullPllIntegrator (bool flag) |
Set/clear null PLL integrator. More... | |
void | setPllLoopBandwidth (bool flag) |
Set/clear PLL loop bandwidth. More... | |
void | setPllSideband (bool lower) |
Set PLL sideband. More... | |
void | setCoarseTune (unsigned short value) |
update YIG oscillator setting More... | |
virtual void | tuneLO (double ghz, int harmonic)=0 |
Tune local oscillator. More... | |
virtual void | tuneMixer (Mixer::Polarization pol, float bias[2], float Igoal, float power, float maxPower)=0 |
Tune a mixer. More... | |
void | tuneSynthesizer (double WCAfreq, int harmonic, bool upper) |
Pure virtual method to tune the synthesize. More... | |
Protected Member Functions | |
void | setFlag (QString name, bool flag) |
Set a boolean value via its name. More... | |
void | setRealValue (QString name, float v) |
Set a float value via its name. More... | |
void | setWord (QString name, unsigned short w) |
Set a 16 bit value via its name. More... | |
Friends | |
class | BiasSetter |
class | CoilSetter |
A virtual class representing a cartridge.
A virtual class to describe an abstract SEPIA receiver.
This is an abstract class from which each of the three SEPIA bands inherit, namely Sepia180, Sepia345 and Sepia660. It implements many oprations which are in common for all three bands, but has only pure virtual functions for operations which may differ in their implementation between bands, currently:
Cartridge::Cartridge | ( | const QString & | name, |
Sepia::Channel | channel, | ||
double | WCAmultiplier, | ||
double | YIGmultiplier, | ||
double | lowerYigLimit, | ||
double | upperYigLimit, | ||
QObject * | parent = 0 |
||
) |
Construct a Cartridge object.
The constructor will initialize band specific variables and will set up a QFileSystemWatcher for being notified of changes to the band specific settings file (sepiaXXX.conf), which reside in directory /home/apex/.config/APEX.
name | the object name to use, this will be visible from scripts. |
channel | the Sepia::Channel |
WCAmultiplier | |
YIGmultiplier | |
lowerYigLimit | the lower limit of the YIG oscillator in GHz |
upperYigLimit | the upper limit of the YIG oscillator in GHz |
parent | a pointer to the parent object |
|
slot |
Enable operations on an additional channel via CANbus.
|
inline |
Get the current AMC_A drain current.
|
inline |
Get the current AMC_A drain voltage.
|
inline |
Get the current AMC_A gate voltage.
|
inline |
Get the current AMC_B drain current.
|
inline |
Get the current AMC_B drain voltage.
|
inline |
Get the current AMC_B gate voltage.
|
inline |
Get the current AMC_E drain current.
|
inline |
Get the current AMC_E drain voltage.
|
inline |
Get the current AMC_E gate voltage.
|
inline |
Get the AMC 5V monitor signal.
|
inline |
Get the current AMC-MULT_D voltage.
|
inline |
Return the bias offset.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
inline |
Retrieve the results for the mixer bias from the latest IV scan.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
slot |
Set synthesizer frequency.
ghz | requested synthesizer frequency in GHz |
|
slot |
Set synthesizer level.
dBm | requested synthesizer level in dBm |
|
slot |
Clean up cartridge operations as part of band shutdown.
This slot is connected to the hardware thread's finished signal. It will
float Cartridge::coilCurrent | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get a coil current reading.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
inline |
Return the default setting of the coil current.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
float Cartridge::coilVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get a coil voltage reading.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
slot |
Turn cryo control loop on/off.
flag | true: turn on, false: turn off. |
|
inline |
Return the current offset.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
inline |
Retrieve the results for the mixer current from the latest IV scan.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
pure virtualslot |
De-flux both mixer elements of given polarization.
pol | the Mixer::Polarization to use |
|
signal |
A signal emitted when a mixer polarization is defluxed.
pol | the Mixer::Polarization to use |
ok | true, if operation succeeded |
|
slot |
De-flux both specified polarizations.
p0 | true, if POL0 should be de-fluxed |
p1 | true, if POL1 should be de-fluxed |
|
pure virtualslot |
De-magnetize a mixer element.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
signal |
A signal emitted when the mixer element is de-magnetized .
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
ok | true, if operation succeeded |
|
slot |
De-magnetize specified mixer elements.
p0s1 | true, if POL0 SIS1 should be de-magnetized |
p0s2 | true, if POL0 SIS2 should be de-magnetized |
p1s1 | true, if POL1 SIS1 should be de-magnetized |
p1s2 | true, if POL1 SIS2 should be de-magnetized |
float Cartridge::drainCurrent | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
LNA::Stage | stage | ||
) |
Get the drain current of an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
float Cartridge::drainVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
LNA::Stage | stage | ||
) |
Get the drain voltage of an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
float Cartridge::gateVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
LNA::Stage | stage | ||
) |
Get the gate voltage of an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
|
inline |
Return the default setting of the gate voltage.
pol | the Mixer::Polarization to use |
|
slot |
Get a boolean value via its name.
name | the shortName of the entry we want to read. |
|
slot |
Get a float value via its name.
name | the shortName of the entry we want to read. |
|
slot |
Get a 16 bit unsigned integer via its name.
name | the shortName of the entry we want to read. |
|
inline |
Get the lates YIG setting.
float Cartridge::heaterCurrent | ( | Mixer::Polarization | pol | ) |
Get a reading of the heater current.
pol | the Mixer::Polarization to use |
void Cartridge::heaterState | ( | Mixer::Polarization | pol, |
bool | on | ||
) |
Set the heater state.
pol | the Mixer::Polarization to use |
on | true or false, for on and off, respectively |
|
pure virtualslot |
Initialize a band.
This is a pure virtual function, inherited by all sepiaXXX child classes. This function will
withDeflux | a boolean parameter specifying if defluxing should be performed, default is true. |
|
slot |
Perform an IV scan on one mixer.
pol | the used polarization: 0 or 1 |
sis | the used SIS element: 1 or 2 |
from | starting mixer bias in mV |
to | ending mixer bias in mV |
steps | number of samples to take. |
|
inline |
Get the state of the PLL lock latch.
|
signal |
A signal emitted when LO tuning was modified.
flag | true, tuning changed significantly and re-calibration is necessary |
|
signal |
A signal emitted when LO tuning is done.
ok | true, if tuning was successful |
|
inline |
Return the lower limit of the LO tuning range in GHz.
float Cartridge::mixerTemperature | ( | Mixer::Polarization | pol | ) |
Get a reading of the mixer temperature.
pol | the Mixer::Polarization to use |
|
signal |
A signal emitted when mixer tuning is done.
pol | the Mixer::Polarization which was tuned |
ok | true, if tuning was successful |
|
signal |
Signal a new commanded coil current.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mA |
|
signal |
Signal a new commanded drain current for an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
mA |
|
signal |
Signal a new commanded drain voltage for an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
V |
|
signal |
Signal a new harmonic for LO tuning.
harmonic | the new commanded harmonic |
|
signal |
Signal a new commanded LO frequency.
ghz | the commanded LO frequency in GHz |
|
signal |
Signal a new commanded mixer bias.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mV |
|
signal |
Signal a new actual gate voltage for a given PA.
pol | the Mixer::Polarization to use |
V |
|
signal |
Signal a new actual coil current.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mA |
|
signal |
Signal a new actual drain current for an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
mA |
|
signal |
Signal a new actual drain voltage for an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
V |
|
signal |
Signal a new actual gate voltage for an LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
V |
|
signal |
Signal a new actual mixer bias.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mV |
|
signal |
Signal a new actual mixer current.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mA |
|
signal |
Signal a new total power reading.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mW |
float Cartridge::paDrainCurrent | ( | Mixer::Polarization | pol | ) |
Get the drain current of a PA.
pol | the Mixer::Polarization to use |
float Cartridge::paDrainVoltage | ( | Mixer::Polarization | pol | ) |
Get the drain voltage of a PA.
pol | the Mixer::Polarization to use |
float Cartridge::paGateVoltage | ( | Mixer::Polarization | pol | ) |
Get the gate voltage of a PA.
pol | the Mixer::Polarization to use |
|
signal |
Report how many percentof an operation is done.
percent |
|
inline |
Get the PLL assembly temperature.
|
slot |
Check status of PLL.
vcorr | output: will receive current correction voltage |
vlock | output: will receive current lock voltage |
|
inline |
Get the PLL correction voltage.
|
inline |
Get the PLL IF total power.
|
inline |
Get the PLL lock voltage.
|
inline |
Get the PLL reference total power.
|
signal |
Signal the PLL signal.
locked | true: PLL is locked, false: PLL is unlocked |
Vlock | latest reading of the PLL lock voltage |
Vcorr | latest reading of the PLL correction voltaeg |
|
signal |
A signal emitted when a new point of an IV scan has been taken.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
i | index of the point taken (0..steps-1) |
mV | the bias voltage of this point |
mA | the mixer current of this point |
mW | the total power of this point |
|
inline |
Retrieve the results for the total power from the latest IV scan.
(This is not yet implemented, will return a vector with all zeros.)
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
slot |
Prepare PLL for locking.
upper | true: use upper sideband, false: use lower sideband |
|
slot |
Disable operations on a channel via CANbus.
|
slot |
Reset cartridge to warm-up conditions.
This method will
|
slot |
Start up a cartridge.
This slot is connected to the hardware thread's start signal. It will
|
slot |
Perform an IV scan on all mixers.
from | starting mixer bias in mV |
to | ending mixer bias in mV |
steps | number of samples to take. |
|
inline |
Set the AMC-A drain voltage.
V | the requested drain voltage in V |
|
inline |
Set the AMC-A gate voltage.
V | the requested gate voltage in V |
|
inline |
Set the AMC-B drain voltage.
V | the requested drain voltage in V |
|
inline |
Set the AMC-B gate voltage.
V | the requested gate voltage in V |
|
inline |
Set the AMC-MULT_D voltage.
V | the requested voltage in V |
|
inline |
Set the AMC-E drain voltage.
V | the requested drain voltage in V |
|
inline |
Set the AMC-E gate voltage.
V | the requested gate voltage in V |
|
inline |
update YIG oscillator setting
value | an integer (0-4095) defining a new commanded YIG setting |
void Cartridge::setCoilCurrent | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
float | mA, | ||
bool | fast = false |
||
) |
Set a new coil current value of a mixer element.
This method will set the mixer coil current to a new commanded value. Unless the parameter fast
is set to true
, this will happen in a safe way by performing the setting in small steps of 0.1 mA with a delay of 10 ms between steps.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mA | the requested coil current in mA |
fast | true if setting should occur in one step, default is false. |
void Cartridge::setDrainCurrent | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
LNA::Stage | stage, | ||
float | mA | ||
) |
Set the drain current for given LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
mA | the requested drain current in mA |
void Cartridge::setDrainVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
LNA::Stage | stage, | ||
float | V | ||
) |
Set the drain voltage for given LNA.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
stage | the LNA::Stage to use |
V | the requested drain voltage in V |
|
protected |
Set a boolean value via its name.
name | the shortName of the entry we want to set. |
flag | a boolean. |
void Cartridge::setLNAenable | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
bool | flag | ||
) |
Enable LNA operation.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
flag | enable (true) or disable (false) |
void Cartridge::setMonitorChannels | ( | const QStringList & | channels | ) |
Define the list of CANbus addressable items which should be monitored.
See function SEPIA::setupModel where a list of strings is set up in order to control which CANbus read access items should be monitored.
channels | a QStringList defining a list of channel names. |
|
inline |
Set/clear null PLL integrator.
flag | true to set, false to clear |
void Cartridge::setPaDrainVoltage | ( | Mixer::Polarization | pol, |
float | V | ||
) |
Set the drain voltage for given PA.
pol | the Mixer::Polarization to use |
V | the requested drain voltage in V |
void Cartridge::setPaGateVoltage | ( | Mixer::Polarization | pol, |
float | V | ||
) |
Set the gate voltage for given PA.
pol | the Mixer::Polarization to use |
V | the requested drain voltage in V |
|
inline |
Set/clear PLL loop bandwidth.
flag | true to set, false to clear |
|
inline |
Set PLL sideband.
lower | true: use lower sideband, false: use upper sideband |
|
protected |
Set a float value via its name.
name | the shortName of the entry we want to set. |
v | a 32-bit floating point value. |
void Cartridge::setSisOpenLoop | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
bool | flag | ||
) |
Switch a mixer element to open loop mode.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
flag | turn open loop on (true) or off (false) |
void Cartridge::setSisVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis, | ||
float | mV, | ||
bool | fast = false |
||
) |
Set a new bias voltage of a mixer element.
This method will set the mixer bias to a new commanded value. Unless the parameter fast
is set to true
, this will happen in a safe way by performing the setting in small steps of 0.1 mV.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
mV | the SIS bias in mV to set |
fast | true if setting should occur in one step, default is false. |
|
protected |
Set a 16 bit value via its name.
name | the shortName of the entry we want to set. |
w | a 16-bit unsigned integer. |
|
slot |
Signal GUI to display results from IV scan.
pol | the Mixer::Polarization to show |
sis | the Mixer::Element to show |
x | trace data for x-axis of resulting plot (typically bias voltage) |
y | trace data for y-axis of resulting plot (typically current) |
z | trace data for 2nd y-axis of resulting plot (typically power) |
xlab | label text for x-axis |
ylab | label text for y-axis |
|
pure virtualslot |
Shut down a band.
This is a pure virtual function, inherited by all sepiaXXX child classes. The function will reset SIS biases, coil currents and LNA settings.
float Cartridge::sisCurrent | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get the mixer current.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
bool Cartridge::sisOpenLoop | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get the open loop mode of a mixer element.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
float Cartridge::sisPower | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get the mixer total power.
(This is not yet implemented, will return value of zero.)
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
float Cartridge::sisVoltage | ( | Mixer::Polarization | pol, |
Mixer::Element | sis | ||
) |
Get the mixer bias.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
|
signal |
Send a status message.
msg | text string describing the new status |
|
slot |
Turn Synthesizer on/off.
flag | true: switch on, false: switch off |
|
signal |
A signal emitted to indicate synthesizer connection status.
flag | true: synthesizer is connected, false: synthesizer is disconnected |
|
inline |
Get the current synthesizer frequency.
|
signal |
A signal emitted when synthesizer frequency changed.
ghz | new actual frequency |
|
inline |
Get the current synthesizer level setting.
|
signal |
A signal emitted when synthesizer level changed.
dbm | new actual signal level |
|
signal |
A signal emitted to indicate synthesizer status.
on | true: synthesizer is on, false: synthesizer is off |
|
signal |
A signal emitted when system tuning (i.e. both LO and mixer) is done.
ok | true, if tuning was successful |
void Cartridge::toggleHeater | ( | Mixer::Polarization | pol | ) |
Toggle the heater state, i.e. switch off, then on.
pol | the Mixer::Polarization to use |
|
signal |
A signal emitted when a new trace, i.e. data from a mixer scan, is available.
pol | the Mixer::Polarization to use |
sis | the Mixer::Element to use |
x | the data for the x-axis of the plot, typically mixer bias |
y | the data for the y-axis of the plot, typically mixer current |
z | the data for the 2nd y-axis of the plot, typically mixer total power |
xlab | the text for labelling of the x-axis |
ylab | the text for labelling of the y-axis |
|
pure virtual |
Tune local oscillator.
This is a pure virtual function, inherited by all sepiaXXX child classes. This function will not use the tuning table, but use the given harmonic.
ghz | requested local oscillator frequency in GHz. |
harmonic | the harmonic of the synthesizer signal to be used |
|
virtualslot |
Tune the LO using tuning table.
This is a pure virtual function, inherited by all sepiaXXX child classes. This function will look up the harmonic to be used in the corresponding tuning table.
ghz | the requested LO frequency in GHz |
|
pure virtual |
Tune a mixer.
This is a pure virtual function, inherited by all sepiaXXX child classes. Tuning will use given values and will override values in the corresponding tuning table.
pol | the Mixer::Polarization of the mixer |
bias[] | the bias voltages to be used for the two mixer elements |
Igoal | the mixer current in mA to aim for |
power | the resulting LO power according to tuning table |
maxPower | the maximum allowed LO power |
|
virtualslot |
Tune a mixer.
This is a pure virtual function, inherited by all sepiaXXX child classes. Tuning will be done based on values in the corresponding tuning table.
pol | the polarization for which tuning is to be performed |
void Cartridge::tuneSynthesizer | ( | double | WCAfreq, |
int | harmonic, | ||
bool | upper | ||
) |
Pure virtual method to tune the synthesize.
WCAfreq | the frequency of the WCA in GHz |
harmonic | the harmonic of the synthesizer signal to be used |
upper | true: use upper sideband of the PLL, false: use lower sideband |
|
slot |
Tune both LO and mixers to a given LO frequency using tuning table.
ghz | the commanded LO frequency in GHz |
|
signal |
Send latest reading of a monitor item.
name | the short name of the item |
addr | the CANbus address of the item |
v | the actual value |
unit | a character designating the physical unit of the item |
gain | the gain factor to apply to the physical unit |
|
slot |
Set a new YIG value.
This method will
value | integer step to set (range 0 to 4095) |
|
inline |
Return the upper limit of the LO tuning range in GHz.
|
signal |
A signal emitted when YIG setting changed.
value | the new YIG seatting (as an integer step) |