motor magnetico unicamp

59
UNIVERSIDADE ESTADUAL DE CAMPINAS FACULDADE DE ENGENHARIA MECÂNICA ENGENHARIA DE CONTROLE E AUTOMAÇÃO Projeto, Montagem e Caracterização de Motor Linear de Imã Permanente ES952 – Trabalho de Graduação II Fevereiro de 2009 Orientador: Prof. Dr. Luiz Otávio Saraiva Ferreira – DMC/FEM/UNICAMP Aluno: Hugo Sakai Idagawa – RA: 024034

Upload: rodrigo-leite-goncalves-linhares

Post on 06-Aug-2015

170 views

Category:

Documents


6 download

TRANSCRIPT

Page 1: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Projeto, Montagem e Caracterização de Motor Linear de Imã Permanente

ES952 – Trabalho de Graduação II

Fevereiro de 2009

Orientador: Prof. Dr. Luiz Otávio Saraiva Ferreira – DMC/FEM/UNICAMP

Aluno: Hugo Sakai Idagawa – RA: 024034

Page 2: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Agradecimentos:

Agradeço ao meu orientador, Prof. Dr. Luiz Otávio Saraiva Ferreira, que me guiou

ao longo do desenvolvimento deste trabalho.

Ao Prof. Dr. Pablo Siqueira Meirelles pela sua co-orientação neste trabalho.

Ao Geraldo Paladini Salustiano pela construção do protótipo do motor linear.

Ao Marcílio Messias da Silveira pela ajuda durante a confecção da eletrônica do

motor.

Aos meus colegas do Laboratório do Departamento de Mecânica Computacional

(FEM – UNICAMP) pelos diversos momentos de descontração.

i

Page 3: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

RESUMO:

Em diversas aplicações de engenharia é necessário o uso de movimento linear,assim o uso de um motor linear nesses casos oferece a perspectiva de simplificação doprojeto em relação aos sistemas acionados com motores rotativos, devido à inexistênciade um sistema de conversão do movimento rotativo em linear (engrenagens, correias,etc).

Nesse contexto foi realizado esse trabalho que teve como objetivo o projeto e acaracterização de um motor linear, baseado no modelo desenvolvido pela Philips. Essetipo de motor possui um projeto de montagem bastante simples e é adequado paraaplicações que não excedam os 500mm.

Palavras-chave: motor linear, movimento linear, motor Philips

ii

Page 4: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

SumárioLista de Figuras................................................................................................................v

Lista de Tabelas..............................................................................................................vi

1. Introdução....................................................................................................................1

2. Apresentação do motor................................................................................................5

2.1. Desempenho e limitações....................................................................................5

2.2. Modelo eletromagnético.......................................................................................5

2.2.1. Campo magnético efetivo.............................................................................7

2.2.2. Campo nos núcleos de ferro........................................................................8

2.3. Modelo mecânico..................................................................................................9

3. Projeto do motor........................................................................................................10

3.1. Dimensionamento do enrolamento:....................................................................11

3.2. Cálculo do campo efetivo BE:.............................................................................12

3.3. Cálculo da corrente máxima Imáx:.....................................................................13

3.4. Cálculo da força de tração do motor:..................................................................13

4. Bancada de Testes....................................................................................................15

4.1. Controle e Comando...........................................................................................15

4.2. Acionamento.......................................................................................................15

4.3. Aquisição............................................................................................................15

5. Métodos Experimentais.............................................................................................17

5.1. Caracterização elétrica.......................................................................................17

5.2. Caracterização eletromagnética.........................................................................17

5.3. Caracterização mecânica...................................................................................18

6. Resultados.................................................................................................................19

6.1. Propriedades elétricas........................................................................................19

6.2. Propriedades eletromagnéticas..........................................................................20

6.3. Propriedades mecânicas....................................................................................21

6.4. Modelos finais.....................................................................................................23

iii

Page 5: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

7. Aplicação...................................................................................................................24

8. Conclusões................................................................................................................25

9. Referências Bibliográficas.........................................................................................26

10.Apêndices.................................................................................................................27

11.Anexo........................................................................................................................52

iv

Page 6: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Lista de FigurasFigura 1: Ilustração do processo "imaginário" de obtenção de um motor linear..............1

Figura 2: Classificação dos motores lineares segundo a sua fonte de excitação............2

Figura 3: Classificação dos motores lineares segundo a sua geometria.........................3

Figura 4: Diagrama esquemático do motor linear da Philips............................................4

Figura 5: Circuito elétrico equivalente do motor...............................................................5

Figura 6: Representação dos campo magnéticos do motor. Fonte [6]............................6

Figura 7: Visualização dos campos considerados no modelo do motor. Fonte [6]..........8

Figura 8: Diagrama de forças agindo sobre o motor........................................................9

Figura 9: Estrutura do motor linear................................................................................10

Figura 10: Disposição do enrolamento..........................................................................11

Figura 11: Protótipo do motor linear...............................................................................14

Figura 12: Motor linear com sua instrumentação: (1) Encoder, (2) Ponte H, (3) PIC....16

Figura 13: Medidas experimentais para determinar Ra e reta de ajuste.......................19

Figura 14: Curvas de decaimento da tensão sobre Rs, para determinação de La........20

Figura 15: Visualização das linhas de campo para diferentes posições do cursor........20

Figura 16: Curva do motor deslocando-se a uma velocidade constante de 348 mm/s..21

Figura 17: Dados experimentais para a determinação da massa do cursor..................22

Figura 18: Resposta em malha fechada do sistema, sem controlador (esquerda) e com

controlador, Kp=6 (direita).............................................................................................24

v

Page 7: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Lista de TabelasTabela 1: Dimensões do motor linear............................................................................11

Tabela 2: Enrolamento e características dos fios..........................................................12

Tabela 3: Propriedades dos ímãs..................................................................................12

Tabela 4: Corrente máxima (Imáx) para cada enrolamento...........................................13

Tabela 5: Força de tração resultante.............................................................................14

vi

Page 8: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 1

IntroduçãoEm diversas aplicações de engenharia é necessário utilizar-se de diferentes tipos

de acionamentos (hidráulicos, pneumáticos e elétricos) para produzir movimento o qualserá empregado para realizar diferentes tarefas, como o posicionamento de peças e otransporte/deslocamento de cargas. Dentro desse grupo de acionamentos estão osacionamentos elétricos, onde se encontram as máquinas elétricas que são dispositivoscapazes de converter energia elétrica em energia mecânica (motores) ou vice-versa(geradores). Assim como os diferentes tipos de acionamento, os motores também podemser classificados em dois grupos com base no tipo de movimento que produzem: osmotores rotativos e os motores lineares, que são o foco de estudo desse trabalho.

Os motores lineares pertencem ao grupo de máquinas elétricas que convertemdiretamente a energia elétrica em energia mecânica sob a forma de movimento detranslação. Assim, diferentemente dos motores rotativos, os motores lineares são capazesde produzir um movimento linear, sem a necessidade de acoplamentos mecânicos comocorreias ou conjuntos de engrenagens, o que resulta em maior precisão, maior aceleraçãoe maior repetibilidade no posicionamento de sua parte móvel. Além disso, ao reduzir onúmero de partes móveis no sistema, menos peças sofrerão desgaste e,conseqüentemente, menos tempo de manutenção será necessário.

Apesar de serem menos comuns que os motores rotativos, os motores linearesestão sendo utilizados para várias aplicações como na propulsão de trens Maglev [1],posicionamento de peças em linhas de fabricação e em máquinas CNC.

Um motor linear pode ser visto com um motor rotativo tradicional que teve o seuestator cortado radialmente e depois desenrolado (Figura 1). A parte móvel énormalmente conhecida como cursor (“forcer”) ou secundário (no caso de motoreslineares de indução) e a parte fixa é chamada de pista ou primário (também para o casode motores lineares de indução).

