NEBULA data file

Test configuration
Session status
C-rate & voltage profile — full test

Raw data preview — first 200 rows
ISO CHARACTERISATION WORKFLOW

Pulse sequence by SOC level

Each SOC level is extracted as one continuous A → B → Rest → C block.

A
1C pulse 18 s
B
0.75C pulse 102 s
R
Relaxation 40 s
C
Reversal 20 s
Extraction configuration
NEBULA pulse-block Step Num

Values from the NEBULA 'Step Num' column, not cycle IDs or SOC levels.

Current bands |I| (A)

Bands use current magnitude; polarity determines direction.

Protocol reference — expected polarity
DCH block A: −33 A / 18 s B: −24.7 A / 102 s Rest: 0 A / 40 s C: +24.7 A / 20 s
CH block A: +33 A / 18 s B: +24.7 A / 102 s Rest: 0 A / 40 s C: −24.7 A / 20 s

Frames B and C share one band; Frame C is identified by opposite polarity after relaxation.

Advanced protocol settings

SOC reference

SOC is coulomb-counted from current integration.

DCH blocks
CH blocks
DCH levels
CH levels
Verify the A → B → Rest → C sequence

Select a direction and SOC/cycle to check the extracted block before ECM fitting.

Cycle ID
Coulomb-counted SOC
%
Rest voltage
V
Block QC
A · 1C · 18 s B · 0.75C · 102 s Rest · 0 A · 40 s C · reversal · 20 s
Detected blocks across the record

Boundary levels may contain only CH or only DCH data.

Inspect one frame across SOC levels.

Selected frame across all SOC levels

Mean current
A
Voltage change
mV
Frame availability and SOC mapping

ECM fitting uses only rows where A, B, R and C are all TRUE.

Pulse data contract for the ECM fitter
DCH frames Frame_A_DCH · Frame_B_DCH · Frame_R_DCH · Frame_C_DCH
CH frames Frame_A_CH · Frame_B_CH · Frame_R_CH · Frame_C_CH
Quality control QC_Levels · missing-frame flags · truncation notes
Metadata Summary · measured capacity · temperature · SOC reference
OCV characterisation file

Separate NEBULA file — slow-rate cycles with long rests.

Detection parameters
Detection method

Use Current threshold when Step Status labels are missing or non-standard.

Active segment filter

Longer segments are capacity tests and are excluded.

Rest window
SOC grid

Rest periods found
Charge OCV pts
Discharge OCV pts
Hysteresis max (mV)
Current profile — detected rest periods

Shaded bands mark the rest windows where OCV is sampled.

CONTINUOUS-STATE 2RC IDENTIFICATION

One ECM across A → B → Rest → C

Polarisation states propagate continuously between frames.

V = Vrest + ΔOCV(SOC) + I·R0 + V1 + V2
2RC fitting configuration
Directions
Model options

Shared τ₂ — one slow time constant per direction (recommended). Free τ₂ — independent per SOC; may saturate.

Segment quality limits — RMSE (mV)
Dynamic resistance validation

Measured and model DCIR are compared at this time.

Solver, tolerances and advanced settings
Dynamic resistance settings
Simulation readiness

Identifiability note

τ₂ near its upper bound is a protocol limit — marked SATURATED.

DCH simulation-ready
CH simulation-ready
Mean RMSE DCH
mV
Mean RMSE CH
mV
Discharge — parameters and validation

Select a cycle here or click a table row below.

Selected SOC
%
Fit QC
Full RMSE
mV
Max |error|
mV
Simulation
A · pulse B · hold Rest C · reverse
Voltage decomposition — how each term builds V

Signed contributions to (V − V_rest): thermodynamic OCV drift, ohmic I·R₀, and the two polarisation branches. The bands sum to the navy net line.

Selected-cycle fitted parameters
Residuals for selected cycle
Discharge ECM parameters by SOC
Charge — parameters and validation

Select a cycle here or click a table row below.

Selected SOC
%
Fit QC
Full RMSE
mV
Max |error|
mV
Simulation
A · pulse B · hold Rest C · reverse
Voltage decomposition — how each term builds V

Signed contributions to (V − V_rest): thermodynamic OCV drift, ohmic I·R₀, and the two polarisation branches. The bands sum to the navy net line.

Selected-cycle fitted parameters
Residuals for selected cycle
Charge ECM parameters by SOC
Dynamic resistance validation
What is being validated?

