Jump to content

attila

Technical Forum Moderator
  • Posts

    6,649
  • Joined

  • Last visited

Posts posted by attila

  1. Hi @Grimmers

    Thank you for the detailed information.
    The failure on USB 2 port is similar to the ones received on previous RPi B models, "Communication error... ERC 0x02" which indicates reading/IN timeout, loss of data in device to host transfers. On previous version the data was more often corruptly received, resulting wrong device status reading, voltage, current...
    Lets hope the USB 3 port will be reliable.

  2. Hi @fonak

    1. A opens a dialog with several options and B is for quick compensation and enable.

    2. The compensation is performed at constant amplitude and the collected data is used also in CC/CV mode.

    3. Input gain, angle, voltage and current are not compensated. The other are compensated: phase, impedance, inductance, capacitance, factors.... 

    4. You can specify average in number of measurements and averaging time for each step. The step is complete when both the number and time are satisfied. Each measurement contains by default at least 16 stimulus periods.

    5. time domain data -> Goertzel -> circuit model (C1/C2 or (C1-C2)/C2 or C2/(C1-C2)) -> compensation -> sqrt(Rs^2+Xs^2) and atan(Xs,Rs) 

    Let me know if you need more info

  3. Hi @fonak

    The CC/CV mode was added to WF beta 3.10.3
    https://forum.digilentinc.com/topic/8908-waveforms-beta-download/

     

    You can find the schematic of IA Adapter here:
    https://reference.digilentinc.com/reference/add-ons/impedance-analyzer/start

    Currently you can make lock-in amplifier like this:

     

    Impedance

    1. Thanks for reminding. I wanted to add offset compensation for DC, just got distracted with other projects.

    2. At the moment you can use a script for history like this:

    image.png.26aaf180dd0b47aed976584151b3c165.png

    Impedance.run() 
    // use averaging to control the sample rate
    Impedance.Frequency.Averaging.value = 0.2
    plot1.X.AutoScale.checked = false
    var rg = []
    while(true){
        if(!Impedance.wait()) break
        rg.push(Impedance.Traces.Trace.getData("Impedance")[0])
        if(rg.length>50) rg = rg.slice(1) // max length
        plot1.Y1.data = rg
        plot1.X.Range.value = rg.length
        plot1.X.Offset.value = -rg.length/2
    }

     

    Power

    1. With AD2 6th device configuration you can use the power supplies as AWG
    With EExplorer board you can use voltage or current AWG.

    image.png.9ee8626ea6a55b1a2c93472c8264ee40.png

    image.thumb.png.58c1af946187506ec889096a0480a0fb.png

    image.png.de9ccc715fd3a1ec8aa149f7cf25a836.png

    2, 3 Ok

    4. You can use F5/F6 to start/stop an instrument.

    5. The AD/AD2 has no voltage or current readback.
    On the EExplorer board you can adjust the voltage/current limit and also have voltage/current readback.

    Protocol Logic
    1. You can use script, similar to the previous IA
    In the Logic analyzer increasing the row height you get analog representation for the bus, interpreted values

    image.png.50a1d90b04246b2d5250328427fdde1d.png

    2. You have I2C scanner in Protocol/I2C/Custom/examples
    image.png.71d6bc03fb25c473ad970d90d875a131.png

    Other

    1. You can export and import data into Scope, Spectrum, Logic Analyzer...

    2. Ok. 

    Thank you for your suggestions.

  4. Hi @Cleber Borges

    The principle of measuring the gain/phase in NA and input gain/phase in IA is the same, except that the NA shows C2/C1 and IA C1/C2.

    In the Network Analyzer FFT is used since it has option of using external signal generator and spectrum analysis (THD, THD+N, HD2, HD3... plots)

    In the Impedance Analyzer Goertzel filter is used since the frequency is known, always generated by the AWG of the same device. The input gain and input phase are raw values (C1/C2) the further measurements (impedance, admittance, phase...) take in account the scope probe impedance and open/short compensation.

  5. Hi @Cleber Borges

    1-2. The Network Analyzer is intended to characterize transfer function of amplifiers/filters (C2/C1) mainly in form of magnitude and phase, Bode magnitude/phase, Nichols, Nyquist plots. It has custom scriptable plots that can be used for impedance analysis too. This was added before implementing the IA interface.
    The Impedance Analyzer goes further in calculations, it is intended to characterize elements (circuits, components, materials) in complex form like real and imaginary part, resistance and reactance, capacitance and dissipation, inductance and quality. The IA takes in account the scope probe impedance, the value of this can be comparable to the measured element at high impedance and high frequency; open and short compensation; DUT = like R*|C1/C2|- |RC2|- |Open|- |Short|

    3. The NA performs FFT on C1, C2 and gives the magnitude for C1 as C1/Set_Amplitude, for the other channels as C#/C1 and phase C#-C1.

    4. I'm not sure if understand correctly, but if you close the circuit without resistor basically you short the C2 to ground... The IA needs a resistor for current limitation and reference.

  6. Hi @jostikas

    Yes. The calibration parameters are stored in the device eeprom.

    Which WaveForms version are you using?

    The output voltage might be low, close to zero because of current limitation. In case this is wrongly calibrated, you might set in the interface 212mA but the actual limitation might be 0mA.

    1. Reconnect the 12V power supply for the board to make sure it is reset.
    2. Under WaveForms/Settings/Device Manager/Calibrate/Reset/ you can Load the factory calibration.
    3. The parameter table should contain values like in the picture.
    3. Here you can also recalibrate the needed parts by clicking on the links in the "Calibrate" list, like Positive Power Supply Current & Ammeter, and follow the instructions.

    image.png.283e68beffc95dcd928240b9de22f9aa.png

     

  7. Hi @Grant Mathieson

    The Logger does not provide Scope measurements. This is intended for slow DC and AC signal monitoring.
    If understand correctly you need sample rate of 100MHz and logging over several seconds or more.  The Record has limitation due on USB bandwidth of about 1MHz and 10M samples.

    For precise periodically monitoring you could use a dummy Wavegen or Patterns, like for 100ms rate specify 99ms wait and 1ms run time. Otherwise you can also use the Scope/Time/Rate option. Select this in Scope as trigger source.
    You can use Scope/View/Logging/Custom to store the needed measurements.

    image.thumb.png.9ab818cf7873a988ca1e018a6d8b45a1.png

  8. Hi @rprr

    The x86/amd64 Linux builds requires libc6 >=2.14, armhf >= 2.13
    You can try installing the WF package on the system even without the device.
    The SDK examples should execute normally, printing "failed to open device"...
    The waveforms application due to GUI has higher requirements, but it should start and work in demo mode.

×
×
  • Create New...