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 имя аргумента и 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. Если вы устанавливаете значение к истине, createPulses функциональная сила производит ошибку.

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

Типы данных: логический

Используйте это значение, чтобы задать количество импульсов, чтобы сохранить перед импульсной оценкой. Буфер позволяет оценке фокусироваться на соответствии с результатами измерений, прежде чем импульс начнется.

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

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

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

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

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

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

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

Типы данных: логический

Введенный в R2017b