Controle digital para um sistema de levitação magnética · O objetivo desta monografia é...

68
UNIVERSIDADE FEDERAL DO CEARÁ CENTRO DE TECNOLOGIA CURSO DE GRADUAÇÃO EM ENGENHARIA ELÉTRICA EDUARDO PASSOS APOLIANO GOMES CONTROLE DIGITAL PARA UM SISTEMA DE LEVITAÇÃO MAGNÉTICA FORTALEZA 2016

Transcript of Controle digital para um sistema de levitação magnética · O objetivo desta monografia é...

UNIVERSIDADE FEDERAL DO CEARÁ

CENTRO DE TECNOLOGIA

CURSO DE GRADUAÇÃO EM ENGENHARIA ELÉTRICA

EDUARDO PASSOS APOLIANO GOMES

CONTROLE DIGITAL PARA UM SISTEMA DE LEVITAÇÃO MAGNÉTICA

FORTALEZA

2016

EDUARDO PASSOS APOLIANO GOMES

CONTROLE DIGITAL PARA UM SISTEMA DE LEVITAÇÃO MAGNÉTICA

Trabalho de Conclusão de Curso apresentado aoCurso de Graduação em Engenharia Elétrica doCentro de Tecnologia da Universidade Federaldo Ceará, como requisito parcial à obtenção dograu de bacharel em Engenharia Elétrica.

Orientador: Prof. Dr – Ing Tobias RafaelFernandes Neto

FORTALEZA

2016

Dados Internacionais de Catalogação na Publicação Universidade Federal do Ceará

Biblioteca UniversitáriaGerada automaticamente pelo módulo Catalog, mediante os dados fornecidos pelo(a) autor(a)

G613c Gomes, Eduardo Passos Apoliano Gomes. CONTROLE DIGITAL PARA UM SISTEMA DE LEVITAÇÃO MAGNÉTICA / Eduardo PassosApoliano Gomes Gomes. – 2016. 64 f. : il. color.

Trabalho de Conclusão de Curso (graduação) – Universidade Federal do Ceará, Centro de Tecnologia,Curso de Engenharia Elétrica, Fortaleza, 2016. Orientação: Prof. Dr. Tobias Rafael Fernandes Neto.

1. Levitação magnética. 2. Eletroimã. 3. Controle PD. 4. Avanço de Fase. 5. Sensor linearde efeito Hall. I.Título. CDD 621.3

EDUARDO PASSOS APOLIANO GOMES

CONTROLE DIGITAL PARA UM SISTEMA DE LEVITAÇÃO MAGNÉTICA

Trabalho de Conclusão de Curso apresentado aoCurso de Graduação em Engenharia Elétrica doCentro de Tecnologia da Universidade Federaldo Ceará, como requisito parcial à obtenção dograu de bacharel em Engenharia Elétrica.

Aprovada em:

BANCA EXAMINADORA

Prof. Dr – Ing Tobias Rafael FernandesNeto (Orientador)

Universidade Federal do Ceará (UFC)

Prof. Dr. Paulo Peixoto PraçaUniversidade Federal do Ceará (UFC)

Prof. Dr – Ing Sérgio DaherUniversidade Federal do Ceará (UFC)

À minha família, por sua capacidade de acreditar

e investir em mim. Mãe, seu cuidado, carinho e

dedicação me ajudaram diversas vezes a seguir

em frente. Pai, sua presença significou segu-

rança e certeza de que não estou sozinho nessa

caminhada.

AGRADECIMENTOS

Ao Prof. Dr. Tobias Rafael Fernandes Neto por me orientar no desenvolvimento de

minha monografia, estando sempre disposto e interessado em sanar minhas dúvidas.

Ao Prof. Dr. Sérgio Daher pelos valiosos conselhos a respeito dos aspectos constru-

tivos deste projeto.

Ao Prof. Dr. Bismark Claure Torrico pela ajuda no desenvolvimento dos controlado-

res que foram projetados.

Ao doutorando e amigo Kleymilson do Nascimento Souza, pelas discussões a res-

peito deste projeto, que foram fundamentais para realização do mesmo e também por me ajudar

em diversas etapas da montagem do levitador magnético.

Ao mestrando e amigo Renan Barroso, pelas discussões a respeito deste projeto e

pela grande ajuda no uso das ferramentas de simulação.

Aos a desenvolvedores deste template e amigos, Alan Batista e Ednardo Rodrigues

por terem me apresentado o template sob o qual este trabalho foi escrito e terem me auxiliado

com o uso da plataforma ShareLatex.

Aos alunos de graduação e amigos, Andressa Sombra, Felipe Carvalho e Samanta

Gadelha, por terem primeiramente me apresentado este projeto.

Aos alunos de graduação e amigos, Afonso de Almeida e Álvaro de Melo, pelo

trabalho em equipe na disciplina de controle discreto na qual tentamos desenvolver um levitador

magnético.

Ao aluno de graduação e amigo, Juscelino Taleires pela disposição e boa vontade

em me ajudar na montagem de meu segundo protótipo.

Ao aluno de graduação e amigo, Lorhan Costa por me ajudar a dar vida a este projeto

desenhando no SolidEdge as peças 3D que foram impressas.

Aos amigos de laboratório, Eduardo, Basílio, Andressa , Gabriela, Marcio e Felipe

pelo companheirismo e bom humor nos momentos de descontração.

A Letícia Viana Mourão Marques, que durante estes 5 anos esteve ao meu lado me

dando carinho, suporte e amor, muito obrigado!

Aos meus pais, Pedro Wellington Apoliano Gomes e Maria de Fátima Passos Apo-

liano Gomes que sempre se dedicaram a minha educação e me ensinaram lições de vida que

sempre carregarei comigo, muito obrigado!

“É melhor lançar-se à luta em busca do triunfo

mesmo expondo-se ao insucesso, que formar fila

com os pobres de espírito, que nem gozam muito

nem sofrem muito; E vivem nessa penumbra

cinzenta sem conhecer nem vitoria nem derrota.”

(Franklin Roosevelt)

RESUMO

O objetivo desta monografia é descrever o projeto de um levitador eletromagnético. Para a

sua realização foram usados um eletroimã, que é capaz de produzir uma força eletromagnética

sobre o objeto, assim através do controle da corrente do eletroimã o objeto levita, uma ponte

H como conversor que alimenta o eletroimã, para aferição da distância é utilizado um sensor

linear de efeito Hall e por fim, para implementação do controlador digital, um microcontrolador

AVR 328p. Para a comunicação entre o sistema e o computador foi estabelecida a comunicação

serial via USB. No que concerne ao controle do sistema, foi aplicado um controlador PD e um

controlador em avanço de fase, ambos projetados diretamente no domínio do tempo discreto,

através de alocação de polos. Após a implementação prática destes dois controladores no sistema

foi possível fazer uma comparação dos resultados dos mesmos.

Palavras-chave: Levitação magnética. Eletroimã. Controle. PD. Avanço de Fase. Sensor linear

de efeito Hall.

ABSTRACT

This monograph aims to describe the project of a electromagnetic levitator. The system consists

on an electromagnet, which generates the electromagnetic force on the object, a power circuit to

actuate the electromagnet, a sensor circuit consisting of a linear hall effect sensor, and finally

the microcontroller AVR 328p. For the communication between the system and the PC is used

a USB serial communication. In what concerns the control of the system, it was applied a PD

controller and a lead controller, both designed directly in the digital domain, using the discrete

root locus method. After the practical implementation of these two controllers in the system it

was possible to compare its results.

Keywords: Magnetic levitation. Electromagnet. Arduino. Control. PD. Lead compensator. Hall

effect sensor.

LISTA DE ILUSTRAÇÕES

Figura 1 – Levitação por supercondução . . . . . . . . . . . . . . . . . . . . . . . . . 18

Figura 2 – Trem alemão: Transrapid 09 . . . . . . . . . . . . . . . . . . . . . . . . . 18

Figura 3 – Linhas do campo magnético de uma espira . . . . . . . . . . . . . . . . . . 22

Figura 4 – Representação geométrica de um solenóide . . . . . . . . . . . . . . . . . . 23

Figura 5 – Molde do eletroimã . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Figura 6 – Foto do eletroimã . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Figura 7 – Esquemático de uma ponte H . . . . . . . . . . . . . . . . . . . . . . . . . 26

Figura 8 – Esquema do circuito de potência para levitação magnética . . . . . . . . . . 26

Figura 9 – Distribuição uniforme de corrente . . . . . . . . . . . . . . . . . . . . . . . 27

Figura 10 – Consequência da influência do campo magnético . . . . . . . . . . . . . . . 27

Figura 11 – Sensor de efeito de Hall AH49E . . . . . . . . . . . . . . . . . . . . . . . 28

Figura 12 – Sistema de controle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

Figura 13 – Lugar geométrico dos pólos da planta Gc(s) . . . . . . . . . . . . . . . . . 31

Figura 14 – Corrente que percorre o eletroimã em função da tensão aplicada . . . . . . . 32

Figura 15 – Leitura do sensor em função da distância do imã ao eletroimã . . . . . . . . 34

Figura 16 – Diagrama de blocos do sistema . . . . . . . . . . . . . . . . . . . . . . . . 34

Figura 17 – Estrutura do sistema de levitação magnética (Vistas frontal e superior) . . . 35

Figura 18 – Diagrama de blocos de um sistema de controle com um controlador PD . . . 36

