Dica para trabalhar com variáveis no Simulink

De IFSC São José

(Diferença entre revisões)
Ir para: navegação, pesquisa
(Bloco com parâmetros)
(Bloco com parâmetros)
Linha 15: Linha 15:
Outra forma de trabalhar com variáveis no modelo de simulação é através da criação de um bloco que contém todas essas variáveis
Outra forma de trabalhar com variáveis no modelo de simulação é através da criação de um bloco que contém todas essas variáveis
dentro de uma '''struct'''. Primeiramente adicione no modelo um bloco chamado '''Subsystem'''. Em seguida clique sobre o bloco e aperte '''ctrl + M''' criando uma mascara no bloco. Agora estamos prontos para definir as variáveis para pode-las utilizadas no modelo.
dentro de uma '''struct'''. Primeiramente adicione no modelo um bloco chamado '''Subsystem'''. Em seguida clique sobre o bloco e aperte '''ctrl + M''' criando uma mascara no bloco. Agora estamos prontos para definir as variáveis para pode-las utilizadas no modelo.
-
 
-
 
===Definir parâmetros da máscara===
===Definir parâmetros da máscara===

Edição de 21h40min de 30 de novembro de 2015

Tabela de conteúdo


Diretamente do terminal do MATLAB

Você pode declarar as variáveis que queira usar no modelo pelo próprio terminal do MATLAB como mostrado na figura abaixo:

Mask simulink00.png

E utilizar estas variáveis nos blocos da seguinte forma:

Mask simulink01.png

Bloco com parâmetros

Outra forma de trabalhar com variáveis no modelo de simulação é através da criação de um bloco que contém todas essas variáveis dentro de uma struct. Primeiramente adicione no modelo um bloco chamado Subsystem. Em seguida clique sobre o bloco e aperte ctrl + M criando uma mascara no bloco. Agora estamos prontos para definir as variáveis para pode-las utilizadas no modelo.

Definir parâmetros da máscara

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

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. Certifique-se qu eesteja no diretório onde esta salvo tanto o modelo como o arquivo .m (os dois devem estar no mesmo diretório)


Mask simulink2.png

Ferramentas pessoais
Espaços nominais
Variantes
Ações
Navegação
Ensino
Pesquisa
Extensão
Serviços
Ferramentas