1

Figura 1: Ilustração do processo "imaginário" de obtenção de um motor linear

SN SN SN

Page 9: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

O funcionamento desses motores é semelhante ao dos motores rotativos, no qualuma força eletromagnética decorrente da interação entre a corrente no enrolamento domotor e um campo magnético produz o deslocamento do cursor. Dessa forma, a força e avelocidade de deslocamento que o motor produz podem ser consideradas como fatoresde desempenho para esse tipo de motor.

Atualmente existem motores lineares com diferentes estruturas e tecnologias deconstrução [2, 3, 4], cada uma visando atender requisitos de desempenho diferentes.Apesar dessa grande variedade, é possível classificar os motores lineares segundo duascaracterísticas: a sua fonte de excitação e a sua geometria [5].

Segundo sua fonte de excitação, os motores lineares podem ser divididos em trêsgrandes grupo: motores lineares de indução (ou assíncronos), motores lineares síncronose motores lineares DC, sendo que esses últimos ainda podem ser subdivididos emmotores DC com escova, sem escova e de passo (Figura 2).

Os motores lineares de indução funcionam pelo mesmo princípio da gaiola deesquilo dos motores rotativos de indução: um campo magnético produzido pelo primáriodo motor irá induzir correntes no seu secundário. A interação desse campo com ascorrentes provocará o aparecimento de uma força no sentido de propagação do campomagnético, que impulsionará o motor para frente. Esse tipo de motor apresenta altavelocidade de deslocamento e força de tração praticamente constante ao longo de todo oseu curso, porém não é ideal onde o posicionamento seja um requisito essencial doprojeto. Para os outros dois motores, a excitação ocorre por uma fonte independentecomo ímãs permanentes ou bobinas. A diferença entre um motor síncrono e um DC é aforma de onda de sua fonte de alimentação: o primeiro apresenta uma forma de senoidal(fonte AC), enquanto o segundo uma forma de onda quadrada (fonte DC).

Dentre os motores DC, os motores com escova possuem bom desempenho emtermos de força e velocidade, além de não necessitarem de dispositivos externos paraserem operados, devido à utilização de escovas para realizar a comutação de seus

2

Figura 2: Classificação dos motores lineares segundo a sua fonte de excitação

Motor Linear

Indução DCSíncrono

Com escova Sem escova Passo

Page 10: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

enrolamentos. A grande desvantagem desse motor é o seu custo de construção emanutenção, pois os enrolamentos devem percorrer todo o curso do motor e suasescovas sofrem desgaste durante a operação. Já os motores sem escova apresentam asmesmas características de desempenho que os motores lineares com escova, porémutilizam-se de uma eletrônica externa para realizar a comutação dos enrolamentos, o queaumenta a confiabilidade do sistema. O último tipo de motor linear DC é o motor linear DCde passo, o qual é ideal para aplicações onde uma alta resolução no deslocamento sejanecessária e onde deseja-se também o controle de posicionamento em malha aberta;porém esse tipo de motor possui uma limitação em sua velocidade e força de tração,sendo indicado para deslocar pequenas cargas.

Segundo a sua geometria, os motores lineares podem ser divididos em: planos(“flat”), de canal em U e tubulares. Além disso, os motores planos e os de canal em Uainda podem ser divididos de acordo com a construção de seus cursores em: “slotlessironless” (ou “aircore”), “slotless iron” e “slotted iron” [5] (Figura 3).

Cada uma das configurações acima foi desenvolvida com o objetivo de proverdiferentes condições de desempenho (velocidade, aceleração, força, suavidade nomovimento, precisão no posicionamento, etc), tornando-se necessário, assim, fazer umestudo mais aprofundado para se realizar a escolha do motor adequado para cada tipo deaplicação.

Um outro tipo de motor linear desenvolvido nos laboratórios da Philips foi propostopor L. Honds e K.H. Meyer [6], em 1982, cuja configuração está esquematizada pelaFigura 4. A grande vantagem desse motor é a sua construção extremamente simples: suapista de deslocamento é formada por três núcleos de ferro, o qual somente o núcleocentral possui um enrolamento, e o seu cursor é constituído por dois ímãs permanentescada um localizado entre dois núcleos de ferro. Neste motor o núcleo de ferro centralpossui duas vezes a largura dos núcleos externos, garantindo assim, que a densidade defluxo magnético seja igual nos três núcleos.

3

Figura 3: Classificação dos motores lineares segundo a sua geometria

Motor Linear

Tubular PlanoCanal em U

Slotless ironless Slotless iron Slotted iron

Page 11: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Com base no trabalho desenvolvido por L. Honds e K.H. Meyer, será construídoum protótipo desse motor, o qual passará por uma série de testes com o objetivo decaracterizá-lo e validar, assim, o seu modelo matemático.

4

Figura 4: Diagrama esquemático do motor linear da Philips

A AA

B

C

A – núcleos de ferroB – ímãs permanentesC – enrolamento de cobre

Page 12: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 2

Apresentação do motorNeste capítulo serão discutidas as principais características do motor, suas

limitações e os fatores que podem influenciar no seu desempenho. Além disso, serãoapresentados os modelos eletromagnético e mecânico, que serão utilizados nodimensionamento e caracterização do protótipo do motor.

2.1. Desempenho e limitações

O projeto desse motor visa garantir uma força de tração constante ao longo de todoo seu curso e um deslocamento do cursor bastante suave. Em razão do enrolamentoestar presente no núcleo central, não há necessidade de se fornecer corrente às partesmóveis, o que simplifica ainda mais a sua fabricação. Embora esse motor não tenha umlimite teórico para o seu curso máximo, na prática ele não é adequado para aplicaçõescujo curso total exceda 500 mm, pois as suas dimensões e peso tornam a sua fabricaçãoeconomicamente inviável.

2.2. Modelo eletromagnético

Da mesma forma que nos motores rotativos, pode-se simplificar o modelo elétricodo motor como sendo um circuito formado por uma resistência (Ra), uma indutância (La) euma força contra-eletromotriz (Fcem) em série (Figura 5).

O comportamento do circuito acima pode ser descrito pela Equação 1 abaixo, aqual relaciona a tensão de entrada com os parâmetros Ra, La e Fcem. Da mesma forma quenos motores rotativos, espera-se que a força contra-eletromotriz do motor linear seja umafunção das velocidade de deslocamento do seu cursor.

5

Figura 5: Circuito elétrico equivalente do motor

Page 13: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

V t =Ra i t La

di tdt

F cem (1)

O circuito elétrico apresentado anteriormente é importante pois a partir dele pode-se calcular a corrente que circula pelo motor e a sua constante de tempo elétrica. Essesdois parâmetros são úteis no dimensionamento da eletrônica que será utilizada paraacionar o motor.

Além do circuito elétrico equivalente do motor, é necessário conhecer o seu modeloeletromagnético, pois é através dele que será possível calcular a força produzida pelomotor em função da corrente que circula por seu enrolamento e da interação dos camposdos ímãs permanentes. Essa relação é obtida aplicando-se o princípio da Força deLorentz (Equação 2) na região do campo magnético efetivo (BE) do motor (Figura 6).

dF=I dl×B (2)

Ao aplicar a Equação 2, algumas simplificações no modelo foram consideradas,como a não influência do campo disperso (BGE) e do campo de retorno (BG) sobre a forçaresultante. Após essas simplificações, a equação final para o cálculo da força será dadopela Equação 3 a seguir:

6

Figura 6: Representação dos campo magnéticos do motor. Fonte [6]

Page 14: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

F=l m

lwIBE b (3)

onde: lm = comprimento dos ímãs [m]l = metade do comprimento total do motor [m]w = número de espiras no enrolamentoI = corrente no enrolamento [A]BE = campo magnético efetivo [T]b = altura dos núcleos de ferro [m]