Figura 19 – Exemplo de um sistema de controle em tempo contínuo . . . . . . . . . . . 37

Figura 20 – Exemplo de um sistema de controle em tempo discreto . . . . . . . . . . . 38

Figura 21 – Método retângulos em avanço . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figura 22 – Método: retângulos em atraso . . . . . . . . . . . . . . . . . . . . . . . . . 39

Figura 23 – Método: trapézios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Figura 24 – Implementação digital do controlador PD . . . . . . . . . . . . . . . . . . . 41

Figura 25 – Implementação digital do controlador avanço de fase . . . . . . . . . . . . 43

Figura 26 – Diagrama de blocos do sistema de controle . . . . . . . . . . . . . . . . . . 43

Figura 27 – Lugar geométrico dos pólos da planta discretiza GD(z) . . . . . . . . . . . . 44

Figura 28 – Lugar de raízes do sistema com o contolador PD . . . . . . . . . . . . . . . 46

Figura 29 – Resposta ao degrau do sistema com o contolador PD . . . . . . . . . . . . . 47

Figura 30 – Lugar de raízes do sistema com o contolador avanço de fase . . . . . . . . . 48

Figura 31 – Resposta ao degrau do sistema com o contolador avanço de fase . . . . . . . 49

Figura 32 – Diagrama de blocos do sistema de controle no Simulink . . . . . . . . . . . 50

Figura 33 – Resposta ao degrau simulada do sistema com o controlador PD . . . . . . . 50

Figura 34 – Posição do objeto no sistema real . . . . . . . . . . . . . . . . . . . . . . . 51

Figura 35 – Referência senoidal em torno do ponto de equilíbrio . . . . . . . . . . . . . 51

Figura 36 – Posição do objeto no sistema real com referência senoidal . . . . . . . . . . 52

Figura 37 – Referência em onda quadrada em torno do ponto de equilíbrio . . . . . . . . 52

Figura 38 – Posição do objeto no sistema real com referência em onda quadrada . . . . 53

Figura 39 – Diagrama de blocos do sistema de controle no Simulink . . . . . . . . . . . 53

Figura 40 – Resposta ao degrau do sistema com o controlador avanço de fase . . . . . . 54

Figura 41 – Posição do objeto no sistema real . . . . . . . . . . . . . . . . . . . . . . . 54

Figura 42 – Posição do objeto no sistema real com referência senoidal . . . . . . . . . . 55

Figura 43 – Posição do objeto no sistema real com referência em onda quadrada . . . . 55

LISTA DE TABELAS

Tabela 1 – Corrente que percorre o eletroimã em função da tensão aplicada . . . . . . . 32

Tabela 2 – Saída do sensor em função da distância do objeto ao sensor . . . . . . . . . 33

LISTA DE SÍMBOLOS

~M Momento de dipolo magnético

~B Densidade de campo magnético

ϕ Potencial elétrico

~B Força

i Corrente elétrica

L Indutância

N Número de voltas

n Número de voltas por unidade de comprimento

R Resistência

t Tempo

x Distância

V Tensão

W Trabalho

SUMÁRIO

1 INTRODUÇÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

1.1 Métodos de Levitação Magnética . . . . . . . . . . . . . . . . . . . . . . 16

1.1.1 Levitação eletrodinâmica . . . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.1.2 Levitação por supercondução . . . . . . . . . . . . . . . . . . . . . . . . . 17

1.1.3 Levitação Eletromagnética . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.2 Objetivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19

2 PRINCÍPIOS FÍSICOS . . . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.1 Natureza instável do sistema . . . . . . . . . . . . . . . . . . . . . . . . . 20

2.2 Eletroimã . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

2.3 Circuito de potência . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2.4 Sensor de efeito Hall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

3 MODELAGEM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

3.1 Obtenção de Kc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.2 Obtenção de Ks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

3.3 Diagrama de blocos do sistema . . . . . . . . . . . . . . . . . . . . . . . 33

4 CONTROLE DO SISTEMA . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.1 Controladores utilizados . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.1.1 Controlador PD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

4.1.2 Controlador avanço de fase . . . . . . . . . . . . . . . . . . . . . . . . . . 37

4.2 Discretização dos controladores . . . . . . . . . . . . . . . . . . . . . . . 37

4.2.1 Discretização do controlador PD . . . . . . . . . . . . . . . . . . . . . . . 40

4.2.2 Discretização do controlador avanço de fase . . . . . . . . . . . . . . . . . 42

4.3 Discretização da planta do sistema . . . . . . . . . . . . . . . . . . . . . 43

4.4 Projeto e simulação do controlador PD . . . . . . . . . . . . . . . . . . . 45

4.5 Projeto e simulação do controlador avanço de fase . . . . . . . . . . . . 47

5 IMPLEMENTAÇÃO PRÁTICA DOS CONTROLADORES . . . . . . . 50

5.1 Controlador PD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

5.2 Controlador avanço de fase . . . . . . . . . . . . . . . . . . . . . . . . . 53

6 CONCLUSÃO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

6.1 Sugestões de desenvolvimentos futuros . . . . . . . . . . . . . . . . . . . 57

REFERÊNCIAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

APÊNDICES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

APÊNDICE A – Código usado para o compensador . . . . . . . . . . . . 59

APÊNDICE B – Código usado para o controlador . . . . . . . . . . . . . 61

16

1 INTRODUÇÃO

Desde o final do século XIX que o tema levitação magnética começou a estar na

atualidade do desenvolvimento tecnológico. No entanto, as características de instabilidade e

não-linearidade inerentes a este tipo de sistemas torna-os difíceis de controlar, o que atrasou

durante várias décadas a aplicação prática desta tecnologia. Esta dificuldade em estabilizar a

suspensão de um objeto quer por repulsão quer por atracão magnética foi estudada em 1842

por Samuel Earnshaw (JAVANT, 1981). No seu trabalho é demonstrado matematicamente a

impossibilidade de um estado de equilíbrio mecânico estacionário entre duas cargas pontuais.

O trabalho de Earnshaw passou assim a ser um clássico para quem estuda o tema da levitação

magnética e a impossibilidade de equilíbrio estável quando uma lei do inverso do quadrado

opera, passou a ser conhecido como “Teorema de Earnshaw”. Descobrir uma forma de contrariar

a lei da gravidade, foi considerado, um grande avanço da ciência. Desde então, a tecnologia da

levitação magnética tem recebido bastante atenção e está a ser largamente desenvolvida uma vez

que, por exemplo, ajuda a eliminar perdas por atrito devido à não existência de contato entre

peças mecânicas, sendo este um aspecto de grande importância na levitação magnética.

1.1 Métodos de Levitação Magnética

O princípio básico da levitação magnética é produzir forças de campo capazes de

equilibrar um corpo sem nenhum contato físico. A implementação da levitação é interessante em

casos onde se deseja eliminar o atrito mecânico, como por exemplo em meios de transporte. A

eliminação das rodas em trens de levitação propiciam maiores velocidades de deslocamento com

menor consumo de energia. Outra aplicação de grande relevância são os mancais magnéticos em

motores, permitindo um aumento de velocidade sem que haja sobreaquecimento. Atualmente

são conhecidas três categorias de levitação magnética, que são:

• Levitação eletrodinâmica

• Levitação por supercondutora

• Levitação eletromagnética

17

1.1.1 Levitação eletrodinâmica

Os sistemas de levitação eletrodinâmicas baseiam-se na força produzida devido a

velocidade relativa entre um campo magnético e um condutor. Este tipo de levitação é obtido

quando um corpo que possui um campo magnético é colocado em movimento em relação a

um material condutor. Devido ao movimento será gerada uma variação de fluxo magnético que

induz uma tensão no condutor, de acordo com a Lei de indução de Faraday (HAYT JR; BUCK,

2008), gerando assim uma corrente de modo que esta corrente produza um campo que se oponha

ao campo magnético do corpo. Da interação entre os campos surgirá a força que levitará o corpo

que possui o campo.

Um exemplo de implementação prática deste método de levitação magnética é o

trem japonês (SINHA, 1987). A grande vantagem deste método é o baixo custo dos materiais

condutores quando comparados com supercondutores e imãs permanentes, como desvantagem é

necessário alta velocidade para que a levitação ocorra e para isso o veículo precisa de um sistema

de rodas que o conduza até que alcance a velocidade necessária, para que só então as mesmas

sejam recolhidas e o trem prossiga sua trajetória em levitação.

1.1.2 Levitação por supercondução

Os sistemas de levitação por supercondução são baseados no efeito Meissner (MOON,

1994) de exclusão do campo magnético no interior de materiais supercondutores. Um material

supercondutor é caracterizado por se aproximar de ser um condutor perfeito e um diamagnético

perfeito. A demonstração clássica do efeito Meissner consiste em fazer um ímã permanente

flutuar sobre a superfície de um supercondutor. As linhas do campo magnético são impedidas

de penetrarem no supercondutor e tomam uma forma semelhante a que teriam se houvesse

outro ímã idêntico dentro do material supercondutor (ímã imagem) como mostra a Figura 1.

Dessa forma, o ímã sofre uma repulsão que compensa seu peso e levita sobre o supercondutor.

Um exemplo da implementação prática deste tipo de levitação é o trem COBRA (STEPHAN;

DAVIDE, 2013) desenvolvido pela Universidade Federal do Rio de Janeiro que possui um trilho

