Dica para trabalhar com variáveis no Simulink

De MediaWiki do Campus São José
Revisão de 16h44min de 30 de novembro de 2015 por Rogerio.j (discussão | contribs)
Ir para navegação Ir para pesquisar

Diretamente do terminal do MATLAB

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.

Mask simulink0.png

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


Mask simulink1.png


Mask simulink2.png