Encoder Incremental-Anáilis de Metodologías de Decodificación

Embed Size (px)

Citation preview

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    1/22

    ENCODER INCREMENTAL:ANLISIS DE MEDOTOLOGAS DE

    DECODIFICACIN

    Introduccin

    El encoder es un transductor que transforma movimiento en una serie

    de impulsos digitales donde dichos impulsos son utilizados para

    controlar desplazamiento, velocidad, aceleracin y trayectoria. Los

    encoders son utilizados en una gran variedad de aplicaciones, por

    ejemplo en las mquinas de elaboracin de materiales, en robots comotransductores de retroalimentacin para el control de la velocidad,

    posicionamiento de actuadores, controles de rango; en general en

    sistemas de medicin y control.

    Estn clasicados en encoders rotacionales y encoders lineales

    dependiendo del movimiento que realice el dispositivo, los sensores ms

    comunes utilizados son del tipo ptico o del tipo magn!tico, y e"isten

    dos tipos de codicacin# incremental y absoluta.

    La codicacin absoluta genera multi$bits digitales los cuales indican

    directamente la posicin actual, mientras que la codicacin incremental

    proporciona dos se%ales en cuadratura &' y (), cuya caracter*stica es un

    par de se%ales cuadradas con el mismo tiempo en alto y en bajo que se

    encuentran desfasadas +-, lo que genera a la salida un ciclo

    bidireccional de combinaciones &... /$$0 1 /$$0 11 /$$0 1 /$$0

    ....) y dependiendo el estado en el que se estuvo y el estado actual se

    determina el sentido de direccin.

    El presente trabajo se centra en la codicacin incremental &en

    cuadratura) que proporcionan ciertos dispositivos como los encoderslineales y rotacionales, as* posean sensor ptico o magn!tico el

    principio de funcionamiento es el mismo.

    Palara! Cla"#: encoder, codicacin incremental, encoder lineal,

    encoder rotacional, metodolog*as, se%al en cuadratura, medicin de

    posicin, resolucin "1, "2, ", decodicacin, controlador, driver.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    2/22

    Encod#r! Incr#$#ntal#!

    Los Encoders 3ncrementales proveen un n4mero espec*co de pulsos

    equitativamente espaciados por revolucin &5ounts 6er 7evolution) en

    movimiento rotatorio; o por pulgada o mil*metro en movimiento lineal.

    Entre ms pulsos por unidad de medida, mayor resolucin posee el

    sistema. 8ebido a dichos pulsos equidistantes, se genera a la salida una

    se%al cuadrada con un mismo tiempo en nivel alto como en nivel bajo,

    en donde la frecuencia de la se%al es determinada por la velocidad del

    desplazamiento.

    6oseen un m*nimo de dos canales de salida &5anal ' y 5anal (), en

    donde los pulsos estn desfasado +- de un canal con respecto del otro

    y dependiendo de la secuencia de pulsos generada es posible

    determinar el sentido de movimiento. 'lgunos encoders de incrementotambi!n producen otra se%al conocida como 9*ndice: o 9canal : que es

    producida una vez cada determinada distancia .

    =ig. 1.$ ?alidas de los distintos canales de un encoder incremental.

    Codi%cacin Incr#$#ntalEs posible utilizar un solo canal de salida para aplicaciones donde el

    sentido de la direccin de movimiento no es importante &unidireccional).

    En donde se requiere conocer el sentido de direccin, se utiliza la salida

    de cuadratura &bidireccional), con los canales conocidos como canal ' y

    canal (, de + grados el!ctricos fuera de la fase.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    3/22

    6ara realizar las mediciones del dispositivo se emplean los siguientes

    tipos de resolucin , dependiendo de las necesidades y precisin

    del sistema#

    5onteo de @ancos de subida o de bajada para un solo canal

    &unidireccional "1). 5onteo de @ancos de subida o de bajada para un solo canal con

    lectura del canal complementario &bidireccional "1). 5onteo de @ancos de subida y de bajada de un canal

    &unidireccional "2). 5onteo de @ancos de subida o bajada de ambos canales

    &bidireccional "2). 5onteo de @ancos de subida y de bajada de un canal con lectura

    del canal complementario &bidireccional "2).

    5onteo de @ancos de subida y de bajada para ambos canales&bidireccional ").

    =ig. 2.$ =orma de onda del Encoder de cuadratura y sus distintos tipos de

    resolucin.

    6ara determinar la posicin del dispositivo es necesario contar la

    cantidad de pulsos realizados, sumndolos o restndolos al conteo total

    &posicin actual) seg4n la direccin de movimiento. Los conteos se

    realizan a trav!s de controladores, habilitando interrupciones a los

    canales y a los @ancos necesarios dependiendo de la resolucin a

    implementar. Aambi!n se utilizan controladores especializados o

    dispositivos que monitorean todo el tiempo el estado de las se%ales, y

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    4/22

    cuando detectan un cambio de estado realizan las operaciones

    pertinentes.

    Es importante vericar que el la metodolog*a de conteo en el controlador

    se realice en un lapso de tiempo menor al que se espera detectar el

    siguiente @anco, de lo contrario, el conteo se realizarinadecuadamente, ocasionando la perdida de la posicin real del

    sistema.

    6ara el registro de posicin se tiene que analizar las se%ales

    proporcionadas por el sensor . ?e observa a la salida de los

    canales ' y ( una secuencia de cuatro estados diferentes, los cuales se

    repinen constantemente dependiendo del sentido de direccin & C

    9:/$$0 91:/$$0 911:/$$0 91:/$$0 9:C).

    =ig. B.$ ?e%al proporcionada por el encoder y su tabla de estados.

    R#!olucin &idir#ccional '(

    7ealiza seguimiento de un solo tipo de @anco para un solo canal, se

    puede utilizar el @anco de subida o el de bajada dependiendo de las

    posibilidades de nuestro controlador .

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    5/22

    ') ()

    =ig..$ ') ?eguimiento de @ancos de subida para el canal '. ()

    ?eguimiento de @ancos de bajada para el canal (.

    7equerimientos en el controlador#

    1 pin de entrada que se pueda congurar para interrupciones de

    subida o de bajada. 1 pin de entrada normal.

    Dentajas#

    ?olo se requiere un pin de interrupcin en el controlador por

    motor. El tiempo entre operaciones es el mayor en comparacin a las

    otras resoluciones.

    8esventajas#

    7esolucin baja.

    La siguiente metodolog*a se basa en el seguimiento de @ancos de subida

    en el canal ', de igual manera se puede realizar para cualquiera de las

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    6/22

    modalidades bidireccionales "1 observando los estados vecinos al @anco

    deseado .

    =ig. .$ Fquina de estados para resolucin bidireccional "1 para @ancos

    de subida en el canal ' que se observa en la gura $'.

    (idireccional "2

    ?e utiliza los @ancos de subida y de bajada para un solo canal, el que se

    desee

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    7/22

    ' (

    =ig.G.$ ') ?eguimiento de @ancos de subida y de bajada para el canal '.

    () ?eguimiento de @ancos de subida para los canales ' y (.

    Su)oni#ndo un controlador *u# #! a)to )ara +ailitarint#rru)cion#! d# ca$io d# #!tado,

    7equerimientos en el controlador#

    1 pin de entrada que se pueda congurar para interrupciones de

    cambio de estado &de subida y de bajada al mismo tiempo). 1 pin de entrada normal.

    Dentajas#

    ?olo se requiere un pin de interrupcin en el controlador por

    motor.

    8esventajas#

    7esolucin intermedia.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    8/22

    =ig. H.$ Fquina de estados para resolucin bidireccional "2 en el canal '

    con un controlador que es apto para habilitar interrupciones de cambio

    de estado.

    Su)oni#ndo un controlador *u# !olo !# )u#d#n +ailitar

    int#rru)cion#! d# -anco d# !uida . -anco d# a/ada #n

    $o$#nto! di0#r#nt#!,

    7equerimientos en el controlador#

    1 pin de entrada que se pueda congurar para interrupciones de

    subida y de bajada en momentos diferentes. 1 pin de entrada normal.

    Dentajas#

    ?olo se requiere un pin de interrupcin en el controlador por

    motor.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    9/22

    8esventajas#

    Es probable que se pierda un conteo para detectar el primer

    movimiento. 7esolucin intermedia.

    =ig. I.$ Fquina de estados para resolucin bidireccional "2 en el canal '

    con un controlador que solo habilita interrupciones de @anco de subida y

    de bajada en momentos diferentes.

    Su)oni#ndo un controlador *u# !olo !# )u#d#n +ailitar

    int#rru)cion#! d# -anco d# !uida o -anco d# a/ada,

    7equerimientos en el controlador#

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    10/22

    2 pines de entrada que se pueda congurar para interrupciones de

    subida o de bajada.

    Dentajas#

    ?olo se requiere que controlador brinde ya sea interrupciones de

    @anco de subida o interrupciones de @anco de bajada.

    8esventajas#

    ?e necesitan 2 pines de interrupcin en el controlador por motor.

    El tiempo entre interrupciones a considerar es igual al modo "

    con la mitad de resolucin. 7esolucin intermedia.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    11/22

    =ig. +.$ Fquina de estados para resolucin bidireccional "2 los canales

    ' y ( con un controlador que solo habilita interrupciones de @anco de

    subida.

    &idir#ccional '1

    ?e utilizan @ancos de subida y de bajada para ambos canales, esto

    brinda mayor precisin al sistema y tambi!n mayores requerimientos,

    por lo que e"isten distintas alternativas como son los descodicadores

    &drivers$controladores) que facilitan su interpretacin.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    12/22

    =ig. 1.$ ?eguimiento de @ancos de subida y de bajada en modo ".

    Su)oni#ndo un controlador *u# #! a)to )ara +ailitar

    int#rru)cion#! d# ca$io d# #!tado,

    7equerimientos en el controlador#

    2 pines de entrada que se pueda congurar para interrupciones de

    cambio de estado &detecta @ancos de subida y de bajada al mismo

    tiempo).

    Dentajas#

    7esolucin alta.

    8esventajas#

    ?e requieren dos pines de interrupcin del controlador por motor.

    El tiempo disponible para decodicar las se%ales es menor, por lo

    que no es recomendable para analizar varios encoders en un solo

    sistema.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    13/22

    =ig. 11.$ Fquina de estados para resolucin bidireccional " los canales

    ' y ( con un controlador que habilita interrupciones de cambio de

    estado en dos pines.

    Su)oni#ndo un controlador *u# !olo !# )u#d#n +ailitar

    int#rru)cion#! d# -anco d# !uida . -anco d# a/ada #n

    $o$#nto! di0#r#nt#!,

    7equerimientos en el controlador#

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    14/22

    2 pines de entrada que se pueda congurar para interrupciones de

    @ancos de subida y de bajada en tiempos diferentes.

    Dentajas#

    7esolucin alta.

    8esventajas#

    ?e requieren dos pines de interrupcin en el controlador por

    motor. El tiempo disponible para decodicar las se%ales es menor, por lo

    que no es recomendable para analizar varios encoders en un solo

    sistema. Es probable que se pierda de uno a tres conteos para detectar el

    primer movimiento.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    15/22

    =ig. 12.$ Fquina de estados para resolucin bidireccional " los canales

    ' y ( con un controlador que habilita interrupciones de @anco de subida

    y @ancos de bajada en tiempos diferentes en dos pines.

    &idir#ccional '1 con Co$)u#rta 2OR

    En diversas aplicaciones se utiliza una compuerta JK7 con la nalidadde disminuir los pines de interrupcin en el controlador, dado que la

    salida cambia de estado cada vez que ocurre un movimiento en las

    se%ales ' y (. 'unque solo necesitemos un pin de interrupcin para este

    modo bidireccional ", se requieren otros dos pines de entrada normales

    para monitorear las se%ales ' y ( y determinar el sentido de direccin.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    16/22

    =ig. 1B.$ ?eguimiento de la salida de la compuerta JK7 dependiendo de

    la entrada que recibe de los canales ' y (.

    Su)oni#ndo un controlador *u# !olo !# )u#d#n +ailitarint#rru)cion#! d# ca$io d# #!tado,

    7equerimientos en el controlador#

    1 pines de entrada que se pueda congurar para interrupciones de

    cambio de estado. 2 pines normales de entrada

    Dentajas#

    7esolucin alta.

    8esventajas#

    ?e requieren tres pines del controlador por motor.

    El tiempo disponible para decodicar las se%ales es menor, por lo

    que no es recomendable para analizar varios encoders en un solo

    sistema.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    17/22

    =ig. 1.$ Fquina de estados para resolucin bidireccional " con

    compuerta JK7 con un controlador que habilita interrupciones de

    cambio de estado.

    Su)oni#ndo un controlador *u# !olo !# )u#d#n +ailitar

    int#rru)cion#! d# -anco d# !uida . -anco d# a/ada #n

    $o$#nto! di0#r#nt#!,

    7equerimientos en el controlador#

    1 pines de entrada que se pueda congurar para interrupciones de

    @ancos de subida y de bajada en momentos diferentes 2 pines normales de entrada

    Dentajas#

    7esolucin alta.

    8esventajas#

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    18/22

    ?e requieren tres pines del controlador por motor.

    El tiempo disponible para decodicar las se%ales es menor, por lo

    que no es recomendable para analizar varios encoders en un solo

    sistema. Es probable que se pierda uno conteo para detectar el primer

    movimiento.

    =ig. 1.$ Fquina de estados para resolucin bidireccional " con

    compuerta JK7 con un controlador que habilita interrupciones de @anco

    de subida y @ancos de bajada en tiempos diferentes.

    D#codi%cador Alt#rnati"o #n PIC

    3u!ti%cacin

    8ado a un proyecto que requer*a una resolucin bidireccional " en

    cuatro motores no se pudo utilizar una metodolog*a e"istente, por lo que

    fue necesario buscar alternativas que brindaran el tiempo de

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    19/22

    codicacin suciente para los cuatro encoders con un uso m*nimo pines

    habilitados para interrupcin y medicin,

    ?e realizaron investigaciones acerca de decodicadores de se%ales en

    cuadratura con la intencin de simplicar el cdigo de decodicacin al

    menor tiempo posible y que sea funcional para los requerimientos.

    La opcin en el mercado que satisface estos requerimientos se encontr

    en el controlador L?H1I, pero debido a un costo e"cesivo de env*o &1B

    veces mayor al costo del producto) y a los tiempos de entrega se opt

    por realizar un cdigo implementado a un microcontrolador 635 de gama

    baja que realice la misma funcin que dicho controlador.

    El microcontrolador utilizado es el 6351=2, microcontrolador de gama

    baja que posee B pines de entrada yo salida y un pin que es solo de

    entrada, la frecuencia de operacin de trabajo es t*picamente a FMz&1Ns ciclo de instruccin) y es ajustable mediante programacin.

    La salida generada se inspir en la del driver L?H1I, que consiste en

    establecer un pin de direccin, que estando en alto especica un

    sentido de movimiento y estando en bajo representa el sentido opuesto;

    y otro pin que manda un pulso negativo &alto$bajo $alto) para mandar el

    dato adquirido como interrupcin a otro dispositivo &ver 8atasheet para

    ms informacin).

    ?e utilizarn dos pines del microcontrolador como entrada que servirnpara leer los canales ' y ( del encoder y dos pines como salida, uno que

    indicar la direccin del desplazamiento y otro que mande la indicacin

    de movimiento. La lgica de programacin se muestra en donde

    se observa una lgica de programacin de comparacin de los estados

    actuales y pasados de las se%ales.

    Este cdigo se emplea para cada encoder y se manipula por un

    dispositivo maestro para posicionamiento de los motores. 8e esta

    manera con el otro dispositivo, por medio de interrupciones de @anco de

    bajada se detecta el movimiento de cada motor, y leyendo el pin de

    direccin del decodicador del motor correspondiente se identica el

    sentido de direccin.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    20/22

    =ig. 1G.$ Fquina de estados del cdigo a implementar para el decodicador alternativo.

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    21/22

    Aarda un m"imo de ciclos de mquina en realizar la medicin ms

    tardada, que es el pasar del estado al 1, en este microcontrolador se

    traduce t*picamente en microsegundos, pero como lo estamos

    trabajando a su m"ima velocidad de trabajo, se espera un tiempo

    menor sin conocerlo e"actamente.

    8e esta manera con otro dispositivo por medio de solo interrupciones

    de @anco de bajada se detectan los cambios de estado y leyendo el pin

    de direccin se identica el sentido del mismo.

    =ig. 1H.$ Fquina de estados para control maestro del decodicador

    alternativo.

    El programa se adapt y prob para controlar cuatro encoders en

    cuadratura rotacionales magn!ticos de codicacin incremental con

    salida en cuadratura que se encuentran en los moto$reductores 9H#1

    Fetal Oearmotor 28"Lmm M6 Pith I 567 Encoder: de la marca

    6ololu &como se indica, brinda I conteos por revolucin del encoder en

  • 7/25/2019 Encoder Incremental-Anilis de Metodologas de Decodificacin

    22/22

    modo " y, asociado a una caja de engranajes con relacin encoder$

    motor de H.IB#1, proporciona B+2 conteos por revolucin del motor) a

    un voltaje de + volts &cerca de 1I rpm cada motor) que tarda H

    microsegundos en realizar cambios de estado a la salida de las se%ales

    para cada motor, mostrando resultados e"celentes.

    R#0#r#ncia!

    Sensores y Acondicionadores de Seal, Ramn Palls Areny, 4ta Edicin

    2003,Boixareu Editores MA!A" #E AP"$%A%$& #E E%'#ERS (or )est $nstruments de

    M*xico

    http#PPP.Pestme"ico.com.m"pfddynaparcatalogos.$FanualQ2de

    Q2'plicacionQ2deQ2Encoders.pdf

    http#facultad.bayamon.inter.eduarinconencoderincrementales.pdf

    http#PPP.multimechatronics.comimagesuploadsdesign212Kptic

    alQ2EncoderQ2andQ2theQ2'rduinoQ2212.pdf

    http#PPP.datasheetcatalog.comdatasheetsRpdfL?H1L?H1I.shtml

    http#PPP.datasheetcatalog.comdatasheetsRpdf63516351=2.s

    html http#PPP.ni.comtutorialH1+es

    http://www.westmexico.com.mx/pfd/dynapar/catalogos/4.-Manual%20de%20Aplicacion%20de%20Encoders.pdfhttp://www.westmexico.com.mx/pfd/dynapar/catalogos/4.-Manual%20de%20Aplicacion%20de%20Encoders.pdfhttp://facultad.bayamon.inter.edu/arincon/encoderincrementales.pdfhttp://www.multimechatronics.com/images/uploads/design/2012/Optical%20Encoder%20and%20the%20Arduino%202012.pdfhttp://www.multimechatronics.com/images/uploads/design/2012/Optical%20Encoder%20and%20the%20Arduino%202012.pdfhttp://www.datasheetcatalog.com/datasheets_pdf/L/S/7/1/LS7184.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/L/S/7/1/LS7184.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/P/I/C/1/PIC10F200.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/P/I/C/1/PIC10F200.shtmlhttp://www.ni.com/tutorial/7109/es/http://facultad.bayamon.inter.edu/arincon/encoderincrementales.pdfhttp://www.multimechatronics.com/images/uploads/design/2012/Optical%20Encoder%20and%20the%20Arduino%202012.pdfhttp://www.multimechatronics.com/images/uploads/design/2012/Optical%20Encoder%20and%20the%20Arduino%202012.pdfhttp://www.datasheetcatalog.com/datasheets_pdf/L/S/7/1/LS7184.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/L/S/7/1/LS7184.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/P/I/C/1/PIC10F200.shtmlhttp://www.datasheetcatalog.com/datasheets_pdf/P/I/C/1/PIC10F200.shtmlhttp://www.ni.com/tutorial/7109/es/http://www.westmexico.com.mx/pfd/dynapar/catalogos/4.-Manual%20de%20Aplicacion%20de%20Encoders.pdfhttp://www.westmexico.com.mx/pfd/dynapar/catalogos/4.-Manual%20de%20Aplicacion%20de%20Encoders.pdf