Заполнение интерполяционных таблиц из данных

Настройка интерполяционной таблицы и экспериментальных данных

Если вы рассматриваете простую стратегию, вы, возможно, захотите заполнить интерполяционные таблицы непосредственно из экспериментальных данных. Для примера стратегия простого крутящего момента заполняет интерполяционную таблицу значениями крутящего момента в области значений скорости и относительного заряда воздуха или нагрузки. Можно использовать CAGE, чтобы заполнить эту стратегию (которая является набором интерполяционных таблиц) путем обращения к набору экспериментальных данных. Можно также заполнить интерполяционные таблицы выходом оптимизации.

В этом руководстве приведены шаги калибровки интерполяционной таблицы для крутящего момента на основе экспериментальных данных.

Запустите CAGE путем ввода

cage

Сначала настройте пустую интерполяционную таблицу, готовую к заполнению, используя экспериментальные данные или выход оптимизации.

  1. Добавьте переменные для скорости и загрузки путем импорта словаря переменных.

  2. Добавьте новую таблицу к сеансу.

  3. Импортируйте свои экспериментальные данные.

Добавление переменных

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

Чтобы добавить словарь переменных,

  1. Выберите File > Import > Variable Dictionary.

  2. Выберите table_filling_tutorial.xml от matlab\toolbox\mbc\mbctraining папка.

Это загружает словарь переменной в ваш сеанс. Словарь переменных включает в себя:

  • N, скорость вращения двигателя

  • L, относительный заряд воздуха

  • A, соотношение воздух/топливо (AFR)

  • stoich, стехиометрическая константа

Теперь можно добавить интерполяционную таблицу к сеансу.

Добавление новой интерполяционной таблицы

Сначала добавьте интерполяционную таблицу для заполнения.

  1. Выберите File > New > 2D Lookup Table.

    Это открывает диалоговое окно с просьбой задать имена переменных для нормализаторов. Как видно из элементов управления диалогового окна, принятие значений по умолчанию создает интерполяционную таблицу с 10 строками и 10 столбцами с начальным значением 0 в каждой камере.

  2. Измените количество столбцов на 7.

  3. Выберите L как переменная для Y и N нормализатора когда переменная для нормализатора X, нажмите OK.

CAGE переводит вас в Lookup Tables вид.

CAGE автоматически инициализировал нормализаторы, разнеся точки останова равномерно по области значений значений для скорости вращения двигателя (N) и нагрузки (L). Области значений переменных находятся в словаре переменных. Перейдите на вид Normalizer, чтобы проверить нормализаторы.

Разверните ветвь интерполяционной таблицы по t NNormalizer как показано.

Здесь отображаются два нормализатора для интерполяционной таблицы.

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

Импорт экспериментальных данных

Чтобы заполнить интерполяционную таблицу значениями, основанными на экспериментальных данных, необходимо добавить данные к своему сеансу. Если вы хотите заполнить интерполяционную таблицу выходом оптимизации, вывод появляется автоматически в представлении Data Sets как новый набор данных под названием Exported_Optimization_Data когда вы выбираете Экспорт, чтобы Данные кнопку Set панели инструментов. Для этого руководства вам нужны некоторые экспериментальные данные.

CAGE использует представление Data Sets для хранения сеток данных. Таким образом, добавьте набор данных к своему сеансу.

Выберите File > New > Data Set, чтобы добавить набор данных к сеансу. Это меняет вид на Data Set вид.

Теперь можно импортировать экспериментальные данные в набор данных:

  1. Выберите File > Import > Data.

  2. В браузере файлов выберите meas_tq_data.csv от matlab\toolbox\mbc\mbctraining и нажмите кнопку Open.

    Этот набор данных включает шесть столбцов данных: настройки тестовой камеры для скорости вращения двигателя (RPM), и измеренные значения крутящего момента (tqmeas), скорость вращения двигателя (nmeas), соотношение воздух/топливо (afrmeas), угол искры (spkmeas), и загрузка (loadmeas).

  3. Откроется мастер импорта набора данных. Первый экран запрашивает, какой из столбцов данных вы хотите импортировать. Щелкните Next, чтобы импортировать все.

    На следующем экране появится запрос на связывание переменных в проекте со столбцами данных в данных.

  4. Подсветите N в столбце Project Assignments и nmeas в Data Column, затем нажмите кнопку присвоения, показанную на рисунке.

  5. Повторите это для связи L с loadmeas. Диалоговое окно должно быть таким же, как и следующее.

  6. Нажмите кнопку Finish, чтобы закрыть диалоговое окно.

Теперь у вас есть пустая интерполяционная таблица и некоторые экспериментальные данные в вашем сеансе. Вы готовы заполнить интерполяционную таблицу значениями на основе этих данных.

