Вы можете таблица импорта и устанавливать точки останова данные из переменных в рабочем пространстве MATLAB путем ссылки на них во вкладке Table and Breakpoints диалогового окна. Следующие примеры показывают, как импортировать и экспортировать стандартный формат и нестандартные данные о формате из рабочего пространства MATLAB.
Предположим, что вы задаете 3-D интерполяционную таблицу в своем n-D блоке Lookup Table.
Создайте переменные рабочей области, чтобы использовать в качестве точки останова и табличных данных для интерполяционной таблицы.
table3d_map = zeros(2,4,3); table3d_map(:,:,1) = [ 1 2 3 4; 5 6 7 8]; table3d_map(:,:,2) = [ 11 12 13 14; 15 16 17 18]; table3d_map(:,:,3) = [ 111 112 113 114; 115 116 117 118]; bp3d_z =[ 0 10 20]; bp3d_x =[ 0 10 20 30]; bp3d_y =[ 400 6400];
Табличные данные: table3d_map
Точки останова 1: bp3d_y
Точки останова 2: bp3d_x
Точки останова 3: bp3d_z
Нажмите Edit table and breakpoints, чтобы открыть Редактор Интерполяционной таблицы и показать данные из переменных рабочей области.

Когда вы вносите изменения в свои данные об интерполяционной таблице, рассматриваете распространение изменений назад в переменных рабочего пространства MATLAB, данные были импортированы от использования File> Update Block Data.
Можно также использовать Редактор Интерполяционной таблицы, чтобы отредактировать табличные данные и установить точки останова набор данных Simulink.LookupTable и набор данных точки останова Simulink.Breakpoint объекты и распространяют изменения назад в объекте.
Предположим, что вы делаете изменение в переменные интерполяционной таблицы импортированным из переменных рабочего пространства MATLAB в, Импортируют Данные об Интерполяционной таблице Стандартного формата. Например, измените значение данных в (1,1,1) от 1 к 33. Чтобы распространить это возвращаются к table3d_map в рабочей области выберите File> Update Block Data. Нажмите Yes, чтобы подтвердить, что вы хотите перезаписать table3d_map.
Предположим, что вы задаете 3-D интерполяционную таблицу в своем n-D блоке Lookup Table. Создайте переменные рабочей области, чтобы использовать в качестве точки останова и табличных данных для интерполяционной таблицы. Переменная для табличных данных, table3d_map_custom, двумерная матрица.
table3d_map_custom = zeros(6,4); table3d_map_custom = [ 1 2 3 4; 5 6 7 8; 11 12 13 14; 15 16 17 18; 111 112 113 114; 115 116 117 118]; bp3d_z =[ 0 10 20]; bp3d_x =[ 0 10 20 30]; bp3d_y =[ 400 6400];
table3d_map_custom в 3D матрицу для табличного ввода данных с помощью reshape команда.
Табличные данные: reshape(table3d_map_custom,[2,4,3])
Точки останова 1: bp3d_y
Точки останова 2: bp3d_x
Точки останова 3: bp3d_z
Нажмите Edit table and breakpoints, чтобы открыть Редактор Интерполяционной таблицы и показать данные из переменных рабочей области.

