Scope#
- class Scope(resourceName, name)#
Bases:
HardwareScopeabstract base for oscilloscopes.Provides common acquisition timing (
Duration,NSample), trigger configuration (TriggerMode,TriggerSource,TriggerSlope,TriggerLevel), measurement helpers (peak-to-peak, extrema, mean, RMS, std), and sine-fit quantities (SineAmplitude,SineFrequency,SinePhase,SineOffset). Concrete subclasses implement vendor-specific connections and I/O.Example:
sc = Tektronix1104("USB0::...", name="Scope"); sc.connect(); sc.Duration = 0.01; sc.NSample = 2500; sc.IsEnabled = [true true false false]; sc.set(); sc.read(); sc.plot();
- Constructor Summary
- Scope(resourceName, name)#
- Property Summary
- Duration double {mustBePositive} = 0.1#
Total record length [s]
- HorizontalOffset double = 0#
- IsEnabled logical#
Per-channel enable flags
- Max#
Max per channel
- Mean#
Mean per channel
- Min#
Min per channel
- NSample double {mustBeInteger,mustBePositive} = 2500#
Number of samples to acquire
- NSampleMax double#
Maximum supported samples per record
- PeakToPeak#
Peak-to-peak per channel
- Rms#
RMS per channel
- Sample double#
Latest acquired samples [nCh x NSample]
- SampleUnit string#
Engineering unit for samples (e.g., āVā)
- SamplingRate#
Sampling rate [Hz]
- SamplingRateMax double#
Maximum supported sampling rate [Hz]
- SineAmplitude#
Fitted sine amplitude per enabled channel
- SineFit SineFit1D#
Sine fits per enabled channel
- SineFrequency#
Fitted sine frequency per enabled channel [Hz]
- SineOffset#
Fitted sine DC offset per enabled channel
- SinePhase#
Fitted sine phase per enabled channel [rad]
- Std#
Standard deviation per channel
- TrapezoidalAmplitude#
- TrapezoidalDuration#
- TrapezoidalFit TrapezoidalFit#
- TrapezoidalOffset#
- TriggerLevel double = 0.1#
Trigger threshold (in
SampleUnit)
- TriggerMode string {mustBeMember(TriggerMode,{'Normal','Auto','Software'})} = "Normal"#
Trigger mode
- TriggerSlope string {mustBeMember(TriggerSlope,{'Rise','Fall'})} = "Rise"#
Trigger edge
- TriggerSource string = "External"#
Trigger source identifier
- VerticalCoupling string {mustBeMember(VerticalCoupling,{'DC','AC'})} = "DC"#
Input coupling per channel
- VerticalOffset double = 0#
Vertical offset per channel (in
SampleUnit)
- VerticalRange double = 10#
Vertical range per channel (in
SampleUnit)
- Method Summary
- doTrapezFit()#
Fit each channel with a sine model using
SineFit1D.- Returns:
Sine fits for enabled channels
- Return type:
SineFit1Darray
- plot(ax)#
Plot captured waveforms vs time.
- Parameters:
ax (
axes, optional) ā Target axes (default: create new figure)