[Just sharing] FRA-V2 implementation with improved Fsw noise rejection

FRA-V2 (in Qspice) with faster and more accurate implementation.

Key update features are:

  1. Automatic steady-state detection to cut down the time between system reaching SS until perturbation is applied.
  2. Improved Fourier Series accuracy (esp. at high frequency) which is implemented by using Quasi-Log scale perturbation frequency range. Basically, an iterative algorithm for injection frequency selection is added to ensure that the relation between Finj and Fsw is following this rule [N/Finj = M/Fsw] with both N and M integer. This simple approach helps to suppress the measurement artifact from Fsw ripple onto the Finj signal by ensuring there is a M-complete periods of Fsw noise in the duration of fourier analysis which causes the noise to be self-canceling.
  3. The simulation result is no longer saved to .csv file (at least for now) because I find it easier to plot by directly copying the result from command terminal into spreadsheet.

The Finj from this algorithm is designed to stay within 1% of the original Logspace Finj.

Welcome to review the new FRA algorithm implementation here:

Note: I just run it again in my Laptop (on battery, and ~30% battery) without saving any of the waveform. The same simulation only need 29sec for 100 to 100kHz and 61 logspace data points

Enjoy,
Arief,

4 Likes

Short video on showing the speed and ease of FRA analysis in Qspice using custom FRA-V2 core with the latest update.
10Hz to 100kHz 61 logspace data points in ~35sec!

New update: direct plot in Qspice.

Special thanks to @Engelhardt @KSKelvin @RDunn
Get the update from Github : QSPICE/FRA_project/FRA-V2 at main · physicboy/QSPICE · GitHub

3 Likes