Skip to content

Commit 9e7e7ca

Browse files
committed
Enable ammeter
1 parent 6d6ac6f commit 9e7e7ca

File tree

2 files changed

+20
-19
lines changed

2 files changed

+20
-19
lines changed

README.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
1-
# scpidev
1+
# scpidev
2+
3+
Very simple data logger for Keysight 34461A DMM.
4+

src/scpidev/main.cc

Lines changed: 16 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -141,23 +141,23 @@ int main()
141141
output_log.flush();
142142

143143
SCPIDevice voltmeter ("voltmeter", QHostAddress (kVoltmeterIP), 5025, "log.v");
144-
//SCPIDevice ammeter ("ammeter", QHostAddress (kAmmeterIP), 5025, "log.a");
144+
SCPIDevice ammeter ("ammeter", QHostAddress (kAmmeterIP), 5025, "log.a");
145145

146146
std::cout << "Configuring for test..." << std::endl;
147147
voltmeter.send ("DISPLAY:TEXT \"Configuring for test...\"");
148148
voltmeter.flush();
149-
//ammeter.send ("DISPLAY:TEXT \"Configuring for test...\"");
150-
//ammeter.flush();
149+
ammeter.send ("DISPLAY:TEXT \"Configuring for test...\"");
150+
ammeter.flush();
151151

152152
configure_voltmeter (voltmeter);
153-
//configure_ammeter (ammeter);
153+
configure_ammeter (ammeter);
154154

155155
std::cout << "TCP warmup..." << std::endl;
156156
auto kTCPWarmupMessageCommand = "DISPLAY:TEXT \" TCP warmup... \"";
157157
voltmeter.send (kTCPWarmupMessageCommand);
158158
voltmeter.flush();
159-
//ammeter.send (kTCPWarmupMessageCommand);
160-
//ammeter.flush();
159+
ammeter.send (kTCPWarmupMessageCommand);
160+
ammeter.flush();
161161

162162
double initial_voltage = 0.0;
163163
double initial_current = 0.0;
@@ -166,22 +166,22 @@ int main()
166166
for (int i = 0; i < kACFrequencyHz / kNPLC; ++i)
167167
{
168168
voltmeter.send ("INITIATE");
169-
//ammeter.send ("INITIATE");
169+
ammeter.send ("INITIATE");
170170

171171
initial_voltage = voltmeter.ask ("FETCH?").toDouble();
172-
//initial_current = ammeter.ask ("FETCH?").toDouble();
172+
initial_current = ammeter.ask ("FETCH?").toDouble();
173173
}
174174

175175
auto kTestMessageCommand = "DISPLAY:TEXT \"Test in progress (voltage)...\"";
176176
voltmeter.send (kTestMessageCommand);
177-
//ammeter.send (kTestMessageCommand);
177+
ammeter.send (kTestMessageCommand);
178178

179179
// Reset:
180180
voltmeter.send ("ABORT");
181-
//ammeter.send ("ABORT");
181+
ammeter.send ("ABORT");
182182
// Start measuring:
183183
voltmeter.send ("INITIATE");
184-
//ammeter.send ("INITIATE");
184+
ammeter.send ("INITIATE");
185185

186186
double start_timestamp = now();
187187
double auto_zero_timestamp = start_timestamp - kAutoZeroPeriodSeconds - 1.0;
@@ -208,18 +208,18 @@ int main()
208208
while (g_quit_signal.load() == false)
209209
{
210210
auto voltage = voltmeter.ask ("FETCH?").toDouble();
211-
auto current = 0.0;//ammeter.ask ("FETCH?").toDouble();
211+
auto current = ammeter.ask ("FETCH?").toDouble();
212212

213213
++samples_number;
214214

215215
// Auto-zero and temperature read:
216216
if (initiate_timestamp - auto_zero_timestamp >= kAutoZeroPeriodSeconds)
217217
{
218218
voltmeter.send ("SENSE:VOLTAGE:DC:ZERO:AUTO ONCE");
219-
//ammeter.send ("SENSE:CURRENT:DC:ZERO:AUTO ONCE");
219+
ammeter.send ("SENSE:CURRENT:DC:ZERO:AUTO ONCE");
220220

221221
voltmeter_temperature = voltmeter.ask ("SYSTEM:TEMPERATURE?").toDouble();
222-
ammeter_temperature = 0.0;//ammeter.ask ("SYSTEM:TEMPERATURE?").toDouble();
222+
ammeter_temperature = ammeter.ask ("SYSTEM:TEMPERATURE?").toDouble();
223223

224224
prev_initiate_timestamp = now();
225225
auto_zero_timestamp = prev_initiate_timestamp;
@@ -232,7 +232,7 @@ int main()
232232

233233
// Initiate single measurement:
234234
voltmeter.send ("INITIATE");
235-
//ammeter.send ("INITIATE");
235+
ammeter.send ("INITIATE");
236236

237237
// Timestamp @ INITIATE command:
238238
initiate_timestamp = now();
@@ -282,8 +282,6 @@ int main()
282282
out += QString (" U = %1 V\n").arg (important (ls (voltage_corrected_filtered)));
283283
out += QString (" I = %1 A\n").arg (important (ls (current_filtered)));
284284
out += QString (" P = %1 W\n").arg (important (ls (power_corrected_filtered)));
285-
// TODO probably remove
286-
out += QString (" ∫P dt = %1 Ws = %2 Wh\n").arg (hs (energy_corrected_filtered)).arg (hs (energy_corrected_filtered / 3600.0));
287285

288286
std::cout << out.toStdString() << std::flush;
289287

@@ -310,7 +308,7 @@ int main()
310308
std::cout << "\nQuitting.\n";
311309

312310
voltmeter.send ("DISPLAY:TEXT:CLEAR");
313-
//ammeter.send ("DISPLAY:TEXT:CLEAR");
311+
ammeter.send ("DISPLAY:TEXT:CLEAR");
314312

315313
return EXIT_SUCCESS;
316314
}

0 commit comments

Comments
 (0)