Этот пример показывает, как использовать несколько экспериментов для оценки смеси значений параметров модели; одни, которые оцениваются с использованием всех экспериментов, и другие, которые оцениваются с использованием отдельных экспериментов. Пример также показывает, как сконфигурировать эксперименты по оценке с зависимыми от эксперимента значениями параметров.
Вы оцениваете параметры аккумуляторной батареи на основе данных, собранных в экспериментах, которые разряжают и заряжают батарею.
Этот пример оценивает параметры простой, перезаряжаемой модели батареи, sdoBattery
. Вход модели является током батареи, и выход модели, напряжение на клемме батареи, вычисляется из состояния заряда батареи.
open_system('sdoBattery')
Модель основана на уравнении
В уравнении:
- напряжение на клемме батареи в вольтах.
- постоянное напряжение батареи в вольтах.
- сопротивление поляризации батареи в Омсе.
- максимальная емкость батареи в ампер-часах.
- состояние заряда батареи, причем 1 полностью заряжен и 0 разряжен. Состояние заряда батареи вычисляется из интеграла тока батареи с положительным током, указывающим на разряд и отрицательным током, указывающим на зарядку. Начальное состояние заряда батареи определяется в ампер-часах.
- падение напряжения при зарядке, выраженное в виде части постоянного напряжения батареи. Когда батарея разряжает это значение равняется нулю.
V
, K
, Qmax
, Q0
, и Loss
являются переменными, заданными в рабочем пространстве модели.
1.2V (6500mAh) батарея была подвергнута разрядке и эксперименту по зарядке. Эти данные эксперимента были загружены в предварительно сконфигурированный сеанс оценки.
Используйте следующие команды для загрузки предварительно сконфигурированного сеанса оценки.
load sdoBattery_spesession
spetool(SDOSessionData)
Данные эксперимента по измеренному заряду и разряду загружают и строят график. Щелкните вкладку View, чтобы разметить графики так, чтобы Experiment plot:Charge_Exp
и Experiment plot:DCharge_Exp
оба видны. Нажмите Plot Model Response, чтобы увидеть, насколько хорошо симуляция модели соответствует измеренным данным эксперимента.
Графики показывают, что начальный заряд батареи Q0
неправильно установлен для Charge_Exp
экспериментируйте и что модель V
, K
, и Loss
параметры должны быть оценены.
Предыдущий график указывает, что Charge_Exp
начальный заряд батареи, Q0
, неправильно установлен. Добавьте начальный заряд к обоим экспериментам. Щелкните правой нажатие кнопки Charge_Exp
и выберите Edit. Откроется диалоговое окно для редактирования эксперимента.
Нажмите Select Parameters, чтобы открыть диалоговое окно, чтобы добавить параметры модели к эксперименту. Выберите Loss
и Q0
чтобы добавить к эксперименту. Выберите Loss
поскольку нам нужно оценить этот параметр, используя только Charge_Exp
эксперимент. Нажмите «ОК», чтобы добавить Q0
и Loss
параметры для эксперимента.
Установите начальный заряд батареи Q0
в Charge_Exp
0, т.е. нет первоначального заряда.
Точно так же добавьте начальный заряд батареи Q0
на DCharge_Exp
экспериментируйте и установите начальный заряд равным 6,5., т.е. для этого эксперимента существует начальный заряд.
Теперь, когда эксперименты обновляются правильным начальным зарядом батареи, нажмите Plot Model Response, чтобы симулировать модель и сравнить измеренные и моделируемые данные.
Графики эксперимента показывают, что начальные условия эксперимента совпадают, но реакция батареи не дает. Следующим шагом является оценка K
и V
параметры модели.
Предыдущий график показал, что реакция модели не совпадает с измеренными данными, и нам нужно оценить модель V
и K
параметры.
Щелкните Выбрать параметры (Select Parameters), чтобы открыть диалоговое окно для выбора параметров модели.
В верхнем фрагменте диалогового окна параметров выбора есть раздел для параметров, которые настраиваются с помощью всех экспериментов. Нажмите Select Parameters и добавьте V
и K
моделировать параметры к предполагаемым параметрам. Установите V
минимум 0 и максимум 2, точно так же установите K
минимум до 1e-6 и максимум до 0,1.
Нижний раздел диалога имеет раздел для начальных состояний и параметров, которые настраиваются с помощью отдельных экспериментов.
Для Charge_Exp
настраиваем Loss
Параметру и установите его минимум равным 0 максимум 0,5. Начальный заряд батареи Q0
фиксирован на 0 и не должен быть оценен; Снять флажок «Оценка».
Выберите DCharge_Exp
из комбинированного списка «Эксперимент», чтобы просмотреть настройки параметров для DCharge_Exp
эксперимент. Начальный заряд батареи Q0
фиксирована на 6,5 и не должна быть оценена; Снять флажок «Оценка».
Эксперименты и предполагаемые параметры сконфигурированы, и мы готовы запустить оценку. Сначала создайте график, чтобы контролировать прогресс оценки. Нажмите Add Plot и выберите Parameter Trajectory. Это создает график, который показывает, как предполагаемые значения параметров изменяются во время оценки. Щелкните вкладку View, чтобы разметить графики так, чтобы все графики траектории экспериментов и параметров были видны.
Нажмите кнопку Оценка, чтобы начать оценку. Можно изменить опции оценки, установив комбинирование функции затрат и нажав кнопку Дополнительные опции.
В то время как оценка запускает обновление графиков и появляется диалоговое окно, показывающее прогресс оценки. Диалоговое окно прогресса показывает итерации оценки, количество раз, когда модель была оценена (количество F), и стоимость оценки в каждой итерации.
После ряда итераций оценка сходится и прекращается. На графиках эксперимента показаны данные измерений и моделирования, хорошо совпадающие. The EstimatedParams
график показывает V
, K
, и Loss
параметры, изменяющиеся во время оценки; шкала V
, K
, и Loss
являются различными, правыми нажатиями кнопки на графике и выберите Показ масштабированных значений, чтобы увидеть, как все параметры изменились по сравнению с их исходными значениями.
Чтобы узнать, как оценить параметры на эксперимент с помощью sdo.optimize
команда, см. Оценка параметров модели на эксперимент (код).
Закройте модель
bdclose('sdoBattery')