A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Carlos André Vaz Junior

Apresentações semelhantes


Apresentação em tema: "Carlos André Vaz Junior"— Transcrição da apresentação:

1 Carlos André Vaz Junior

2 fsolve FSOLVE solves systems of nonlinear equations of several variables.

3 principal.m solucao = fsolve('funcao',[2],optimset('Display','iter')) function [y] = funcao(x) y=2*x+1;

4

5

6 >> principal Norm of First-order Trust-region Iteration Func-count f(x) step optimality radius Optimization terminated: first-order optimality is less than options.TolFun.

7 principal.m solucao = fsolve('funcao',[2],optimset('Display','iter')) function [y] = funcao(x) y=2*x^2+x-2;

8

9

10

11

12

13

14 solucao = fsolve('funcao',[-1],optimset('Display','iter'))
function [y] = funcao(x) y=8*x^2+4*x-2; Experimente outro chute inicial: solucao = fsolve('funcao',[2],optimset('Display','iter')) solucao = fsolve('funcao',[-5],optimset('Display','iter'))

15

16

17 A= 8; B= 4; C= -2; solucao = fsolve('funcao',[-1],optimset('Display','iter'),A,B,C) function [y] = funcao(x,A,B,C) y=A*x^2+B*x+C;

18

19

20

21 Achando todas as raízes do polinômio:
A=roots([8 4 -2])

22 solucao = fsolve('funcao',[-4 1],optimset('Display','iter'))
function [y] = funcao(x) y(1)= ( x(1).^2 ) x(2); y(2)= (2*x(2))-2;

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49 Ajuste de PID

50 A seguinte malha de controle foi elaborada no Simulink.
Usar o Matlab para ajustar o controlador. degrau unitário no instante 5 P I D

51 Programa principal: clear all close all warning off
options = optimset('display','iter'); global P I D erro Pmin = fminsearch('custo', [1 5 1],options)

52 Função “custo”: function [erro] = custo(x) global P I D erro P=x(1);
I=x(2); D=x(3); [T]=sim('malha',[0 65]); erro=sum(erro.^2);

53 Solução encontrada para degrau unitário no SP:
Pmin =

54 Arquitetura Simulink usada para gerar o gráfico
do slide anterior:

55 Ao invés de minimizar o somatório quadrático do erro,
posso minimizar o somatório quadrático ponderado com o tempo. Ou seja, erros em tempos mais elevados são mais significativos.

56

57 Programa principal: clear all close all warning off options = optimset('display','iter'); global P I D erro tempo Pmin = fminsearch('custo', [10 5 1],options)

58 Função custo: function [erro] = custo(x) global P I D erro tempo P=x(1); I=x(2); D=x(3); [T]=sim('malha',[0 65]); %erro=sum(erro.^2); % somatorio quadratico do erro erro=sum((erro.*tempo).^2); % somatorio quadratico do erro ponderado com o tempo

59 Resultado obtido: Pmin = Chute inicial usado:

60 Ajuste de TF

61 ?

62

63

64 Ferramenta completa para treinamento...

65 Passando dados para o Simulink

66 Gerador de dados experimentais:

67

68 Usando os dados experimentais:

69


Carregar ppt "Carlos André Vaz Junior"

Apresentações semelhantes


Anúncios Google