exponenta event banner

createPulses

Идентификация импульсов и создание импульсных объектов на основе экспериментальных данных

Описание

пример

createPulses(psObj) определяет местоположение импульсных событий. Создает отдельные импульсные объекты из Battery.PulseSequence экспериментальные данные объекта.

createPulses(psObj,Name,Value) определяет местоположение импульсных событий. Создает отдельные импульсные объекты из Battery.PulseSequence экспериментальные данные объекта с дополнительными опциями, заданными одним или несколькими Name,Value аргументы пары.

Примеры

свернуть все

В этом примере показано, как создавать импульсные объекты на основе данных.

Создайте объект импульсной последовательности.

psObj = Battery.PulseSequence;
disp(psObj)

Загрузите данные из файла.

FileName = 'Synthetic_LiPo_PulseDischarge.mat';
[time,voltage,current] = Battery.loadDataFromMatFile(FileName);

Добавьте данные в последовательность импульсов.

addData(psObj,time,voltage,current);

Создание импульсных объектов на основе данных.

createPulses(psObj,...
    'CurrentOnThreshold',0.1,... 
    'NumRCBranches',3,... 
    'RCBranchesUse2TimeConstants',false,...
    'PreBufferSamples',10,... 
    'PostBufferSamples',15);

Входные аргументы

свернуть все

Battery.PulseSequence объект для последовательности импульсов, которую требуется проанализировать.

Аргументы пары «имя-значение»

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: createPulses(psObj,'CurrentOnThreshold',0.1)

Используйте это значение, чтобы указать минимальную величину тока для идентификации местоположений импульсов в A. createPulses функция учитывает значения ниже CurrentOnThrehsold в виде релаксационного или измерительного шума.

Пример: createPulses(psObj,'CurrentOnThreshold',0.1)

Типы данных: double

Это значение используется для указания количества ветвей RC. Чтобы изменить количество ветвей после оценки, необходимо повторить createPulses наряду с любыми шагами оценки. Повторный запуск обеспечивает правильный размер параметров оценки.

Пример: createPulses(psObj,'NumRCBranches',4)

Типы данных: uint32

createPulses функция не поддерживает использование отдельных постоянных времени для нагрузки и релаксации при оценке каждой ветви RC. Если установлено значение true, то createPulses функция может привести к ошибке.

Пример: createPulses(psObj,'RCBranchesUse2TimeConstants',false)

Типы данных: logical

Это значение используется для указания количества импульсов, сохраняемых до оценки импульса. Буфер позволяет оценке сосредоточиться на согласовании измеренных данных до начала импульса.

Пример: createPulses(psObj,'PreBufferSamples',5)

Типы данных: uint32

Это значение используется для указания количества импульсов, сохраняемых до следующей оценки импульса. Буфер позволяет оценке сосредоточиться на согласовании перехода, когда начинается следующий импульс. Обычно конечный переход одного импульса и начальный переход в следующем импульсе находятся в одном и том же состоянии заряда (SOC). Поэтому оба перехода помогают определить значения параметров в этой точке останова SOC.

Пример: createPulses(psObj,'PostBufferSamples',14)

Типы данных: uint32

Используйте это значение, чтобы указать, что для определения импульса должно быть два последовательных образца под током. Установить в значение true если случайные пики шума в текущем измерении запускают обнаружение ложного импульса. По умолчанию используется значение false, указывая, что одиночная выборка выше порогового значения обнаруживает импульсное событие.

Пример: createPulses(psObj,'PulseRequires2Samples',true)

Типы данных: logical

Представлен в R2016b