Заполнение интерполяционной таблицы из экспериментальных данных

У вас есть пустая интерполяционная таблица и экспериментальные данные в вашем сеансе. Теперь можно заполнить интерполяционную таблицу значениями, основанными на ваших данных.

Импортированные данные являются серией измеренных значений крутящего момента при выборе различных рабочих точек. Эти рабочие точки не соответствуют значениям заданных точек останова. Интерполяционная таблица имеет область значений скоростей вращения двигателя от 500 оборотов в минуту (об/мин) до 3500 об/мин. Область значений экспериментальных данных намного больше.

CAGE экстраполирует значения экспериментальных данных в области значений интерполяционной таблицы. Затем она заполняет интерполяционную таблицу, выбирая значения крутящего момента экстраполяции в ваших точках останова.

Чтобы заполнить интерполяционную таблицу значениями, основанными на экспериментальных данных,

  1. Чтобы просмотреть отображение Lookup Table Filler, щелкните на панели инструментов на Data Sets виде; или выберите View > Lookup Table Filler.

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

  2. На нижней панели выберите New_2D_Table из списка Lookup table to fill .

  3. Выберите tqmeas из списка Factor to fill lookup table. Это данные, которые необходимо использовать для заполнения интерполяционной таблицы.

  4. Выберите N из списка X-axis factor и L из списка Y-axis factor. Ваш сеанс должен быть подобен этому.

    Верхняя панель отображает точки останова интерполяционной таблицы как пересечения и рабочие точки, где есть данные как синие точки. Наборы данных отображают точки в экспериментальных данных, а не значения в точках останова. Перед заполнением интерполяционной таблицы можно просмотреть распределение данных по сравнению с точками останова интерполяционной таблицы.

  5. Чтобы просмотреть интерполяционную таблицу после ее заполнения, убедитесь, что Show lookup table history after fill поле внизу слева выбрано.

  6. Чтобы заполнить интерполяционную таблицу значениями tqmeas экстраполированный в области значений нормализаторов, щелкните Fill.

    Это открывает диалоговое окно История

  7. Нажмите кнопку Close, чтобы закрыть диалоговое окно История и вернуться к Lookup Table Filler отображению.

  8. Чтобы просмотреть график интерполяционной таблицы, как показано, выберите Data > Plot > Surface.

Это отображение показывает интерполяционную таблицу, заполненную экспериментальными точками, наложенными на фиолетовые точки.

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

Заметьте, что область значений интерполяционной таблицы меньше, чем область значений данных, так как интерполяционная таблица имеет область значений только от 500 об/мин до 3500 об/мин.

Данные, находящиеся вне области значений интерполяционной таблицы, влияют на значения, которыми заполнена интерполяционная таблица. Можно исключить точки вне области значений интерполяционной таблицы, так что только точки в области значений, которые вас интересуют, влияют на значения в интерполяционной таблице.

Выбор областей данных

Можно игнорировать точки в наборе данных, когда вы заполняете интерполяционную таблицу.

Например, в этом руководстве экспериментальные данные варьируются по значениям, которые не включены в интерполяционную таблицу. Вы хотите игнорировать значения скорости вращения двигателя, которые больше, чем область значений интерполяционной таблицы.

Чтобы игнорировать точки в наборе данных,

  1. Выберите Data > Plot > Data Set. Это возвращает вас к представлению о том, где находятся точки прерывания относительно экспериментальных данных.

  2. Чтобы определить область, которую вы хотите включить, щелкните левой кнопкой мыши и перетащите график. Выделите все точки, включенные в область значений интерполяционной таблицы, как показано на рисунке.

  3. Чтобы заполнить интерполяционную таблицу на основе экстраполяции только по этим точкам данных, нажмите Fill. При этом снова откроется отображение истории.

  4. На отображении История выберите версии 2 и 3, используя Ctrl + нажатие кнопки. На следующем отображении показано сравнение интерполяционной таблицы, заполненной двумя различными экстраполяциями.

  5. Нажмите кнопку Close, чтобы закрыть средство просмотра истории.

  6. Выберите Data > Plot > Surface, чтобы снова просмотреть поверхность.

Отображение поверхности теперь показывает интерполяционную таблицу, заполненную только ссылкой на точки данных, которые включены в область значений интерполяционной таблицы.

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

Экспорт калибровки

Для экспорта калибровки:

  1. Чтобы выделить интерполяционную таблицу, которую вы хотите экспортировать, нажмите кнопку Lookup Tables.

  2. Выделите New_2D_Table.

  3. Выберите File > Export > Calibration > Selected Item.

  4. Выберите тип файла, в котором необходимо сохранить калибровки. В целях этого руководства выберите Comma Separated Value (.csv).

  5. Введите table_filling_tutorial.csv как имя файла и нажатия кнопки Save.

Похожие темы