A partir da Equação 3, observa-se que a força resultante pode ser facilmente obtidaa partir dos parâmetros construtivos do próprio motor. Um último parâmetro necessáriopara o cálculo da força sobre os ímãs é o do campo magnético efetivo (BE), o qual deveser assumido constante por todo o curso do motor para que a força de tração tambémseja constante durante deslocamento de seu cursor.

2.2.1. Campo magnético efetivo

De forma semelhante ao cálculo da força resultante do motor, algumassimplificações foram levadas em consideração, pois considerou-se apenas a influênciados campos uniformes gerados pelos imãs permanentes e entre os núcleos de ferro parao cálculo do campo magnético efetivo BE. Sob essas condições, o campo BE será dadopela Equação 4 abaixo:

BE=Br

1G

1E

M1(4)

onde: Br = campo remanente do ímã [T]ΛG = permeabilidade do fluxo de retorno [Wb/A]ΛE = permeabilidade do espaçamento entre os ímãs e o núcleo central [Wb/A]ΛM = permeabilidade do fluxo dentro dos ímãs [Wb/A]

O valor das permeabilidades magnéticas ΛG, ΛE e ΛM são obtidas a partir dasequações abaixo:

G=0r 2 l b

(5) ; E=

0r l mb

E

(6) ; M=Br l mb

H c.∗.dm

(7)

onde: µ0 = permeabilidade do vácuo (4π.10-7 H/m)µr = permeabilidade relativa do meioδ = distância entre ferros [m]δE = distância entre os ímãs e o núcleo central [m]

7

Page 15: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Br = campo remanente do ímã [T]l = metade do comprimento total do motor [m]lm = comprimento dos ímãs [m]b = altura das barras de ferro [m]HC

* = campo coercitivo aparente [kA/m]dm = espesura dos ímãs [m]

2.2.2. Campo nos núcleos de ferro

Apesar do campo magnético existente nos núcleos de ferro não influenciardiretamente na força que o motor irá proporcionar, o seu conhecimento é importante parase calcular a corrente máxima (Imáx) nos enrolamentos que irá fazer com que os núcleosatinjam a saturação magnética. A partir desse ponto, um aumento da corrente no motornão será acompanhado por um igual aumento no campo magnético efetivo e,conseqüentemente, não resultará em um aumento da força do motor.

O campo induzido total nos núcleos de ferro (BT) é igual à soma da indução devidaaos ímãs (Bc) com a indução devida ao enrolamento (BI) e pode ser obtido aplicando-se aEquação 8 abaixo:

8

Figura 7: Visualização dos campos considerados no modelo do motor. Fonte [6]

Page 16: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

BT=BCBI=l m

aBE

w I l 0

4a(8)

onde: lm = comprimento dos ímãs [m]BE = indução magnética efetiva [T]a = largura dos núcleos de ferro [m]w = número de espiras no enrolamentoI = corrente no enrolamento [A]l = metade do comprimento total do motor [m]µ0 = permeabilidade do vácuo (4π.10-7 H/m)δ = distância entre os núcleos de ferro [m]

2.3. Modelo mecânico

Mecanicamente, o motor foi modelado como uma massa (cursor) submetida a umaforça de tração F e a uma força de atrito, a qual foi considerada proporcional à velocidadede movimentação do cursor (atrito viscoso). Sob essas condições, o movimento do cursorse resume ao movimento de um sistema massa-amortecedor (Figura 8) e pode serrepresentado pela Equação 9.

F motor=md2 x

dt2 Bdxdt

(9)

9

Figura 8: Diagrama de forças agindo sobre o motor

Page 17: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 3

Projeto do motorAs principais características que influem no dimensionamento do motor estudado

são: a força que atua nos ímãs permanentes, o campo efetivo do motor e o campo nosnúcleos de ferro. A Figura 9 esquematiza as principais variáveis utilizadas no processo dedimensionamento do motor.

Para um protótipo inicial do motor, partiu-se de núcleos de ferro com 100 mm (2l)de comprimento e utilizou-se ímãs de Neodímio de grau 28 (NdFeB 28). Na Tabela 1encontram-se todas as dimensões do motor que serão utilizadas na especificação do seuenrolamento e no cálculo de sua força de tração.

10

Figura 9: Estrutura do motor linear

2l

lm

a

2a

a

BE

BE

δ

δ

δE

dm

Page 18: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Tabela 1: Dimensões do motor linear

Grandeza Valor

Largura dos núcleos laterais (a) 25 mm

Comprimento total dos núcleos (2l) 100 mm

Altura dos ímãs e dos núcleos (b) 25 mm

Espaço entre núcleos (δ) 14 mm

Comprimento dos ímãs (lm) 25 mm

Espessura dos ímãs (dm) 8 mm

Distância entre os ímãs e o núcleo central (δE) 3 mm

Espessura do enrolamento (dw) 6 mm

3.1. Dimensionamento do enrolamento:

Para se dimensionar o enrolamento do motor, deve-se especificar o número deespiras e o tipo de fio de cobre utilizado. Para isso, considerou-se que os fios de cobreestarão distribuídos conforme a Figura 10 e, em seguida, calculou-se a área ocupada poruma pequena região do enrolamento:

Cálculo da área LH:

L=2d '

H=h2d '

2=d ' 1sen60o

A=LH=2d ' 21sen60o

Através da Figura 10, observa-se que dentro da região LH passam 4 fios de cobre(3 inteiros mais 2 metades), assim, é possível estimar o número de voltas do enrolamento

11

Page 19: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

conhecendo-se a área disponível e o diâmetro do fio de cobre.

No caso do motor projetado, a área disponível para o enrolamento é de 600 mm2

(2l *dw) e, para o diâmetro do fio, utilizou-se a especificação AWG. A Tabela 2 apresenta onúmero de voltas do enrolamento para diferentes fios, juntamento com as característicasdos mesmos.

Tabela 2: Enrolamento e características dos fios

AWG Diâmetro interno (mm) Diâmetro externo (mm) Corrente máx.(A)

N° de voltas(w)

18 1,024 1,075 2,5 555

17 1,150 1,207 3,2 440

16 1,290 1,395 3,7 350

15 1,450 1,509 4,8 280

14 1,628 1,692 6,0 225

13 1,829 1,886 7,5 180

12 2,052 2,111 9,5 145

Antes de se fazer a escolha do tipo de fio, é necessário conhecer a força resultanteque cada enrolamento irá produzir e a corrente Imáx que irá produzir a saturação dosnúcleos de ferro.

3.2. Cálculo do campo efetivo B E:

Para o cálculo do campo efetivo, utilizou-se a Equação 4 e as propriedades dosímãs de Neodímio apresentadas na Tabela 3.

Tabela 3: Propriedades dos ímãs

Grandeza Valor

Campo remanente (Br) 1,08 T

Campo coercitivo aparente (HC*) 804 kA/m

Resultados dos cálculos:

M=1,05.107Wb/A ; G=1,68.107Wb/A ; E=1,96.107Wb/A

BE=0,50T

12

Page 20: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

3.3. Cálculo da corrente máxima Imáx:

No cálculo da corrente máxima Imáx utilizou-se a Equação 8 e considerou-se que asaturação magnética dos núcleos é igual a 2,16 T (saturação magnética do ferro),obtendo-se assim, a equação abaixo:

I máx=3698,8

w(10)

De acordo com a Equação 10 acima, a corrente máxima no enrolamento dependedo número de espiras (w). Assim, a partir da Tabela 2 é possível determinar-se a correntemáxima para cada enrolamento possível no motor:

Tabela 4: Corrente máxima (Imáx) para cada enrolamento

AWG Corrente máx. suportadapelo fio (A)

N° devoltas (w) Imáx (A)

18 2,5 555 6,7

17 3,2 440 8,4

16 3,7 350 10,6