Measured pulse DCIR (experimental ΔV/ΔI) is compared with ECM terminal DCIR at the same selected time. Fitted R₀ is checked separately against the earliest voltage step.

Discharge validation by SOC
Charge validation by SOC

Fitted R₀ vs the earliest measurable ΔV/ΔI after the current step.

Why fitted R₂ and displayed R₂ contribution differ

Fitted R₂ (mΩ) is the full asymptotic slow-branch magnitude. R₂ contribution at the selected time is R₂ × [1 − exp(−t/τ₂)] — only a fraction is visible when t ≪ τ₂.

Select operating point

Evaluation time is taken from the DCIR panel.

Interpretation of the quantities
R₀ · ohmic Electrolyte, separator and contact resistance. Acts instantly at the current step.
R₁ · fast polarization Charge-transfer / SEI resistance that develops over τ₁ (seconds).
R₂ · slow diffusion Solid-state / mass-transport resistance that develops over τ₂ (minutes).
Measured vs composed The stacked ECM contributions should reach the experimental pulse DCIR when the fit is good.
Parameter and contribution values with units

Detailed calculation fields for traceability and export.

Residuals and segment RMSE
QC status by SOC
Simulation parameter verification

R₀/R₁/R₂ in mΩ, τ₁/τ₂ in s. Discharge and charge use separate rows with independent scales.

Simulation-ready parameter assessment

PASS — identifiable and validated. PASS_EFFECTIVE — valid over the tested horizon with shared/fixed τ₂.

Usable cycle-direction points
PASS EFFECTIVE points
Review or boundary points
Shared τ₂ profile cost
How to interpret the result
PASS Fit, DCIR and parameter checks are suitable for direct simulation use.
PASS EFFECTIVE Voltage prediction is suitable over the tested horizon, but τ₂ is shared/fixed and not uniquely identified.
BOUNDARY REVIEW The point is outside the selected SOC range for lookup-table generation.
REVIEW One or more fit, DCIR or uncertainty checks need attention.
SATURATED The original fit flag showing that τ₂ is not identifiable within the available test horizon.
OPEN-LOOP VALIDATION

Replay over an arbitrary segment of the test

The measured current drives the model through the θ(SOC) map and is compared against the real voltage. Validates the parameter map + OCV on dynamics the fit never saw.

V̂ = Vrest + ΔOCV(SOC) + I·R0(SOC) + V1 + V2
What this validation does
  • Purpose. Take any segment of the real test, feed its measured current into the fitted ECM, and compare the predicted voltage against the measured voltage. This checks the whole characterisation — the θ(SOC) parameter map and the OCV curve — on dynamics the pulse fit never saw.
  • Open-loop. The states V1, V2 and SOC are integrated forward from the window start and are never corrected by the measured voltage. Only the current drives the model, so the residual reflects true model error, not a filter tracking the data.
  • How to read it. A small, flat residual over the window means the parameters generalise. Peaks appear at fast current changes, where R/RC accuracy is tested hardest.
  • Assumptions & limits. The window should start near rest (SOC₀ is read from the OCV curve). It uses the dominant-direction map and OCV branch. Windows are capped at 10 000 s — over longer spans, OCV-table and coulomb-counting drift accumulate and dominate the residual, which would misrepresent the impedance fit.
Continuous test — choose the window (drag a box or use the slider, max 10 000 s)
Replay RMSE
mV
Max error
mV
Mean bias
mV
Open-loop replay — measured vs model
Residual — V̂ − V measured
Domain of validity
θ(SOC) map — linear interpolation
Asymmetry table — |DCH − CH| per SOC
Export configuration

Download files
Export log

              
Simulink .mat contents preview

Variables written to the .mat file for direct Simulink import:

SOC_vec — [1×N] SOC operating points (%)
OCV_vec — [1×N] equilibrium OCV (V)
R0_dch_vec — [1×N] ohmic resistance DCH (Ohm)
R1_dch_vec — [1×N] fast RC resistance DCH
tau1_dch_vec — [1×N] fast time constant (s)
R2_dch_vec — [1×N] slow RC resistance DCH
tau2_dch_vec — [1×N] slow time constant (s)
R0_ch_vec — [1×N] ohmic resistance CH
R1_ch_vec — [1×N] fast RC resistance CH
R2_ch_vec — [1×N] slow RC resistance CH
T_ref — scalar test temperature (°C)
C_nominal — scalar cell capacity (Ah)