Hi,
I'm writing this VC++ API to automate the N6700B.
I connect to the instrument through LAN.
I managed to change the voltage on a given unit (1-4), as I can see the change in the panel and the web App.
but when I measure it I get weird results.
Here's a sample of my code, setting the output voltage on unit-1 and then reading it:
IAgilentN67xx4Ptr m_agDriverPtr;
IAgilentN67xxOutput3Ptr outputPtr = m_agDriverPtr->Outputs->GetItem("Output1");
outputPtr->VoltageLevel(1.0,1.11);
AgilentN67xxMeasurementPtr measPtr = m_agDriverPtr->Measurements->GetItem("Measurement1");
double mpo_voltage = measPtr->Measure(AgilentN67xxMeasurementVoltage);
printf("output voltage on unit1 is = %f ",mpo_voltage);
The value printed as mpo_voltage is 0.000609, and it changes after each execute (sometimes can be read negative).
What am I doing wrong?
I'm writing this VC++ API to automate the N6700B.
I connect to the instrument through LAN.
I managed to change the voltage on a given unit (1-4), as I can see the change in the panel and the web App.
but when I measure it I get weird results.
Here's a sample of my code, setting the output voltage on unit-1 and then reading it:
IAgilentN67xx4Ptr m_agDriverPtr;
IAgilentN67xxOutput3Ptr outputPtr = m_agDriverPtr->Outputs->GetItem("Output1");
outputPtr->VoltageLevel(1.0,1.11);
AgilentN67xxMeasurementPtr measPtr = m_agDriverPtr->Measurements->GetItem("Measurement1");
double mpo_voltage = measPtr->Measure(AgilentN67xxMeasurementVoltage);
printf("output voltage on unit1 is = %f ",mpo_voltage);
The value printed as mpo_voltage is 0.000609, and it changes after each execute (sometimes can be read negative).
What am I doing wrong?
Where are you enabling the power supply? It does not look like an output enable command is there.