15 4,8 280 13,2

14 6,0 225 16,4

13 7,5 180 20,6

12 9,5 145 25,5

Pela Tabela 4, percebe-se que a corrente na bobina é limitada pela correntesuportada pelo próprio fio e não à corrente que irá provocar a saturação magnética dosnúcleos. Dessa forma, a saturação magnética dos núcleos não representa um empecilhoao funcionamento do motor.

3.4. Cálculo da força de tração do motor:

Conhecendo-se o número de voltas no enrolamento e a corrente de alimentação, épossível calcular a força produzida pelo motor a partir da Equação 3. A Tabela 5,apresenta os valores da força para os diferentes enrolamentos, utilizando-se umacorrente de alimentação igual a 3A e 5A:

13

Page 21: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Tabela 5: Força de tração resultante

AWG Força (N) p/ I = 3A Força (N) p/ I = 5A

18 --- ---

17 8,25 ---

16 6,56 ---

15 5,25 ---

14 4,22 7,03

13 3,38 5,63

12 2,72 4,53

Devido à fonte de alimentação ser capaz de fornecer uma corrente máxima de 6A,optou-se por projetar o motor para funcionar com uma corrente de 3A. Assim, osenrolamentos que irão resultar na maior força de tração utilizam os fios AWG 17 e 16.

Finalmente, escolheu-se o fio AWG 16 para se realizar o enrolamento, pois omesmo é capaz de suportar uma corrente máxima maior que o AWG 17, dando umamargem de segurança maior para o projeto.

Durante a construção do motor, por razões técnicas, o enrolamento não pode serfeito com a mesma configuração apresentada pela Figura 10. Entre cada camada doenrolamento, teve de ser adicionado uma fina película de papel, o que reduziu o fator deempacotamento do enrolamento. No final, o enrolamento ficou com 286 espiras,reduzindo a força do motor para 5,36N, para uma corrente de 3A.

14

Figura 11: Protótipo do motor linear

Page 22: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 4

Bancada de TestesApós a construção do motor, procedeu-se a montagem de uma instrumentação

necessária para a realização dos ensaios no motor, a qual pode ser dividida em 3 partes:uma primeira parte responsável pelo controle e comando do motor, uma segunda parteresponsável pelo acionamento do motor e uma última parte encarregada de realizar aaquisição de dados.

4.1. Controle e Comando

O elemento principal da instrumentação foi construído a partir do microcontroladorPIC 18F452, sendo responsável pela comunicação com todos os demais instrumentos.Ele é o responsável por requisitar a posição atual do motor para o encoder, enviar umcomando de acionamento do motor para a ponte H e, finalmente, enviar essasinformações ao usuário.

A comunicação do PIC com o usuário é feita através da porta serial (RS232),podendo ser operado através de um programa do tipo Hyperterminal. Durante ofuncionamento do motor, por ser necessário realizar a aquisição em tempo real, o PIC foiprogramado para operar com um intervalo de amostragem de 8ms.

4.2. Acionamento

Para o acionamento do motor, optou-se por construir uma ponte H, a qualreceberia os comandos do PIC sob a forma de um sinal PWM por dois diferentes canais,cada um permitindo que o motor se desloque para uma direção.

O sinal PWM utilizado, possui um período de 1ms e possui uma resolução de10bits.

4.3. Aquisição

Para a aquisição da posição do motor, foi construído um “encoder linear” a partir deum mouse ps/2. Embora exista a vantagem de se obter diretamente o valor da posição aose utilizar o mouse, existe a dificuldade de se programar o protocolo ps/2 no PIC, além deexistir a limitação do tempo mínimo de aquisição, limitado pela velocidade desseprotocolo (8ms). A leitura do encoder foi feita a partir de uma pista impressa comresolução de 0,4mm.

Além do encoder, um gaussímetro foi utilizado para a medição dos campos

15

Page 23: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

magnéticos do motor.

16

Figura 12: Motor linear com sua instrumentação: (1) Encoder, (2) Ponte H, (3) PIC

(1) (2)(3)

Page 24: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 5

Métodos ExperimentaisNeste capítulo serão discutidos os métodos empregados para a determinação das

principais características elétricas, eletromagnéticas e mecânicas dos motor.

5.1. Caracterização elétrica

Utilizando-se da Equação 1, é possível determinar as constantes do modeloelétrico do motor. Ao se manter o cursor do motor preso, a força contra-eletromotriz sereduzirá a zero, eliminando-se assim, uma variável da equação. Semelhantemente,quando o motor atingir o regime permanente, sua corrente irá se estabilizar e o termo daindutância La também irá desaparecer. Dessa forma, é possível determinar Ra aplicando-se uma tensão conhecida no motor e medindo-se a corrente que passa por seusenrolamentos. O valor de Ra será dado pela relação entre a tensão e a corrente medidas.

Considerando-se ainda a Equação 1 e mantendo o cursor do motor preso, o valorda indutância será obtido através da medição da resposta transiente do circuito. Paraisso, adiciona-se uma resistência Rs,de valor conhecido, em série com o motor e mede-sea queda de tensão sobre a mesma. Com esse dado em mãos, pode-se determinargraficamente a constante de tempo do motor τ (tempo necessário para que a tensão caiaa 37% do seu valor inicial) e assim, calcular o valor de La através da Equação 11 abaixo:

=La

RaRs(11)

5.2. Caracterização eletromagnética

Para a caracterização eletromagnética do motor, será utilizado um gaussímetropara medir os diferentes campos existentes no motor. Os campo magnéticos de interessepara validar o modelo eletromagnético do motor são o campo efetivo (BE) e o campo deretorno (BG). Para esses dois campos, seus valores serão medidos com o cursor emdiferentes posições e com o motor sob diferentes tensões de alimentação.

Devido a inexistência de uma instrumentação para medir a força exercida pelomotor, o campo efetivo medido diretamente pelo gaussímetro será utilizado para estimar aforça produzida pelo motor.

17

Page 25: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

5.3. Caracterização mecânica

Partindo-se da equação de movimento do motor (Equação 9), deve-se inicialmentedeterminar o coeficiente de atrito viscoso B do sistema. Para isso, deve-se colocar omotor em movimento de forma que a sua velocidade esteja constante. Assim, elimina-se otermo da aceleração e pode-se determinar esse coeficiente conhecendo-se a forma que omotor está produzindo e a sua velocidade (Equação 12).

B=F motor

V(12)

Com o valor do coeficiente de atrito disponível, pode-se determinar a massa domotor pois a relação entre a massa e o coeficiente de atrito estabelece a taxa dedecaimento da velocidade do cursor do motor (sistema de primeira ordem). Assim, deforma semelhante à determinação da indutância, a massa do motor é obtida medindo-sea constante de tempo mecânica do motor τ (obtida a partir do decaimento da velocidade)e aplicando-se, em seguida, a Equação 13 abaixo:

=mB

(13)

18

Page 26: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 6

Resultados

6.1. Propriedades elétricas

Seguindo-se o procedimento definido no capítulo anterior, calculou-se Ra a partir deuma seqüência de medidas para a tensão e a corrente no motor. Em seguida realizou-seo ajuste linear dos dados, obtendo-se assim o valor de Ra a partir da inclinação da reta deajuste (Figura 13).

Ao realizar a regressão linear dos dados, o valor de Ra obtido foi de (1,11±0,04) Ω,utilizando-se um intervalo de confiança igual a 95%.

Da mesma forma que na determinação da resistência do enrolamento, trêsseqüências de medidas foram tomadas para a determinação de La. A diferença entre elasestá na tensão de alimentação a qual foi submetido o motor (Figura 14). Nestes testes, aresistência em série (RS) utilizada possuía um valor de 27,82 Ω.

19

Figura 13: Medidas experimentais para determinar Ra e reta de ajuste.

1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5

0

1

