MATLAB: Как получить переменные из m-файла GUI в Simulink Model - PullRequest
0 голосов
/ 25 ноября 2010

Эй, ребята, я не знаю, правильно ли я формулирую свою проблему, но я создал графический интерфейс, m-файл и simulink. Изначально у меня были переменные, идущие из m-файла в Simulink, но теперь я хочу, чтобы пользователь мог изменять переменные, поэтому я создал графический интерфейс. Я продолжаю получать сообщение об ошибке, хотя я не думаю, что переменные переходят из m-файла GUI в модель simulink. Я помню, вы должны были установить что-то для этого, например, simset или setcurrentsim или что-то еще, но я не могу вспомнить, поэтому мне было интересно, может кто-нибудь помочь мне с этим?

Ответы [ 2 ]

0 голосов
/ 04 ноября 2015

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

То, что вы ищете, это assignin .Вы идете с: assignin('base','Parametername',value); Поскольку Simulink импортирует переменные из базового рабочего пространства, он делает то же самое, что и ваш старый скрипт.

0 голосов
/ 25 ноября 2010

Используйте команду set_param.

Это должно выглядеть примерно так:

set_param('model name/block name','block type',string);

В моем коде у меня есть модель с именем Pitch_Control с блоком усиления, называемая Pitch Rate Sensor k2 является целым числом.

set_param('Pitch_Control/Pitch Rate Sensor','Gain',num2str(k2));

Надеюсь, это поможет.

...