Você está na página 1de 15

Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


30 de maro de 2016 01 de abril de 2016

Disciplina: ECO 018


Prof. Caio Fernandes de Paula
Prof. Fernando Henrique D. Guaracy
Prof.a Rosimeire Aparecida Jernimo

Objetivo

O objetivo dessa aula apresentar uma introduo ao estudo de sinais utilizando


comandos e funes do MATLAB.

Introduo aos Sinais

Sinais so manifestaes fsicas que carregam informao. Seu estudo importante em engenharia pois fornecem modelos para determinadas quantidades fsicas.
Sinais podem ser funes de uma ou mais variveis independentes, e em geral
uma das variveis independentes o tempo t (geralmente dado em segundos). Sinais
tambm podem assumir valores reais ou complexos. Entre as diversas classificaes
de sinais, pode-se ter:
Sinais de tempo contnuo ou tempo discreto;
Sinais analgicos ou digitais;
Sinais peridicos ou no-peridicos;
Sinais causais, anti-causais ou no-causais;
Sinais de energia ou potncia;

Universidade Federal de Itajub Campus Avanado de Itabira


Sinais pares ou mpares;
Sinais determinsticos ou probabilsticos.
Basicamente, com o MATLAB, podemos representar matematicamente os sinais
de duas maneiras: explcita, avaliando a funo nos pontos desejados, ou implcita,
utilizando computao simblica e/ou funes inline.
Como exemplo, tomemos o sinal de tenso entre uma fase e o neutro na rede
eltrica residencial

v(t) = 127 2 sin(260t) [V] .

(1)

Este o exemplo de um sinal de uma varivel independente, a valores reais, contnuo, analgico, peridico (com perodo fundamental igual a 1/60 segundos), causal
(se t 0) e determinstico.
Podemos utilizar o MATLAB para gerar o grfico deste sinal de diversas maneiras.
Representando o sinal de maneira explcita, ou seja, analisando o valor do sinal para
cada instante de tempo (a nica varivel independente) desejado, temos:

>>
>>
>>
>>
>>
>>
>>
>>
>>

f = 60;
T = 1/f;
t = 0:T/1000:2*T; % mil pontos por perodo, dois perodos
v = 127*sqrt(2)*sin(2*pi*f*t);
figure
plot(t,v)
xlabel('t [s]')
ylabel('v(t) [V]')
title('Sinal de Tenso Fase-Neutro da Rede Eltrica Residencial')

Representando matematicamente o sinal atravs de variveis simblicas, pode-se


utilizar o comando ezplot:

>>
>>
>>
>>
>>

f = 60;
T = 1/f;
syms t;
v = 127*sqrt(2)*sin(2*pi*60*t);
figure
2

Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

>>
>>
>>
>>

ezplot(v,[0,2*T])
xlabel('t [s]')
ylabel('v(t) [V]')
title('Sinal de Tenso Fase-Neutro da Rede Eltrica Residencial')

ou

>> f = 60;
>> T = 1/f;
>> v = @(t) 127*sqrt(2)*sin(2*pi*f*t)
v =

>>
>>
>>
>>
>>

@(t)127*sqrt(2)*sin(2*pi*f*t)
figure
ezplot(v,[0,2*T])
xlabel('t [s]')
ylabel('v(t) [V]')
title('Sinal de Tenso Fase-Neutro da Rede Eltrica Residencial')

Se o sinal possui duas ou trs variveis independentes, ento de forma a gerar o


grfico no MATLAB deve-se utilizar os comandos mesh e meshgrid.
Como exemplo, considere uma sala de 3 metros de comprimento e 4 metros de
largura. A temperatura na sala dada pela seguinte equao
T (x, y) = 30 e0,1(x

2 +y 2

) [ C] ,

(2)

na qual x [0, 3] representa as coordenadas do comprimento e y [0, 4] as coordenadas da largura. O grfico deste sinal pode ser obtido atravs dos seguintes comandos
no MATLAB:

>> x = 0:0.01:3;
>> y = 0:0.01:4;
>> [X,Y] = meshgrid(x,y); % prepara o grid retangular com as coordenadas
desejadas
>> T = 30 - exp(0.1*(X.^2 + Y.^2));
>> figure
3
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

>> mesh(X,Y,T); % gera o grfico tridimensional