2

3

4

5

6 Tensão (V) x Corrente (A)

Experimental

Regressao linear

Corrente (A)

Ten

o (V

)

Page 27: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

A partir dos dados experimentais obtidos e utilizando-se a Equação 11, o valor daindutância do motor obtido foi de (0,262±0,090) H.

Durante a medição da força contra-eletromotriz, percebeu-se que ela não possui amesma relação que nos motores rotativos, pois ela apresentava sempre o mesmo valorde 1,0V independentemente da tensão de alimentação e da velocidade de deslocamentodo motor.

6.2. Propriedades eletromagnéticas

Utilizando-se o software de elementos finitos FEMM é possível realizar umaavaliação qualitativa das linhas de campo magnético, através da observação dadensidade de linhas de campo para diferentes posições do cursor do motor (Figura 15).

20

Figura 14: Curvas de decaimento da tensão sobre Rs, para determinação de La.

0.070 0.090 0.110 0.130 0.150

0.00

0.50

1.00

1.50

2.00

2.50 Taxa de decaimento da Tensão

Tempo (s )

Te

ns

ão

(V

)

0.070 0.090 0.110 0.130

0.00

1.00

2.00

3.00

4.00 Taxa de decaimento

Tempo (s)Te

nsão

(V)

0.1000.120 0.1400.1600.1800.200

0.00

1.00

2.00

3.00

4.00

5.00 Taxa de decaimento

Tempo (s)

Tens

ão (V

)

Figura 15: Visualização das linhas de campo para diferentes posições do cursor

Page 28: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Pela Figura 15 nota-se que existe uma concentração muito maior de linhas decampo na região dos ímãs do que no resto dos núcleos, o que valida a hipótese de que ocampo de retorno (BG) tem pouca influência sobre a força resultante. Outra observaçãorelevante é a de que existe a mesma densidade de linhas de campo na região do campoefetivo para diferentes posições do ímã, o que justifica a afirmação de que a força detração do motor é praticamente constante ao longo de todo o seu curso.

Experimentalmente, isso também foi comprovado ao ser realizado uma série demedições nessas regiões do campo. Para o caso do campo efetivo BE, obteve-se o valorde 0,40 T para qualquer posição do cursor, e para o campo de retorno BG, obteve-se ovalor de 0,020 T, o que representa apenas 5% do valor do campo efetivo. Já o valor docampo efetivo corresponde a 80% do valor teórico calculado (0,50 T).

6.3. Propriedades mecânicas

Inicialmente foi determinado o valor do coeficiente de atrito viscoso do motor. Paraisso o motor foi alimentado de forma que o seu cursor apresentasse um deslocamento emvelocidade constante (Figura 16). Essas condições foram obtidas alimentando-se o motorcom uma tensão de 2,1 V, o que produziu uma força de 2,54 N. Em seguida, aplicou-se aEquação 12 utilizando os valores de força e velocidade conhecidos, o que resultou em umvalor de (7,3±0,4) Ns/m.

Para o cálculo da massa do cursor, o procedimento descrito no capítulo 5 não foipossível de ser adotado em razão de o cursor parar de se deslocar muito rapidamente e,como a taxa de amostragem do encoder é baixa, não houve pontos suficientes para

21

Figura 16: Curva do motor deslocando-se a uma velocidade constante de 348 mm/s

0.000 0.020 0.040 0.060 0.080 0.100 0.120 0.140 0.160

-10

0

10

20

30

40

50

60 Posição (mm) x Tempo (s)

ExperimentalCurva de ajuste

Tempo (s)

Po

siçã

o (

mm

)

Page 29: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

determinar a constante de tempo mecânica do sistema.

Dessa forma, o problema foi resolvido supondo que a força de atrito sobre o cursorera constante e igual à obtida anteriormente (2,54N). Isso pode ser considerado pois,devido ao curso limitado do motor, não há tempo suficiente para que ele acelere e atinjavelocidades altas para provocar uma diferença significativa da força de atrito.

Sob essa condição, o modelo do motor fica simplificado a apenas uma massasubmetida a uma força de tração. O valor da massa é definido pela relação entre essaforça resultante e a sua aceleração.

Para a determinação da massa do cursor, realizou-se uma série de aquisições como motor submetido a diferentes tensões (Figura 17). Em seguida, os dados foramajustados por uma curva do tipo ax2, a partir da qual poderia ser obtido o valor daaceleração, bastando simplesmente realizar a derivada segunda dessa curva.

A partir dos dados experimentais, foi possível obter o valor de (0,328±0,075) Kgpara a massa do cursor, a qual era estimada em cerca de 0,300 Kg.

22

Figura 17: Dados experimentais para a determinação da massa do cursor

0.000 0.020 0.040 0.060 0.080 0.100 0.120

-10

0

10

20

30

40

50 Posição (mm) x Tempo (s)

Tempo (s)

Pos

ição

(m

m)

0.000 0.020 0.040 0.060 0.080 0.100

-10

0

10

20

30

40

50 Posição (mm) x Tempo (s)

Tempo (s)

Pos

ição

(mm

)

0.000 0.010 0.020 0.030 0.040 0.050 0.060 0.070 0.080 0.090

-10

0

10

20

30

40

50 Posição (mm) x Tempo (s)

Tempo (s)

Pos

ição

(mm

)

Page 30: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

6.4. Modelos finais

Com todas as constantes do motor determinadas, é possível escrever as diferentesequações que modelam o seu comportamento:

Modelo elétrico: V=1,1i0,262didt

(14)

Modelo mecânico: F=1,43i=0,328d2 x

dt2 7,3dxdt

(15)

As duas equações acima ainda podem ser acopladas de forma a obter a relaçãoentre a posição do cursor e a tensão de entrada. Para isso, basta aplicar a Transformadade Laplace na Equações 14 e 15 e as igualar de forma a eliminar a variável de corrente i.Após essa operação, a equação resultante, sob forma de uma função de transferência érepresentada pela Equação 16 abaixo:

Ps=xV=

1,43

0,328s27,3s0,262s1,1(16)

A função de transferência acima é importante pois permite que todo o sistema sejasimulado levando-se em conta as suas características eletromagnéticas e mecânicas,permitindo que a posição seja determinada com base no real sinal de controle do motor (atensão entre seus terminais).

23

Page 31: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 7

AplicaçãoA partir da Equação 16 é possível implementar um controle de posição em malha

fechada para o motor linear. Por se tratar de um sistema super-amortecido, ele é estávelem malha fechada e não precisa de um controlador para seguir o sinal de referência,conforme pode ser observado pela Figura 18.

Assim, apenas um controlador proporcional (Kp) é suficiente para melhorar osrequisitos de desempenho do sistema controlado, como a redução do tempo deestabilização e a ausência de “overshoot”.

24

Figura 18: Resposta em malha fechada do sistema, sem controlador (esquerda) e comcontrolador, Kp=6 (direita)

Page 32: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Capítulo 8

ConclusõesNeste trabalho, foi projetado um motor linear, baseado no modelo desenvolvido

pela Philips, e sua instrumentação. Em seguida, procedeu-se a sua caracterização, queconsistiu em ensaios e medições de seus campos magnéticos, suas característicaselétricas, sua massa e seu coeficiente de atrito. Ao final dos testes, foi possível obter ummodelo que poderia ser utilizado para uma aplicação de controle de posição do motor.

Apesar de a instrumentação utilizada ter sido suficiente para demonstrar ofuncionamento do motor e a realização de alguns testes de caracterização, ela mostrou-se bastante limitada para a determinação da constante mecânica do motor. Assim, seriainteressante realizar uma outra série de testes com o motor utilizando-se umainstrumentação mais adequada.

Os resultados dos testes foram satisfatórios de forma que foi possível comprovar asuposição de que a força de tração do motor é constante por todo o deslocamento docursor e a de que o campo de retorno tem pouca influência no cálculo dessa força.