de imãs permanentes e um vagão com material supercondutor sua parte inferior.

18

Figura 1 – Levitação por supercondução

Fonte: SEARA da Ciência (2016).

1.1.3 Levitação Eletromagnética

Os sistemas de levitação eletromagnética tem como princípio a atração entre um

eletroimã e um material ferromagnético. Um campo é gerado através do eletroimã, devido a

circulação de uma corrente controlada por um sistema de malha fechada, para manter a levitação.

O exemplo prático mais conhecido desta técnica de levitação é o trem Alemão (TANGER, 2007),

como o mostrado na Figura . A levitação eletromagnética é o tema que irá ser apresentado no

decorrer deste trabalho, o controle do sistema é efetuado recorrendo a um controlador avanço

de fase e a um controlador PD, implementados num microcontrolador AVR (Atmega328p)

embarcado na plataforma de prototipagem Arduino Uno. O controle da tensão aplicada na

bobina foi feito atráves do controle da razão cíclica de um sinal de PWM, já a medida da posição

é efetuada a partir da utilização de um sensor de efeito Hall.

Figura 2 – Trem alemão: Transrapid 09

Fonte: Tanger (2007).

19

1.2 Objetivo

O objetivo deste trabalho é apresentar o projeto de controle da posição de um corpo

de prova em um sitema de levitação magnética, tratando dos aspectos da modelagem do sistema

eletromecânico e comparando os resultados experimentais com os obtidos em simulação e

também comparar os resultados experimentais da implementação de um controlador PD e de um

controlador avanço de fase.

20

2 PRINCÍPIOS FÍSICOS

Neste capítulo serão apresentados os princípios Físico-Matemáticos que regem o

modelo do levitador eletromagnético desenvolvido neste trabalho.

2.1 Natureza instável do sistema

A levitação magnética está associada aos princípios físicos do eletromagnetismo.

A estabilidade de um sistema de levitação magnética é o fator crucial de seu funcionamento.

Earnshaw, postula no seu teorema (JAVANT, 1981) afirmando que não é possível levitar de uma

forma estável um sistema utilizando apenas campos eletromagnéticos estáticos, pois as forças

atuantes num objeto com a combinação dos campos gravitacional, electrostático e magnético

irão tornar a posição do objecto instável. Earnshaw verificou que ao colocar 2 imãs polarizados

similarmente perto um do outro, estes repelem-se, após isso pôde provar analiticamente que não

era possível realizar levitação estática de objetos (suspender estavelmente um objeto contra a

força da gravidade) utilizando qualquer uma das configurações de imãs permanentes fixos. As

condições necessárias para se obter um equilíbrio estável são determinadas por

~F(x0,y0,z0) = 0 (2.1)

e

∇ ·~F(x0,y0,z0)< 0. (2.2)

Onde ~F(x,y,z) é a força atuante no ponto (x0,y0,z0). A equação 2.1 é referente ao equilíbrio

mecânico e a equação 2.2 é referente a estabilidade. Sabendo que a força atuante é igual ao

oposto do gradiente do potencial:

~F(x,y,z) =−~∇ϕ(x,y,z) (2.3)

A partir da Equação 2.3 podemos reescrever as equações 2.1 e 2.2 em termos de potencial,

obtemos respecticamente:

~∇ϕ(x0,y0,z0) = 0 (2.4)

e

∇2ϕ(x0,y0,z0)> 0. (2.5)

21

Em termos de potencial vemos que a condição de um equilíbrio estável é que o ponto

de equilíbrio (x0,y0,z0) seja um zero da função potencial, é o que significa a equação 2.4 e que

esse zero seja um ponto de mínimo da função potencial, é o que significa a equação 2.5. A

demonstração que será aqui apresentada se baseia no fato de que o potêncial (ϕ) de um dipolo

magnético é dado pelo produto escalar do momento magnético deste dipolo ~M com o o vetor

densidade de campo magnético exterior ~B que o enlaça, ou seja,

ϕ =−~M ·~B =−(Mx.Bx +My.By +Mz.Bz) (2.6)

Obtendo o laplaciano deste potencial temos:

∇2ϕ =−

∂ 2(Mx.Bx +My.By +Mz.Bz)

∂x2 −∂ 2(Mx.Bx +My.By +Mz.Bz)

∂y2 −∂ 2(Mx.Bx +My.By +Mz.Bz)

∂ z2 .

(2.7)

Sabendo que o vetor momento dipolo magnético ~M é constante podemos reorganizar a equação

2.7 desta forma:

∇2ϕ =−Mx(

∂ 2Bx

∂x2 +∂ 2Bx

∂y2 +∂ 2Bx

∂ z2 )−My(∂ 2By

∂x2 +∂ 2By

∂y2 +∂ 2By

∂ z2 )−Mz(∂ 2Bz

∂x2 +∂ 2Bz

∂y2 +∂ 2Bz

∂ z2 ).

(2.8)

Simplificando 2.8 temos:

∇2ϕ =−Mx∇

2 Bx−My∇2 By−Mz∇

2 Bz (2.9)

Usando os resultados oriundos das equações de Maxwell (HALLIDAY; RESNICK, 2004) que

mostram que o divergente e o rotacional do vetor densidade de campo magnético ~B são ambos

zero no espaço livre, iremos demonstrar que os laplacianos das componentes de ~B também são

zero. Desmembrando ∇2 Bx:

∇2 Bx =

∂x

∂Bx

∂x+

∂x

∂Bx

∂y+

∂x

∂Bx

∂ z(2.10)

Devido ao rotacional de ~B ser zero:

∂Bx

∂y=

∂By

∂x(2.11)

e também:

∂Bx

∂ z=

∂Bz

∂x(2.12)

22

Utilizando o fato de que o divergente de ~B ser zero, podemos escrever ∇2 Bx como:

∇2 Bx =

∂x

∂Bx

∂x+

∂By

∂y+

∂Bz

∂ z

=∂

∂x(∇ ·~B) = 0 (2.13)

Analogamente ao que foi feito em 2.13 é possível demonstrar que ∇2 By e ∇2 Bz

também são zero, usando esta informação na equação 2.9 temos que:

∇2ϕ = 0 (2.14)

Com isso observamos que a condição de estabilidade equacionada em 2.5 não é satisfeita e por

isso concluímos que o sistema é instável.

2.2 Eletroimã

Para a construção de um sistema de levitação magnética de atração é necessária a

utilização de um eletroimã que seja capaz de gerar um campo magnético suficientemente forte

para atrair um objeto. A passagem de uma corrente por um fio condutor gera na sua proximidade

um campo magnético. Uma espira percorrida por corrente gera um campo magnético semelhante

a um imã, com pólo norte, onde as linhas de fluxo magnético partem, e pólo sul onde as linhas de

fluxo magnético chegam, como na Figura 3. O campo magnético no centro de uma espira depende

do raio da espira, da intensidade da corrente que a percorre e da permeabilidade magnética do

meio, que quantifica a susceptibilidade de um elemento se magnetizar quando está sobre o efeito

de um campo magnético. A lei de Biot-Savart (HAYT JR; BUCK, 2008) é a lei que explica este

fenômeno, permitindo calcular o valor do campo magnético gerado por uma espira.

Figura 3 – Linhas do campo magnético de uma espira

Fonte: Halliday e Resnick (2004).

23

A lei de Biot-Savart pode ser usada no cálculo do campo magnético no interior

do solenóide. Considere-se um solenóide de comprimento L, raio R e com N voltas de fio,

percorrido por uma corrente I, como mostra a Figura 4, onde z1 e z2 representam as extremidades.

Para um comprimento dz′ à distância z′ da origem, se n = N/L número de voltas por unidade

de comprimento, existem n.dz voltas de fio nesse elemento selecionado. O elemento é assim

equivalente a uma única espira, percorrida por uma corrente di = n.i.dz′.

Figura 4 – Representação geométrica de um solenóide

Fonte: Tipler e Mosca (2000).

O campo magnético num ponto sobre o eixo z devido à espira na origem, com corrente n.i.dz′

dado pela equação 2.15

d~Bz =µ

2πR2nidz′

(z′2 +R2)3/2~az

(2.15)

Integrando a equação 2.15 de z1 = 0 a z2 = L é possível determinar o campo magnético na

origem devido ao solenóide inteiro: 2.15

~Bz =µ2πR2ni

∫ z2

z1

dz′

(z′2 +R2)3/2~az

~Bz =µni

2

z2√z22 +R2

−z1√

z12 +R2

~az

(2.16)

Se for considerado que o solenóide tem um comprimento L muito superior ao raio, a expressão

da campo magnético pode ser simplificada por:

~Bz = µni ~az, (2.17)

24

nos pontos interno ao solenóide e por:

~Bz =µNiR2

2√

(R2 + z2)3, (2.18)

nos pontos externos ao solenóide.

Outro conceito teórico pertinente para o estudo da levitação magnética é o da força

magnética. Qualquer força exercida num objeto pode ser vista como a variação do trabalho

exercido sobre esse mesmo objeto. Assim no caso da força magnética:

fmag =dWdx

. (2.19)

Onde W é o trabalho da força magnética que coincide com o valor da co-energia (GURU;

HIZIROGLU, 2001) e x a distância do objeto ferromagnético ao eletroimã:

W (x) =1

2L(x)i2. (2.20)

O parâmetro L(x) representa a soma de duas indutâncias: La que é um valor fixo da indutância