Изменитесь 1 - 33 в Редакторе Интерполяционной таблицы. Редактор Интерполяционной таблицы записывает ваши изменения путем поддержания копии таблицы. Чтобы восстановить значения переменных из рабочей области MATLAB®, выберите File> Reload Block Data. Чтобы обновить переменные рабочего пространства MATLAB с отредактированными данными, выберите File> Update Block Data в Редакторе Интерполяционной таблицы. Вы не можете распространить изменение в table3d_map_custom, переменная рабочей области, которая содержит нестандартные табличные данные для n-D блока Lookup Table. Чтобы распространить изменение, необходимо указать специальную функцию, которая находится на пути поиска файлов MATLAB. Для получения дополнительной информации смотрите, Распространяют Нестандартные Данные об Интерполяционной таблице Формата.
В этом примере показано, как распространить изменения из Редактора Интерполяционной таблицы к переменным рабочей области нестандартного формата. Предположим, что ваша модель Simulink® от Импортирует Нестандартные Данные об Интерполяционной таблице Формата, имеет 3D интерполяционную таблицу, которая получает ее табличные данные из двумерной переменной table3d_map_custom рабочей области. Обновите интерполяционную таблицу в Редакторе Интерполяционной таблицы и распространите, они возвращаются к table3d_map_custom использование специальной функции.
Создайте файл с именем sl_customization.m с этим содержимым.
function sl_customization(cm)
cm.LookupTableEditorCustomizer.getTableConvertToCustomInfoFcnHandle{end+1} = ...
@myGetTableConvertInfoFcn;
endВ этой функции:
Аргумент cm указатель на менеджера по индивидуальной настройке объект.
Указатель @myGetTableConvertInfoFcn добавляется к списку указателей на функцию в массиве ячеек для cm.LookupTableEditorCustomizer.getTableConvertToCustomInfoFcnHandle. Можно использовать любое алфавитно-цифровое имя в функции, указатель которой вы добавляете в массив ячеек.
В том же файле задайте myGetTableConvertInfoFcn функция.
function blkInfo = myGetTableConvertInfoFcn(blk,tableStr)
blkInfo.allowTableConvertLocal = true;
blkInfo.tableWorkSpaceVarName = 'table3d_map_custom';
blkInfo.tableConvertFcnHandle = @myConvertTableFcn;
endmyGetTableConvertInfoFcn функция возвращает blkInfo объект, содержащий три поля.
allowTableConvertLocal — Позволяет табличное преобразование данных для блока.
tableWorkSpaceVarName — Задает имя переменной рабочей области, которая имеет нестандартный формат таблицы.
tableConvertFcnHandle — Задает указатель для функции преобразования.
Когда allowTableConvertLocal установлен в true, табличные данные для того блока преобразованы в нестандартный формат переменной рабочей области, имя которой совпадает с tableWorkSpaceVarName. Функция преобразования соответствует указателю что tableConvertFcnHandle задает. Можно использовать любое алфавитно-цифровое имя в функции преобразования.
В том же файле задайте myConvertTableFcn функция. Эта функция преобразует 3D интерполяционную таблицу строк размера * Столбцы * Высота к двумерной переменной размера (Rows*Height) * Столбцы.
% Converts 3-dimensional lookup table from Simulink format to
% nonstandard format used in workspace variable
function cMap = myConvertTableFcn(data)
% Determine the row and column number of the 3D table data
mapDim = size(data);
numCol = mapDim(2);
numRow = mapDim(1)*mapDim(3);
cMap = zeros(numRow, numCol);
% Transform data back to a 2-dimensional matrix
cMap = reshape(data,[numRow,numCol]);
endПоместите sl_customization.m на пути поиска файлов MATLAB. У вас может быть несколько файлов с именем sl_customization.m на пути поиска файлов. Для получения дополнительной информации смотрите Поведение с Несколькими Специальными функциями.
Обновите индивидуальные настройки Simulink в командной строке MATLAB.
sl_refresh_customizations
Откройтесь Редактор Интерполяционной таблицы для вашей интерполяционной таблицы блокируют и выбирают File> Update Block Data. Нажмите Yes, чтобы перезаписать переменную table3d_map_custom рабочей области.
Проверяйте значение table3d_map_custom в базовом рабочем пространстве.
table3d_map_custom =
33 2 3 4
5 6 7 8
11 12 13 14
15 16 17 18
111 112 113 114
115 116 117 118Изменение в Редакторе Интерполяционной таблицы распространило к переменной рабочей области.
Если вы не перезаписываете переменную table3d_map_custom рабочей области, вам предлагают заменить его на числовые данные. Нажмите Yes, чтобы заменить выражение в поле Table data с числовыми данными. Нажмите No, если вы не хотите, чтобы ваш Редактор Интерполяционной таблицы изменения для табличных данных появился в диалоговом окне блока.
В начале сеанса работы с MATLAB Simulink загружает каждый sl_customization.m файл настройки на пути и выполняет sl_customization функция. Выполнение каждой функции устанавливает индивидуальные настройки для того сеанса.
Когда вы выбираете File> Update Block Data в Редакторе Интерполяционной таблицы, редактор проверяет список указателей на функцию в массиве ячеек для cm.LookupTableEditorCustomizer.getTableConvertToCustomInfoFcnHandle. Если массив ячеек содержит один или несколько указателей на функцию, allowTableConvertLocal свойство определяет, могут ли изменения в Редакторе Интерполяционной таблицы быть распространены.
Если значение установлено к true, затем табличные данные преобразованы в нестандартный формат в переменной рабочей области.
Если значение установлено к false, затем табличные данные не преобразованы в нестандартный формат в переменной рабочей области.
Если значение установлено к true и другая специальная функция задает его, чтобы быть false, Редактор Интерполяционной таблицы сообщает об ошибке.