writeLookupTableData

Обновите фрагмент настроенной интерполяционной таблицы

При настройке блоков интерполяционной таблицы с systune используйте эту функцию, чтобы обновить только фрагмент табличных данных в модели Simulink®. Эта функция полезна при перенастройке одной точки или фрагмента интерполяционной таблицы. Чтобы обновить целую интерполяционную таблицу, используйте writeBlockValue.

Синтаксис

writeLookupTableData(st,blockid,breakpoints)
writeLookupTableData(st,blockid,ix1,…,ixN)

Описание

пример

writeLookupTableData(st,blockid,breakpoints) записи настроили значения усиления от интерфейса slTuner до фрагмента интерполяционной таблицы в связанной модели Simulink. Каждая строка breakpoints идентифицирует запись в интерполяционной таблице, чтобы обновить. blockid должен идентифицировать один блок в свойстве TunedBlocks интерфейса slTuner.

пример

writeLookupTableData(st,blockid,ix1,…,ixN) обновляет прямоугольный фрагмент табличных данных. Индексные векторы ix1,…,ixN выбирают определенные точки останова по каждому табличному измерению.

Примеры

свернуть все

Предположим, что у вас есть интерфейс slTuner st к модели Simulink, которая содержит 2D блок Lookup Table Kp Lookup. Блок перечислен в slTuner.TunedBlocks. Предположим далее, что вы повторно настроились для точек проекта, соответствующих (3,5) и (4,6) точки останова в интерполяционной таблице. Обновите интерполяционную таблицу с новыми значениями.

breakpoints = [3 5;4 6];
writeLookupTableData(st,'Kp Lookup',breakpoints)

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

ix1 = 3:5;
ix2 = 7:10;
writeLookupTableData(st,'Kp Lookup',ix1,ix2)

Входные параметры

свернуть все

Интерфейс для настройки систем управления, смоделированных в Simulink, заданном как интерфейс slTuner.

Интерполяционная таблица, чтобы обновить с настроенными значениями, заданными как вектор символов или строка. Блок, идентифицированный blockid, должен быть блоком интерполяционной таблицы в свойстве TunedBlocks интерфейса slTuner st. Можно задать полный блок path или любой фрагмент блока path, который однозначно определяет блок среди других настроенных блоков st.

Пример: 'scdcascade/Kp Lookup'

Пример: "Kp Lookup"

Записи интерполяционной таблицы в обновление, заданное как целочисленный массив. Каждая строка breakpoints задает запись таблицы своими индексами (i1,i2,…,iN). Например:

  • Чтобы обновить данные, сопоставленные с первыми и третьими точками останова в 1D блоке Lookup Table, используйте breakpoints = [1;3].

  • Чтобы обновить данные, сопоставленные с (3,5) и (4,6) записи в 2D блоке Lookup Table, используйте breakpoints = [3 5;4 6].

Фрагмент интерполяционной таблицы, чтобы обновить, заданный как индексные векторы, которые выбирают определенные точки останова по каждому табличному измерению. Например, чтобы обновить 2D блок Lookup Table, задайте два индексных вектора, которые идентифицируют строки и столбцы, чтобы обновить. Если вы хотите обновить фрагмент таблицы, блокировавшей записями 3 - 5 в первой размерности и 7 - 10 во втором измерении, используйте ix1 = 3:5 и ix2 = 7:10.

Советы

  • Если вы используете writeBlockValue, чтобы обновить другие повторно настроенные блоки в вашей модели, исключите интерполяционную таблицу blockid из списка блоков, чтобы обновить с этой функцией.

Введенный в R2017b