do solenóide; e Lb uma parcela incremental criada pela presença de um material ferromagnético

a uma distância média x0 do solenóide, que representa o objeto em levitação, usando esta

informação e as equações 2.19 e 2.20, chegamos a seguinte expressão:

fmag =i2

2dL(x)

dx=

i2

2ddx

(La +

Lb x0

x

)=−Lb x0

2i2

x2 . (2.21)

O sinal negativo apenas denota que a força é de atração, ou seja, no sentido do eletroimã.

Substituindo k =−Lb x02 a Equação 2.21 se torna:

fmag = ki2

x2 . (2.22)

O eletroimã foi construído sob o molde mostrado na Figura 5 com todas suas

dimensões em cm, foram utilizados 406 gramas do fio AWG23 (que tem capacidade de condução

de 0,73 A e máxima densidade de corrente J = 2,8 A/mm2), que corresponde a 177,3 metros ,

foram enroladas aproximadamente 19,5 camadas com uma média de 87,3 voltas por camada,

totalizando assim 1703 espiras. O núcleo do eletroimã é um tarugo de ferrite IP6 de 2,5 cm de

comprimento e 1,54 cm de diâmetro localizado no meio do molde.

25

Figura 5 – Molde do eletroimã

Fonte: o autor.

Figura 6 mostra o eletroimã já construido. Após o eletroimã ter sido bobinado foram

realizadas as medições de resistência e indutância, foram obtidos respectivamente:

R = 10,33 Ω e L = 0,1649 H.

Figura 6 – Foto do eletroimã

Fonte: o autor.

26

2.3 Circuito de potência

Neste projeto uma tensão PWM é aplicada ao eletroimã através de uma ponte H,

L298N (MICROELECTRONICS, 2000), esta tensão é controlada por um sinal PWM enviado

pelo microcontrolador para as chaves da ponte H. O limite de corrente do L298N é 2 A, o limite

de tensão é 35 V e a potência máxima deste conversor é 25 W . O controle de posição é feito

variando a razão cíclica do PWM, consequentemente variando a tensão aplicada ao eletroimã. O

circuito de uma ponte H está mostrado na Figura 7.

Figura 7 – Esquemático de uma ponte H

Fonte: o autor.

Não foi necessário o uso da chaves S2 e S3, pois não há necessidade de se mudar

a polaridade da tensão aplicada, devido ao fato de que o levitador atua apenas por atração e

não atração-repulsão, portanto as as chaves S2 e S3 permanacem abertas e não são operadas.O

esquema do circuito de potência usado para a levitação magnética está ilustrado na Figura 8.

Figura 8 – Esquema do circuito de potência para levitação magnética

Fonte: o autor.

27

2.4 Sensor de efeito Hall

Os sensores de efeito de Hall, são sensores magnéticos que se baseiam no princípio

de interação entre campos magnéticos e cargas elétricas. Quando é introduzida corrente num

material condutor, esta distribui-se uniformemente ao longo do material, como mostrado na

Figura 9, quando não há diferença de potencial entre os lados do material.

Figura 9 – Distribuição uniforme de corrente

Fonte: Patsko (2006)

Todavia, quando é aproximado um imã, o seu campo magnético perturba a distribui-

ção de corrente ao longo do material, devido à força de Lorenz (GRIFFITHS; COLLEGE, 1999),

passando a haver uma acumulação de cargas negativas e positivas em regiões distintas, o que

gera uma diferença de potencial. Quando é invertido o sentido do campo magnético, a tensão

também é invertida, como mostrado na Figura 10.

Figura 10 – Consequência da influência do campo magnético

Fonte: Patsko (2006)

A tensão obtida nos terminais da placa VH se traduz pela Equação 2.23:

VH =−IB

Dne

(2.23)

onde, I representa a corrente que percorre a placa, B a densidade de fluxo magnético, D a largura

da placa, e a carga do eletron e n é a densidade de carga dos electrões do portador.

28

Neste projeto optou-se pela utilização de um sensor linear de efeito Hall modelo

AH49E (BCD SEMICONDUCTOR, 2010), assim sendo, o objeto a ser levitado deve ser

um imã permanente. Este sensor, representado na Figura 11, apresenta uma sensibilidade de

1.6 mV/G, sendo G a unidade de densidade de campo magnético em unidades CGS (GRIFFITHS;

COLLEGE, 1999).

Figura 11 – Sensor de efeito de Hall AH49E

Fonte: BCD SEMICONDUCTOR (2010)

Este sensor é colocado na base do eletroimã, como mostrado na Figura 12, o que

causa o problema de tanto detectar o campo magnético do imã, como o campo criado pelo

eletroimã, devido a isso foi necessário criar uma função que descontasse o valor referente

ao campo do eletroimã do valor da leitura do sensor. Para descobrir esta influência foi feito

um ensaio, sem a presença do imã, aumentando-se progressivamente a tensão nos terminais

do eletroimã e observando o valor da leitura do sensor para cada valor de tensão. Com as

informações obtidas no ensaio pôde-se criar uma função cuja a entrada é o valor da tensão

aplicada nos terminais do eletroimã e a saída é o valor que deve-se descontar da leitura do sensor.

O algorítimo usado para se obter os valores desta função e imprimi-los no formato para o uso

no algorítimo do controlador se encontra no Apêndice A, neste algorítimo a tensão aplicada

ao eletroimã é representada por um valor de 8 bits (quantidade de bits padrão utilizados pelo

registador PWM do arduino UNO), sendo o valor 255 equivalente a 12 V e a leitura do sensor é

representada por um valor de 10 bits sendo o valor 1024 equivalente a 5 V .

29

3 MODELAGEM

O sistema de controle de levitação magnética que foi projetado está representado

na Figura 12. O sistema de levitação magnética concebido baseia-se na criação de um campo

magnético através da passagem da corrente por um solenóide. Este campo magnético tem

como consequência o surgimento de uma força magnética de atração num imã de massa m, cuja

posição é fornecida por um sensor de efeito Hall. A modelagem deste sistema permite criar as

equações matemáticas que regem toda a dinâmica do sistema, e com isso facilitar a criação de

um controlador apropriado para este sistema.

Figura 12 – Sistema de controle

Fonte: o autor.

De acordo com a segunda lei de Newton:

md2x(t)

dt2 = mg− fmag. (3.1)

Como o propósito deste trabalho é implementação de controladores lineares para o sistema de

levitação, devido a isso deve-se linearizar a Equação 2.22 através de uma expansão em série de

Taylor (GUIDORIZZI, 2000) em torno do ponto de equilíbrio (x0, i0), como mostrado abaixo:

fmag(x, i) = fmag(x0, i0)+d fdx

(x− x0)∣∣∣(x0,i0)

+d fdi

(i− i0)∣∣∣(x0,i0)

. (3.2)

30

Então a expressão para a força magnética após a linearização se torna:

fmag(x, i) = k(

i0x0

)2

−2k(

i20x3

0

)(x(t)− x0)+2k

(i0x2

0

)(i(t)− i0). (3.3)

Substituindo a Equação 3.3 na Equação 3.1.

md2x(t)

dt2 = mg− k(

i0x0

)2

+2k(

i20x3

0

)(x(t)− x0)−2k

(i0x2

0

)(i(t)− i0). (3.4)

Sabendo que no ponto de equilíbrio o peso é igual a forma magnética de atração, ou seja,

mg = k(

i0x0

)2, temos que:

md2x(t)

dt2 = 2k(

i20x3

0

)(x(t)− x0)−2k

(i0x2

0

)(i(t)− i0). (3.5)

Substituindo x(t) = x0 + x(t) e i(t) = i0 + i(t) na Equação 3.5:

md2x(t)

dt2 = 2k(

i20x3

0

)x(t)−2k

(i0x2

0

)i(t). (3.6)

Substituindo k1 = 2k i0x2

0, k2 = 2k i20

x30, sendo as unidades de k1[N/A] e de k2[N/m], Obtêm-se:

md2x(t)

dt2 = k2 x(t)− k1 i(t). (3.7)

Aplicando a transformada de Laplace à equação 3.1:

X(s)I(s)

=−k1

ms2− k2. (3.8)

Para um adequado dimensionamento desta função de transferência é necessário saber

o valor de x0 e de i0,onde x0 é a posição desejada e i0 a corrente que circulará no eletroimã nesta

situação.

A massa do imã é de m = 11,687 g. Para x0 = 7,7 mm a corrente que o percorre é

i0 = 205 mA.

Com os valores acima é possível calcular os parâmetros k, k1 e k2:

k = mgx2

0

i20= 1,6225×10−4 [N.m2/A2]. (3.9)

k1 = 2ki0x2

0= 1,118 [N/A] (3.10)

k2 = 2ki20x3

0= 29,732 [N/m] (3.11)

31

Substituindo os valores destes parâmetros na Equação 3.8, obtemos a função de

transferência do sistema:

X(s)I(s)

=−1,118

11,687×10−3 s2−29,732

X(s)I(s)

=−95,71

(s−50,44)(s+50,44)

(3.12)

Na Figura 13 está representado o lugar geométrico dos pólos da função de transferência Gc(s)

obtido através da função rlocus do MATLAB.

Figura 13 – Lugar geométrico dos pólos da planta Gc(s)

Fonte: o autor.

De acordo com a Figura 12, o circuito de potência que tem como entrada uma tensão, sendo