25

Page 33: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Referências Bibliográficas1 R.J. Kaye and E. Masada, “Comparison of Linear Synchronousand Induction

Motors”, Colorado MagLev Project 2004.

2 H2W Technologies Inc., “Linear Motors Basics” , 2006.

3 R.A.D. Oliveira, “Desenho e Construção de um Motor Linear de Indução de Baixa Velocidade” , Universidade Nova de Lisboa, 2000.

4 B.C. Murphy, “Design and Construction of a Precision Tubular Lin ear Motor and Controller” , Texas A&M University, 2003.

5 S. Chevailler, “Comparative Study and Selection Criteria of Linear Motors” , École Polytechnique Fédérale de Lausanne, 2006.

6 L. Honds and K.H. Meyer, “A Linear DC Motor with Permanent Magnets”, Philips tech. Rev., 40, 329-337, 1982, No. 11/12, pp. 329-337.

26

Page 34: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

ApêndicesDesenhos de fabricação do motor linear:

27

Page 35: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

28

Page 36: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

29

Page 37: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

30

Page 38: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

31

Page 39: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

32

Page 40: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

33

Page 41: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Listagem do código fonte do microcontrolador PIC:

#include <p18cxxx.h>#include <timers.h>#include <usart.h>#include <stdlib.h>#include <stdio.h>#include <pwm.h>#include <math.h>#include <delays.h>

#pragma config WDT = OFF#pragma config OSC = XT // mudar para HS se cristal 20MHz e XT para cristal de 4MHz

// Definição das portas utilizadas pelo ps/2#define CLK_PS2 PORTDbits.RD0#define DATA_PS2 PORTDbits.RD1

// Definição dos estados do processo principal#define MENU_INICIAL 0#define ESPERA_COMANDO 1#define OPCAO1 2#define OPCAO2 3#define OPCAO3 4#define OPCAO4 5#define OPCAO5 6#define OPCAO6 7

#define TESTANDO 100

#define ENTRADA_DADOS1 200#define ENTRADA_DADOS2 201#define ENTRADA_DADOS3 202#define ENTRADA_DADOS4 203

// Definicão dos estados para a máquina de entrada de dados#define Mw 0#define Mwn 1#define Mwnn 2#define Mwnnn 3

// Definição dos tipos de menu#define MENU0 0#define MENU1 1#define MENU2 2#define MENU3 3#define MENU4 4#define MENU5 5

34

Page 42: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

#define MENU6 6#define MENU7 7#define MENU8 8#define MENU9 9

// Definição da resolução do encoder (em pulsos/mm)#define RESOLUCAO 1.5 // Resolução para fita de 0,40mm

unsigned int PWM_Duty_cycle, // Duty cicle do PWM (apenas 10bits são usados)n; // Valor de aquisição atual

char Comando, // Comando recebido pela serialvalor[4]; // Comando recebido pela entrada de dados

unsigned char STT_Comando, // Estado do processo principalSTT_Dados, // Estado para a entrada de dadosPeriodo_PWM, // Variável para o período do PWMSENTIDO, // Sentido de movimentação do motorENCODER, // Qual encoder foi escolhido (X ou Y)DADO, // Posição dentro da matriz de dadosTRACKING, // Modo que indica se o motor move-se sozinhoTEST_ENCODER, // Indica se o encoder está ou não sendo testadoCONTROLE;

float Posicao, // Posição atual do motorVelocidade, // Velocidade atual do motorPosicao_desejada, // Posição para a qual o motor deve se moverkp, // ganho do controladorErro_atual, // Erro atual na posição do motorErro_anterior, // Erro anterior na posição do motorErro_acumulador; // Integral do erro

#pragma udata bank1=0x100int Dados_posicao[128]; // Matriz das posições - parte1

#pragma udata bank2=0x200int Dados_posicao2[128]; // Matriz das posiçoes – parte2

// Protótipos das funções usadas na rotina de interrupção.void high_isr(void);void low_isr (void);void Init_ps2 (void);void Escreve_ps2 (char data);char Recebe_ps2 (void);

// Funções das máquinas de estadovoid MaqComando (void);void EntradaDados (void);

35

Page 43: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

// Funções utilizadas pelas máquinas de estadovoid DisplayMenuInicial (char menu);void MotorMalhaAberta (void);void MoverMotor (void);void EnviarDados (void);void Transmite (char DADO_TX);char Recebe (void);

// Definição dos vetores de interrupção#pragma code high_vector=0x08void interrupt_high(void)_asm GOTO high_isr _endasm

#pragma code low_vector=0x18void interrupt_low(void)_asm GOTO low_isr _endasm

#pragma code /* retorno à seção de código */

/************************************************************************************* INÍCIO DA FUNÇÃO PRINCIPAL*************************************************************************************/void main( void)

PORTA = 0x00; TRISA = 0xDB;PORTB = 0x00; TRISB = 0x0C;PORTC = 0x00; TRISC = 0xB9;PORTD = 0x00; TRISD = 0x03; // RD0 e RD1 são usados pelo ps/2

// RD0 = clk// RD1 = data

PORTE = 0x00; TRISE = 0x00;

/* Inicialização da porta serial com velocidade de 19200 */OpenUSART(USART_TX_INT_OFF& USART_RX_INT_OFF& USART_ASYNCH_MODE & USART_EIGHT_BIT & USART_CONT_RX & USART_BRGH_HIGH, 12 ); // para 9600 usar 25 com cristal de 4MHz

36

Page 44: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

/*-------------- INICIALIZAÇÃO DOS PROCESSOS ------------------------------*/STT_Comando = MENU_INICIAL;STT_Dados = Mw;SENTIDO = 0;ENCODER = 0;Periodo_PWM = 249; // Período de 250 Hz para cristal de 4 MhzPWM_Duty_cycle = 500; // Duty cycle de 2msDADO = 0;TRACKING = 0;TEST_ENCODER = 0;n = 0;Posicao = 0.0;Erro_atual = 0.0;Erro_anterior = 0.0;Erro_acumulador = 0.0;CONTROLE = 0;

/* Gerenciamento das interrupções */RCONbits.IPEN = 1; // Habilita a checagem por prioridade de interrupçãoINTCONbits.GIEH = 1; // Habilitação das interrupções de alta prioridadeINTCONbits.GIEL = 1; // Habilitação das interrupções de baixa prioridade

INTCON2bits.TMR0IP = 1; // Coloca a interrupção do TIMER0 em alta prioridadeIPR1bits.TMR1IP = 0; // Coloca a interrupção do TIMER1 em baixa prioridadeIPR2bits.TMR3IP = 1; // Coloca a interrupção do TIMER3 em alta prioridade

/* Configuração dos TIMERS */OpenTimer1( TIMER_INT_ON & T1_16BIT_RW & T1_SOURCE_INT & T1_PS_1_8 &

T1_OSC1EN_OFF);WriteTimer1(65536-1000);

Delay100TCYx(10);Init_ps2();kp=5.0;

/*---------------------- Laço Principal infinito ------------------------------------*/while (1)

/************************************************************************************* FIM DA FUNÇÃO PRINCIPAL*************************************************************************************/

//*****************************************************************************/* ROTINA DE SERVIÇO DA INTERRUPCÃO DO TIMER0.//******************************************************************************

37

Page 45: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

// Funções das interrupções

#pragma interrupt high_isrvoid high_isr (void)// interrupção de alta prioridade

unsigned char status;signed char mx;signed char my;float buffer;char ack;

if (INTCONbits.TMR0IF) // Se o TIMER0 gerou um pedido de interrupção

WriteTimer0(65536-62); // delay de 0.008s (+atrasos);INTCONbits.TMR0IF = 0;