>> xlabel('x [m]')
>> ylabel('y [m]')
>> zlabel('T [ C]')
>> title('Sinal de Temperatura em uma sala de 3 metros de comprimento
e 4 metros de largura')

Assim como ocorre com o caso unidimensional, pode-se trabalhar definindo as


variveis de maneira simblica, e ento utilizar o comando ezmesh ou ezsurf :

>> syms x y
>> T = 30 - exp(0.1*(x^2 + y^2))
>> figure
>> ezmesh(T,[0 3 0 4])
>> xlabel('x [m]')
>> ylabel('y [m]')
>> title('Sinal de Temperatura em uma sala de 3 metros de comprimento
e 4 metros de largura')

ou

>> T = @(x,y) 30 - exp(0.1*(x^2+y^2))


T =
@(x,y)30-exp(0.1*(x^2+y^2))
>> figure
>> ezmesh(T,[0 3 0 4])
>> xlabel('x [m]')
>> ylabel('y [m]')
>> title('Sinal de Temperatura em uma sala de 3 metros de comprimento
e 4 metros de largura')

O comando plot3 gera grficos no espao tridimensional (x, y, z). Exemplo: considere a trajetria de uma partcula no espao tridimensional em funo do tempo, dado
4
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


por:
s(t) = (sin(t), cos(t), t) .

(3)

O grfico da trajetria da partcula, que uma hlice, pode ser gerado atravs de:

>>
>>
>>
>>
>>
>>
>>
>>
>>
>>

t = 0:pi/50:10*pi;
s_x = sin(t);
s_y = cos(t);
s_z = t;
figure
plot3(s_x,s_y,s_z)
xlabel('Posio no eixo x')
ylabel('Posio no eixo y')
zlabel('Posio no eixo z')
title('Trajetria de uma partcula no espao tridimensional')

ou

>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>

syms t;
s_x = sin(t);
s_y = cos(t);
s_z = t;
figure
ezplot3(s_x,s_y,s_z,[0,10*pi])
grid off
xlabel('Posio no eixo x')
ylabel('Posio no eixo y')
zlabel('Posio no eixo z')
title('Trajetria de uma partcula no espao tridimensional')

5
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

Sinais de Interesse Particular

3.1

Sinais Exponenciais

De maneira geral, um sinal exponencial dado por:


x(t) = cest ,

(4)

onde os parmetros c e s so possivelmente complexos, definidos atravs de


c = a + jb = rej ,

(5a)

s = + j .

(5b)

Para o caso onde tanto c como s so reais, ou seja, b = 0 ( = 0) e = 0, a


exponencial real, sendo o caso mais simples:
x(t) = ret .

(6)

Se > 0, ento a exponencial crescente e se < 0 a exponencial decrescente.


Se = 0, ento x(t) = r (uma constante).
Como exemplo, tomemos o sinal
x(t) = 0, 25et .

(7)

desejado esboar o grfico de x(t) para = 1 e = 1, para t [2, 2]. Para


tal, utiliza-se os seguintes comandos do MATLAB:

>>
>>
>>
>>
>>
>>
>>
>>
>>

t = -2:0.01:2;
x_1 = 0.25*exp(-t);
x_2 = 0.25*exp(t);
figure
plot(t,x_1,t,x_2)
xlabel('t [s]')
ylabel('x(t)')
title('Sinais exponenciais reais -- x(t) = 0,25e^{\sigma t}')
legend('\sigma = -1','\sigma = 1','Location','Best')

6
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Para o caso em que c complexo e s real, x(t) uma exponencial real, porm
assume valores reais e complexos
x(t) = rej et = r cos()et + j r sin()et ,

(8)

ou seja, a amplitude da parte real de x(t) difere do anterior pelo termo cos().
Para o caso em que c complexo e s puramente complexo, x(t) uma exponencial complexa
x(t) = rej ejt = rej(t+) .

(9)

Utilizando a Identidade de Euler, podemos decompor (9) em


x(t) = r cos(t + ) + j r sin(t + ) .

(10)

Logo, a parte real de x(t) em (10), denotada por v(t), dada por
Re[x(t)] = v(t) = r cos(t + ) ,

(11)

ou seja, v(t) uma senoide de amplitude r, frequncia e fase . Logo, qualquer


sinal senoidal pode ser visto como a parte real ou imaginria de uma exponencial
puramente complexa.
De qualquer maneira, o caso mais interessante ocorre quando ambos c e s so
complexos. Neste caso
x(t) = rej e(+j)t = ret ej(t+) .

(12)

Utilizando a Identidade de Euler, podemos decompor (12) em


x(t) = ret cos(t + ) + j ret sin(t + ) .

(13)

Logo, a parte real de x(t) em (13), denotada por v(t), dada por
Re[x(t)] = v(t) = ret cos(t + ) ,

(14)

ou seja, v(t) uma senoide de frequncia e fase modulada em amplitude por


uma exponencial ret . O termo modulado em amplitude deriva de um fato similar
que ocorre no estudo da modulao AM em telecomunicaes.
Como exemplo, seja o sinal


.
x(t) = 0, 5e0,7t cos 10t +
3

(15)

7
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


desejado esboar o grfico de x(t) para t [1, 3], junto com as exponenciais
reais que formam o envelope que confina a senoide. Para tal, utiliza-se os seguintes
comandos do MATLAB:

>>
>>
>>
>>
>>
>>
>>
>>
>>
>>

t = -1:0.01:3;
x = 0.5*exp(-0.7*t).*cos(10*t + pi/3);
aux_1 = 0.5*exp(-0.7*t);
aux_2 = -0.5*exp(-0.7*t);
figure
plot(t,x,'-b',t,aux_1,':g',t,aux_2,':r')
xlabel('t [s]')
ylabel('x(t)')
title('Sinal exponencial complexo -- x(t) = 0,5e^{-0,7t}cos(10t + \pi/3)')
legend('x(t)','0,5e^{-t}','-0,5e^{-t}','Location','Best')

3.2

Degrau

O sinal degrau unitrio, ou funo degrau unitrio, definido como


(
u1 (t) =

1, t>0
.
0, t<0

(16)

Sabemos que o degrau possui uma descontinuidade em t = 0, de maneira que seu


valor indefinido neste ponto. Entretanto, ao utilizar o MATLAB precisamos definir numericamente o valor em todos os pontos. Para tal, vamos utilizar a seguinte definio
de degrau
(
u1 (t) =

1, t0
.
0, t<0

(17)

O MATLAB no possui precisamente uma funo para computar o sinal degrau, e


portanto precisamos criar uma. Logo, crie um script que possua o seguinte cdigo e
salve na mesma pasta na qual esta funo dever ser utilizada:

function u = degrau(t)
% Funo degrau unitrio
% Help -- u = degrau(t)
% A funo retorna o valor da funo degrau unitrio na forma do vetor u
8
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

% de acordo com o domnio t desejado passado como argumento


for i = 1:length(t)
if t(i) < 0
u(i) = 0;
else
u(i) = 1;
end
end
end

Com a funo degrau definida, podemos, por exemplo, criar outras funes que
dependem do degrau. Como exemplo, tomemos o sinal
t [2, 2] 7 x(t) = e2t u1 (t) .

(18)

Com a funo degrau definida anteriormente, utilizamos o seguinte cdigo para


gerar o sinal x(t):

>>
>>
>>
>>
>>
>>
>>

t = -2:0.01:2;
x = exp(-2*t).*degrau(t);
figure
plot(t,x)
xlabel('t [s]')
ylabel('x(t)')
title('Sinal x(t) = e^{-2t}u_{-1}(t)')

3.3

Impulso

O impulso, ou Delta de Dirac, (t), definido matematicamente como a derivada


primeira do degrau
(t) =

du1 (t)
.
dt

(19)

Entretanto, sabemos que o impulso pode ser definido como um pulso de durao
muito pequena (tendendo a zero) e amplitude muito grande (tendendo a infinito), ou

9
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


seja
1
(u1 (t) u1 (t )) .
0

(t) = lim

(20)

Sabemos ainda que o impulso unitrio possui rea unitria, ou seja


Z

(t)dt = 1 ,

(21)

e que satisfaz a propriedade da amostragem


Z

x(t)(t t0 )dt = x(t0 ) .

(22)

Portanto, com a definio de impulso como um limite de um pulso de durao infinitesimal e amplitude infinita, e utilizando a funo degrau feita anteriormente, temos
o seguinte cdigo para gerar um impulso unitrio centrado na origem:

>> t = -1:0.001:1;
>> tau = 0.1;
>> delta_a = (1/tau)*(degrau(t)-degrau(t-tau)); % aproximao para o
impulso
>> figure
>> plot(t,delta_a)
>> xlabel('t [s]')
>> ylabel('\delta_a(t)')
>> title('Aproximao para o impulso unitrio \delta(t)')

A propriedade da amostragem do impulso importante no estudo de sinais e sistemas. Vamos checar se a aproximao para o impulso unitrio dada anteriormente
(pulso de durao 0, 1 [s] e amplitude igual a 10) suficiente para a funo
x(t) = et .

(23)

fcil notar que x(1) = 0, 3679. Pela propriedade da amostragem do impulso,


tem-se que
Z

et (t 1)dt = e1 = 0, 3679 .

(24)

Vamos verificar se o esperado ocorre com os seguintes comandos no MATLAB:

10
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

>> t = -2:0.001:2;
>> tau = 0.1;
>> delta_a = (1/tau)*(degrau(t-1)-degrau(t-1-tau)); % aproximao para o
impulso unitrio centrado em t = 1 [s]
>> x = exp(-t).*delta_a;
>> x_1 = trapz(t,x) % calcula a rea de x no intervalo definido por t
x_1 =
0.3503

Desta forma, vemos que, especificamente para a funo et , esta aproximao


de um pulso de durao igual a 0, 1 segundos e amplitude igual a 10 possui um erro
percentual de 4, 78% no que tange propriedade da amostragem. Se utilizarmos um
pulso de durao dez vezes menor e amplitude dez vezes maior:

>> t = -2:0.001:2;
>> tau = 0.01;
>> delta_a = (1/tau)*(degrau(t-1)-degrau(t-1-tau)); % aproximao para o
impulso unitrio centrado em t = 1 [s]
>> x = exp(-t).*delta_a;
>> x_1 = trapz(t,x) % calcula a rea de x no intervalo definido por t
x_1 =
0.3662

O erro percentual agora de 0, 46%.

3.4

Rampa

O sinal rampa unitria definido como sendo


(
u2 =

t, t0
.
0 ,t < 0

(25)

11
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


Alternativamente, a derivada da rampa unitria gera o sinal degrau unitrio
u1 (t) =

du2 (t)
.
dt

(26)

Pela definio da rampa, podemos escrev-la da seguinte maneira


u2 (t) = tu1 (t) .

(27)

Logo, a partir da funo degrau definida anteriormente, para se gerar uma rampa
utiliza-se os seguintes comandos do MATLAB:

>>
>>
>>
>>
>>
>>
>>

t = -5:0.01:5;
rampa = t.*degrau(t);
figure
plot(t,rampa)
xlabel('t [s]')
ylabel('u_{-2}(t)')
title('Rampa unitria')

4
4.1

Operaes com Sinais


Transformaes na Varivel Independente

Os trs tipos de operaes que envolvem a varivel independente so o deslocamento temporal (substituio de t por t t0 ), escalamento temporal (substituio de
t por t/a, onde a > 0) e reverso temporal (substituio de t por t). As trs operaes podem ser facilmente feitas com comandos simples do MATLAB, porm, deve-se
atentar para que, ao proceder a operao, o domnio da funo do sinal transformado
ser alterado, e pode no coincidir com o domnio da funo do sinal original.
Exemplo: seja o sinal x(t) = et u1 (t), onde t [0, +). Ao proceder um deslocamento temporal com t0 < 0 (avano no tempo) ou reverso temporal o domnio do
sinal transformado ser diferente do sinal original. Se desejado trabalhar com sinais
causais, o sinal transformado neste caso ser zero.
Exemplo: dado o sinal
t R+
0 7 x(t) = 2t (u1 (t) u1 (t 2)) + (2t + 8) (u1 (t 2) u1 (t 4)) , (28)
obtenha com os comandos do MATLAB o grfico de x(t), y(t) = x(t 4) e de z(t) =
12
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


x(2t 4) para t [0, 8].
Para a obteno de y(t) = x(t 4) h uma operao envolvida: deslocamento
temporal (substituir t por t 4). Para o obteno de x(2t 4), h duas operaes
envolvidas: um deslocamento temporal (com t0 = 4) e aps o deslocamento temporal
um escalamento temporal (com a = 1/2).
Para gerar os dois grficos, os seguintes comandos do MATLAB devero ser utilizados:

>> t = 0:0.01:8;
>> x = 2*t.*(degrau(t) - degrau(t-2)) + (-2*t+8).*(degrau(t-2)degrau(t-4));
>> y = 2*(t-4).*(degrau(t-4) - degrau(t-6)) + (-2*(t-4)+8).*(degrau(t-6)degrau(t-8));
>> z = 2*(2*t-4).*(degrau((2*t-4)) - degrau((2*t-4)-2)) + (-2*(2*t-4)+8)
.*(degrau((2*t-4)-2)-degrau((2*t-4)-4));
>> figure
>> plot(t,x,t,y,t,z)
>> xlabel('t [s]')
>> ylabel('Amplitude dos sinais')
>> title('Sinal original, deslocado e deslocado-escalado')
>> legend('x(t)','x(t-4)','x(2t-4)','Location','Best')

Alternativamente, no programa anterior, poderia-se definir vetores de tempo auxiliares que corresponderiam as operaes desejadas e analisar x(t) com cada um dos
dois vetores alterados. Porm, no momento de plotar o grfico, utilizaria-se o vetor de
tempo original:

>> t = 0:0.01:8;
>> t_1 = t-4;
>> t_2 = 2*t-4;
>> x = 2*t.*(degrau(t) - degrau(t-2)) + (-2*t+8).*(degrau(t-2)-degrau(t-4));
>> y = 2*t_1.*(degrau(t_1) - degrau(t_1-2)) + (-2*t_1+8).*(degrau(t_1-2)degrau(t_1-4));
>> z = 2*t_2.*(degrau(t_2) - degrau(t_2-2)) + (-2*t_2+8).*(degrau(t_2-2)degrau(t_2-4));
>> figure
>> plot(t,x,t,y,t,z)
13
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira

>>
>>
>>
>>

xlabel('t [s]')
ylabel('Amplitude dos sinais')
title('Sinal original, deslocado e deslocado-escalado')
legend('x(t)','x(t-4)','x(2t-4)','Location','Best')

Exerccios Propostos

Exerccio 1 Dados os seguintes sinais de tenso fase-neutro da rede trifsica

vAN (t) = 127 2 sin (260t)



2
vBN (t) = 127 2 sin 260t
3



2
vCN (t) = 127 2 sin 260t +
3

(29a)
(29b)
(29c)

Faa:
1. Plote os grficos dos sinais de tenso vAN (t), vBN (t) e vCN (t) de mesma cor em
diferentes janelas;
2. Plote os grficos dos sinais de tenso vAN (t), vBN (t) e vCN (t) de cores diferentes
na mesma janela (utilize o comando subplot). Utilize uma legenda para identificar
os grficos;
3. Sabendo que a tenso entre a fase A e a fase B
vAB (t) = vAN (t) + vN B (t) ,

(30)

e que
vAN (t) = vN A (t) ,

(31)

plote os grficos dos sinais de tenso vAB (t), vBC (t) e vCA (t) de cores diferentes
na mesma janela;
4. Plote os grficos dos sinais de tenso vAN (t), vAB (t) e vCA (t) de cores diferentes
na mesma janela. No que os trs grficos diferem?
Exerccio 2 Gere o grfico dos seguintes sinais

14
Aula 5: Sinais Parte I

Universidade Federal de Itajub Campus Avanado de Itabira


1. t [5, 5] 7 x(t) =

1
;
1 + t2

2. t [0, 2] 7 r(t) = (cos(t), 2 sin(t));


3. t [0, 5] 7 a(t) = (t, t2 , t3 );
4. (x, y) [5, 5] [5, 5] 7 F (x, y) =

p
x2 + y 2 .

Exerccio 3 O sinal parbola unitria definido da seguinte forma


2
t
, t0
.
u3 (t) =
2
0, t<0

(32)

Gere o grfico deste sinal atravs de comandos do MATLAB. Embora a nomenclatura seja unitria, por que sua definio carrega o fator 1/2? (Dica: derive o sinal
parbola unitria para ver o que ocorre).

Bibliografia
1 Dair Jos de Oliveira & Denis de Carvalho Braga, Laboratrio 5 Sinais, Disciplina EEL030 Sistemas Dinmicos, Universidade Federal de Itajub Campus
Avanado de Itabira, 03 de maio de 2011;
2 B. P. Lathi, Sinais e Sistemas Lineares, Editora Bookman, 2a Edio, 2007;

15
Aula 5: Sinais Parte I

Você também pode gostar