esta tensão um sinal PWM de 0 a 10 V cuja a razão cíclica é variada pelo microcontrolador,

como saída a corrente que percorre o eletroimã, desta forma funcionando como um conversor

tensão-corrente. Este conversor contém um ganho que poderá ser obtido através da linearização

do comportamento do L298N tendo como carga o eletroimã. O mesmo acontece com o sensor de

efeito Hall, que irá variar a tensão de saída em relação a distância do imã ao eletroimã. O ganho

do conversor será designado por Kc e o ganho do sensor por Ks. Estes ganhos serão obtidos nas

seções 3.1 e 3.2.

32

3.1 Obtenção de Kc

Para a obtenção de Kc foi traçado a gráfico que relaciona a tensão aplicada ao

eletroimã e a corrente que percorre o mesmo, conforme mostram a Tabela 1 e a Figura 14.

A linearização da função para V (t) ∈ [3; 10] V resulta na seguinte equação:

Tabela 1 – Corrente que percorre o eletroimã em função da tensão aplicada

Tensão (V ) Corrente (A)

0,000 0,0000,588 0,0031,765 0,0672,941 0,1714,118 0,2825,294 0,4056,470 0,5197,647 0,6358,824 0,74410,00 0,854

Fonte: o autor.

i(t) = 0,0916 v(t)−0,0736. (3.13)

Portanto Kc = 0,0916 A/V .

Figura 14 – Corrente que percorre o eletroimã em função da tensão aplicada

Fonte: o autor.

33

3.2 Obtenção de Ks

Para obtenção de Ks as medições foram feitas observando a leitura do sensor para

variações da distância do imã ao sensor, conforme mostram a Tabela 2 e a Figura 15.

Tabela 2 – Saída do sensor em função da distância do objeto ao sensor

Distância (m) Leitura do sensor (V )

0,000 0,9860,001 1,0400,002 1,1500,003 1,3080,004 1,4590,005 1,6030,006 1,7120,007 1,8190,008 1,9180,009 1,9980,010 2,0580,011 2,0980,012 2,1440,013 2,187

Fonte: o autor.

A linearização da função para x(t) ∈ [0,002; 0,010] resulta na seguinte equação:

Vs(t) = 112,86 x(t)+0,9906. (3.14)

Portanto Ks = 112,86 V/m. Na figura 15 está a curva do sensor, considerando uma região de

operação de 6 a 10 mm.

3.3 Diagrama de blocos do sistema

O projeto do controlador será feito utilizando alocação de polos, o controlador será

projetado para a função de transferência em malha aberta do sistema. Os parâmetros que serão

calculados para o controlador estarão no domínio digital, para isso além dos ganhos encontrados

nas seções 3.2 e 3.1 também é necessário incluir na função de transferência em malha aberta

os ganhos do conversores analógico-digital (KA/D = 10235 ) e digital-analógico (KD/A = 12

255) do

microcontrolador, como mostrado na Figura 16. Levando em consideração todos estes ganhos,

surge uma nova função de transferência do sistema que relaciona a tensão de entrada Vdig a

tensão de saída do sensor VSdig:

VSdig(s)

Vdig(s)= 0,0916×112,86× 1023

5× 12

255× −95,71

(s−50,44)(s+50,44). (3.15)

34

Figura 15 – Leitura do sensor em função da distância do imã ao eletroimã

Fonte: o autor.

Na Equação 3.16 temos a função de transferência com todos os ganhos incluidos.

Gc(s) =VSdig(s)

Vdig(s)=

−9525,63(s−50,44)(s+50,44)

(3.16)

Para que se tenha um entendimento mais claro do sistema foi elaborado um diagrama de blocos

do sistema, como mostrado na Figura 16.

Figura 16 – Diagrama de blocos do sistema

Fonte: o autor.

35

Onde:

Vdig(t): Sinal analógico de tensão,

V (t): sinal digital, em 8 bits, de tensão,

i(t): sinal analógico de corrente,

x(t): sinal analógico de posição,

Vs(t): sinal analógico da leitura do sensor de efeito hall,

Vdig(s): sinal digital, em 10 bits, da leitura do sensor de efeito hall.

A Figura 17 mostra uma fotografia da estrutura desenvolvida para o sistema, o

objeto escolhido para levitar tem uma dinâmica que facilite o amortecimento da oscilação

quando aplicada alguma perturbação, por isso o mesmo tem o centro de massa afastado de onde o

eletroimã aplica força (imã do objeto), para que o peso restaure o equilíbrio mais facilmente. Esta

característica do objeto confere ao sistema grande robustez, permitindo se aplicar manualmente

perturbações e observar o sistema voltar ao ponto de equilíbrio sem caiar.

Figura 17 – Estrutura do sistema de levitação magnética (Vistas frontal e superior)

Fonte: o autor.

36

4 CONTROLE DO SISTEMA

Neste capítulo será descrito o projeto dos diferentes controladores utilizados para

estabilizar o sistema de levitação magnética.

4.1 Controladores utilizados

4.1.1 Controlador PD

O controlador proporcional-derivativo, onde o esforço de controle é proporcional

ao erro e à derivada do erro, tendo esforço de controle dada por: u(t) = Ke(t)+KTDde(t)

dt como

mostrado na Figura 18. A função de transferência do controlador é:

C(s) =U(s)E(s)

= K(1+ sTD). (4.1)

Deve-se observar que um controlador com a estrutura apresentada não é realizável físicamente,

pois sempre existirá um pólo na implementação real do controlador, este é um problema que

é resolvido com a discretização que será vista mais a frente na Seção 4.2. Um controlador

derivativo exibe uma resposta antecipatória, estando adiantado de TD segundos com relação ao

controlador proporcional. Este comportamento indica que o controlador derivativo é adequado

para melhorar o comportamento transitório do sistema, em contrapartida apresenta um alto ganho

que ele apresenta em altas frequências.

Figura 18 – Diagrama de blocos de um sistema de controle com um controlador PD

Fonte: adaptado de Santos (2011).

TD: constante de derivação,

K: constante multiplicativa,

u(t): esforço de controle,

e(t): erro, ou seja, valor de distância medido subtraído do valor da referência.

37

4.1.2 Controlador avanço de fase

A principal finalidade do controlador em avanço é suprir um atraso de fase esta-

belecido pelas próprias características do sistema original. Este tipo de compensação permite

remodelar o lugar de raízes de maneira a serem obtidos os pólos desejados em malha fechada. Em

geral, os efeitos deste tipo de controlador correspondem a um aumento no amortecimento com

menores tempos de subida e de estabelecimento, o que corresponde no domínio das frequências

a um aumento na largura de banda, o que torna a resposta mais rápida. Além disso, as margens

de ganho e de fase são melhoradas, contudo não há eliminação do erro em regime permanente

(OGATA, 2003). Este tipo de controlador é dado pela função de transferência:

C(s) =U(s)E(s)

= Ks+ z1

s+ p1, p1 > z1. (4.2)

É possível concluir que o controlador em avanço atua na resposta transitória do sistema da

mesma forma que atua um controlador PD, com a ressalva de que o controlador em avanço é

fisicamente realizável mesmo no domínio do tempo contínuo.

4.2 Discretização dos controladores

Um sistema de controle em tempo contínuo com realimentação pode ser apresentado

como mostra a Figura 19. Neste caso, todos os sinais envolvidos são sinais contínuos, e tanto o

controlador como o sistema podem ser descritos no domínio da frequência.

Figura 19 – Exemplo de um sistema de controle em tempo contínuo

Fonte: adaptado de Santos (2011).

r(t): referência do sistema,

e(t): erro, ou seja, valor da saída medido subtraído do valor da referência,

u(t): esforço de controle,

y(t): saída do sistema.

38

Já os sistemas de controle em tempo discreto envolvem a discretização do controlador.

Um sistema de controle em tempo discreto utiliza um microprocessador em conjunto com uma

placa de aquisição de dados para a implementação do controlador. Sendo assim, está implícito

no método que ocorra pelo menos uma passagem do tempo contínuo para o tempo discreto,

denominada discretização ou amostragem do sinal, e uma passagem do tempo discreto para o

tempo contínuo, chamada de reconstrução. A implementação em tempo real do controlador

para um sistema de controle em tempo discreto com realimentação, onde o controlador é

implementado digitalmente, pode ser observada na Figura abaixo.

Figura 20 – Exemplo de um sistema de controle em tempo discreto

Fonte: adaptado de Santos (2011).

r[ k ]: referência discreta do sistema,

u(t) e u[ k ]: esforço de controle analógico e digital respectivamente

y(t) e y[ k ]:saída analógica e digital respectivamente,

e[ k ]: erro, valor da referência discreta subtraída do valor discretizado da saída.

Os métodos que serão utilizados para a discretização dos controladores são: regra

dos retângulos em avanço (Regra de Euler), regra dos retângulos em atraso e a regra dos trapézios

(Regra de Tustin). Estes métodos são utilizados para se obter os equivalentes discretos dos

controladores contínuos. Nesta seção será usada como base a seguinte função de transferência:

H(s) =U(s)E(s)

=a

s+a, (4.3)

A regra dos retângulos em avanço tem a seguinte equação de diferenças:

u[kT ] = (1− kT )u[kT −T ]+aTe[kT −T ], (4.4)

onde T é o tempo de amostragem em segundos.

Encontrando a função de transferência através da Equação 4.4 obtém-se:

