Outline

Resistance definition

The resistance is the opposition to alternating current presented by the combined effect of resistance and reactance in a circuit. Commonly, in a battery it is defined by the voltage drop when a current is applied.

$$ R= { \Delta U \over \Delta I }$$ with

  • R : the resistance (Ω)
  • ΔU : the voltage variation (V)
  • ΔI : the current variation (A)

Analysis preparation

DATTES is called as follows : [result]=dattes(XML_file,'action','configuration_file'). Before any analysis, it is then necessary to create the XML and configuration files.

The section Import cycler files explains how to create the XML file.

The section Create a configuration file explains how to create a configuration file.

Anomaly detection

Resistance tests may be affected by poor detection of a measurement as well as noisy current and voltage measurements.

To check if an impedance measurement have been detected by DATTES, the action ‘c’ should be used : [result] = dattes(XMLfile,'cvs');and plotted :[result] = dattes(XMLfile,'Gc');

The impedance measurement detected according to the configuration provided are highlighted as in the following image :

image

To check if an impedance test have run normally the action ‘gR’ should be used : [result] = dattes(XMLfile,'gRvs');

Definitions of noisy current and voltage measurements should be adapted to the cycler accuracy. In the following image, a normal impedance measurement for a cycler with a 1 mV accuracy is presented :

image

Resistance analysis

To analyze the resistance, the action ‘R’ should be used :

[result] = dattes(XML_file,'Rvs');

The output are :

Output structure Field Array Unit Description
result resistance R Ohm Resistance value
result resistance dod Ah DoD of resistance measurement
result resistance crate - Current rate of resistance measurement
result resistance time s Instant of resistance measurement in the test time
result resistance delta_time s Instant of resistance measurement in the pulse time

Code for visualization

To visualize the resistance, the action ‘GR should be used :

[result] = dattes(XML_file,'GR');

The graph should look like

image

Methodology and Hypothesis

Method

For each pulse considered for resistance calculation, the different arrays are determined in the function calcul_r.

The array result.resistance.R is determined as follows :

w = abs(tpulse-tpulse(end));  %polynominal interpolation weight for pulse, points away from current impulse have a higher weight

Ural_pul = fitting_pol2(tpulse,Upulse,instant_end_rest+t_calcul_R(ind),w);
%Voltage extrapolation for the pulse, the point at the pulse instant is extrapolated

w = abs(trepos-trepos(1));polynominal interpolation weight for rest, points away from current impulse have a higher weight

Ural_rep=fitting_pol2(trepos,Urepos,instant_end_rest+t_calcul_R(ind),w);
 %Voltage extrapolation for the rest, the point at the pulse instant is extrapolated
            
R = (Ural_pul-Ural_rep)/R_I(end); %the resistance is the difference of potential between rest and pulse divided by current l

The following image presents an exemple of the points used for a resistance measurement image

The array result.resistance.crate is determined as follows :

R_crate= mean(Ipulse);  %resistance estimation current is the average of the current

The array result.resistance.time is determined as follows :

Rt= t(1) + duration_repos; %resistance estimation time is the instant at the end of rest

The array result.resistance.dod is determined as follows :

RDoD= DoDAh(1); % resistance DoD is the DoD at rest

The array result.resistance.delta_time is determined as follows :

Rdt = t_calcul_R(ind); % Resistance delta time is determined by user in the configuration file

Key parameters for the calculation

The four key parameters for the calculation of the resistance are :

  • config.minimal_duration_rest_before_pulse,
  • config.minimal_duration_pulse,
  • config.instant_end_rest,
  • config.pR.

Assumptions and possible simplifications

No major assumptions or simplifications have been made

Contribute to resistance analysis

A list of open issues related to resistance calculation and visualization may be available here