Mudanças entre as edições de "Dica para trabalhar com variáveis no Simulink"
Linha 3: | Linha 3: | ||
== Diretamente do terminal do MATLAB == | == Diretamente do terminal do MATLAB == | ||
+ | Você pode declarar as variaveis que queira usar no modelo pelo proprio temrinal do MATLAB como mostrado na figura abaixo: | ||
[[Arquivo:Mask_simulink00.png|330px]] | [[Arquivo:Mask_simulink00.png|330px]] | ||
+ | E utilizar ela nos blocos da seguinte forma: | ||
[[Arquivo:Mask_simulink01.png|330px]] | [[Arquivo:Mask_simulink01.png|330px]] |
Edição das 16h54min de 30 de novembro de 2015
Diretamente do terminal do MATLAB
Você pode declarar as variaveis que queira usar no modelo pelo proprio temrinal do MATLAB como mostrado na figura abaixo:
E utilizar ela nos blocos da seguinte forma:
Bloco com parâmetros
Adicione no modelo um bloco chamado subsystem, botão direito no bloco e mask - create mask
Definir parâmetros da máscara
- No Editor de máscara, clique na guia Parameters & Dialog;
- Clique no ícone Edit parâmetro e adicione duas linhas;
- Nas linhas que aparecem, especifique os parâmetros da seguinte forma.
Na coluna Prompt você especifica sobre a variavel Na coluna Name você da o nome a variavél que sera utilizada no modelo Click Apply.
Para saber mais sobre configuração de mascaras acesse : Mask a Block ou Block Masks
Arquivo .m com as instruções
Após esse processo escreva um arquivo .m com isso:
function parametros
persistent postloadFlag;
if isempty(postloadFlag)
postloadFlag = true;
else
if postloadFlag
postloadFlag = false;ip
return
end
end
settingsBlock = [bdroot '/Subsystem']; % Nome do bloco
[symbol_rate] = getSettings(settingsBlock,'symbol_rate'); % Nome do parametro
[M_ary] = getSettings(settingsBlock,'M_ary');
p.symbol_rate = symbol_rate;
p.M = M_ary;
% Atribuir variáveis na forma de struct para o workspace do MATLAB
assignin('base', 'p', p);
function varargout = getSettings(settingsBlock, varargin)
varargout = cell(size(varargin));
h = get_param(settingsBlock, 'handle');
for n = 1:length(varargin)
varargout{n} = evalin('base', get(h, varargin{n}));
end
Inicialização do arquivo .m dentro da mascara do subsistema criado
Vá novamente no subsistema onde você criou a mascara e vá em mask-edit mask. Escolha o campo Initialization e coloque o nome dado a este arquivo.m
Assim, você utiliza essas variaveis pelo modelo, e pode altera-las apenas dando dois clique no bloco mascarado e alterando por la os valores dos parametros