H(z) =a( z−1

T

)+a

. (4.5)

39

Graficamente a aproximação por retângulos em avanço é feita como na Figura 21:

Figura 21 – Método retângulos em avanço

Fonte: adaptado de Lima (2010).

Dada uma função de transferência continua H(s), a função de transferência discreti-

zada pelo método de retângulos em avanço é:

H(z) = H(s)∣∣∣s= z−1

T

. (4.6)

Passando para a equação de diferenças dos retângulos em atraso, temos:

u[kT ] = (1− kT )u[kT −T ]−aT (u[kT ]− e[kT ]), (4.7)

Encontrando a função de transferência através da Equação 4.7 obtém-se:

H(z) =a( z−1

T z

)+a

. (4.8)

Graficamente a aproximação por retângulos em atraso é feita como mostrado na Figura 22:

Figura 22 – Método: retângulos em atraso

Fonte: adaptado de Lima (2010).

40

Dada uma função de transferência continua H(s), a função de transferência discreti-

zada pelo método de retângulos em atraso é:

H(z) = H(s)∣∣∣s= z−1

T z

. (4.9)

Por fim, a regra dos trapézios é representada pela seguinte equação de diferenças:

u[kT ] = u[kT −T ]− aT2(u[kT −T ]+u[kT ])+

aT2(e[kT −T ]+ e[kT ]), (4.10)

Encontrando a função de transferência através da Equação 4.10 obtém-se:

H(z) =a(T

2z−1z+1

)+a

. (4.11)

Graficamente a aproximação por trapézios é feita como mostrado na Figura 23:

Figura 23 – Método: trapézios

Fonte: adaptado de Lima (2010).

Dada uma função de transferência continua H(s), a função de transferência discreti-

zada pelo método dos trapézios é:

H(z) = H(s)∣∣∣ T

2z−1z+1

. (4.12)

4.2.1 Discretização do controlador PD

Para a implementação do controlador PD no microcontrolador é necessário converter

a função de transferência contínua numa função de transferência discreta. Para a discretização

foi usada a regra dos retângulos em atraso, que foi descrita na subseção anterior, então a função

de transferência no domínio do tempo discreto se torna:

D(z) = D(s)∣∣∣s= z−1

T z

,

D(z) = K(

1+(

z−1T z

)TD

).

(4.13)

41

Rearanjando os termos da Equação 4.13:

D(z) =U(z)E(z)

= KDz−α

z. (4.14)

Onde:

KD = K + KTDT ,

α = TDT+TD

.

A implementação do PD digital, no microcontrolador, é efetuada da forma ilustrada

na Figura 24. Esta implementação é baseada na Equação 4.15, que é a equação de diferenças

encontrada a partir função de transferência da Equação 4.14.

u[ k ] = KD(e[ K ]−αe[K−1]). (4.15)

Figura 24 – Implementação digital do controlador PD

Fonte: o autor.

42

Onde:

gSetPoint: sinal digital de referência,

gValorSensor: sinal digital de posição obtido pelo A/D.

4.2.2 Discretização do controlador avanço de fase

Para a implementação do controlador em avanço foi também necessário discretizar a

função de transferência contínua, mostrada na Equação 4.2. Para tal, foi utilizada a regra das

diferenças em avanço, obtendo a seguinte função de transferência discretizada:

D(z) = D(s)∣∣∣s= z−1

T

,

D(z) = K

(z−1T − z1

z−1T − p1

).

(4.16)

Rearanjando os termos da Equação 4.16:

D(z) =U(z)E(z)

= KDz−α

z−β. (4.17)

Onde:

KD = K,

α = 1+ z1T ,

β = 1+ p1T .

A implementação do controlador avanço de fase digital, no microcontrolador, é

efetuada da forma ilustrada na Figura 25. Esta implementação é baseada na Equação 4.18, que é

a equação de diferenças encontrada a partir função de transferência da Equação 4.17.

u[ k ] = βu[k−1]+KD(e[ K ]−αe[K−1]). (4.18)

43

Figura 25 – Implementação digital do controlador avanço de fase

Fonte: o autor.

4.3 Discretização da planta do sistema

Para o projeto dos controladores será necessário se ter a função de transferência do

sistema de levitação, incluindo todos os ganhos aplicados ao sistema, esta função de transferência

é mostrada na Equação 3.15. Um diagrama de blocos mais detalhado do sistema está representado

na Figura 26.

Figura 26 – Diagrama de blocos do sistema de controle

Fonte: o autor.

44

O projeto dos controladores será feito diretamente no domínio do tempo discreto

usando o método da alocação de polos. Para tal, é necessário transformar a função de transferên-

cia no domínio do tempo contínuo, para o domínio do tempo discreto, usando a transformada Z.

O tempo de amostragem escolhido foi T = 0,003 s, este tempo foi escolhido depois de alguns

testes, usando uma flag ao final da rotina e verificando se o microcontrolador terminaria os

cálculos para o tempo de amostragem programado, foi verificado que para tempos de amostragem

menores que 3 ms a interrupção seria repetida sem ter efetuado os cálculos do esforço de controle.

A função de transferência discreta do sistema de levitação é dada por:

GD(z) = (1− z−1)Z

Gc(s)s

,

GD(z) = (1− z−1)Z

−9526,63s(s−50,44)(s+50,44)

,

GD(z) =−0,042951(z+1)

(z−1,163)(z−0,8596).

(4.19)

Na Figura 27 está representado o lugar geométrico dos pólos da função de transfe-

rência GD(z) obtido através da função rlocus do MATLAB.

Figura 27 – Lugar geométrico dos pólos da planta discretiza GD(z)

.

Fonte: o autor.

45

4.4 Projeto e simulação do controlador PD

O controlador PD discretizado é descrito pela função de transferência da Equação

4.14, o método que será usada para encontrar o valor de seus parâmetros é a alocação de

polos. O objetivo do projeto do controlador é obter um sistema rápido e com pouco overshoot,

pretende-se que o sistema cumpra as especificações desejadas de um máximo overshoot (MP)

menor ou igual a 7,4% e um tempo de subida (TR) menor ou igual a 0,0064 s. Com estas

especificações é possível obter o coeficiente de amortecimento, ζ = 0,6383, e a frequência

natural, ωn = 279,6 rad/s, através das Equações 4.20 e 4.21, respectivamente:

ζ =−−ln Mp

π√1+( ln Mp

π)2, (4.20)

ωn =1,8TR

. (4.21)

Assim, os pólos desejados para o sistema são:

s1,2 =−ζ ωn +ωn j√

1−ζ 2, (4.22)

z1,2 = es1,2T = 0,4675± j0,3523. (4.23)

Utilizando alocação de polos, com as condições descritas pelas Equações 4.24 e 4.25, obtiveram-

se os valores de α = 0,8162 e de KD =−7,49.

46

Condição de módulo:

|C(z) GD(z)|z=z1 = 1, (4.24)

condição de fase:

∠C(z) GD(z)|z=z1 =−π rad (4.25)

Logo, C(z) possui a seguinte forma:

C(z) =−7,49z−0,8162

z(4.26)

A função de transferência em malha fechada é:

T (z) =GD(z)C(z)

1+GD(z)C(z)= 0,3217

(z+1)(z−0,8162)(z−0,7662)(z2−0,9315z+0,3427)

. (4.27)

O respectivo lugar das raízes está ilustrado na Figura 28.

Figura 28 – Lugar de raízes do sistema com o contolador PD

Fonte: o autor.

A partir do lugar de raízes verifica-se que o sistema se tornou estável. Este fato é também

observado através da resposta do sistema a uma entrada em degrau, como mostra a Figura 29.

47

Figura 29 – Resposta ao degrau do sistema com o contolador PD

Fonte: o autor.

Através do MATLAB é possível verificar que MP = 22,58%, TR = 0,006 s e erro

de regime permanente de 24%. Conclui-se que o tempo de subida é aproximadamente igual

ao pretendido, o overshoot é inferior ao máximo determinado e o sistema é estável, portanto o

controlador PD projetado é adequado ao sistema.

A obtenção da equação de diferenças é efetuada da seguinte forma:

U(z)E(z)

=−7,49z−0,8162

z,

U(z)E(z)

=−7,49(1−0,8162z−1),

u[ k ] =−7,49(e[ k ]−0,8162e[k−1]).

(4.28)

O sinal do ganho do controlador é negativo, pois quando o objeto se aproxima do sensor o

esforço de controle deve diminuir, para que a tensão e consequentemente a corrente que circula

no eletroimã diminua.

4.5 Projeto e simulação do controlador avanço de fase

O controlador avanço de fase discretizado é descrito pela função de transferência da

Equação 4.16, assim como no projeto do controlador PD o método utilizado para se encontrar os

valores dos parâmetros deste controlador é a alocação de polos. Como neste controlador temos

três parâmetros (α , β e KD) não é possível determinar todos usando apenas as condições de

módulo (Equação 4.24) e fase (Equação 4.25), por isso o parâmetro α será definido de modo a

48

eliminar um polo do função de transferência do sistema, desta forma = 0,8596. As especificações

desejadas são: MP = 11,22% e TR = 0,003 s. Com as especificações definidas é possível obter o

coeficiente de amortecimento, ζ = 0,5714, e a frequência natural, ωn = 600 rad/s, através das

Equações 4.20 e 4.21, respectivamente. Depois de obtidos o coeficiente de amortecimento e a

