Как прочитать переменную в функции set_param SIMULINK? - PullRequest
0 голосов
/ 23 февраля 2019

У меня проблема с чтением значения из файла и помещением его в функцию Set_param, которая изменит параметры модели SIMULINK.Это мой код, где здесь я получаю значение A из текстового файла, но я хочу поместить A в Set_param.Когда Simulink открыт, он показывает A, а не значение A в модели.

open_system('Transient.slx')  %this will open the simulink model
% get a value from txt file and put it in variable A
A= dlmread('C:\xampp\htdocs\RCE\MATLAB\FYP_expirement\SpeedControl\exp_value.txt');
% here when i put the variable A the function does not accept it
set_param('Transient/Gain','Gain','A')

я пробую A без одинарных кавычек, и это дает ошибку.

set_param('Transient/Gain','Gain', A)

как я могу вставить переменную в эту функцию?или есть другое решение?

1 Ответ

0 голосов
/ 24 февраля 2019

Большое спасибо, я нахожу способ заставить это работать.кажется, что set_param принимает только символы.Поэтому после получения значения я должен преобразовать его в строку следующим образом:

A= dlmread('C:\xampp\htdocs\RCE\MATLAB\FYP_expirement\SpeedControl\exp_value.txt');
s = num2str(A)
set_param('Transient/Gain','Gain', s)

, затем, когда я вставляю s в функцию, мне не нужно использовать кавычки.

...