Используя Model-Based Calibration Toolbox™, можно сгенерировать оптимизированные текущие таблицы для основанных на потоке моторных контроллеров. Используйте калибровочные таблицы для Powertrain Blockset™ Основанный на потоке Контроллер PM текущие параметры блоков контроллера.
На основе нелинейных моторных данных о потоке калибровочные таблицы оптимизируют:
Моторная эффективность
Максимальный крутящий момент на ампер (MTPA)
Ослабление потока
Чтобы сгенерировать оптимизированные текущие таблицы, выполните эти шаги рабочего процесса.
Шаги рабочего процесса | Описание | MathWorks® Tooling |
---|---|---|
Соберите нелинейные моторные данные о потоке от тестирования динамометра или анализа конечных элементов (FEA). В данном примере
| Нет данных | |
Используйте одноэтапную модель, чтобы соответствовать данным. В частности:
| Model-Based Calibration Toolbox | |
Калибруйте и оптимизируйте данные с помощью целей и ограничений. В частности:
| Model-Based Calibration Toolbox | |
Используйте оптимизированные текущие калибровочные таблицы контроллера для блока Flux-Based PM Controller текущие параметры контроллера. | Powertrain Blockset |
Соберите эти нелинейные моторные данные о потоке от тестирования динамометра или анализа конечных элементов (FEA):
d-и q-текущая ось
d-и q-потокосцепление оси
Электромагнитный моторный крутящий момент
Используйте собранную скорость передачи данных и частоту вращения двигателя, чтобы вычислить напряжения q-оси и d-:
Уравнения используют эти переменные:
Vd, Vq |
d-и q-напряжение оси, соответственно |
id, iq |
d-и q-текущая ось, соответственно |
λd, λq |
d-и q-потокосцепление оси, соответственно |
RS |
Сопротивление статора |
ωe |
Электрическая моторная угловая скорость, rad/s |
n |
Частота вращения двигателя, об/мин |
P |
Количество пар полюса |
Наконец, для каждой точки данных, создайте файл, содержащий:
текущая d-ось, Id, в A
текущая q-ось, Iq, в A
Частота вращения двигателя, n, в об/мин
напряжение d-оси, Vd, в V
напряжение q-оси, Vq, в V
Электромагнитный моторный крутящий момент, Te, в N · m
В данном примере файл данных matlab\toolbox\mbc\mbctraining\ex_motor_data.xlsx
содержит моторные данные о потоке.
Чтобы смоделировать моторные данные, используйте приложение MBC Model Fitting, чтобы импортировать, отфильтровать, и соответствовать данным одноэтапной моделью. В данном примере файл данных ex_motor_data.xlsx
содержит большой набор данных. Вы могли рассмотреть использование проекта эксперимента (DOE), чтобы ограничить данные. Однако набор данных представляет типичные результаты анализа FEA.
В данном примере ex_motor_data.xlsx
содержит эти моторные данные контроллера:
текущая d-ось, Id, в A
текущая q-ось, Iq, в A
Частота вращения двигателя, n, в об/мин
напряжение d-оси, Vd, в V
напряжение q-оси, Vq, в V
Электромагнитный моторный крутящий момент, Te, в N · m
В MATLAB®, на вкладке Apps, в группе Automotive, нажимают MBC Model Fitting.
В домашней странице Model Browser нажмите Import Data. Нажмите OK, чтобы открыть файл источника данных.
Перейдите к папке matlab\toolbox\mbc\mbctraining
. Открытый файл данных ex_motor_data.xlsx
. Редактор Данных открывается вашими данными.
Можно отфильтровать данные, чтобы исключить записи из образцовой подгонки. В этом примере, настроенном фильтр, чтобы исключить напряжение и текущие значения, которые являются меньше, чем заданный порог. В частности:
Значение напряжения, Vs, меньше чем или равный 300
V.
Текущее значение, Is, меньше чем или равный 350
A.
В Редакторе Данных выберите Tools> Variables, чтобы открыть Variable Editor. Создайте эти переменные. Добавьте модули.
Is = sqrt (Id.^2 + Iq.^2)
Vs = sqrt (Vd.^2 + Vq.^2)
В Редакторе Данных выберите Tools> Filters, чтобы открыть Filter Editor. Создайте эти фильтры:
Is <= 350
Vs <= 300
Соответствуйте данным к одноэтапному 5
- размерная модель с этими ответами и входными параметрами:
Ответы
напряжение d-оси, Vd, в V
напряжение q-оси, Vq, в V
Входные параметры
текущая d-ось, Id, в A
текущая q-ось, Iq, в A
Частота вращения двигателя, n, в об/мин
Электромагнитный моторный крутящий момент, Te, в N · m
В Model Browser выберите Fit Models.
В Fit Models сконфигурируйте модель One-Stage с этими ответами и входными параметрами.
Ответы | Входные параметры |
---|---|
|
|
Чтобы соответствовать модели, выберите OK. При появлении соответствующего запроса примите изменения в данных. По умолчанию подгонка использует Гауссову модель процесса (GPM), чтобы соответствовать данным.
После того, как подгонка завершается, исследуйте модели ответа на Vd и Vq. Model Browser отображает информацию, которую можно использовать, чтобы определить точность образцовой подгонки.
В Model Browser выберите Vd
. Исследуйте поверхность ответа и диагностическую статистику. В этом примере поверхность ответа указывает, что Vd
увеличивается, когда Id
приближается к 0
. Диагностика указывает, что невязки ответа в основном в ±1
V. Эти результаты показывают на довольно точную подгонку.
Сохраните свой проект. Например, выберите Files> Save Project. Сохраните gs_example.mat
в папку work
.
После того, как вы соответствуете модели, создаете функции и таблицы, запускаете оптимизацию и заполняете калибровочные таблицы.
Создайте функции, чтобы использовать, когда вы оптимизируете калибровку. В этом примере, настроенных функциях для:
Значение напряжения, Vs
Текущее значение, Is
Закрутите на ампер, TPA
В MATLAB, на вкладке Apps, в группе Automotive, нажимают MBC Optimization.
В Браузере Клетки выберите Import Models. Если это уже не открыто в браузере MBC Model Fitting, откройте проект gs_example.mat
.
В инструменте Cage Import выберите Vd и Vq. Нажмите Import Selected Items.
В Моделях Импорта нажмите OK. Закройте Import Tool CAGE.
На панели инструментов Cage Browser используйте мастер New Function Model, чтобы создать эти функции:
Is = sqrt (Id.^2 + Iq.^2)
Vs = sqrt (Vd.^2 + Vq.^2)
TPA = Trq./Is
В Браузере Клетки проверьте, что модели функции для Is
, Vs
и TPA
имеют эти описания.
Выберите File> Save Project. Сохраните gs_example.cag
в папку work
.
Составьте таблицы что использование оптимизатора Model-Based Calibration Toolbox, чтобы сохранить оптимизированные параметры. В данном примере таблицы:
текущая d-ось, Id, как функция моторного крутящего момента, Trq
, и частоты вращения двигателя, n
.
текущая q-ось, Iq, как функция моторного крутящего момента, Trq
, и частоты вращения двигателя, n
.
В Браузере Клетки выберите Tables and Tradeoff. В Составляют Таблицы из Модели, выбирают Vd
. Нажмите Next.
В Table Inputs, набор Table rows к 31
. Установите Table columns на 29
. Нажмите Next.
В составляют таблицы из модели:
Выберите Id
и Iq
.
Очистите Vd
.
Нажмите Finish.
В Браузере CAGE исследуйте таблицы.
В этом примере запустите оптимизацию точки с этими спецификациями:
Значение напряжения, Vs, меньше чем или равный 289
V.
Текущее значение, Is, меньше чем или равный 300
A.
Максимизирует крутящий момент на ампер, TPA.
На Браузере Клетки домой, выберите Optimization.
В Создают Оптимизацию из Модели, выбирают TPA
и Next.
В создают оптимизацию из модели:
Выберите Id
и Iq
. Очистите Trq
.
Установите Objective type на Maximize
.
Нажмите Finish.
Добавьте граничное ограничение для модели Vd. В Браузере CAGE выберите Optimization> Constraints> Add Constraint. Установите эти параметры:
Input model: Vd
Evaluate quantity: Boundary constraint
Проверьте настройки. Нажмите OK.
Добавьте ограничения оптимизации. В Браузере CAGE выберите Optimization> Constraints> Add Constraints, чтобы открыть Ограничение Редактирования. Используйте диалоговое окно, чтобы создать ограничения на ток и напряжение.
Is <= 300
Vs <= 289
В Браузере CAGE выберите Import initial data from a table grid.
В Импорте От Табличной Сетки выберите Id_Table
.
В Браузере Клетки тщательно проверьте Цели и Ограничения.
В Браузере Клетки выберите Set Up. Установите Number of start points на 3
. Нажмите Ok.
В Браузере Клетки выберите Run. Оптимизация может занять время, чтобы запустить и замедлить другие компьютерные процессы. Просмотрите прогресс Running Optimization.
Оптимизация может занять время, чтобы запустить и замедлить другие компьютерные процессы. Просмотрите прогресс Running Optimization.
Результаты оптимизации подобны им.
В Браузере CAGE выберите Fill Tables.
Используйте Таблицу, Заполняющую от Мастера Результатов оптимизации, чтобы заполнить таблицы Id_Table
и Iq_Table
.
Для Id_Table
заполните с Id
.
Для Iq_Table
заполните с Iq
.
Примите значения по умолчанию. Нажмите Finish.
Рассмотрите результаты для Iq_Table
. Результаты подобны им.
Рассмотрите результаты для Id_Table
. Результаты подобны им.
Выберите File> Save Project. Сохраните gs_example.cag
в папку work
.
Выберите File> Export> Calibration> All Items.
Использование Экспортирует Калибровочные Данные, чтобы выбрать элементы, чтобы экспортировать и отформатировать. Например, экспортируйте таблицы Id и Iq и точки останова к файлу MATLAB gs_example.m
.
Оптимизированные текущие калибровочные таблицы контроллера являются функциями моторного крутящего момента и частоты вращения двигателя. Используйте таблицы для эти Основанный на потоке Контроллер PM параметры блоков:
Corresponding d-axis current reference, id_ref
Corresponding q-axis current reference, iq_ref
Vector of speed breakpoints, wbp
Vector of torque breakpoints, tbp
Установить параметры блоков:
Запустите.m
файл, который содержит калибровочные результаты Model-Based Calibration Toolbox для текущего контроллера. Например, в командной строке MATLAB, запустите gs_example.m
:
% Access data from MBC current controller calibration
gs_example
Присвойте параметры точки останова данным, содержавшимся в.m
файле. В этом примере данные о скорости находятся в об/мин. Чтобы использовать калибровочные данные для параметров блоков, преобразуйте точки останова скорости от об/мин до rad/s.
Параметр | Команды MATLAB |
---|---|
Vector of speed breakpoints, wbp |
tbp=Trq_norm.X; |
Vector of speed breakpoints, wbp |
% MBC data for speed is in rpm. % For the block parameter, use rad/s nbp=n_norm.X; conversion=(2*pi/60.); wbp=conversion.*nbp; |
Corresponding d-axis current reference, id_ref |
id_table=Id_Table.Z; id_ref=id_table'; |
Corresponding q-axis current reference, iq_ref |
iq_table=Iq_Table.Z; iq_ref=iq_table'; |