frequência natural de oscilação podemos encontrar os polos desejados do sistema através do par

de Equações 4.22 e 4.23, obtendo então z1,2 = 0,0334± j0,3560. Utilizando alocação de polos,

com as condições descritas pelas Equações 4.24 e 4.25, obtiveram-se os valores de α = 0,8596,

β =−0,4475 e KD =−15,1.

Logo, C(z) possui a seguinte forma:

C(z) =−15,1z−0,8596z+0,4475

. (4.29)

A função de transferência em malha fechada é:

T (z) =GD(z)C(z)

1+GD(z)C(z)= 0.64855

(z+1)(z2−0,06728z+0,128)

. (4.30)

O respectivo lugar das raízes está ilustrado na Figura 30

Figura 30 – Lugar de raízes do sistema com o contolador avanço de fase

Fonte: o autor.

A partir do lugar de raízes verifica-se que o sistema se tornou estável. Este fato é também

observado através da resposta do sistema a uma entrada em degrau, como mostra a Figura 31.

49

Figura 31 – Resposta ao degrau do sistema com o contolador avanço de fase

Fonte: o autor.

Através do MATLAB é possível verificar que MP = 9,83%, TR = 0,003 s e erro de

regime permanente de 22%. Conclui-se que o tempo de subida é igual ao pretendido, o overshoot

é inferior ao máximo determinado e o sistema é estável, portanto o controlador avanço de fase

projetado é adequado ao sistema.

A obtenção da equação de diferenças é efetuada da seguinte forma:

U(z)E(z)

=−15,1z−0,8596z+0,4475

,

U(z)E(z)

=−15,11−0,8596z−1

1+0,4475z−1 ,

u[ k ] =−0,4475u[k−1]−15,1(e[ k ]−0,8596e[k−1]).

(4.31)

O sinal do ganho do controlador é negativo pela mesma razão explicada no fim da Seção 4.4.

50

5 IMPLEMENTAÇÃO PRÁTICA DOS CONTROLADORES

5.1 Controlador PD

Esta seção tem como objetivo testar e validar o controlador PD projetado na seção

4.4. Inicialmente foi efetuada uma simulação no MATLAB/Simulink, conforme o diagrama de

blocos da Figura 32.

Figura 32 – Diagrama de blocos do sistema de controle no Simulink

Fonte: o autor.

Na Figura 33 está representada a resposta ao degrau do sistema. Verifica-se que o sistema

simulado tem um overshoot MP = 22,58%, tempo de subida TR = 0,006 s e erro em regime

permanente de 24%, como já foi observado na seção 4.4.

Figura 33 – Resposta ao degrau simulada do sistema com o controlador PD

Fonte: o autor.

51

Este controlador foi testado no sistema real, tendo estabilizado para a referência de 6,5 mm e se

mantido estável na posição de 7,8 mm, como mostra a Figura 34.

Figura 34 – Posição do objeto no sistema real

Fonte: o autor.

O erro em regime permanente no sistema real é de 20%, desta forma se aproximando bastante do

modelo simulado no MATLAB. Além do teste com a referência constante também foram testadas

mais duas referências, uma senoidal e uma onda quadrada, ambas de amplitude 1 mm e período

2 s. A referência senoidal está mostrada na Figura 35:

Figura 35 – Referência senoidal em torno do ponto de equilíbrio

Fonte: o autor.

52

Na Figura 36 é mostrada a resposta da posição do objeto para a referência senoidal e como se

pode observar o objeto oscila em torno da posição 7,8 mm com amplitude de 1 mm.

Figura 36 – Posição do objeto no sistema real com referência senoidal

Fonte: o autor.

A referência em onda quadrada está mostrada na Figura 37:

Figura 37 – Referência em onda quadrada em torno do ponto de equilíbrio

Fonte: o autor.

Na Figura 38 é mostrada a resposta da posição do objeto para a referência em onda quadrada e

como se pode observar o objeto oscila em torno da posição 7,8 mm com amplitude de 1 mm.

53

Figura 38 – Posição do objeto no sistema real com referência em onda quadrada

Fonte: o autor.

Como foi possível observar as respostas em posição para as referências quadrada e

senoidal são centradas em 7,8 mm, assim como ocorreu para a referência fixa em 6,5 mm, como

era de se esperar, pois estes sinais de referência são centrados em 6,5 mm.

5.2 Controlador avanço de fase

O objetivo desta seção é testar e validar o controlador em avanço projetado na seção

4.5. Inicialmente foi efetuada uma simulação no MATLAB/Simulink, conforme o diagrama de

blocos da Figura 39.

Figura 39 – Diagrama de blocos do sistema de controle no Simulink

Fonte: o autor.

Na Figura 40 está representada a resposta ao degrau do sistema. Verifica-se que o sistema

simulado tem um overshoot MP = 9,83%, tempo de subida TR = 0,003 s e erro em regime

permanente de 22%, como já foi observado na seção 4.5.

54

Figura 40 – Resposta ao degrau do sistema com o controlador avanço de fase

Fonte: o autor.

Este controlador foi testado no sistema real, tendo estabilizado para a referência de 6,5 mm e se

mantido estável na posição de 7,6 mm, como mostra a Figura 41.

Figura 41 – Posição do objeto no sistema real

Fonte: o autor.

O erro em regime permanente no sistema real é de 17,5%, se aproximando bastante do modelo

simulado no MATLAB. Assim como foi feito com o controlador PD, além do teste com a

referência constante também foram testadas as referências senoidal e em onda quadrada, ambas

de amplitude 1 mm e período 2 s, como nas Figuras 35 e 43.

55

Na Figura 42 é mostrada a resposta da posição do objeto para a referênia senoidal e como se

pode observar o objeto oscila em torno da posição 7,6 mm com amplitude de 1 mm.

Figura 42 – Posição do objeto no sistema real com referência senoidal

Fonte: o autor.

Na Figura 43 é mostrada a resposta da posição do objeto para a referência em onda quadrada e

como se pode observar o objeto oscila em torno da posição 7,6 mm com amplitude de 1 mm.

Figura 43 – Posição do objeto no sistema real com referência em onda quadrada

Fonte: o autor.

Como foi possível observar as respostas em posição para as referências quadrada

e senoidal também são centradas em 7,6 mm, assim como ocorreu para a referência fixa em

6,5 mm. Com os resultados obtidos nesta seção é possível constatar que o controlador em avanço

56

de fase se comporta de maneira muito parecida com o controlador PD, porém tem uma melhor

atenuação de transitórios e isto é notório na resposta em posição para a referência em onda

quadrada, no qual o sistema com controle PD apresenta maior oscilação do que o sistema com o

controlador em avanço de fase.

57

6 CONCLUSÃO

Ao longo desta monografia foi desenvolvido um controle de posição para um objeto

demonstrando assim o funcionamento de um sistema de levitação magnética. O princípio usado

neste tipo de levitação é o mesmo utilizado em trens Alemães (TRANSRAPID) conhecidos

como MAGLEVs.

Este projeto é composto por cinco partes principais, sendo elas: modelagem, projeto

do controlador, simulação, implementação no sistema real e comparação de resultados. A

modelagem foi feita de maneira fenomenológica, baseada na aplicações de princípios físicos

fundamentais. O projeto do controlador foi realizado a partir do método de alocação de polos,

trazendo os polos instáveis de malha aberta para dentro do circulo unitário. As simulações foram

feitas no simulink/MATLAB. A implementação dos controladores no sistema físico real se deu

através do microcontrolador AVR 328p embarcado na plataforma de prototipagem Arduino

UNO. A comparação entre os resultados simulados e obtidos mostrou que apesar de haverem

pequenas diferenças, devido a erros de modelagem, o modelo do sistema obtido representa bem

o sistema real, a parte do projeto mais suscetível a erros de modelagem é o levantamento da

curva do sensor, já que é um processo manual e extremamente delicado.

O experimento tem sua importância por apresentar diversos assuntos abordados no

curso de engenharia elétrica, tais como conversão eletromecânica, microcontroladores e controle

de sistemas dinâmicos. Além de sua característica didática, o tema levitação magnética gera

curiosidade e admiração do público em geral.

6.1 Sugestões de desenvolvimentos futuros

Como continuidade para este projeto pode ser feita a implementação deste mesmo

sistema utilizando a ponte completa do conversor, o que daria a capacidade de o eletroimã repelir

o objeto, conferindo assim maior robustez ao sistema. Outra sugestão seria a utilização de dois

eletroimãs, um acima do objeto, como já está implementado e outro abaixo do objeto, o que

também iria conceder ao sistema maior robustez.

O embasamento teórico usado neste sistema pode ser compreendido como uma

introdução aos mancais magnéticos, que são utilizados em sistemas onde deseja-se eliminar

perdas por atrito mecânico entre partes girantes.

58

REFERÊNCIAS

BCD SEMICONDUCTOR. LINEAR HALL-EFFECT IC–Datasheet. 2010.

GRIFFITHS, D. J.; COLLEGE, R. Introduction to electrodynamics. [S.l.]: prentice HallUpper Saddle River, NJ, 1999. v. 3.

GUIDORIZZI, H. L. Um curso de Cálculo. [S. l.]: Grupo Gen-LTC, 2000. v. 2.

GURU, B. S.; HIZIROGLU, H. R. Electric machinery and transformers. [S. l.]: OxfordUniversity Press New York, 2001.

