From 978ac89aa981a7ccb3b34ba09f767ee8f8b96997 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20K=C3=A4berich?= Date: Thu, 22 Oct 2020 17:13:36 +0200 Subject: [PATCH] Remember/set default values for signal generator/spectrum analyzer --- Documentation/UserManual/manual.pdf | Bin 1032129 -> 1031607 bytes Documentation/UserManual/manual.tex | 2 +- .../PC_Application/Generator/generator.cpp | 24 +- Software/PC_Application/Generator/generator.h | 1 + .../Generator/signalgenwidget.cpp | 5 + .../Generator/signalgenwidget.h | 3 +- .../SpectrumAnalyzer/spectrumanalyzer.cpp | 59 ++- .../SpectrumAnalyzer/spectrumanalyzer.h | 6 +- Software/PC_Application/VNA/vna.cpp | 1 - Software/PC_Application/VNA/vna.h | 2 - Software/PC_Application/mode.cpp | 1 + Software/PC_Application/mode.h | 2 + Software/PC_Application/preferences.cpp | 40 ++ Software/PC_Application/preferences.h | 24 +- Software/PC_Application/preferencesdialog.ui | 415 +++++++++++++----- 15 files changed, 429 insertions(+), 156 deletions(-) diff --git a/Documentation/UserManual/manual.pdf b/Documentation/UserManual/manual.pdf index 56e8cc55eb6ff726a54cd0a2ebd7ab6823d456dc..ce21abdbe6ea1bf53a3fca2a8485b2853e92b722 100644 GIT binary patch delta 46199 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 delta 46673 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 diff --git a/Documentation/UserManual/manual.tex b/Documentation/UserManual/manual.tex index 0a02c64..061fdc0 100644 --- a/Documentation/UserManual/manual.tex +++ b/Documentation/UserManual/manual.tex @@ -314,7 +314,7 @@ The control elements are mostly identical to the vector network analyzer mode, a \end{center} \begin{itemize} \item \textbf{RBW:} Resolution bandwidth. Lower values allow differentiating between signals at closer frequencies. Lower values also result in a reduced noisefloor but significantly increase sweep time. -\item \textbf{Window:} Window type used in the DFT of the final IF. Can be left at "Kaiser" for almost all applications. +\item \textbf{Window:} Window type used in the DFT of the final IF. \item \textbf{Detector:} For every point displayed, several measurements are taken. The detector type determines which one of these measurement will be displayed. \item \textbf{Signal ID:} Signal identification. This can help to determine whether a displayed signal is actually present or the result from internal imaging. When enabled, the \vna{} changes the LO frequencies for every measurement point and observes how the final IF signal is affected by that. This removes almost all of the mirror images but at the cost of increased sweep time. diff --git a/Software/PC_Application/Generator/generator.cpp b/Software/PC_Application/Generator/generator.cpp index fa3659d..866ae37 100644 --- a/Software/PC_Application/Generator/generator.cpp +++ b/Software/PC_Application/Generator/generator.cpp @@ -1,13 +1,35 @@ #include "generator.h" +#include Generator::Generator(AppWindow *window) : Mode(window, "Signal Generator") { central = new SignalgeneratorWidget(); + + // set initial values + if(pref.Startup.RememberSweepSettings) { + QSettings s; + central->setFrequency(s.value("GeneratorFrequency", pref.Startup.Generator.frequency).toDouble()); + central->setLevel(s.value("GeneratorLevel", pref.Startup.Generator.level).toDouble()); + } else { + central->setFrequency(pref.Startup.Generator.frequency); + central->setLevel(pref.Startup.Generator.level); + } + finalize(central); connect(central, &SignalgeneratorWidget::SettingsChanged, this, &Generator::updateDevice); } +void Generator::deactivate() +{ + // store current settings + QSettings s; + auto settings = central->getDeviceStatus(); + s.setValue("GeneratorFrequency", static_cast(settings.frequency)); + s.setValue("GeneratorLevel", static_cast((double) settings.cdbm_level / 100.0)); + Mode::deactivate(); +} + void Generator::initializeDevice() { updateDevice(); @@ -16,7 +38,7 @@ void Generator::initializeDevice() void Generator::updateDevice() { if(!window->getDevice()) { - // can't updat if not connected + // can't update if not connected return; } // TODO comment in once status is filled with valid values diff --git a/Software/PC_Application/Generator/generator.h b/Software/PC_Application/Generator/generator.h index fe123d9..b884b89 100644 --- a/Software/PC_Application/Generator/generator.h +++ b/Software/PC_Application/Generator/generator.h @@ -8,6 +8,7 @@ class Generator : public Mode { public: Generator(AppWindow *window); + void deactivate() override; void initializeDevice() override; private slots: void updateDevice(); diff --git a/Software/PC_Application/Generator/signalgenwidget.cpp b/Software/PC_Application/Generator/signalgenwidget.cpp index 25ce633..2ae95de 100644 --- a/Software/PC_Application/Generator/signalgenwidget.cpp +++ b/Software/PC_Application/Generator/signalgenwidget.cpp @@ -68,3 +68,8 @@ void SignalgeneratorWidget::setLevel(double level) SettingsChanged(); } +void SignalgeneratorWidget::setFrequency(double frequency) +{ + ui->frequency->setValue(frequency); +} + diff --git a/Software/PC_Application/Generator/signalgenwidget.h b/Software/PC_Application/Generator/signalgenwidget.h index 4e91aff..909d474 100644 --- a/Software/PC_Application/Generator/signalgenwidget.h +++ b/Software/PC_Application/Generator/signalgenwidget.h @@ -21,8 +21,9 @@ public: signals: void SettingsChanged(); -private slots: +public slots: void setLevel(double level); + void setFrequency(double frequency); private: Ui::SignalgeneratorWidget *ui; }; diff --git a/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.cpp b/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.cpp index f31a117..b5a9636 100644 --- a/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.cpp +++ b/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.cpp @@ -43,7 +43,6 @@ SpectrumAnalyzer::SpectrumAnalyzer(AppWindow *window) : Mode(window, "Spectrum Analyzer"), - pref(window->getPreferenceRef()), central(new TileWidget(traceModel)) { averages = 1; @@ -130,7 +129,7 @@ SpectrumAnalyzer::SpectrumAnalyzer(AppWindow *window) tb_acq->addWidget(eBandwidth); tb_acq->addWidget(new QLabel("Window:")); - auto cbWindowType = new QComboBox(); + cbWindowType = new QComboBox(); cbWindowType->addItem("None"); cbWindowType->addItem("Kaiser"); cbWindowType->addItem("Hann"); @@ -143,7 +142,7 @@ SpectrumAnalyzer::SpectrumAnalyzer(AppWindow *window) tb_acq->addWidget(cbWindowType); tb_acq->addWidget(new QLabel("Detector:")); - auto cbDetector = new QComboBox(); + cbDetector = new QComboBox(); cbDetector->addItem("+Peak"); cbDetector->addItem("-Peak"); cbDetector->addItem("Sample"); @@ -156,7 +155,7 @@ SpectrumAnalyzer::SpectrumAnalyzer(AppWindow *window) }); tb_acq->addWidget(cbDetector); - auto cbSignalID = new QCheckBox("Signal ID"); + cbSignalID = new QCheckBox("Signal ID"); connect(cbSignalID, &QCheckBox::toggled, [=](bool enabled) { settings.SignalID = enabled; SettingsChanged(); @@ -185,19 +184,18 @@ SpectrumAnalyzer::SpectrumAnalyzer(AppWindow *window) qRegisterMetaType("SpectrumResult"); // Set initial sweep settings - // TODO -// if(pref.Startup.RememberSweepSettings) { -// LoadSweepSettings(); -// } else { - settings.f_start = 950000000; - settings.f_stop = 1050000000; + if(pref.Startup.RememberSweepSettings) { + LoadSweepSettings(); + } else { + settings.f_start = pref.Startup.SA.start; + settings.f_stop = pref.Startup.SA.stop; ConstrainAndUpdateFrequencies(); - SetRBW(10000); + SetRBW(pref.Startup.SA.RBW); settings.pointNum = 1001; - settings.WindowType = 1; - settings.Detector = 0; - settings.SignalID = 0; -// } + cbWindowType->setCurrentIndex(pref.Startup.SA.window); + cbDetector->setCurrentIndex(pref.Startup.SA.detector); + cbSignalID->setChecked(pref.Startup.SA.signalID); + } finalize(central); } @@ -365,23 +363,24 @@ void SpectrumAnalyzer::ConstrainAndUpdateFrequencies() void SpectrumAnalyzer::LoadSweepSettings() { - // TODO -// QSettings s; -// settings.f_start = s.value("SweepStart", pref.Startup.DefaultSweep.start).toULongLong(); -// settings.f_stop = s.value("SweepStop", pref.Startup.DefaultSweep.stop).toULongLong(); -// ConstrainAndUpdateFrequencies(); -// SetIFBandwidth(s.value("SweepBandwidth", pref.Startup.DefaultSweep.bandwidth).toUInt()); -// SetPoints(s.value("SweepPoints", pref.Startup.DefaultSweep.points).toInt()); -// SetSourceLevel(s.value("SweepLevel", pref.Startup.DefaultSweep.excitation).toDouble()); + QSettings s; + settings.f_start = s.value("SAStart", pref.Startup.SA.start).toULongLong(); + settings.f_stop = s.value("SAStop", pref.Startup.SA.stop).toULongLong(); + ConstrainAndUpdateFrequencies(); + SetRBW(s.value("SARBW", pref.Startup.SA.RBW).toUInt()); + settings.pointNum = 1001; + cbWindowType->setCurrentIndex(s.value("SAWindow", pref.Startup.SA.window).toInt()); + cbDetector->setCurrentIndex(s.value("SADetector", pref.Startup.SA.detector).toInt()); + cbSignalID->setChecked(s.value("SASignalID", pref.Startup.SA.signalID).toBool()); } void SpectrumAnalyzer::StoreSweepSettings() { - // TODO -// QSettings s; -// s.setValue("SweepStart", static_cast(settings.f_start)); -// s.setValue("SweepStop", static_cast(settings.f_stop)); -// s.setValue("SweepBandwidth", settings.if_bandwidth); -// s.setValue("SweepPoints", settings.points); -// s.setValue("SweepLevel", (double) settings.cdbm_excitation / 100.0); + QSettings s; + s.setValue("SAStart", static_cast(settings.f_start)); + s.setValue("SAStop", static_cast(settings.f_stop)); + s.setValue("SARBW", settings.RBW); + s.setValue("SAWindow", settings.WindowType); + s.setValue("SADetector", settings.Detector); + s.setValue("SASignalID", static_cast(settings.SignalID)); } diff --git a/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.h b/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.h index d64db7b..b67f020 100644 --- a/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.h +++ b/Software/PC_Application/SpectrumAnalyzer/spectrumanalyzer.h @@ -6,6 +6,8 @@ #include "appwindow.h" #include "mode.h" #include "CustomWidgets/tilewidget.h" +#include +#include class SpectrumAnalyzer : public Mode { @@ -39,8 +41,6 @@ private: void LoadSweepSettings(); void StoreSweepSettings(); - Preferences &pref; - Protocol::SpectrumAnalyzerSettings settings; unsigned int averages; TraceModel traceModel; @@ -48,6 +48,8 @@ private: Averaging average; TileWidget *central; + QCheckBox *cbSignalID; + QComboBox *cbWindowType, *cbDetector; signals: void dataChanged(); diff --git a/Software/PC_Application/VNA/vna.cpp b/Software/PC_Application/VNA/vna.cpp index db99eb8..ef683d1 100644 --- a/Software/PC_Application/VNA/vna.cpp +++ b/Software/PC_Application/VNA/vna.cpp @@ -44,7 +44,6 @@ VNA::VNA(AppWindow *window) : Mode(window, "Vector Network Analyzer"), - pref(window->getPreferenceRef()), central(new TileWidget(traceModel)) { averages = 1; diff --git a/Software/PC_Application/VNA/vna.h b/Software/PC_Application/VNA/vna.h index 66eaa6f..0aa89fb 100644 --- a/Software/PC_Application/VNA/vna.h +++ b/Software/PC_Application/VNA/vna.h @@ -48,8 +48,6 @@ private: void LoadSweepSettings(); void StoreSweepSettings(); - Preferences &pref; - Protocol::SweepSettings settings; unsigned int averages; TraceModel traceModel; diff --git a/Software/PC_Application/mode.cpp b/Software/PC_Application/mode.cpp index 977c981..5b05762 100644 --- a/Software/PC_Application/mode.cpp +++ b/Software/PC_Application/mode.cpp @@ -10,6 +10,7 @@ QButtonGroup* Mode::modeButtonGroup = nullptr; Mode::Mode(AppWindow *window, QString name) : window(window), + pref(window->getPreferenceRef()), name(name), central(nullptr) { diff --git a/Software/PC_Application/mode.h b/Software/PC_Application/mode.h index d747c53..eeb558d 100644 --- a/Software/PC_Application/mode.h +++ b/Software/PC_Application/mode.h @@ -29,6 +29,8 @@ protected: std::set toolbars; std::set docks; + Preferences &pref; + private: static Mode *activeMode; static QWidget *cornerWidget; diff --git a/Software/PC_Application/preferences.cpp b/Software/PC_Application/preferences.cpp index 32ee833..e4457b1 100644 --- a/Software/PC_Application/preferences.cpp +++ b/Software/PC_Application/preferences.cpp @@ -22,6 +22,14 @@ PreferencesDialog::PreferencesDialog(Preferences *pref, QWidget *parent) : ui->StartupSweepPoints->setEnabled(false); ui->StartupSweepLevel->setEnabled(false); ui->StartupSweepBandwidth->setEnabled(false); + ui->StartupGeneratorFrequency->setEnabled(false); + ui->StartupGeneratorLevel->setEnabled(false); + ui->StartupSAStart->setEnabled(false); + ui->StartupSAStop->setEnabled(false); + ui->StartupSARBW->setEnabled(false); + ui->StartupSAWindow->setEnabled(false); + ui->StartupSADetector->setEnabled(false); + ui->StartupSASignalID->setEnabled(false); }); connect(ui->StartupSweepDefault, &QPushButton::clicked, [=](){ ui->StartupSweepStart->setEnabled(true); @@ -29,6 +37,14 @@ PreferencesDialog::PreferencesDialog(Preferences *pref, QWidget *parent) : ui->StartupSweepPoints->setEnabled(true); ui->StartupSweepLevel->setEnabled(true); ui->StartupSweepBandwidth->setEnabled(true); + ui->StartupGeneratorFrequency->setEnabled(true); + ui->StartupGeneratorLevel->setEnabled(true); + ui->StartupSAStart->setEnabled(true); + ui->StartupSAStop->setEnabled(true); + ui->StartupSARBW->setEnabled(true); + ui->StartupSAWindow->setEnabled(true); + ui->StartupSADetector->setEnabled(true); + ui->StartupSASignalID->setEnabled(true); }); ui->StartupSweepStart->setUnit("Hz"); ui->StartupSweepStart->setPrefixes(" kMG"); @@ -36,6 +52,14 @@ PreferencesDialog::PreferencesDialog(Preferences *pref, QWidget *parent) : ui->StartupSweepStop->setPrefixes(" kMG"); ui->StartupSweepBandwidth->setUnit("Hz"); ui->StartupSweepBandwidth->setPrefixes(" k"); + ui->StartupGeneratorFrequency->setUnit("Hz"); + ui->StartupGeneratorFrequency->setPrefixes(" kMG"); + ui->StartupSAStart->setUnit("Hz"); + ui->StartupSAStart->setPrefixes(" kMG"); + ui->StartupSAStop->setUnit("Hz"); + ui->StartupSAStop->setPrefixes(" kMG"); + ui->StartupSARBW->setUnit("Hz"); + ui->StartupSARBW->setPrefixes(" k"); // Page selection connect(ui->treeWidget, &QTreeWidget::currentItemChanged, [=](QTreeWidgetItem *current, QTreeWidgetItem *) { @@ -66,6 +90,14 @@ PreferencesDialog::PreferencesDialog(Preferences *pref, QWidget *parent) : p->Startup.DefaultSweep.bandwidth = ui->StartupSweepBandwidth->value(); p->Startup.DefaultSweep.points = ui->StartupSweepPoints->value(); p->Startup.DefaultSweep.excitation = ui->StartupSweepLevel->value(); + p->Startup.Generator.frequency = ui->StartupGeneratorFrequency->value(); + p->Startup.Generator.level = ui->StartupGeneratorLevel->value(); + p->Startup.SA.start = ui->StartupSAStart->value(); + p->Startup.SA.stop = ui->StartupSAStop->value(); + p->Startup.SA.RBW = ui->StartupSARBW->value(); + p->Startup.SA.window = ui->StartupSAWindow->currentIndex(); + p->Startup.SA.detector = ui->StartupSADetector->currentIndex(); + p->Startup.SA.signalID = ui->StartupSASignalID->isChecked(); p->Acquisition.alwaysExciteBothPorts = ui->AcquisitionAlwaysExciteBoth->isChecked(); p->Acquisition.suppressPeaks = ui->AcquisitionSuppressPeaks->isChecked(); accept(); @@ -92,6 +124,14 @@ void PreferencesDialog::setInitialGUIState() ui->StartupSweepBandwidth->setValueQuiet(p->Startup.DefaultSweep.bandwidth); ui->StartupSweepPoints->setValue(p->Startup.DefaultSweep.points); ui->StartupSweepLevel->setValue(p->Startup.DefaultSweep.excitation); + ui->StartupGeneratorFrequency->setValue(p->Startup.Generator.frequency); + ui->StartupGeneratorLevel->setValue(p->Startup.Generator.level); + ui->StartupSAStart->setValue(p->Startup.SA.start); + ui->StartupSAStop->setValue(p->Startup.SA.stop); + ui->StartupSARBW->setValue(p->Startup.SA.RBW); + ui->StartupSAWindow->setCurrentIndex(p->Startup.SA.window); + ui->StartupSADetector->setCurrentIndex(p->Startup.SA.detector); + ui->StartupSASignalID->setChecked(p->Startup.SA.signalID); ui->AcquisitionAlwaysExciteBoth->setChecked(p->Acquisition.alwaysExciteBothPorts); ui->AcquisitionSuppressPeaks->setChecked(p->Acquisition.suppressPeaks); diff --git a/Software/PC_Application/preferences.h b/Software/PC_Application/preferences.h index aa26efe..7c2bdde 100644 --- a/Software/PC_Application/preferences.h +++ b/Software/PC_Application/preferences.h @@ -45,6 +45,18 @@ public: double bandwidth; double excitation; } DefaultSweep; + struct { + double frequency; + double level; + } Generator; + struct { + double start; + double stop; + double RBW; + int window; + int detector; + bool signalID; + } SA; } Startup; struct { bool alwaysExciteBothPorts; @@ -56,7 +68,7 @@ private: QString name; QVariant def; }; - const std::array descr = {{ + const std::array descr = {{ {&Startup.ConnectToFirstDevice, "Startup.ConnectToFirstDevice", true}, {&Startup.RememberSweepSettings, "Startup.RememberSweepSettings", false}, {&Startup.DefaultSweep.start, "Startup.DefaultSweep.start", 1000000.0}, @@ -64,8 +76,16 @@ private: {&Startup.DefaultSweep.points, "Startup.DefaultSweep.points", 501}, {&Startup.DefaultSweep.bandwidth, "Startup.DefaultSweep.bandwidth", 1000.0}, {&Startup.DefaultSweep.excitation, "Startup.DefaultSweep.excitation", -10.00}, + {&Startup.Generator.frequency, "Startup.Generator.frequency", 1000000000.0}, + {&Startup.Generator.level, "Startup.Generator.level", -10.00}, + {&Startup.SA.start, "Startup.SA.start", 950000000.0}, + {&Startup.SA.stop, "Startup.SA.stop", 1050000000.0}, + {&Startup.SA.RBW, "Startup.SA.RBW", 10000.0}, + {&Startup.SA.window, "Startup.SA.window", 1}, + {&Startup.SA.detector, "Startup.SA.detector", 0}, + {&Startup.SA.signalID, "Startup.SA.signalID", true}, {&Acquisition.alwaysExciteBothPorts, "Acquisition.alwaysExciteBothPorts", true}, - {&Acquisition.suppressPeaks, "Acquisition.suppressPeaks", true}, + {&Acquisition.suppressPeaks, "Acquisition.suppressPeaks", true}, }}; }; diff --git a/Software/PC_Application/preferencesdialog.ui b/Software/PC_Application/preferencesdialog.ui index 6588806..14e3a3f 100644 --- a/Software/PC_Application/preferencesdialog.ui +++ b/Software/PC_Application/preferencesdialog.ui @@ -6,8 +6,8 @@ 0 0 - 646 - 543 + 619 + 730 @@ -67,32 +67,35 @@ 16777215 + + 0 + - + - - - When starting the application... - - - - - - Autoconnect to the first device available - - - - - - - Set sweep settings to... - - - - - + + + + + When starting the application... + + - + + + Autoconnect to the first device available + + + + + + + Set to... + + + + + @@ -115,114 +118,294 @@ - - - - - - - - Start: + + + + Qt::Horizontal - - - - - - - - - Stop: + + + 40 + 20 + - - - - - - - - - Level: - - - - - - - dbm - - - -42.000000000000000 - - - -10.000000000000000 - - - 0.250000000000000 - - - - - - - Points: - - - - - - - 1 - - - 4501 - - - 501 - - - - - - - IF bandwitdh: - - - - - + - - - Qt::Horizontal + + + Vector Network Analyzer - - - 40 - 20 - + + + + + Start: + + + + + + + + + + Stop: + + + + + + + + + + Simulus level: + + + + + + + dbm + + + -42.000000000000000 + + + 0.000000000000000 + + + 0.250000000000000 + + + + + + + Points: + + + + + + + 1 + + + 4501 + + + 501 + + + + + + + IF bandwitdh: + + + + + + + + + + + + + Signal Generator - + + + + + Frequency: + + + + + + + + + + Output level: + + + + + + + dbm + + + -42.000000000000000 + + + 0.000000000000000 + + + 0.250000000000000 + + + + + + + + + + Spectrum Analyzer + + + + + + Start: + + + + + + + + + + Stop: + + + + + + + + + + RBW: + + + + + + + + + + Window: + + + + + + + + None + + + + + Kaiser + + + + + Hann + + + + + Flat Top + + + + + + + + Detector: + + + + + + + + +Peak + + + + + -Peak + + + + + Sample + + + + + Normal + + + + + Average + + + + + + + + Signal Identification: + + + + + + + + + + + + - - - + + + + + + Qt::Vertical + + + + 17 + 37 + + + + + - + - Qt::Vertical + Qt::Horizontal - 20 - 40 + 48 + 20 @@ -244,7 +427,7 @@ - <html><head/><body><p>Due to limited fractional divider settings, the source and 1.LO PLLs are not able to reach every frequency exactly. At some specific frequencies this causes the final IF to shift. At these frequencies there will be a positive or negative peak in the trace measurement that is not actually there.<br/><br/>Checking this option shifts the 2.LO for points where this could be an issue. This will remove the peaks but slow down the sweep slightly.</p></body></html> + <html><head/><body><p>Due to limited fractional divider settings, the source and 1.LO PLLs are not able to reach every frequency exactly. At some specific frequencies this causes the final IF to shift. At these frequencies there will be a positive or negative peak in the trace measurement that is not actually there.<br/><br/>Checking this option shifts the 2.LO for points where this could be an issue. This will remove the peaks but slows down the sweep slightly.</p></body></html> Suppress invalid peaks