Escreve_ps2(0xEB); // Pede dados para o encoderack = Recebe_ps2(); // ignora ackstatus = Recebe_ps2(); // byte de statusmx = Recebe_ps2(); // leitura xmy = Recebe_ps2(); // leitura y

// Coloca em buffer qts mm o motor moveu-se desde a última leitura do encoder//buffer = (ENCODER) ? (float)mx : (float)my;buffer = (float) my;buffer = buffer*RESOLUCAO;

// Atualiza a posição e erroPosicao = Posicao + buffer;//Erro_anterior = Erro_atual;//Erro_atual = Posicao_desejada - Posicao;

if (n < 128)Dados_posicao[DADO] = ((int) (Posicao * 100.0));

elseDados_posicao2[DADO] = ((int) (Posicao * 100.0));

n++;DADO++;

/* if (CONTROLE)

temp = kp*Erro_atual;if (temp > 0)

SetDCPWM2((int)temp);SetDCPWM1(0);

38

Page 46: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

else

SetDCPWM1((int)temp);SetDCPWM2(0);

*/

if (Posicao > 50.0)

// ClosePWM2();// ClosePWM1();// CloseTimer2();

PORTCbits.RC1 = 0;PORTCbits.RC2 = 0;if (!my)

CloseTimer0(); // Desabilita o timer0OpenTimer1( TIMER_INT_ON & T1_16BIT_RW & T1_SOURCE_INT

& T1_PS_1_8 & T1_OSC1EN_OFF);WriteTimer1(65536-25000);

#pragma interruptlow low_isrvoid low_isr (void) // interrupção de baixa prioridade

float buffer;char status;char mx;char my;char ack;

if (PIR1bits.TMR1IF) //gerou interrupção do TIMER1

WriteTimer1(65536-1000);PIR1bits.TMR1IF = 0;

if (TEST_ENCODER == 0)

teste++;

if (teste > 49) // verificar se o LED pisca a cada 1s

39

Page 47: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

PORTBbits.RB1 = !PORTBbits.RB1;teste=0;

MaqComando();EntradaDados();

else

Escreve_ps2(0xEB); // Pede dados para o encoderack = Recebe_ps2(); // ignora ackstatus = Recebe_ps2(); // byte de statusmx = Recebe_ps2(); // leitura xmy = Recebe_ps2(); // leitura y

buffer = (float)my;

if (buffer)

buffer = (buffer*RESOLUCAO);Posicao= Posicao + buffer;buffer = buffer *100.0;

fprintf(_H_USART, "buffer: %d Pos: %d", (int)buffer,(int)(Posicao*100.0));

Transmite (0x0D); Transmite (0x0A);

//*******************************************// Função para inicializar a comunicação PS/2//*******************************************

void Init_ps2 (void)

TRISD = 0x00;CLK_PS2 = 1;DATA_PS2 = 1;

Escreve_ps2(0xFF); // Envia comando de resetRecebe_ps2(); // Byte1 de ack - ignoradoRecebe_ps2(); // Byte2 de ack - ignoradoRecebe_ps2(); // Byte3 de ack - ignorado

Escreve_ps2(0xE8);Recebe_ps2();

40

Page 48: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Escreve_ps2(0x00);Recebe_ps2();

Escreve_ps2(0xF0); // Envia comando de operação remotaRecebe_ps2(); // Byte1 de ack - ignoradoDelay100TCYx(1); // Delay de 100us

//*************************************// Função para enviar dados para o PS/2//*************************************

void Escreve_ps2 (char data)

char i;char paridade = 1;

DATA_PS2 = 1;CLK_PS2 = 1;TRISD = 0x03;Delay100TCYx(3); // Delay de 300us

TRISD = 0x02;CLK_PS2 = 0;Delay100TCYx(3); // Delay de 300us

TRISD = 0x00;DATA_PS2 = 0;

Delay10TCYx(1); // Delay de 10us/* bit de start enviado */

TRISD = 0x01; // Coloca o clock como entrada e data como saída

/* espera o PS/2 gerar o clock */ while (CLK_PS2) ;

for (i=0; i < 8; i++)

if (data & 0x01) DATA_PS2 = 1; else DATA_PS2 = 0;

while (CLK_PS2 == 0) ; while (CLK_PS2)

41

Page 49: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

; paridade = paridade ^ (data & 0x01); data = data >> 1;

/* paridade */if (paridade)

DATA_PS2 = 1; else

DATA_PS2 = 0;

while (CLK_PS2 == 0) ;

while (CLK_PS2) ;

/* bit de parada */DATA_PS2 = 1;

// Delay100TCYx(5); // Delay de 50us

TRISD = 0x03;while (DATA_PS2);

while (CLK_PS2) ; while ((CLK_PS2 == 0) || (DATA_PS2 == 0)) ;

// Termina a transmissãoTRISD = 0x02;CLK_PS2 = 0;

//**********************************// Função para receber dados do PS/2//**********************************

char Recebe_ps2 (void)

char data = 0x00;char bit1 = 0x01;char i;

TRISD = 0x03;Delay10TCYx(5); // Delay de 50us

while (CLK_PS2)

42

Page 50: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

;Delay1TCY(); // Delay de 1us Delay1TCY(); // Delay de 1usDelay1TCY(); // Delay de 1usDelay1TCY(); // Delay de 1usDelay1TCY(); // Delay de 1us

// Delay total de 5us

while (CLK_PS2 == 0) // bit de start;

for (i=0; i < 8; i++) // leitura dos 8bits de dados

while (CLK_PS2);

if (DATA_PS2) data = (data | bit1);

while (CLK_PS2 == 0);

bit1 = bit1 << 1;

while (CLK_PS2) // ignora bit de paridade;

while (CLK_PS2 == 0);

while (CLK_PS2) // ignora bit de stop;while (CLK_PS2 == 0);

TRISD = 0x02; // termina a transmissão CLK_PS2 = 0;

return data;

//*******************************************// Função que transmite caractere pela serial//*******************************************

void Transmite (char DADO_TX)

while (BusyUSART()) ;putcUSART( DADO_TX );

43

Page 51: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

//****************************************// Função que recebe caractere pela serial//****************************************char Recebe (void)

if ( DataRdyUSART() ) return ReadUSART(); // Lê caractere na porta serial else

return 0x00;

//************************************************************// Função que aciona o motor em malha aberta e faz a aquisicao//************************************************************void MotorMalhaAberta (void)

CloseTimer1(); // Desabilita o timer do menuInit_ps2(); // Inicializa o protocolo de comunicação PS/2

// Inicializa os contadoresDADO = 0;n = 0;

Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Posicao (*100.0mm):");Transmite (0x0D); Transmite (0x0A);

Delay100TCYx(10); //delay para impedir o atraso com o resto dos timers

// Inicialização do TIMER0, responsável pela leitura do encoderOpenTimer0( TIMER_INT_ON & T0_16BIT & T0_SOURCE_INT & T0_PS_1_128 );WriteTimer0( 65536-62 );

if (SENTIDO == 0)

PORTCbits.RC1 = 1;PORTCbits.RC2 = 0;

else if (SENTIDO == 1)

PORTCbits.RC1 = 0;PORTCbits.RC2 = 1;

44

Page 52: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

//***************************************************// Função que movimenta o motor para posição desejada//***************************************************void MoverMotor (void)

CloseTimer1(); // Desabilita o timer do menuInit_ps2(); // Inicializa o protocolo de comunicação PS/2

// Inicializa os controlesDADO = 0;n = 0;CONTROLE = 1;

// Inicialização do TIMER0, responsável pela leitura do encoderOpenTimer0( TIMER_INT_ON & T0_16BIT & T0_SOURCE_INT & T0_PS_1_128 );WriteTimer0( 65536-780 );OpenTimer2( TIMER_INT_OFF & T2_PS_1_16 );

OpenPWM2(78);OpenPWM1(78);SetDCPWM1(0);SetDCPWM2(0);

