-
Posts
6,535 -
Joined
-
Last visited
Content Type
Profiles
Forums
Events
Gallery
Everything posted by attila
-
ADP3450: Serial Protocol spying and logging question
attila replied to longboard's question in Test and Measurement
Hi @longboard The log data is stored in the application. If this is running on the computer than the log will be also on the computer. -
Why don't actual beta versions of WaveForms come in rpm format?
attila replied to Someone's question in Test and Measurement
Hi @Someone Added RPM: https://forum.digilentinc.com/topic/8908-waveforms-beta-download/ -
AD2+waveforms logger - keep data on time scale change
attila replied to deathbee's question in Test and Measurement
Hi @deathbee In the next software version it will be possible if you stop it manually. The Logger will keep data on history increase but it has to delete on function change since the data may be invalid. -
Hi @Anton Yes, see the latest beta version: https://forum.digilentinc.com/topic/8908-waveforms-beta-download/
-
ADP3450: Serial Protocol spying and logging question
attila replied to longboard's question in Test and Measurement
Hi @longboard It is possible with Protocol/I2C/Spy and make sure to increase the "Max Lines" for long capture. For performance reasons this is by default limited. However such troubleshooting could result in a very long log which may be hard to parse. I would rather recommend using the Logic Analyzer and triggering on the event or on the outcome. Depending on the problem with I2C trigger (like on a value, NAK...), or using external trigger or other DIO line, or pulse width... Then look for the pretrigger data to see what lead to or caused the issue. -
Hi @EzeStare As I told earlier, the CC/CV with adapter also changes the resistor automatically. In some cases this is an advantage but not in your experiment. For the next software version I will add CC/CV options for adapter without resistor change. Until this, please use the earlier mentioned Custom script:
-
[Analog Discovery 2]Waveforms: export unwrapped phase data as csv?
attila replied to hugocoolens's question in Test and Measurement
Hi @hugocoolens I don't know from which instrument you want to export. Like in Network Analyzer uncheck Magnitude and leave Phase, File/Export or Channel2 gear/Export, uncheck unneeded Options You could also use a Script for custom file saves, like: -
Logic Detector as trigger in Scope. Is it possible?
attila replied to m72's question in Test and Measurement
Hi @m72 I see it now... the Start does not accept negative time... It is fixed in next version. Earlier I couldn't load your workspace and tried to reproduce it with only post trigger data :) Thank you for the observation. -
-
DstmTransfer failed ERC: 3077 over ethernet
attila replied to Erik Hartwig's question in Test and Measurement
Hi @Erik Hartwig Is it working now in both modes? The Standard log looks good but I don't know if the IP is from DHCP or at least the subnet is correct for your network. Make sure the auto IP is checked in the device Network Settings. -
Logic Detector as trigger in Scope. Is it possible?
attila replied to m72's question in Test and Measurement
Hi @m72 If the first part of the communication is not captured (or the "start here" is set in middle of) it is normal to have error in interpretation: The start here was actually added to be able to resync continuous UART transfer but it can be used for other protocols too: -
Difference Between Python Plot and WaveForms Plot on C-V Measurements
attila replied to Resul's question in Test and Measurement
Hi @Resul The Wavegen can output -5V to +5V. There is some reserve like +/-0.4V but this is not guaranteed to work on each device or with proper linearity. You may do +/-10V using +/-5V rails as reference instead of ground. - with -5V doing sweep from -5V to +5V which will be relative 0 to +10V - with +5V sweep from +5V to -5V will be like 0 to -10V Note that you could do this with minimal amplitude like 0.1V (or 0.2V) to limit the Wavegen amplitude to +/-5.1V or use +/-4V reference with 1V amplitude signal for +/-8V range. see point 3 :- 3 replies
-
- analog discover 2
- impedance analyzer
-
(and 2 more)
Tagged with:
-
How to acquire 2 Channel Analog signals with digital trigger.
attila replied to kang's question in Test and Measurement
Hi @kang Simply use one of the trigger IOs. dwf.FDwfAnalogInTriggerSourceSet(hdwf, trigsrcExternal1) and if you want to specify the edge: rising, falling or either: dwf.FDwfAnalogInTriggerConditionSet(hdwf, DwfTriggerSlopeFall) -
Increase number of data points for custom waveforms
attila replied to SaschaA's question in Test and Measurement
Hi @SaschaA For Analog Discovery the 3rd device configuration allocates 16k samples for carrier signal the AM/FM buffers are 2k 9bit You could use the custom FM to generate sweep but the 2k9b limits the resolution. You could use the Play mode for unlimited streaming at up to about 1MSps. You could also stream AM/FM samples which probably highly reduces the required update rate. See WF SDK/ samples/ py/ AnalogOut_Play.py AnalogOutIn_PlayRecord.py ... -
Import .csv file for Digilent in LabVIEW
attila replied to VARSHA AMALE's question in Test and Measurement
Hi @VARSHA AMALE It is not supported by AD2. The Digital Discovery provides Play mode which is also available from SDK see the DigitalDiscovery_PlayRecord.py example -
Difference Between Python Plot and WaveForms Plot on C-V Measurements
attila replied to Resul's question in Test and Measurement
Hi @Resul The bugs mentioned yesterday are fixed here: https://forum.digilentinc.com/topic/8908-waveforms-beta-download/ Your code will work if you use c_int in FDwfAnalogImpedancePeriodSet See the examples AnalogImpedance_OffsetSweep.py AnalogImpedance_OffsetSweepCp.py which also look for out of range conditions on Scope inputs.- 3 replies
-
- analog discover 2
- impedance analyzer
-
(and 2 more)
Tagged with:
-
Impedance Analyzer Adapter Options Menu for Offset Sweep
attila replied to Resul's question in Test and Measurement
Hi @Resul You may need to use different AnalogIn Channel Offset or Range depending on the your DUT and AnalogOut Amplitude/Offset.- 9 replies
-
- analog discovery2
- impedance analyzer
- (and 2 more)
-
Waveforms s/w doesn't open 'not responding' in win64
attila replied to mnagy34's question in Test and Measurement
Hi @mnagy34 Start WaveForms in Safe Mode This will reset the application settings, workspace history... some inaccessible network file or some setting may be the problem. -
Impedance Analyzer Adapter Options Menu for Offset Sweep
attila replied to Resul's question in Test and Measurement
Hi @Resul I got a glitch due to setting the scope offset wrongly with opposite sign and the input entered in limitation. I will have to add some function or measurement to notify such. I also notice there is bug in calculating the scope sample rate to obtain the certain amount of periods. """ DWF Python Example Author: Digilent, Inc. Revision: 2021-08-24 Requires: Python 2.7, 3 """ from ctypes import * from dwfconstants import * import math import time import sys import numpy import matplotlib.pyplot as plt if sys.platform.startswith("win"): dwf = cdll.LoadLibrary("dwf.dll") elif sys.platform.startswith("darwin"): dwf = cdll.LoadLibrary("/Library/Frameworks/dwf.framework/dwf") else: dwf = cdll.LoadLibrary("libdwf.so") version = create_string_buffer(16) dwf.FDwfGetVersion(version) print("DWF Version: "+str(version.value)) hdwf = c_int() szerr = create_string_buffer(512) print("Opening first device") dwf.FDwfDeviceOpen(c_int(-1), byref(hdwf)) if hdwf.value == hdwfNone.value: dwf.FDwfGetLastErrorMsg(szerr) print(str(szerr.value)) print("failed to open device") quit() dwf.FDwfDeviceAutoConfigureSet(hdwf, c_int(0)) sts = c_byte() reference = 1e3 freq = 1e3 start = -4.0 stop = 4.0 steps = 101 print("Reference: "+str(reference)+" Ohm Frequency: "+str(freq)+" Hz Offset: "+str(start)+" V ... "+str(stop)+" V") dwf.FDwfAnalogImpedanceReset(hdwf) dwf.FDwfAnalogImpedanceModeSet(hdwf, c_int(8)) # 0 = W1-C1-DUT-C2-R-GND, 1 = W1-C1-R-C2-DUT-GND, 8 = AD IA adapter dwf.FDwfAnalogImpedanceReferenceSet(hdwf, c_double(reference)) # reference resistor value in Ohms dwf.FDwfAnalogImpedanceFrequencySet(hdwf, c_double(freq)) # frequency in Hertz dwf.FDwfAnalogImpedanceAmplitudeSet(hdwf, c_double(0.5)) # 0.5V amplitude = 1V peak2peak signal dwf.FDwfAnalogImpedanceOffsetSet(hdwf, c_double(start)) dwf.FDwfAnalogImpedanceConfigure(hdwf, c_int(1)) # start dwf.FDwfAnalogInChannelOffsetSet(hdwf, c_int(0), c_double(start)) # set Scope C1 offset to start dwf.FDwfAnalogInChannelOffsetSet(hdwf, c_int(1), c_double(0)) # set Scope C2 offset to 0V dwf.FDwfAnalogInFrequencySet(hdwf, c_double(freq*8192/16)) # override, periods are wrongly calculated in < v3.16.35 dwf.FDwfAnalogInConfigure(hdwf, c_int(0)) # re-configure Scope time.sleep(1) # wait for the device, specially for the offsets to stabilize rgOff = [0.0]*steps rgRs = [0.0]*steps rgXs = [0.0]*steps for i in range(steps): vOff = start + i*(stop-start)/steps rgOff[i] = vOff dwf.FDwfAnalogOutOffsetSet(hdwf, c_int(0), c_double(vOff)) # adjust Wavegen 1 offset dwf.FDwfAnalogOutConfigure(hdwf, c_int(0), c_int(1)) # configure and start Wavegen 1 dwf.FDwfAnalogInChannelOffsetSet(hdwf, c_int(0), c_double(vOff)) # adjust Scope C1 offset dwf.FDwfAnalogInConfigure(hdwf, c_int(1)) # configure Scope time.sleep(0.01) # settle time depends on the circuit/DUT dwf.FDwfAnalogInConfigure(hdwf, c_int(1)) # start Scope while True: if dwf.FDwfAnalogImpedanceStatus(hdwf, byref(sts)) == 0: dwf.FDwfGetLastErrorMsg(szerr) print(str(szerr.value)) quit() if sts.value == 2: break resistance = c_double() reactance = c_double() dwf.FDwfAnalogImpedanceStatusMeasure(hdwf, DwfAnalogImpedanceResistance, byref(resistance)) dwf.FDwfAnalogImpedanceStatusMeasure(hdwf, DwfAnalogImpedanceReactance, byref(reactance)) rgRs[i] = abs(resistance.value) # absolute value for logarithmic plot rgXs[i] = abs(reactance.value) dwf.FDwfAnalogImpedanceConfigure(hdwf, c_int(0)) # stop dwf.FDwfDeviceClose(hdwf) plt.plot(rgOff, rgRs, rgOff, rgXs) ax = plt.gca() ax.set_yscale('log') plt.show()- 9 replies
-
- analog discovery2
- impedance analyzer
- (and 2 more)
-
Import .csv file for Digilent in LabVIEW
attila replied to VARSHA AMALE's question in Test and Measurement
Hi @VARSHA AMALE The Toolkit VIs do not support digital pattern generator. For low rate software toggling you could eventually use the Digital VIs. See the manual for more detail. You could also use the WF SDK DigitalOut functions but this would be more work in LabView. See the SDK manual and Python examples. -
Analog Discovery 2 - Impedance Analyzer & inductance measurements
attila replied to longboard's question in Test and Measurement
Hi @longboard Yes, the others are custom setups without Adapter, see the Help tab, press F1 -
Amplitude Controlled Waveform Output
attila replied to alexplcguy's question in Test and Measurement
Hi @alexplcguy The AD2 has no standalone operation. Eventually the external and internal triggering can start the instruments and the DIOs can be used in FSM mode, Patterns ROM logic. The ADP3450 has embedded Linux that can be used for wide range of standalone applications, automated tasks... -
Impedance Analyzer Adapter Options Menu for Offset Sweep
attila replied to Resul's question in Test and Measurement
Hi @Resul I managed to reproduce the issue... working on it...- 9 replies
-
- analog discovery2
- impedance analyzer
- (and 2 more)