HALLIDAY, D.; RESNICK, K. Fisica. [S. l.]: LTC, 2004. v. 3.

HAYT JR, W. H.; BUCK, J. A. Eletromagnetismo. [S. l.]: Bookman Editora, 2008.

JAVANT, B. V. Electromagnetic suspension and levitation. University of Sussex. UK, 1981.

LIMA, C. R. E. Lightning: Controle e servomecanismos ii. [S. l.]: Universidade TecnológicaFederal do Paraná, 2010.

MICROELECTRONICS, S. L298–Dual Full-Bridge Driver–Datasheet. 2000.

MOON, F. Superconducting Levitation: Applications to Bearing and MagneticTransportation. [S.l.]: Wiley-VCH, 1994.

OGATA, K. Engenharia de controle moderno. [S.l.]: Prentice Hall, 2003.

PATSKO, L. F. Aplicações, funcionamento e utilização de sensores. Maxwell BohrInstrumentação Eletrônica, 2006.

SANTOS, A. M. M. Controlo Por computador de um sistema de levitação magnética.Dissertação (Mestrado) — Instituto Superior de Engenharia do Porto, Porto, 2011.

SEARA DA CIÊNCIA. Levitação por supercondução. 2016. Disponível em: <http://www.seara.ufc.br/especiais/fisica/supercondutividade/supercondutividade2.htm>. Acesso em:16 out. 2016.

SINHA, P. Electromagnetic suspension : dynamics control. [S. l.]: IEE, 1987.

STEPHAN, R.; DAVIDE, E. MagLev-COBRA: Um veículo para transporte urbanoenergeticamente eficiente e ambientalmente correto. [S. l.]: Sociedade Brasileira deEletrônica de Potência, 2013.

TANGER, R. Transrapid Maglev System. [S. l.]: Transrapid International-USA, Inc, 2007.

TIPLER, P. A.; MOSCA, G. Física para cientistas e engenheiros. Vol. 2: eletricidade emagnetismo, óptica . [S. l.]: Grupo Gen-LTC, 2000.

59

APÊNDICE A – CÓDIGO USADO PARA O COMPENSADOR

1 #include <TimerOne.h> // Estouro do timer1

2 #define PINO_BOBINA 11

3 #define PINO_SENSOR A0

4 int gValorSensor;

5 int u;

6 void SetarPWMBobina ()

7 // setar timer2:PWM centrado , com frequencia de 3921 Hz.

8 TCCR2A = 0;

9 TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM20);

10 TCCR2B = 0;

11 TCCR2B = _BV(CS21);

12

13 void writeBobinaPWM(uint8_t pin , int val)

14

15 if( pin == 3 ) OCR2B = val;

16 else if( pin == 11 ) OCR2A = val;

17 else OCR2A = 0; OCR2B = 0;

18

19 void setup()

20

21 SetarPWMBobina ();

22 Serial.begin (115200);

23 Timer1.initialize (3000); //T = 3000us = 3ms

24 Timer1.attachInterrupt(callback);

25 SetarPWMBobina ();

26 pinMode(PINO_BOBINA , OUTPUT);

27 pinMode(PINO_SENSOR ,INPUT);

28 gValorSensor ;

29 u=0;

30

60

31 void callback ()

32 if(u <=255)

33 gValorSensor =analogRead(PINO_SENSOR);

34 writeBobinaPWM(PINO_BOBINA , u);

35 Serial.print( "else if(pwm==" );

36 Serial.print (")");

37 Serial.print ("\n");

38 Serial.print ("");

39 Serial.print ("\n");

40 Serial.print ("temp =509+ sensor -");

41 Serial.print(gValorSensor);

42 Serial.print (";");

43 Serial.print( "\n");

44 Serial.print( "");

45 Serial.print( "\n");

46 u=u+1;

47

48

49 void loop()

61

APÊNDICE B – CÓDIGO USADO PARA O CONTROLADOR

1 #include "TimerOne.h"

2 #define PINO_BOBINA 11

3 #define PINO_SENSOR A0

4 #define PINO_SENSOR_CORRENTE A1

5

6 const int CONTROL_SETPOINT = 352;

7

8 float K = -15.1; // avanco de fase -15.1 // PD -7.49

9 float Zero = 0.8596; // avanco de fase 0.8596 // PD

0.8162

10 float Polo = -0.4775; // avanco de fase -0.4775 // PD 0

11 float t;

12 float t1;

13 int ref =0;

14 int A=20;

15 int quad;

16 int seno;

17 int gSetPoint;

18 int gValorSensor;

19 int u;

20 int u1;

21 int gBias;

22 float gK;

23 float gZero;

24 float gPolo;

25 int err;

26 int err1;

27

28 void setup()

29

62

30 setupCoilPWM ();

31 pinMode (10, OUTPUT);

32 Timer1.initialize (3000); // initialize timer1 ,

and set a 1/2 second period // setup

pwm on pin 9, 50% duty cycle

33 Timer1.attachInterrupt(callback); // attaches callback

() as a timer overflow interrupt

34 pinMode(PINO_BOBINA , OUTPUT);

35 pinMode(PINO_SENSOR ,INPUT);

36 quad=gSetPoint;

37

38 Serial.begin (115200);

39 quad=gSetPoint;

40 gSetPoint = CONTROL_SETPOINT;

41 gValorSensor = 0;

42 gK = K;

43 gZero = Zero;

44 gPolo = Polo;

45 err =0;

46 err1 =0;

47

48

49

50 void setupCoilPWM ()

51

52 // Setup the timer 2 as Phase Correct PWM , 3921 Hz.

53 // Timer 2 register: WGM20 sets PWM phase correct mode ,

COM2x1 sets the PWM out to channels A and B.

54 TCCR2A = 0;

55 TCCR2A = _BV(COM2A1) | _BV(COM2B1) | _BV(WGM20);

56 // Set the prescaler to 8, the PWM freq is 16MHz /255/2/ <

prescaler >

63

57 TCCR2B = 0;

58 TCCR2B = _BV(CS21);

59

60

61 void writeCoilPWM(uint8_t pin , int val)

62

63 if( pin == 3 )

64

65 OCR2B = val;

66

67 else if( pin == 11 )

68

69 OCR2A = val;

70

71 else

72

73 OCR2A = 0;

74 OCR2B = 0;

75

76

77

78 void processCommand( int cmd )

79

80 char tmp [64];

81

82 switch(cmd)

83

84 case q :

85 ref =1;

86 break;

87 case s :

88 ref =2;

64

89 break;

90 case f :

91 ref =0;

92 break;

93 case Z :

94 gZero += Zero_INCR;

95 break;

96 case p :

97 gPolo -= Polo_INCR;

98 if( gPolo < 0 ) gPolo = 0;

99 break;

100 case P :

101 gPolo += Polo_INCR;

102 break;

103 case c :

104 gSetPoint =gSetPoint -1;

105 break;

106 case v :

107 gSetPoint=gSetPoint +1;

108 break;

109 case x :

110 case X :

111 sprintf(tmp , " s(%d) h(%d) e(%d) c(%d) i(%d) K(%u

) Zero(%u) Polo(%u)\n", gSetPoint ,

normalizeSensor(u, analogRead(PINO_SENSOR)),

err , u, analogRead(PINO_SENSOR_CORRENTE), (

uint16_t)(gK), (uint16_t)(gZero), (uint16_t)(

gPolo) );

112 Serial.print(tmp);

113 break;

114 default:

115 break;

65

116

117

118

119 int normalizeSensor(int pwm , int sensor )

120

121 int temp =0;

122 if(pwm ==0)

123

124 temp =509+ sensor -509;

125

126 else if(pwm ==1)

127

128 temp =509+ sensor -509;

129

130 else if(pwm ==2)

131

132 temp =509+ sensor -509;

133

134 else if(pwm ==3)

135

136 temp =509+ sensor -509;

137

138 //...de pwm 0 a t 255...

139 //Esta impressao eh realizda pelo

140 // programa mostrado no Apendice A

141 else if(pwm ==251)

142

143 temp =509+ sensor -463;

144

145 else if(pwm ==252)

146

147 temp =509+ sensor -463;

66

148

149 else if(pwm ==253)

150

151 temp =509+ sensor -462;

152

153 else if(pwm ==254)

154

155 temp =509+ sensor -462;

156

157 else if(pwm ==255)

158

159 temp =509+ sensor -462;

160

161 return temp;

162

163

164 void callback ()

165 // User commands.

166 if( Serial.available () ) processCommand( Serial.read()

);

167

168 ValorSensor =normalizeSensor(u, analogRead(

PINO_SENSOR));

169 if(ref ==0)err = (gSetPoint+A - gValorSensor);

170 else if(ref ==1)

171 t = millis () /2000.0;

172 senoq= 5+ sin(t*2.0*PI);

173 if(senoq >=5)quad = (gSetPoint)+A;

174 else if (senoq <5)quad = (gSetPoint)-A;

175

176 err = (quad - gValorSensor);

177

67

178 else if(ref ==2)

179 t = millis () /2000.0;

180 seno= gSetPoint + A*sin(t*2.0*PI);

181 err = (seno - gValorSensor);

182

183

184 u= (Polo*u1+(K)*(err -Zero*err1));

185 u1 = u;

186 err1=err;

187 if(gValorSensor >=489) u=0;

188 u = constrain (u,0, 255);

189 writeCoilPWM(PINO_BOBINA , u);

190

191 void loop()