Escolar Documentos
Profissional Documentos
Cultura Documentos
www.mathworks.com
Semestre 2018.1
1
Introdução ao uso do MATLAB e da Toolbox de Sinais
MATLAB = MATrix LABoratory
3
Ambiente de Desenvolvimento
Navegador de Ajuda
Espaço de Lançamento
5
Uso do MATLAB
Matemática e Computação.
Desenvolvimento de Algoritmos.
Aquisição de Dados.
Modelagem, Simulação e Prototipação.
Análise, Exploração e Visualização de Gráficos
Científicos e de Engenharia;
Desenvolvimento de Aplicativos.
Desenvolvimento de Interface Gráfica
6
Características
É um sistema cujo dado básico é um array
Resolve problemas computacionais, especialmente com
matrizes e vetores em uma fração de tempo que levaria
para escrever um programa em uma linguagem escalar
não interativa (como C ou Fortran).
Tem diversos toolbox para aplicações especificas, tais
como:
Processamento de Sinais;
Sistemas de Controle
Redes Neurais
Lógica Fuzzy
Wavelets
Simulação
7
Comandos Básicos
8
Comandos do MATLAB
• São usualmente digitados em linhas separadas, embora
possa-se ter múltiplos comandos na mesma linha, desde
que separados por ponto e vírgula (;).
9
Matrizes, Vetores e Escalares
• Uma matriz pode ser descrita como A(i , j) ou a(i , j), em
que A e a são matrizes diferentes.
• O índice i se refere às linhas e o índice j às colunas.
• O tamanho de uma matriz é especificado pelo número de
linhas e colunas.
• Uma matriz que possui somente uma linha ou somente
uma coluna é chamada de vetor;
• Uma matriz possuir somente uma linha e uma coluna, ela
é um escalar.
• Exemplo 1: Digitar e executar os comandos abaixo com e
sem ;
a = 0.5;
b = [ 1 3 5 7 9]; D = [1 2 3
c = [2;4;6;8;10]; 456
7 8 9]
D = [1 2 3;4 5 6;7 8 9]; 10
Comando Whos
» whos
12
Opções para Escrever Matrizes
Se o operador (:) for usado para separar três números a, b, e c , então o
comando gera valores entre a e c com o incremento dado por b.
Exemplos: Y = 10:-1:1
Z = -pi:pi/10:pi
O comando (:) também pode ser usado para selecionar submatrizes a
partir de uma outra matriz. Exemplo, seja a matriz D
D = [1 2 3;4 5 6;7 8 9];
os comandos:
dl2 = D(2,:); % Segunda linha da matriz D.
dc1 = D(:,1); % Primeira coluna da matriz D.
dd = D(2:3,1:2); % dd = [4 5;7 8]
14
Exemplos de Operações com Escalares
>> 3*pi^2 >> sqrt(ans) >> x = (ans-3)/2
ans = ans = x=
29.6088 5.4414 1.2207
>> pi
ans =
3.1416
>> exp(1)
ans =
2.7183
>> log(ans)
ans =
1
15
Formatação dos Dados
Existem várias formas possíveis de formatação, que podem ser vistas
usando o comando help format
18
Operações com Vetores
As operações adição, subtração, multiplicação, e divisão de um vetor por
um escalar são aplicadas a todos os elementos do vetor:
Sejam os vetores a e b dados por:
» a*2
» a = 1:5; b = 1:2:9; Então:
ans = 2 4 6 8 10
19
Operações com Vetores
A multiplicação e divisão elemento por elemento é feita de maneira
similar, exceto por uma pequena alteração na notação:
» a.*b
ans =
1 6 15 28 45
» a.^2
ans = 1 4 9 16 25
22
Gráficos
Um gráfico alternativo, mostrado na figura anterior pode ser obtido da
seguinte forma:
» x = 1:6; y = [-1 1/4 1 pi 2 1]; plot(x,y,'+')
23
Gráficos
• Aos gráficos das figuras anteriores pode-se acrescentar título, nomes
dos eixos, e reticulado.
24
Comando subplot
• Cria diversos gráficos numa mesma janela gráfica.
26
Scripts e Funções
Um “script” é simplesmente uma coleção de comandos do MATLAB
escritos num arquivo tipo m ( um arquivo texto com extensão .m).
» N=50; a=1;
» seno 27
Scripts e Funções
Com base no script anterior teremos o seguinte gráfico:
28
Uso da "Toolbox Signal"
• A “Toolbox Signal" possui uma coleção de funções que são
utilizadas em processamento de sinais.
29
Exercício 1
Gerar uma onda quadrada periódica com amplitude unitária, com freqüência
fundamental de 10 Hz, e ciclo de repetição de 50% ( ciclo de repetição é a
porção de cada ciclo para a qual o sinal é positivo, e 0 < cr < 100%).
% Programa para gerar uma onda quadrada
A = 1; % amplitude de pico
f0 = 10; % freqüência fundamental em Hz
cr = 50; % onda quadrada simétrica em %
fs = 1000; % freqüência de amostragem em Hz
t = 0:1/fs:1; % gera o eixo do tempo
onda_quadrada = A*square(2*pi*f0*t,cr);
plot(t,onda_quadrada), xlabel('t (s)'),ylabel('Amplitude')
title('Onda Quadrada Simétrica')
axis([0 1 -1.5 1.5]);
30
Exercício 1
31
Exercício 2
Gerar uma onda quadrada simétrica e discreta, com amplitude
unitária, frequência fundamental de π/6 rad, e no intervalo [-15,15].
32
Exercício 2
33
Exercício 3
Gerar o sinal x(t) = 5e-4t sen(20.π.t). Considere a frequência de
amostragem como sendo de 1 kHz.
35