Seminário sobre Encoders

Embed Size (px)

Citation preview

  • 8/18/2019 Seminário sobre Encoders

    1/11

    FEMC FACIT

    faculdade de ciência e tecnologia

    de montes claros

    Robótica Industrial

    Relatório Seminário Encoders

    Autor:Felipe NicolaJoão VitorGeorge LuisWesley de SouzaValéria Cristina

    Eng. de Controle e Automação

    30 de novembro de 2015Montes Claros - MG

    Eng. de Controle e Automação   1   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    2/11

  • 8/18/2019 Seminário sobre Encoders

    3/11

    FEMC FACIT

    1 Encoders

    Um tipo de sensor de grande importância na automação tanto industrial como de qualquer

    outro equipamento, é o que dá informações sobre a velocidade ou posição de uma peça que giraou se desloca linearmente. O ângulo exato em que ela pára ou ainda a velocidade em qualquersentido de rotação ou movimento podem ser fundamentais para o tipo de controle que se deseja.Para sensoriar posições e velocidade um tipo de sensor muito usado é o Encoder (figura 1).

    Figura 1: Alguns modelos de encoders

    1.1 Prinćıpio de Funcionamento

    O encoder é um tipo de transdutor (figura 2) de posição, sendo o transdutor, um equipamentoque transforma as variações de uma determinada grandeza f́ısica em uma grandeza elétrica.

    Figura 2: Prinćıpio de funcionamento de um transdutor

    Um transdutor de posição converte variações de movimento em um sinal de sáıda do tipoelétrico.A menor unidade de comprimento que separa duas posições que podem ser reconhecidas porum transdutor é chamada de resolução.O encoder é um tipo de transdutor de posição, capaz de converter movimentos lineares ouangulares em sinais elétricos, que podem ser transformados em informações binárias para quepossam ser trabalhadas por um computador com o objetivo de configurá-las em variáveis dotipo distância, posição, etc.

    Eng. de Controle e Automação   3   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    4/11

    FEMC FACIT

    Na figura 3 temos o detalhamento interno de um encoder.

    Figura 3: Encoder detalhado

    Resumidamente o encoder é constitúıdo de um emissor e um receptor acoplados a uma rodacom rasgos que permitem a luz passar (figura 4).

    Figura 4: Funcionamento básico de um encoder

    O encoder envia pulsos ou valores de contagem através de um circuito eletrônico de sáıda ,para que a posterior interpretação dos dados seja feita por uma placa de um PLC, CNC, Robô

    Eng. de Controle e Automação   4   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    5/11

    FEMC FACIT

    ou até mesmo circuitos dedicados a microcontroladores.O encoder se divide basicamente em dois tipos, podendo ser Incrementais ou Absolutos.

    1.2 Encoder Incremental

    O encoder incremental (figura 5)permite saber o sentido do movimento do disco em relação aossensores.Eles identificam e contam pulsos elétricos além de reconhecer o sentido do movimentoque gerou estes pulsos.Por exemplo, se uma roda girar, o encoder reconhecerá que a roda girou, o quanto ela girou eem qual sentido ela girou. A cada interrupção da luz, devido a rotação do disco, um pulso éenviado ao controle.Da frequência dos pulsos determina-se a velocidade do eixo, e a quantidade de pulsos, determinaa posição a partir de um referencial. Os pulsos de luz s ão contados para determinar a posição.São usados dois fotodetectores em quadratura para determinar a direção do movimento. Umpulso de ı́ndice é utilizado para determinar a posição inicial.A precisão do encoder incremental depende de fatores mecânicos, elétricos e ambientais, quesão: erros na escala das janelas do disco, excentricidade do disco, excentricidade das janelas,erro introduzido na leitura eletrônica dos sinais, temperatura de operação e nos próprios com-ponentes transmissores e receptores de luz.

    Figura 5: Funcionamento básico de um encoder incremental

    1.3 Encoder Absoluto

    O encoder absoluto (figura 6)trabalha na geração de código binário correspondente a posiçãodo disco em relação aos sensores.O encoder absoluto é o tipo de encoder mais completo que existe. Ele identifica e conta pulsoselétricos, distingue o sentido do movimento que gerou estes pulsos, e reconhece em qual ângulose encontra o eixo ou em qual posição se encontra o móvel linear.O código de sáıda é utilizado para definir a posição absoluta do encoder. O código maisempregado é o binário, pois este é facilmente manipulado por um circuito relativamente simplese, com isso, não se faz necessário nenhum tipo de conversão para se obter a posição real doencoder. O código é extraı́do diretamente do disco (que está em rotação). O sincronismo e a

    aquisição da posição, no momento da variação entre dois códigos, tornamse muito dif́ıceis. Senós pegarmos como exemplo dois códigos consecutivos binários como 7 (0111 2) e 8 (10002),

    Eng. de Controle e Automação   5   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    6/11

    FEMC FACIT

    notaremos que as variações de zero para um e um para zero ocorrem em todos os bits, e umaleitura feita no momento da transição pode resultar em um valor completamente errado (figura4). Para solucionar esse problema é utilizado um código binário chamado “Código Gray”

    Figura 6: Funcionamento básico de um encoder absoluto

    1.4 Aplicações

    Os encoders podem ser utilizados em diversas áreas:

    Eng. de Controle e Automação   6   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    7/11

    FEMC FACIT

    Figura 7: Sistema de posicionamento de telescópios

    Figura 8: Mecanismo de máquina perfuratriz

    Eng. de Controle e Automação   7   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    8/11

    FEMC FACIT

    Figura 9: Controle de velocidade

    Figura 10: Posicionamento de antenas

    Figura 11: Encoders utilizando redes Interbus

    Eng. de Controle e Automação   8   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    9/11

    FEMC FACIT

    Figura 12: Micro encoders para pequenas aplicações

    1.5 Aplicação Prática

    Fizemos a implementação de um encoder em um motor de corrente cont́ınua para fazer amedição da velocidade do eixo em RPM. Foi utilizado um encoder bem simples, com umaresolução de 11,25o mecânicos (360o/32), que significando que a cada 11,25o o encoder enviaum pulso para o controlador. Para o processamento do sinal foi utilizado um ATMEGA328P-PU (Arduino Uno). Um potenciômetro foi usado para variar a velocidade do motor. Abaixosegue o código implementado e os componentes utilizados.

    1   #include  <

    L i q u i d C r y s t a l . h>

    2 L i q ui d C ry s t al l c d ( 1 2 , 1 1 , 7 , 8 , 5 , 4 ) ;   // {RS,ENABLE,D4,D5,D6,D7 }3   i n t   t= m i l l i s ( ) ;4   i n t   rpm=0;5   i n t   v e l o c i d a d e = 0 ;6   // in t motor=0;7   v o l at i l e unsig ne d l ong   p u l s o s = 0 ;89   void   ContaPulso ()

    10   {11 p u l s o s ++;12   }13

    14   void   s e tu p ()   {15 l c d . b eg in ( 1 6 , 2 ) ;16 a t t a c h I n t e r r u p t ( 0 , C on ta Pu ls o , RISING ) ;17 p in Mo de (A0 , INPUT ) ;18 pinMode( 6 ,OUTPUT) ;19   }2021   void   l o o p () {22 v e l o c i d a d e = map ( a n al o gR ea d ( A0 ) , 0 , 1 0 2 3 , 0 , 2 5 5 ) ;23 a n al o gW r it e ( 6 , v e l o c i d a d e ) ;24   v o l a t i l e u ns ign ed l on g   t = m i l l i s ( ) ;25 l c d . s et Cu rs or ( 0 , 0 ) ;

    26 l c d . p r i n t ( ”RPM = ” ) ;27 l c d . s et Cu rs or ( 6 , 0 ) ;

    Eng. de Controle e Automação   9   Robótica Industrial

  • 8/18/2019 Seminário sobre Encoders

    10/11

    FEMC FACIT

    28 l c d . p r i nt ( rpm ) ;29 l c d . s et Cu rs or ( 0 , 1 ) ;30 l c d . p r i n t (”PWM = ” ) ;31 l c d . s et Cu rs or ( 6 , 1 ) ;

    32 l c d . p r i n t ( v e l o ci d a d e ) ;33   while ( ( m i l l i s ()− t )  

  • 8/18/2019 Seminário sobre Encoders

    11/11

    FEMC FACIT

    Figura 15: Circuito montado

    Eng. de Controle e Automação   11   Robótica Industrial