/* if (SENTIDO == 0)

OpenPWM2(155); // PWM com período de 2,5msClosePWM1();

else if (SENTIDO == 1)

OpenPWM1(155); // PWM com período de 2,5msClosePWM2();

*/

//***************************************// Função que envia os dados da aquisição//***************************************void EnviarDados (void)

int i = 0;

CloseTimer1(); // Desabilita o timer do menuDADO = 0;

Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Posição(*100mm): Velocidade:(*100mm/s)");

45

Page 53: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Transmite (0x0D); Transmite (0x0A);

for (i=0; i<= n; i++)

if (i == 128) DADO = 0;if (i > 127) // Acabou o banco de memória 1

fprintf(_H_USART, "%-d", Dados_posicao2[DADO]);else

fprintf(_H_USART, "%-d", Dados_posicao[DADO]);

Transmite (0x0D); Transmite (0x0A);DADO++;

DADO = 0;n = 0;

// Reinicializa o TIMER1OpenTimer1( TIMER_INT_ON & T1_16BIT_RW & T1_SOURCE_INT & T1_PS_1_8 &

T1_OSC1EN_OFF);WriteTimer1(50000);

//*************************************// Função para exibição do menu inicial//*************************************void DisplayMenuInicial (char menu)

if (menu == MENU0) // Menu Inicial

putrsUSART ("\n\nMenu:");Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("1) Configurar PWM");Transmite (0x0D); Transmite (0x0A);putrsUSART ("2) Acionar Motor - malha aberta");Transmite (0x0D); Transmite (0x0A);putrsUSART ("3) Desligar Motor");Transmite (0x0D); Transmite (0x0A);putrsUSART ("4) Configurar Encoder");Transmite (0x0D); Transmite (0x0A);putrsUSART ("5) Selecionar posição de parada (mm * 10)");Transmite (0x0D); Transmite (0x0A);putrsUSART ("6) Ler dados da aquisição");Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Opção: ");

else if (menu == MENU1) // Configurar PWM

46

Page 54: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Configurar PWM:");Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("1) Mover para esquerda");Transmite (0x0D); Transmite (0x0A);putrsUSART ("2) Mover para direita");Transmite (0x0D); Transmite (0x0A);putrsUSART ("Opção: ");

else if (menu == MENU2) // Configurar Encoder

Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Configurar Encoder:");Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("1) Encoder X");Transmite (0x0D); Transmite (0x0A);putrsUSART ("2) Encoder Y");Transmite (0x0D); Transmite (0x0A);putrsUSART ("3) Testar Encoder");Transmite (0x0D); Transmite (0x0A); Transmite (0x0D); Transmite (0x0A);putrsUSART ("Opção: ");

//*******************************************************************************************// M Á Q U I N A S D E E S T A D O S//*******************************************************************************************

// Máquina de estado para exibição do menu inicial e opções de comandovoid MaqComando (void)

if (STT_Comando < 200)Comando = Recebe();

switch (STT_Comando) case (MENU_INICIAL):

DisplayMenuInicial(MENU0);STT_Comando++;break;

case (ESPERA_COMANDO):if (Comando == '1')

DisplayMenuInicial(MENU1);STT_Comando++;

else if (Comando == '2')

47

Page 55: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

STT_Comando = OPCAO2;

else if (Comando == '3')STT_Comando = OPCAO3;

else if (Comando == '4')DisplayMenuInicial(MENU2);STT_Comando = OPCAO4;

else if (Comando == '5')Transmite (0x0D); Transmite (0x0A);STT_Comando = ENTRADA_DADOS4; // Posição de parada

else if (Comando == '6')EnviarDados();STT_Comando = MENU_INICIAL;

break;

case (OPCAO1): // Configuração do PWMif (Comando == '1')

SENTIDO = 0;STT_Comando = MENU_INICIAL;

else if (Comando == '2')SENTIDO = 1;STT_Comando = MENU_INICIAL;

break;

case (OPCAO2): // Acionar motorSTT_Comando = MENU_INICIAL;MotorMalhaAberta();break;

case (OPCAO3): // Desligar motorClosePWM2();ClosePWM1();STT_Comando = MENU_INICIAL;break;

case (OPCAO4): // Configuração Encoderif (Comando == '1')

48

Page 56: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

ENCODER = 0;STT_Comando = MENU_INICIAL;

else if (Comando == '2')

ENCODER = 1;STT_Comando = MENU_INICIAL;

else if (Comando == '3')

Init_ps2();Transmite (0x0D); Transmite (0x0A);TEST_ENCODER = 1;STT_Comando = TESTANDO;

break;

// Máquina de estado para entrada de dadosvoid EntradaDados(void)

Comando = Recebe();if (STT_Comando > 199)

if (STT_Comando == ENTRADA_DADOS1) // Perído do PWM (3 dígitos)

switch (STT_Dados) case (Mw):

if (Comando == 0) break;valor[1] = Comando;STT_Dados = Mwn;break;

case (Mwn):if (Comando == 0) break;valor[2] = Comando;STT_Dados = Mwnn;break;

case (Mwnn):if (Comando == 0) break;valor[0] = '0';valor[3] = Comando;Periodo_PWM = atob(valor);STT_Dados = Mw;STT_Comando = MENU_INICIAL;

49

Page 57: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

break; // fim do switch

// fim do if

if (STT_Comando == ENTRADA_DADOS2) // Duty cycle do PWM (4 dígitos)

switch (STT_Dados) case (Mw):

if (Comando == 0) break;valor[0] = Comando;STT_Dados = Mwn;break;

case (Mwn):if (Comando == 0) break;valor[1] = Comando;STT_Dados = Mwnn;break;

case (Mwnn):if (Comando == 0) break;valor[2] = Comando;STT_Dados = Mwnnn;break;

case (Mwnnn):if (Comando == 0) break;valor[3] = Comando;PWM_Duty_cycle = atoi(valor);STT_Dados = Mw;STT_Comando = MENU_INICIAL;break;

// fim do switch // fim do if

if (STT_Comando == ENTRADA_DADOS3) // Tempo do PWM (4 dígitos)

switch (STT_Dados) case (Mw):

if (Comando == 0) break;valor[0] = Comando;STT_Dados = Mwn;break;

case (Mwn):if (Comando == 0) break;valor[1] = Comando;STT_Dados = Mwnn;break;

50

Page 58: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

case (Mwnn):if (Comando == 0) break;valor[2] = Comando;STT_Dados = Mwnnn;break;

case (Mwnnn):if (Comando == 0) break;valor[3] = Comando;TEMPO_PWM = atoi(valor);STT_Dados = Mw;STT_Comando = MENU_INICIAL;break;

// fim switch // fim do if

if (STT_Comando == ENTRADA_DADOS4) // Posição de parada (3 dígitos)

switch (STT_Dados) case (Mw):

if (Comando == 0) break;valor[1] = Comando;STT_Dados = Mwn;break;

case (Mwn):if (Comando == 0) break;valor[2] = Comando;STT_Dados = Mwnn;break;

case (Mwnn):if (Comando == 0) break;valor[0] = '0';valor[3] = Comando;//Posicao_desejada = ((float)(atoi(valor))/10.0);Posicao_desejada = 40.0;STT_Dados = Mw;Transmite (0x0D); Transmite (0x0A);STT_Comando = MENU_INICIAL;MoverMotor();break;

// fim do switch // fim do if // fim do if geral

51

Page 59: Motor Magnetico Unicamp

UNIVERSIDADE ESTADUAL DE CAMPINASFACULDADE DE ENGENHARIA MECÂNICA

ENGENHARIA DE CONTROLE E AUTOMAÇÃO

AnexoCircuito da ponte-H utilizada no acionamento do motor.

Fonte: http://robota.das.ufsc.br/mediawiki/index.php/H-bridge-5a.

52