Escolar Documentos
Profissional Documentos
Cultura Documentos
Matlab MecatronicaV1 Aluno PDF
Matlab MecatronicaV1 Aluno PDF
Engenharia
Curso Superior de Engenharia Mecatrnica
Ano 2010 - Verso 1.1
Professor : Lus Oscar de Araujo Porto Henriques
-1-
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
1 Introduo
1.1 O que o MATLAB?
MATLAB um "software" interativo de alta performance voltado para o clculo numrico. O
MATLAB integra anlise numrica, clculo com matrizes, processamento de sinais e construo de
grficos em ambiente fcil de usar onde problemas e solues so expressos somente como eles so
escritos matematicamente, ao contrrio da programao tradicional.
O MATLAB um sistema interativo cujo elemento bsico de informao uma matriz que no requer
dimensionamento. Esse sistema permite a resoluo de muitos problemas numricos em apenas uma
frao do tempo que se gastaria para escrever um programa semelhante em linguagem C ou Java.
Alm disso, as solues dos problemas so expressas no MATLAB quase exatamente como elas so
escritas matematicamente.
-2 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
ou
>> help comando
Ao utiliz-lo, inmeros tpicos iro ser apresentados, os mais importantes so: general(que
contempla os mais bsicos comandos do matlab) e elfun (que contempla as funes matemticas
elementares Trigonometria, exponencial, complexo)
Para demonstrar as capacidades do MATLAB podemos utilizar o comando demo. O comando demo
ir abrir uma janela com inmeros itens. Abra o item simulink/SimPowerSystems
1.4 Fazendo um exemplo simples
Suponha que temos dois pontos P1 e P2 cujas coordenadas so:
P1=(1,5) e P2=(4,7)
Queremos calcular a distancia entre dois pontos, que a hipotenusa de um tringulo retngulo,
conforme mostra a figura abaixo. Usando o teorema de pitgoras, podemos calcular a distancia d com
a seguinte equao:
d = s12 + s 22
d = (4 1)2 + (7 5)2
d = 13
d = 3, 61
-3 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Para isto devemos criar um arquivo texto com extenso *.m ( extenso do matlab).
Os comandos do MATLAB so normalmente digitados na Janela de Comando, onde uma nica linha
de comando introduzida e processada imediatamente. O MATLAB tambm capaz de executar
seqncias de comandos armazenadas em arquivos.
Os arquivos que contm as declaraes do MATLAB so chamadas arquivos ".m", e consistem de uma
seqncias de comandos normais do MATLAB, possibilitando incluir outros arquivos ".m" escritos no
formato texto (ASCII).
Para editar um arquivo texto na Janela de Comando do MATLAB selecione New M-File para criar um
novo arquivo ou Open M-File para editar um arquivo j existente, a partir do menu File. Os arquivos
podem, tambm, ser editados fora do MATLAB utilizando qualquer editor de texto.
Uma nova janela ser criada. Nela digite os comando abaixo:
%este programa calcula e imprime a distancia em linha reta, entre dois pontos
p1x=1; %ponto 1 eixo x
p1y=5; %ponto 1 eixo y
p2x=4; %ponto 2 eixo x
p2y=7; %ponto 2 eixo y
d=sqrt((p2x-p1x)^2+(p2y-p1y)^2)
% calcula a distncia
Salve o arquivo com seu nome na pasta work e o execute na linha de comando
Ao executarmos teremos o resultado:
d=3.6056
-4 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
p1y=input('Entre com o valor de y do ponto 1:')
p2x=input('Entre com o valor de x do ponto 2:')
p2y=input('Entre com o valor de y do ponto 2:')
d=sqrt((p2x-p1x)^2+(p2y-p1y)^2) % calcula a distncia
colocando colchetes em volta dos dados e separando as linhas por ponto e vrgula.. Quando se
pressiona a tecla <enter> o MATLAB responde com
1 2 3
A = 4 5 6
7 8 9
B=
-5 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
size(A)
length(A)
-6 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
2.1 Transposta
O caracter apstrofo, " ' " , indica a transposta de uma matriz. A declarao
>> A = [1 2 3; 4 5 6; 7 8 0]
>> B = A'
que resulta em
1 2 3
A = 4 5 6
7 8 0
1 3 7
B = 2 5 8
3 6 0
e
>> x = [-1 0 2]'
Produz
1
x = 0
2
Se Z uma matriz complexa, Z' ser o conjugado complexo composto. Para obter simplesmente a
transposta de Z deve-se usar Z. ', como mostra o exemplo
>> Z = [1 2; 3 4] + [5 6; 7 8]*i
>> Z1 = Z'
que resulta em:
-7 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
1 + 5i
Z=
3 + 7i
1 5i
Z1 =
2 6i
2 + 6i
4 + 8i
3 7i
4 8i
2.2 Determinante
O determinante de uma matriz obtido atravs do comando det(A).
Portanto, se
1 2 3
A = 4 5 6
7 8 0
det(A) = 27
2 6 10
C = 6 10 14
10 14 0
A adio e subtrao tambm so definidas se um dos operadores um escalar, ou seja, uma matriz l x
l. Neste caso, o escalar adicionado ou subtrado de todos os elementos do outro operador. Por
exemplo:
>> y = x - 1
resulta em:
-8 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
2
y = 1
1
2.4 Multiplicao
A multiplicao de matrizes indicada por "*". A multiplicao x*y definida somente se a segunda
dimenso de x for igual primeira dimenso de y. A multiplicao
>> x'* y
aceitvel, e resulta em
Ans =
4
evidente que o resultado da multiplicao y'*x ser o mesmo. Existem dois outros produtos que so
transpostos um do outro.
>> x*y'
1 1
2
Ans = 0
0
0
4 2 2
>> y*x'
2 0 4
Ans = 1 0 2
1 0 2
2.5 Diviso
Existem dois smbolos para diviso de matrizes no MATLAB "\" e "/". Se A uma matriz quadrada
no singular, ento A\B e B/A correspondem respectivamente multiplicao esquerda e direita da
matriz B pela inversa da matriz A, ou inv(A)*B e B*inv(A), mas o resultado obtido diretamente. Em
geral,
X = A\B a soluo de A*X = B
X = B/A a soluo de X*A = B
Por exemplo, como o vetor B foi definido como A*x, a declarao
>> z = A\B
resulta em
-9 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
1
z = 0
2
Agora vamos aplicar este conhecimento na resoluo de um sistema de equaes baseado no circuito
abaixo.
22
15
R1
R3
10
20V
R2
E1
15V
10V
E2
E3
R4 12
2.6 Exponenciao
A expresso A^p eleva A p-sima potncia e definida se A matriz quadrada e p um escalar. Se p
um inteiro maior do que um, a exponenciao computada como mltiplas multiplicaes. Por
exemplo,
>> A^3
-10 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> z = x .* y
resulta em
z = [4 10 18]
As expresses A./B e A.\B formam um conjunto cujos elementos so simplesmente os quocientes dos
elementos individuais de A e B. Assim,
>>z=x.\y
resulta em
z = [4 2.5 2]
2.9 Exponenciao
A exponenciao de conjuntos indicada por ".^". A seguir so mostrados alguns exemplos usando os
vetores x e y. A expresso
>> z = x .^ y
resulta em
A exponenciao pode usar um escalar.
>> z = x.^2
z = [1 4 9]
Ou, a base pode ser um escalar.
>> z = 2.^[x y]
Z= [2 4 8 16 32 64]
-11 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
menor
<=
menor ou igual
>
maior
>=
maior ou igual
==
igual
~=
diferente
>> 2 + 2 ~= 4
ans =
0
Pode-se usar, tambm os operadores lgicos & (e) e I (ou). Por exemplo,
>> 1= = 1 & 4 = = 3
ans =
0
>> 1 = = 1 | 4 = = 3
ans =
1
Exemplo de circuito lgico: Desenhe os blocos que representem a equao abaixo e mostre
matricalmente o resultado.
(A|B)&(C&D) &(~E)
-12 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> x = 1 : 5
gera um vetor linha contendo os nmeros de 1 a 5 com incremento unitrio. Produzindo
x = [1 2 3 4 5]
Outros incrementos, diferentes de um, podem ser usados.
>> y = 0 : pi/4 : pi
que resulta em
>> z = 6 : -l : l
z = [6 5 4 3 2 1]
Pode-se, tambm, gerar vetores usando a funo linspace. Por exemplo,
1 2 3
A = 4 5 6
7 8 9
a declarao
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
1 2 3
A = 4 5 6
7 8 10
sin - seno
cos - cosseno
tan - tangente
asin - arco-seno
acos - arco-cosseno
atan - arco-tangente
-14 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
3 FUNES
As funes matemticas so representadas no MATLAB por arquivos ".m". Por exemplo, a funo
est disponvel no MATLAB como um arquivo ".m" chamado humps.m:
function y = humps(x)
y =1 ./ ((x-.3).^2 + .0l) + 1./((x-.9).^2 + .04) - 6;
humps( x) =
1
1
+
6
2
( x 0.3) + 0.01 ( x 0.9) 2 + 0.04
O grfico da funo :
>> x = -1:0.01:2;
>> plot(x,humps(x))
Devemos salientar que na primeira linha temos um vetor que comea em -1 e termina em 2 com
passo de 0.01.
-15 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
100
80
60
40
20
-20
-1
-0.5
0.5
1.5
quadl
-16 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
fmins
fzero
>> xm = fmin('humps',0.5,1)
xm =
0.6370
>> ym = humps(xm)
ym =
11.2528
E o grfico deste intervalo com o ponto de mnimo pode ser construdo:
>> x = 0.5:0.01:1
>> plot(x, humps(x), xm, ym, o)
Pode-se ver que a funo humps(x) apresenta dois "zeros" no intervalo de -1 a 2. A localizao do
primeiro "zero" prxima do ponto x = 0,
xzl = fzero('humps',0)
xzl =
-0.1316
-17 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> xz2=fzero('humps',1)
xz2 =
1.2995
O grfico da funo com os dois "zeros" obtido atravs da expresso:
>> x = -1:0.01:2
>> plot(x, humps(x), xzl, humps(xzl),'*', xz2, humps(xz2), '+'),
grid
ode23p
ode45
Considere a equao diferencial de segunda ordem chamada de Equao de Van der Pol
x + (x2 - 1) . x + x = 0
Pode-se rescrever esta equao como um sistema acoplado de equaes diferenciais de primeira ordem
x1 = x1 . (1-x22) - x2
x2 = x1
O primeiro passo para simular esse sistema criar um arquivo ".m" contendo essas equaes
diferenciais. Por exemplo, o arquivo vdp1.m:
-18 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
-19 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
3.4.1 Limites
Para efetuar uma operao com limites no MATLAB, o comando que se deve dar :
>>limit(f(x),x,a)
onde f(x) a funo que se quer achar o limite, x a varivel e a o nmero no qual o x est tendendo
( x a ).
Exemplo: Achar o limite abaixo:
resposta: -5/3
>>limit(f(x),x,a,left)
e
>> limit(f(x),x,a,right)
onde left e right so os comandos para calcular esquerda e direita, respectivamente.
3.4.3 Derivadas
Para o clculo de derivadas, o comando no MATLAB :
>>diff(f(x)),
onde f(x) a funo que se quer determinar a derivada.
Exemplo: Derivar as funes abaixo:
-20 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> diff(f(x),2),
esse exemplo para a derivada segunda da funo f(x), para derivada terceira, coloca-se 3 no lugar do
nmero 2, para derivada quarta, o numero 4 e assim por diante.
Exemplo: Derivar as funes abaixo:
3.4.6 - Integrais
Na integrao de funes, o comando que o MATLAB reconhece para tal operao :
>> int(f(x)) ,
pode se colocar a funo dentro dos parnteses, ou ento definir uma funo f e simplesmente
escrever int(f).
Exemplo: Integrar as funes abaixo:
-21 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> int(f(x),a,b),
onde a o limite inferior e b, o limite superior da integral.
Exemplos:
-22 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
4 GRFICOS
A construo de grficos no MATLAB mais uma das facilidades do sistema. Atravs de comandos
simples pode-se obter grficos bidimensionais ou tridimensionais com qualquer tipo de escala e
coordenada. Existe no MATLAB uma vasta biblioteca de comandos grficos.
Se X e Y so vetores com dimenses iguais, o comando plot(X,Y) produz um grfico bidimensional
dos elementos de X versos os elementos de Y, por exemplo
>> t = 0:0.05:4*pi;
>> y = sin(t);
>> plot(t,y)
resulta em
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
10
Plotar linear.
Plotar em escala loglog.
Plotar em semilog.
Plotar em semilog.
Desenhar polgono 2D.
-23 -
12
14
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
polar
bar
stem
stairs
errorbar
hist
rose
compass
feather
fplot
comet
Exemplos:
1) grfico em polar
>> t=0:.01:2*pi;
>>r=sin(2*t).*cos(2*t);
>> polar(t,r)
2) grafico de barras
>>
>>
>>
>>
>>
x=-2.9:0.2:2.9;
y=exp(-x*x);
bar (x,y)
figure
stairs(x,y)
3) grfico de stem
-24 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
O uso de loglog, semilogx, semilogy e polar idntico ao uso de plot. Estes comandos so usados
para plotar grficos em diferentes coordenadas e escalas:
O MATLAB pode tambm plotar mltiplas linhas e apenas um grfico. Existem duas maneiras, a
primeira usado apenas dois argumentos, como em plot(X,Y), onde X e/ou Y so matrizes. Ento:
Se Y uma matriz e X um vetor, plot(X,Y) plota sucessivamente as linhas ou colunas de Y versos o
vetor X.
-25 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Ttulo do grfico.
Ttulo do eixo-X.
Ttulo do eixo-Y.
Ttulo do eixo-Z.
Inserir anotao no grfico.
Inserir anotao com o "mouse".
Linhas de grade.
Cria legenda para os grficos
Por exemplo:
Coloque titulo no grfico, nos eixos e tambm legenda no grfico anterior. Use o help para saber como
proceder.
-26 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
CORES
y
m
c
r
g
b
w
k
amarelo
lils
azul claro
vermelho
verde
azul escuro
branco
preto
TIPO DE PONTO
.
.......................
*
********
+
++++++++++
x
xx x x x x x x
v
Tringulo para baixo
^
Tringulo para cima
d
Losango
-27 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
s
p
h
Quadrado
Pentgono
hexagono
Exercicio:
Fazer os grficos referentes a relao peso X idade e altura X idade e uma criana baseado na tabela
abaixo:
idade
0 dias
2 meses
4 meses
6 meses
8 meses
10 meses
12 meses
18 meses
2 anos
3 anos
4 anos
5 anos
6 anos
7 anos
8 anos
9 anos
10 anos
11 anos
12 anos
altura
50
59
63
66
70
72
75
82
87
95
101
107
114
120
126
131
135
139
144
peso
3,25
5,5
6,9
7,85
8,7
9,45
10,1
11,77
13
14,87
16,63
18,67
21,04
23,6
26,1
28,5
30,9
34
38,8
-28 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
close
aux=input('Plotar outro ? (s/n) = => ','s');
end
O caractere % usado para inserir um comentrio no texto, o comando clear apaga todos os dados da
memria, o comando input usado quando se deseja entrar com um dado a partir da Janela de
Comando, pause provoca uma pausa na execuo do arquivo at que qualquer tecla seja digitada, clc
limpa a Janela de Comando, figure(1) mostra a Janela Grfica nmero 1 e close fecha todas as Janelas
Grficas.
-29 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
0.5
-0.5
2
1
2
1
-1
-1
-2
-2
20
18
16
14
12
10
8
6
4
2
2
Exemplos:
>> t=0:0.1:6*pi;
>> x=sqrt(t).*sin(2*t);
>> y=sqrt(t).*cos(2*t);
>> z=0.5*t;
>> plot3(x,y,z,'k','linewidth',1)
>> grid on
>> xlabel('x');ylabel('y');zlabel('z')
>> t=linspace(0,pi,20);
>> r=1+sin(t);
>> [X,Y,Z]=cylinder(r);
>> surf(X,Y,Z);
>> axis square
>> t=0:0.04:10;
>> x=t;
-30 -
10
12
14
16
18
20
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
>> y=sin(x);
>> z=t.^1.5;
>> stem3(x,y,z,'fill');
>> X=[5 9 14 20];
>> explode=[0 0 1 0];
>> pie3(X,explode)
-31 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
A primeira parte (i=1) realizada uma vez, antes do lao ser inicializado.
A segunda parte o teste ou condio que controla o lao, (i<=5).
Esta condio avaliada; se verdadeira, o corpo do lao (X(i)=i^2) executado.
for i=
1:8
for j=
1:8,
A(i,j)=
i+j;
B(i,j)=
i-j;
end
end
C=A+B;
a = 1; b = 15;
while a<b,
clc
a = a+1
b = b-1
-32 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
pause(1)
end
disp('fim do loop')
a condio a<b testada. Se ela for verdadeira o corpo do lao, ser executado.
Ento a condio retestada, e se verdadeira o corpo ser executado novamente. Quando o teste se
tornar falso o lao terminar, e a execuo continuar no comando que segue o lao aps o end.
for i = 1:5,
for j = 1:5,
if i == j
A(i,j) = 2;
else if abs(i-j) == 1
A(i,j) = -1;
else
A(i,j) = 0;
end
end
end
end
Os valores de i e j variam de 1 a 5, varrendo toda a matriz A. Se (if) i for igual a j, A(i,j)=2, ou se
(elseif) o valor absoluto de i-j for igual a 1, A(i,j)=-1, ou (else) A(i,j)=0, se nenhuma das condies
anteriores forem satisfeitas.
Vejam que estas declaraes tambm podem conter o comando ELSE que executa outro conjunto de
comandos se o resultado do IF for falso.
conveniente, s vezes, controlarmos a sada deu m lao de outro modo alm do teste, no incio ou no
fim do mesmo. O comando break permite uma sada antecipada de um for ou while. Um comando
break faz com que o lao mais interno seja terminado imediatamente.
Exemplos;
1-Um trabalhador pago de acordo com sua jornada semanal de trabalho de 40h, ,mais 50% sobre as
horas extras trabalhadas. Escrever uma rotina que calcule o salrio deste trabalhador. O programa deve
solicitar ao usurio a quantidade de horas trabalhadas e o valor pago por hora. No fim o programa deve
retornar o salrio final.
-33 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
2- Construa um lao for-end em uma rotina para determinar a soma dos n primeiros termos da srie:
(1) k k
3) Um aposentado depositou R$300.000,00 em uma caderneta de poupana que para taxa anual de 5%.
Ele planeja sacar o dinheiro da conta uma vez ao ano, comeandocom um saque de R$25,000,00 no
primeiro ano e incrementando a quantia anual de acordo com a inflao. Caso a inflao seja fixa em
2%, Obtenha os valores a serem sacados anualmente pelo aposentado e quanto tempo demorar para o
dinheiro acabar.
4)Determine o nmero de nmeros inteiros consecutivos que somados obteremos um valor igual ou
superior a 210.
-34 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
5 - Simulink
5.1 O que Simulink?
Simulink um pacote de software para modelar, simular, e analisar sistemas dinmicos. Suporta os
sistemas lineares e no-lineares, modela sistemas contnuos e discretos, ou um hbrido dos dois.
Para modelar, Simulink fornece uma interface grfica (GUI) para modelagem com diagrama de blocos,
usando arraste do mouse. Simulink inclui uma biblioteca detalhada do bloco dos dissipadores, as
fontes, componentes lineares e no-lineares, e conectores. Voc pode tambm customize e criar seus
prprios blocos.
-35 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
-36 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Para criar o modelo, primeiro entre no Simulink dentro da janela de comando MATLAB. Assim, a
Biblioteca de blocos do Simulink aparece.
Para criar um novo modelo novo no Windows, selecione a tecla NEW na biblioteca de blocos. O
Simulink abrir uma janela nova em branco.
-37 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Para criar este modelo, voc precisar de copiar para dentro do seu modelo os seguintes blocos das
bibliotecas:
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Faz-se o mesmo para todos os outros blocos. Temos agora todos os componentes na nossa rea de
trabalho.
O prximo passo conectar todos os blocos. Colocando-se o mouse sobre a sada da fonte senoidal e
segurando o boto arrasta-se o fio at o multiplexador.
-39 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
-40 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Exercicio:
1)Dadas 3 fontes senoidais equilibradas de amplitude 1 e defasados de 120. Desenhar
as 3 curvas e a soma delas.
2) Dada a funo abaixo obtenha a sua derivada e sua integral. Obs: Usar os blocos
integrator e derivative
1
Sine Wave
Constant
untitled.mat
From File
To File
simin
simout
From
Workspace
To Workspace
Exercicio:
-41 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Sine Wave
Scope
simout
To Workspace
Acelerao
Acelerao
1
s
Velocidade
Velocidade
1
s
Integrator
Espao
Integrator1
Scope
sin(u)*exp(u)
Ramp
Fcn
Scope
O bloco [Matlab Fcn] executa funes do matalb, incluisve funes criadas pelo usuario.
MATLAB
Function
Ramp
MATLAB Fcn
Scope
exemplo: Crie uma funo com o conteudo abaixo e utilize-a no sistema acima:
-42 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
%
%
u: sinal de entrada
%
y: sinal de sada
%
%
y = u
, para u entre [0,2[
%
y = -u+4 , para u entre [2,4[
%
y = u-4 , para u >= 4
%
function y = Tutorial_Funcao(u)
if u < 2
y = u;
elseif u < 4
y = -u+4;
else
y = u-4;
end
O bloco [Embedded Matlab Fcn] faz a mesma coisa que o bloco [Matlab Fcn] , porm ele abre uma
janela para o usurio colocar o arquivo da funo dentro.
-43 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
6 - Sistema de Potncia
O Power System Blockset (PSB) permite voc construir e similar circuitos eltricos contendo
elementos lineares e no lineares. Durante as prximas aulas, voc ser capaz de construir, similar e
analisar o circuito da figura abaixo.
Nesta sesso voc vai:
Explorar as bibliotecas powerlibdo PSB
Aprender a construir um circuito simples com a biblioteca powerlib
Interligar blocos do Simulink com o seu circuito.
15
R1
R3
10
20V
R2
E1
15V
10V
E2
E3
R4 12
-44 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Estas bibliotecas devem ser abertas para copiarmos os blocos necessrios para a utilizao em nosso
circuito. Cada componente representado por cones que podem ter uma ou mais entradas e sadas
correspondendo ao diferentes terminais do componente.
Montando o sistema:
1-
No menu File da janela powerlib, abra uma nova janela na qual ir conter seu primeiro circuito
e salve-o como: sep_seunome.
2Abra a biblioteca de fontes eltricas (DC Voltage Source) e copie o bloco de tenso DC para
dentro da janela sep_seunome
Abra a caixa de dilogo fonte de tenso DC com um duplo clique e entre com a amplitude, de acordo
com os valores mostrados na figura 6-1.
Duplique esta fonte pelo numero de fontes necessrios ao circuito. E nomei as fontes segundo a figura
Cole o bloco RLC series Branch, que pode ser encontrado na biblioteca de elementos. Especifique R
de acordo com a figura a seguir. Quando a caixa de dilogo fechada, voc ir perceber que os
componentes L e C desapareceram e somente R est visvel.
Duplique tambm os resistores. E nomei os resistores segundo a figura.
Copie tambm o bloco de terra.
Abaixo apresentamos como deve estar nosso diagrama de blocos
-45 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
22 ohm
15 ohm
15V
10 ohm
20V
10V
12 ohm
Exerccio:
1) No o circuito abaixo: Dado: e(t) 100.sen(40t+pi/6)
fonte
C=2.5uF
-46 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
a)
b)
2) Corrigir o f.p. de um motor de 2HP com tenso de 127V, fator de potncia 0.8 atrasado para fator
0.92
Obs: Calcular na mo o valor do capacitor e montar os dois circuitos ( com e sem o capacitor) Usar o
bloco FCN para pegar P e Q e calcular o F.p.
3) Montar os 4 circuitos bsicos de eletrnica de potncia: retificador Monofsico de meia onda, retif.
monofsico de onda completa, retif. trifsico de onda completa sem filtro e retif. trifsico de onda
completa com filtro.
Dados: tenso da fonte: 100V, freqncia 1Hz, R=1Kohm , capacitor filtro 10mF, Rsnubber=500kohm,
Max step size=10e-5 e simular 2 segundos.
-47 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
7 - Eletrnica de Potncia
Nesta sesso voc vai aprender:
Como usar componentes de eletrnica de potncia.
7.1 - Exerccio:
Considere o circuito dado na figura abaixo. Ele representa um retificador trifsico senoidal
Vd
i
-
L 200 mH
Id
Mux
<Diode current>
I diodes 2 & 3
Diode2
L1
v1
<Diode v oltage>
Scope
Diode3
a
Diode1
<Diode current>
L2
v2
L3
Load
10 Ohms
v3
Uma carga de 10 ohm alimentada por um retificador trifsico que possui um reator (5mH, 120V
rms).
A corrente do retificador filtrada por uma indutncia de 200mH.
Os diodos so conectados em paralelo com os snubber (1000 ohms-0.1uF)
A medio das saidas dos Diodos 2 e 3 usado para observar a tenso do diodo e corrente do diodo.
Clique no menu de parmetros de simulao e escolha passo varivel e algoritmo ode23tb com
parmetros default
Comece a simulao e observe as formas de onda no bloco de scope. Aps um perodo de transitrio a
corrente Id estabiliza em 12,7A.
Apresente as curvas encontradas usando o scope.
-48 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
8 Circuitos Trifsicos
Obter as correntes de fase e de neutro de um circuito trifsico com fonte em Y e carga em Y com
neutro conectado.
Z = 10 30
Dados:
VBA = 2080
VCB = 208120
V AC = 208240
Calcule:
2 ohm
-j2 ohm
5 angulo 30
AC
10 angulo 0
AC
10 ohm
j5 ohm
5 ohm
2 ohm
-j2 ohm
10 ohm
a) Fazer o sistema de equaes e obter as 3 correntes de malha (usar A\B)
b) montar no simulink e comparar resultados
-49 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Outro exercicio:
Three-Phase Two-Level PWM Voltage Source Converters
+
v
g
Three-Phase Two-Level
Single Bridge
Vdc = 400 V
+
v
-
Discrete
PWM Generator
6 pulses
Scope1
Vab_load1
C
Universal Bridge
3 arms
A
B
Vab-inv1
1 kW
0.5 kvar
@ 208V
-50 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
9 - Simulando um acionamento.
Nesta sesso voc vai:
-51 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
6.
Abra a biblioteca das mquinas. Copie o bloco da mquina assncrona com unidade em SI, assim
como o bloco de Demux de medida de mquinas em seu modelo circuit5.
7.
Abra o menu da mquina assncrona e olhe seus parmetros. Os parmetros so ajustados para 3
HP, 220 V, 60 hertz, dois pares de plos. Sua velocidade nominal consequentemente ligeiramente
inferior a velocidade sncrona de 1800 RPM ou w = 188.5 rad/s.
8.
Observe que os trs terminais a, b e c do rotor esto acessveis. Durante a operao normal do
motor, estes terminais devem ser curto circuitados juntos. Abra a biblioteca dos conectores. Copie o
barramento vertical com duas entradas e uma sada em seu modelo circuit5.
9.
Abra o menu da barramento e mude o nmero das entradas para trs e o nmero de sadas para
zero. Conecte suas trs entradas aos trs terminais do rotor como mostrado em figura 1-13.
10.
Abra o menu do bloco de Demux de medida das mquinas. Quando este bloco conectado na
sada de medida do motor assncrono, permitido que voc tenha sinais internos especficos do motor
assncrono. Deselecione todos os sinais exceto os seguintes trs sinais: : is_abc (trs correntes do estator),
wm (velocidade do rotor) e Te (torque eletromagntico).
-52 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
11.
Voc executar agora a caracterstica torque-velocidade carga do motor. Vamos supor uma
caracterstica quadrtica da torque-velocidade (tipo carga do ventilador ou da bomba). O torque T ento
proporcional ao quadrado da velocidade:
Abra a biblioteca funes & tabelas do Simulink e copie o bloco de Fcn em seu modelo circuit5. Abra o
menu do bloco e incorpore a expresso do torque como a funo da velocidade:
3.34e-4*u^2
12.
Conecte a entrada do bloco Fcn de Simulink sada da velocidade wm que sai do bloco Demux da
mquina e a sua sada entrada do torque do motor nomeado de Tm.
13.
Abra a biblioteca de medio e copie um bloco da medida da tenso em seu modelo circuit5. Mude
o nome de bloco para Vab.
14.
Usando os blocos de terra da biblioteca de conectores, termine de conectar os elementos de
potncia e as interconexes do sensor da tenso como mostrado na figura.
15.
A fim controlar a ponte inversora, voc necessita de um gerador de pulso. Tal gerador est
disponvel na biblioteca extras do powerlib. Abra a biblioteca dos blocos de Extras/Control e copie o
bloco Discrete 3-Phase PWM Pulse Generator em seu modelo circuit5. Conecte sua sada dos pulsos
entrada dos pulsos do bloco ponte universal.
16.
Abra o menu Discrete 3-Phase PWM Pulse Generator e ajuste os parmetros como segue:
Modulation index m = 0.90; Frequency of output voltage = 60 Hz; Phase of output
voltage = 0 degrees; Switching frequency Fs = 1080 Hz; Time step =10e-6 s
17.
Finalmente, adicione scopes a seu modelo. Copie um bloco de scope em seu circuito. Este scope
ser usado para indicar a tenso instantnea do motor, correntes, velocidade e torque
18.
nas propriedades do scope, ajuste os seguintes parmetros:
Number of axes=4; Time range =0.05 s; Tick labels: bottom axis only.
19.
-53 -
IFSUDESTE Instituto Federal Educao, Cincia e Tecnologia do Sudeste Minas Gerais Juiz de Fora
Programao Aplicada a Engenharia
Voc est agora pronto para comear a simular o motor. Selecione o algoritmo da integrao de ode23tb.
Ajuste a tolerncia relativa a 1e-4, a tolerncia absoluta e o tamanho de etapa mximo em auto, e o tempo
de parada em 1 s.
-54 -