How can I set Values to Simulink Block from my Workspace?

21 visualizaciones (últimos 30 días)
Bob
Bob el 3 de Feb. de 2016
Comentada: Bob el 8 de Feb. de 2016
I want to send PID Values to Simulink Model from my file.m
I have tried this way but I got an error which I dont understand what it means...
PID_Values = set_param('Simulink_Model/PID Controller','PID Controller','1','1','1');
ERROR: PID 1dof block (mask) does not have a parameter named 'PID Controller'
or
P_Value = set_param('Simulink_Model/PID Controller','PID Controller','1');
I_Value = set_param('Simulink_Model/PID Controller','PID Controller','1');
D_Value = set_param('Simulink_Model/PID Controller','PID Controller','1');
ERROR: PID 1dof block (mask) does not have a parameter named 'PID Controller'

Respuesta aceptada

Nobel Mondal
Nobel Mondal el 8 de Feb. de 2016
To get the list of parameters associated with 'PID Controller' block, I would use the below command :
allParams = get_param('Simulink_Model/PID Controller', 'DialogParameters');
If you are looking to find any particular parameter value, let's say the Proportional Gain :
P_Gain_Val = get_param('Simulink_Model/PID Controller', 'P');
For setting values , (P = 10, I = 2, D = 0.1)
set_param('Simulink_Model/PID Controller', 'P', '10', 'I', '2', 'D', '0.1'); % No output argument

Más respuestas (1)

Suresh Garimella
Suresh Garimella el 3 de Feb. de 2016
error is saying that the specific block you are using does not have parameter 'PID Controller'.
select the block, then type get_param in command window,
all parameters of that block (object) will be displayed, now use set_param to change any parameter value
  2 comentarios
Bob
Bob el 4 de Feb. de 2016
P_Value_get = get_param('Simulink_Model/PID Controller','PID Controller','P');
I_Value_get = get_param('Simulink_Model/PID Controller','PID Controller','I');
D_Value_get = get_param('Simulink_Model/PID Controller','PID Controller','D');
P=10;
I=100;
D=1000;
P_Value_Set = set_param('Simulink_Model/PID Controller','PID Controller','P');
I_Value_Set = set_param('Simulink_Model/PID Controller','PID Controller','I');
D_Value_Set = set_param('Simulink_Model/PID Controller','PID Controller','D');
Again error
Nobel Mondal
Nobel Mondal el 8 de Feb. de 2016
You are not using get_param and set_param in a proper way. Please type
help get_param
help set_param
in matlab command prompt to see the intended usage.

Iniciar sesión para comentar.

Categorías

Más información sobre Multicore Processor Targets en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by