Vous êtes sur la page 1sur 38

Elementos de un servo drive

Publicado el 4 agosto, 2010 por Motion Control

El propsito de este post es el de mostrar los elementos bsicos presentes en


cualquier servodrive. Hasta ahora nos hemos limitado a la teora pero resultar
interesante ver como se plasma dicha teora en un producto real.

OMRON Accurax G5 EtherCAT


Display
Muchos servos incluyen una pantallita o Display para informar del estado del
servo as como posibles anomalas.
Entrada potencia:
La entrada de potencia (desde la red elctrica, previo paso por filtros si fuera
necesario para cumplir EMC), aporta la energa necesaria al Drive para que
posteriormente rectificada y troceada sea entregada al motor.

Normalmente existen versiones del servo para monofsico y trifsico. La


frontera entre sistemas monofsicos y trifsicos acostumbra a situarse alrededor
de 1KW-1.5 KW. depender del fabricante.
La mayora de los servosistemas tendrn a su vez una entrada adicional de
control, que alimentar la lgica del servodrive. Esta entrada acostumbra a ser
de 230 V (para sistemas monofsicos) 24 V (para sistemas trifsicos).
La segregacin entre la alimentacin del DC BUS y Control, permite por ejemplo
deshabilitar toda la potencia del DC BUS manteniendo el control (p.e. para que
el servo no pierda la realimentacin de posicin del encoder).
Salida Potencia
La salida de potencia es la que alimenta al motor, es por donde la onda PWM de
alta potencia ser conducida para hacer girar el motor segn velocidad y par
comandados.
Por tratarse la seal PWM de una seal de alta frecuencia y alta potencia, existe
la posibilidad de que ondas radiadas afecten a otros equipos adyacentes. Para
evitar este problema deben seguirse las instrucciones de montaje e instalacin
del fabricante del equipo, un mal apantallamiento o aislamiento de estos cables
(p.e. si se los fabrica uno mismo, o se realizan empalmes) es la causa de
numerosos problemas de ruido elctrico (que son los Poltergeist de nuestro
mundillo), de difcil diagnosis y en ocasiones dificil solucin.
Es habitual en la mayora de los servos que se permita el acceso al DC BUS
mediante bornas. De este modo se puede controlar el nivel del DC BUS, ya sea
con resistencias de frenado (quemamos el exceso de energia al regenerar) o
mediante regeneracin a la red elctrica (acostumbra a utilizarse en sistemas de
muy alta potencia debido al incremento en los costes).
El servo de la imagen anterior, permite al acceso a dichas bornas del DC BUS,
pero para aplicaciones donde existan muchos ejes y en los que se produzca
regeneracin y consumo simultneo por varios ejes, existe la posibilidad de
cablear los DC BUS de varios servos, de este modo en teora la energa
regenerada de un eje puede ser aprovechada por otro.

La teora es muy bonita, pero en la prctica no son tantas las aplicaciones en las
que los ejes trabajen de un modo en la que el aprovechamiento de la
regeneracin sea rentable, p.e. en una impresin offset con muchos ejes, lo
habitual es que los ejes que realmente consumen o generan mucha potencia,
aceleren todos a la vez o deceleren todos a la vez
Pero ciertamente, existen aplicaciones en las que podra ser rentable aprovechar
dicha regeneracin, es por eso que muchos fabricantes presentan modelos de
servosistemas en Rack, de modo que la etapa de rectificacin se sita en la
cabecera del servo y los ejes, son mdulos onduladores PWM individuales. Esta
configuracintiene sus ventajas y desventajas, y ser adecuada o no en funcin
de la inversin inicial en hardware y naturaleza de la aplicacin (regeneracin)
Ejemplo de este tipo de configuracin es el Kinetix 6000 de Allen-Bradley

Comunicaciones Serie
Pese a que hoy en da la mayora de los servos presentan versiones con Buses de
Motion Control Digitales, lo cierto es que existen muchas aplicaciones que se
siguen solucionando con consignas analgicas o de pulsos. Para poder
configurar dichos servos se acostumbra a dotar al servo de un puerto de
comunicaciones serie. En el pasado estos solan ser RS-232 o 422, pero en la
actualidad muchos servos de nueva generacin vienen provistos de puertos serie
USB, que permiten una comunicacin mucho ms rpida con el equipo.
Incluso los servos provistos de protocolo de comunicaciones para Motion,
acostumbran a conservar el puerto serie/USB, es siempre una puerta de acceso
adicional cuando por algn motivo es necesario.
Motion BUS

Para sistemas multiejesen los que se requiere acceso a parmetros de muchos


ejes y funciones de control de eje en las que varios ejes funcionan sincronizados
o coordinados, acostumbran a utilizarse sistemas de Motion BUS digitales.
Existen muchos buses, ya sean propietarios del fabricante o abiertos mediante
organizaciones. Cada fabricante intentar convencernos de las bondades de su
BUS, lo cierto es que en la actualidad nos encontramos en un momento de
transicin entre buses con un ancho de banda justito para controlar muchos
ejes 10-20 Megas, a protocolos basados en medio fisico Ethernet. En la
actualidad el nmero de ejes por mquina est aumentando, as como el
nmero de ejes que es capaz de controlar un Motion Controller. La misma
mquina embolsadora se puede solucionar con 4 o con 14 ejes, la diferencia est
en los ejes auxiliares que permiten funciones adicionales como la
automatizacin de cambios de formato o producto. Son estas funciones
adicionales y los beneficios para el usuario final, las que justificarn el pagar
ms por una mquina hecha en Europa o escoger una mquina fabricada en
China.
Seores es un hecho ! no podemos competir en precio pero s en tecnologa!
y est es la estrategia adoptada por muchos fabricantes de maquinaria , p.e.
alemanes, que de este modo pueden seguir vivos en el mercado frente a
mquinas ms primitivas fabricadas en p.e. China.
Seguridad Integrada
La normativa de seguridad europea es muy estricta y cada vez lo va a ser ms.
Ciertamente las mviles de una mquina son un punto de peligro, es por esto
que desde hace algunos aos estn apareciendo servosistemas con funciones de
seguridad integrada, el motivo es claro: aumentan la seguridad (la seguridad
est integrada en la electrnica del drive, reducindose as el tiempo re
reaccin), y facilitan el proceso de certificacin de la seguridad de la mquina.
Este es un tema muy interesante que se merece uno o varios posts
Entradas y salidas I/O
Todos los servos necesitan interactuar con su entorno, en funcin de la
naturaleza del servo y p.e. de la disponibilidad de un bus de control de motion,
los servos vendrn provistos de ms o menos entradas.

I/Os tpicas en un servo son:


-Enable/Run: Habilitacin de la etapa de salida del DC BUS
-Alarm Reset: En caso de fallose requerir de una entrada para borrar la
alarma.
-Positive Over Travel (POT): Los lmites de carrera positivos indican al servo
(p.e. mediante un sensor inductivo) que ha alcanzado una posicin fsica que no
debe de ser superada.
-Negative Over Travel (NOT): Anlogamente al POT, existen posiciones en
sentido negativo de movimiento que no deben de ser superadas.
-TouchProbe (o captura de registro): Se trata de una entrada ultrarpida que
permite al servo memorizar la posicin del eje cuando dicha entrada es activada.
Adicionalmente el servo acostumbrar a tener como mnimo las siguientes
salidas:
-/Alarma (indicar que el servo se encuentra en estado de fallo)
-Ready (todo va bien)
-Brake (El servo est operando un motor con freno elctrico.
Existen muchas ms otras I/Os configurables, que estarn presentes o no en
funcin del servo y fabricante: p.e. salidas configurables en funcin del estado
del servo: a velocidad, en posicin, etc entradas adicionales de registro,
cambios de ganancias, etc..
Realimentacin del encoder del motor
Esta entrada es necesaria para un control preciso del motor, es imprescindible
para poder cerrar el lazo de velocidad y, en la mayora de las aplicaciones
tambin se utilizar para cerrar el lazo de posicin.
Realimentacin Encoder Auxiliar

La realimentacin del lazo de velocidad nos vendr dada por el encoder del
motor, pero en ocasiones resulta til poder cerrar el lazo de posicin con otro
encoder adicional: p.e. cuando la mecnica de la mquina es francamente
mala pueden existir notables holguras entre la posicin del eje del motor y la
posicin de la carga que queremos controlar. Tambin se da el caso de sistemas
que tengan un deslizamiento inherente, p.e. una cinta transportadora de papel
en la que exista un cierto deslizamiento del papel respecto al eje.

Sistema de realimentacin de posicin (I): encoder o


resolver
Publicado el 3 diciembre, 2010 por Motion Control

Un elemento imprescindible a la hora de controlar un servosistema es el la


realimentacin de posicin y velocidad.
Cierto es que existen sistemas (variadores pricipalmente) que funcionan sin
realimentacin de posicin (lazo abierto) , pero dichos variadores se utilizan
bsicamente para control de velocidad o par. Para un control preciso de
velocidad y posicin, la realimentacin del motor o la carga hacia el dispositivo
de control, es absolutamente necesaria.
Encoder o Resolver?
Generalmente utilizamos el trmino ingls encoder para referirnos al sistema
de realimentacin.
Cabe decir, que existen gran variedad de encoders: rotativos, llineales,
incrementales, absolutos, semi-absolutos, y de hecho en muchas ocasiones
hablamos de encoder cuando en realidad lo que tenemos es un resolver.
La diferencia fundamental entre encoder y resolver estriba en que el primero es
un sistema digital y el segundo un sistema analgico.
-El encoder rotativo normalmente consta de un disco fijado al eje del motor, con
una serie de marcas (normalmente codificadas en gray para minimizar errores),
y un dispositivo optico capaz de leer dichas marcas. La combinacin binaria de
la lectura de dichas marcas nos dar como resultado la posicin del rotor
respecto al estator. Posteriormente y segn el tipo de encoger, esta informacin
ser codificada y transmitida al servoamplificador o controlador de movimiento.
En su versin ms simple el encoder nos enviar dos trenes de pulsos con un
desfase conocido, contando los pulsos podremos saber la posicin del motor y
examinando qu fase es la primera, podremos saber la direccin, es el tipico
encoder de cuadratura A,/A, B, /B. Normalmente una seal adicional Z,/Z nos
informar de una marca nica en el disco que servir para definir el origen
(Homing)

-El resolver (rotativo), es un sistema analgico, grosso modo lo que nos est
enviando es el voltaje inducido de dos espiras, que por razones constructivas
daran como resultado dos senoides (en lugar de pulsos digitales aqu tenemos
una senoide), examinando la senoide podremos conocer la posicin, y
examinando el desfase la direccin.
Hoy en da se utilizan tanto resolvers como encoders. Tradicionalmente el
resolver se ha considerado ms robusto desde el punto de vista mecnico, pero
al tratarse de una seal analgica es ms sensible desde el punto de vista
electromagntico. El encoder a su vez es ms sensible desde el punto de vista
mecnico: fuerzas excesivas perpendiculares al eje pueden daar el disco lector,
pero en sus versiones ms avanzadas codifica los datos digitalmente por lo que
la deteccin y correccin de errores de comunicacin es posible a nivel de
protocolo.
Creo que existe ifinidad de literatura respecto al encoder de cuadratura y el
resolver, por lo que no me extender ms y os referencio
a : http://es.wikipedia.org/wiki/Codificador_rotatorio para ms informacin.
En este artculo mi intencin es no tanto explicar qu es un encoder o un
resolver (para eso est la Wiki), sin hacer un pequeo repaso de los diferentes
tipos de encoders y protocolos y su campo de aplicacin.
Encoder incremental o absoluto?
La respuesta est clara: Absoluto ! Siempre que el presupuesto nos lo permita.
El encoder incremental nos informa de los incrementos de posicin y a cada
vuelta nos enva una marca especial Z que utilizaremos para referenciar o
hacer el Homing de una mquina.
Qu es el Homing?
Lo razonable es dedicar uno o ms artculos al Homing, aqu slo mencionar
que el homing es una secuencia inicial para cualquier sistema de posicionado en
el que el controlador necesita conocer la posicin absoluta del motor respecto a
la mquina.
Imaginemos una mesa rotativa, con posiciones de trabajo situadas a 90, y 180
grados respectivamente respecto al punto en el que depositamos la pieza que
queremos manipular (Posicin 0)

Al poner en marcha la mquina, el controlador de movimiento necesita saber,


cual es la posicin actual del eje del motor, respecto de la posicin 0 de la
mquina, para ello, si no se dispone de un encoder absoluto el controlador
comandar uno o varios movimientos al eje, hasta que pueda detectar la marca
Z.
Posiblemente la marca Z no estar en la posicin 0 de la mquina, pero una
vez detectada la seal Z del encoder motor solidario a la mesa (imaginemos
que se ha pasado 37 del cero de mquina) , podremos podremos referenciar
el sistema y decirle al motor, muvase 37 en sentido contratio, pues ese es el
cero de la mquina y donde debe colocarse usted para recibir la primera pieza a
trabajar.
El ejemplo que he expuesto es muy simplificado (sera el caso de un directdrive) sin transmisin alguna entre motor y mesa, por tanto una revolucin de
motor, correspondera con una revolucin de la mesa. En la mayora de los
casos nos encontraremos con transmisiones intermedias, por lo que una
revolucin de motor no corresponder con una revolucin de mesa, en este caso,
se utilizan seales adicionales (sensor de proximidad) para determinar la
posicin.

Ejemplo de mesa rotativa (lo he encontr en youtube al


azar):http://www.youtube.com/watch?v=kUps8Hbbxfo
Encoder Absoluto, y Absoluto multi-vuelta
En un sistema con encoder absoluto, no es necesario realizar la secuencia de
Homing, puesto que al poner en marcha la mquina y sin necesidad de
movimiento alguno, el encoder del motor informar al controlador de su
posicin: Estoy en la posicin 37.

El encoder absoluto necesita de algn mecanismo mecnico o electrnico para


memorizar su posicin: dentro de una revolucin del motor. Muy habitualmente
cuando hablamos de un encoder absoluto, en realidad se trata de un encoder
absoluto-multivuelta, pues en muchas aplicaciones necesitamos conocer no slo
la posicin absoluta dentro de una vuelta, tambin en nmero de vueltas que ha
dado el motor, para poder determinar la posicin absoluta.
Tradicionalmente existen dos enfoques a la hora de implementar un encoder
absoluto multivuelta:
-Un sistema mecnico de discos (algo as como un reloj suizo)
-Una batera capaz de mantener la posicin durante varios aos
La ventaja est clara: con un encoder absoluto no es necesario ningn
movimiento para determinar la posicin del motor, por lo que se gana tiempo
en el arranque de la mquina y se evitan movimientos inconvenientes para
algunas mquinas.
Contrapartida: Un encoder incremental resulta ms econmico.
En el caso de encoders absolutos multivuelta con batera, debemos ser
conscientes de que desconectar la batera implicar perder la posicin
absoluta
Full-close loop encoder
El encoder en s mismo, lo que nos da es una realimentacin de posicin.
El servoamplificador derivar la posicin respecto al tiempo para calcular la
velocidad.
Como ya se coment en artculos anteriores, el amplificador necesita la
realimentacin del encoder para poder cerrar el lazo de velocidad y efectuar un
buen control vectorial.
Normalmente la misma seal de encoder es retransmitida al controlador de
posicin para cerrar el lazo de posicin y/o controlar la desviacin (error).

En ocasiones ser necesario utilizar un encoder adicional para cerrar el lazo de


posicin e ignorar el encoder del motor.
Tpicamente esto ocurre cuando:
-La mecnica entre el motor y la carga es mala o complicada (resulta ms
sencillo utilizar un encoder adicional cerca de la carga, y evitar toda la cadena
cinemtica entre motor y carga
-Aplicaciones en las que positivamente sabemos que existen variaciones
difcilmente controlables entre la posicin del motor y la carga: p.e. cuando la
carga desliza sobre rodillos, a veces es mejor leer la posicin con una encoder en
contacto directo con la carga.
La utilizacin de este tipo de encoder adicional, se conoce como full-close loop
feedback, aunque dependiendo del fabricante puede tener nombres comerciales
diferentes.
Encoder rotativo y encoder lineal
En gran numero de ocasiones el movimiento rotativo del motor se traduce en un
movimiento lineal.
A raz de que que los ciclos de trabajo se han vuelto ms exigentes (mayor
productividad) y la demanda de precisin (mayor calidad), cada vez sn ms las
aplicaciones que integran motores lineales en lugar de utilizar motores rotativos
que posteriormente pirden eficiencia y precisin al transformarse en un
movimiento lineal, p.e. tornillo sin fin.
Cabe decir que hay dos grandes familias de motores lineales:
Motores lineales montados sobre guas : El motor (o los imanes) se
desliza sobre guas (sliders) a gran velocidad varios m/s, con aceleraciones de
varios g y con una precisin sub-micra. (No se trata de cincia ficcin, esta
tecnologa existe y ha evolucionado mucho en los ltimos aos: Si teneis alguna
de TV pantalla plana 32 o ms en casa, con toda seguridad os digo que se han
utilizado este tipo de motores tanto en su fabricacin como en su control de
calidad, demasiados pxels y demasiada precisin para un motor convencional),
otro mercado habitual para este tipo de motor es el del semi-conductor y, en los
ltimos aos est generalizando su uso en la fabricacin de paneles

fotovoltaicos. En los ltimos tiempos se estn empezando a utilizar este tipo de


motores en otros sectores, como el embalage, la manipulacin y conformacin
de objetos, etc, el motivo es claro: calidad y velocidad!
En configuraciones ms avanzada estos motores pueden trabajar cooperando
sobre la misma gua, o en tandem paralelo p.e. puentes grua, o en
conformaciones cartesianas XY, XYZ, XYZ+R (R=motor rotativo)
Motores lineales con eje cilndico (motores lineales de fuerza): Existen
varios nombres comerciales para este tipo de motor, pero en mi opinin la
caracterstica comn a todos estos motores es que reemplazan la funcin de un
cilndro pneumtico. Este tipo de motor acostumbra a tener un eje cilndico en
su interior, se trata efectivamente de un motor lineal, y su caracterstica
principal no es tanto la precisin como la fuerza que pueden desarrollar. Este
tipo de motores tiene un recorrido (strocke) limitado comparado con el primer
tipo de motores que pueden alcanzar varios metros de longitud.
Los encoders lineales son la evolucin de las escalas lineales, ahora ya no
hablamos de milmetros sin de sub-micras de precisin, este tipo de encoders
sn utilizados en motores con guas, (los motores lineales cilndicos
acostumbran a tener su propio encoder integrado).
Estos encoders tienen una serie de marcas equidistantes que un sensor ptico o
magntico puede leer.
Resulta interesante el caso de los encoders lineales semi-absolutos o de marcas
codificadas. Este tipo de encoder es muy ingenioso, ya que utiliza marcas no
equidistantes, estas estn separadas siguiendo un patron numrico
(generalmente dos series numricas superpuestas), de manera que la distancia
entre dos marcas es nica, por tanto leyendo dos marcas consecutivas podemos
saber la posicin absoluta. Su utilizacin resulta muy interesante en guas
lineales de varios metros, o p.e, cuando varios motores colaboran en una misma
gua lineal.
Mi intencin era hablar de protocolos de encoder, pero creo que ser mejor
hacerlo en otro artculo.
En pocas palabras, tenemos sistemas de realimentacin de posicin (velocidad)
que en funcin de :

Su principio fsico de funcionamiento sern:


-Resolvers (analgicos)
-Encoders (digitales)
Su capacidad de reverenciarse:
-Incrementales
-Absolutos (Absolutos multi-vuelta) ya sea mediante mecnica o electrnica con
batera.
La naturaleza del motor a utilizar:
-Rotativos
-Incrementales
Segn el protocolo:
-(Por su extensin lo trataremos en otro artculo).

Entradas y Salidas (E/S) de un servo


Publicado el 14 septiembre, 2011 por Motion Control

Servo: E/S de control


Dependiendo del tipo de servo del que se trata (controlado por pulsos,
controlado por consigna analgica, controlado por protocolo de red,) y por
supuesto dependiendo del fabricante, un servo tendr ms o menos
Entradas/Salidas de control.
El siguiente esquema muestra un OMRON G5, pero la mayora de lo aqu
explicado ser aplicable para servos de cualquier fabricante.

ENTRADAS DIGITALES

Entrada de Habilitado (Enable)

(Enable dependiendo del frabricante), es una entrada que puede estar


presente (o no., p.e. en servos comandados via red) y sirve para habilitar la
etapa de potencia del servo, si esa entrada no est cableada (o activa via red)), el
servo no ser habilitado (no tendr potencia) y no podr moverse.

Los lmites de carrera (Overtravel)

(Positive and Negative overtravel) son dos entradas, una para el lmite de
carrera positivo y otra para el lmite de carrera negativo.

Se cablean a sensores externos al servo: p.e. un inductivo o fotoclula que


servirn para delimitar el area de trabajo del eje. El eje no podr trabajar fuera
del area definida entre los dos sensores cableados, pudiendo este por lo
general entrar en fallo, bloquearse o slo admitir un sentido de
funcionamiento inverso al movimiento que propici la deteccin del lmite de
carrera
El uso de estos sensores tiene mucho sentido en ejes que realizan un
desplazamiento finito, por ejemplo un husillo Por lo general no tendr
sentido definir estas entradas en un eje infinito (rotativo), por ejemplo una
cizalla rotativa.

Nota.- Con frecuencia se pueden tambin habilitar lmites de carrera por


software (no son entradas fsicas), por lo general se utilizarn como precaucin
adicional, o por comodidad (configuracin via HMI, etc).

Entradas de registro

Las entradas de registro (latch, touchpobe, etc dependiendo del fabricante)


son entradas rpidas, que se utilizan para desencadenar un evento en el drive.
Por lo general, este evento ser la captura (registro) de la posicin del eje, (por
ejemplo para utilizarla con posterioridad para una correcin de marca, etc)

Estas entradas son ultrarrpidas, ya que buscan capturar la posicin del eje con
la mayor precisin posible (y quin mejor que el propio eje para realizar esta
tarea con la mxima precisin? estamos hablando de microsegundos!).

Por tratarse de entradas ultra-rpidas acostumbran a no estar filtradas por lo


que no es recomendable cablear elementos como rels mecnicos, pues son
demasiado lentos y una potencial fuente de ruido elctrico.
Normalmente, un servo tendr ms de una entrada de registro, para poder
calcular diferencias de posicin (por ejemplo para corregir rodillos de una
impresora tipo Offset).

Entrada de proximidad de Origen y Origen (Home)


La entrada de proximidad puede utilizarse opcionalmente en combinacin con
una entrada de registro o la marca Z del encoder para definir una secuencia
de bsqueda de origen.

La bsqueda de origen acostumbra a realizarse en en dos Fases:


Fase 1: En una primera etapa de aproximacin a la entrada de proximidad, el
eje se desplaza a una velocidad lenta hasta detectar la entrada de proximidad de
Origen, una vez detectada esta el eje pasar a la Fase 2.

Fase 2: En este estado, el eje se mover a una velocidad muy lenta esperando
detectar una entrada rpida de registro o la marca Z del encoder.
La utilizacin de la entrada de origen, permite un acercamiento a una velocidad
ms alta hasta la Fase 2, que por lo general se realizar a muy poca velocidad
paa garantizar precisin.
Esta secuencia bsica, se puede completar (si el controlador o servo lo
permiten) incluyendo seales adicionales a la maniobra, p.e. cmo los lmites de
carrera ,etc..

Entradas de propsito general

Estas entradas acostumbran a ser parametrizables por el servo y, en ocasiones


pueden utilizarse como E/S de propsito general para el controlador del servo,
p.e. via EtherCAT.

SALIDAS DIGITALES
Alarma

Tpicamente el servoamplificador tendr una salida de alarma que podr


utilizarse para reportar el estado del mismo hacia su controlador (si no se
dispone de red de datos), o por ejemplo para deshabilitar el servo en caso de
alarma.

Salidas de propsito general

Estas salidas acostumbran a ser configurables (por ejemplo para indicar que el
servo est a velocidad, o en posicin, etc) y en algunos casos pueden ser
utilizasdas como salidas de propsito general del controlador.

ENTRADAS ANALGICAS
Consigna y lmites

En caso de servos analgicos o de pulsos, se acostumbran a utilizar entradas


analgicas, que en combinacin nos darn la consigna de velocidad y el lmite de
par o la consigna de par y lmite de velocidad, acostumbran a ser configurables

SALIDAS ANALGICAS
Monitores

Los monitores analgicos son salidas configurables que se utilizan para


monitorizar, por ejemplo velocidad, par, etc
Resumen
Por norma general un servo tendr las E/S anteriormente mencionadas,
pudiendo diferir estas en funcin del fabricante
Estas E/S son propias del servo por lo que por lo general sern mucho ms
rpidas que otras seales de campo. (p.e. entrada de registro).
Las funciones bsicas del servo (excepto en buses de motion) se comandan via
combinacin de E/S discretas del mismo. (p.e. un servo con posicionamiento
incluido o indexer podr comandarse utilizando esas entradas).

E/S en el servo o en el PLC?


Actualmente existen buses de mquina que permiten un refresco muy rpido y
sncrono de una red, lo que da pie a la utilizacin de E/S distribuidas del PLC
para control de ejes.
Pese a que estos buses de campo son cada vez ms rpidos y precisos, con
anchos de banda de 100 Mb o ms, mecanismos de compensacin del jitter
(fluctuacin del ciclo), y mecanismos de sincronizacin basados en relojes
distribuidos , la mayora de los servoaccionamientos en red, tienen entradas
locales, ya que estas pueden trabajar (sin necesidad de compensaciones) al ciclo
del servoaccionador , siendo este generalmente de unos pocos microsegundos.

PAR!
Publicado el 15 abril, 2010 por Motion Control

Lo que mueve el mundo es el PAR!


Esta afirmacin, as de contundente, la vi por primera vez hace unos cuantos
aos, y en aquel momento, en el que conoca ms los PLCs que el control de
movimiento la interpret como una reivindicacinde la importancia del par
frente a otra magnitud fsica, la potencia a la hora de seleccionar un motor.
Incluso en la actualidad, los anuncios de automviles insisten en
convencernos de la compra de tal o cual coche por los caballos que tiene, pero
para nada nos hablan del par ni de las RPM del motor, y es que sin las curvas
de gancho nunca sabremos si ese motor es el de un vlido o el de un
tractor.
Por suerte en nuestro mundillo de la automatizacin industrial, todo el
mundo tiene ya claro que hablar de un motores hablar de par y RPM, y los
KW no son ms que una consecuencia :
Potencia_mecanica = Par x velocidad_angular.
Hoy desde la distancia la frase lo que mueve el mundo es el par tiene,
para m una segunda lectura y es que en ltima instancia lo que un
servocontrolador regula es el PAR y regular bien el par es la base de toda
regulacin.
Tuning
Lo que esperamos obtener despus del tuning (afinamiento) o ajuste es la
mejor reaccin del servo frente a un cambio en la consigna.
La consigna puede ser:

Un comando de par (lo que mueve el mundo)

Un comando de velocidad (este a su vez generar un comando para el lazo de


par.

Un comando de posicin (este a su vez generar un comando para el lazo de


velocidad)

Imaginemos que hacemos un doble nudo en un zapato el primer nudo debe


de estar bien apretado, si no es as por mucho que apretemos el segundo
nudoel zapato no quedar bien ajustado
En el caso de un servo pasa lo mismo el lazo de par debe quedar
perfectamente ajustado, para que un buen ajuste del lazo de velocidad tenga
efecto. Anlogamente el lazo de velocidad debe de estar bien ajustado para que
un buen ajuste en el lazo de posicin tenga efecto.
Para poder ajustar el lazo de par, es imprescindible que el servoamplificador
tenga modelizado el motor que va a utilizar, esto es, que conozca sus
parmetros elctricos y mecnicos.
Normalmente esto no supondr un problema, puesto que el fabricante del
amplificadorser el mismo que el del motor, por lo que de algn modo u otro el
amplificadortendr toda la informacin que necesita del motor. En
servosistemas de gama media y alta suele existir un protocolo de datos entre
motor y amplificador, este protocolo no slo suministra informacin sobre la
posicin del motor sin que al iniciar la comunicacin transmite toda la
informacin necesaria para el control al servoamplificador.
Fantstico! Esto de ajustar un motor es pan comido
Sera pan comido si no fuera porque fijada al eje del motor siempre
tendremos una carga (load), de otro modo para que queremos el motor?
En definitiva nuestro objetivo ser acelerar y decelerar la carga del motor
(suministrar ms o menos amperios) para de este modo poder regular su
velocidad y en ltima instancia su posicin.
Cmo regular la aceleracin de una carga?
F= m a
Pero en caso de cargas rotativas (siendo los motores rotativos los ms
habituales) tenemos que:

Fuerza

Par

Masa

Momento de Inercia

Aceleracin

Aceleracin Angular

Y la relacin entre par (T), momento de inercia(J) y aceleracin angular (a):


T= J a
En la anterior ecuacin, lo que a priori se desconoce es el Momento de
inercia J.
El momento de inercia depende de la geometra y la distribucin de la masa:
Tpico es el ejemplo de la patinadora girando sobre se misma y que regula su
velocidad en funcin de lo separados que tenga sus brazos del cuerpo (est
variando el momento de inercia!)
Si el servoamplificador no utiliza el valor correcto para el momento de inercia
en sus clculos le ser imposible entregar el par adecuado para la aceleracin
demandada porlo que el control del motor ser malo.
El momento de inercia es por tanto un parmetro crtico para el ajuste de un
sistema servomotor rotativo.
Cmo saber momento de inercia?
El momento de inercia de la carga es un dato que se ha tenido en cuenta a la
hora del dimensionamiento y eleccin del motor, (en algn momento tendr que
hacer un post sobre dimensionamiento de motores) ,por lo que en principio
es un dato conocido.
Y si por algn motivo se desconoce el dato o su clculo no es trivial (muchas
aplicaciones tienen momentos de inercia variables: ejemplo un desbobinador, a
medida que el rollo se hace ms pequeo tanto su radio como su masa
disminuyen).
La mayora de los servos tienen la posibilidad de estimar la inercia durante el
proceso de autotuning, o en tiempo real durante todo el tiempo de operacin.

En ocasiones , lo que se acostumbra a utilizar no directamente el valorde la


inercia sino la relacin de inercias entre motor y carga. Se trata de un valor
porcentual que refleja la diferencia en momentos de inercia entra motor sin
carga y motor con carga.
La relacin de inercias es un valortan importante para la regulacin del motor
que en el caso de algunos servos (japoneses generalmente) , acostumbra a ser el
parmetro ms importante de todos ya que si este est bien calculado, se
pueden llegar a determinar las ganancias de los lazos de par, velocidad y
posicin en funcin de tablas de rigidez (stiffness or rigidity) del sistema.
Ganancias y Rigidez del sistema.
Una vez conocida la relacin de inercias del sistema (en todo momento), el servo
sistema podr determinar el par necesario (corriente de par), para acelerar o
decelerar el motor en funcin de las consignas de velocidad necesarias para
completar su perfil de posicin.
Esta regulacin se realiza con tres lazos: par, velocidad y posicin, en cascada y,
cada lazo tendr su sistema de ganancias y filtros, en funcin de cada servo.
Cuanto mayor sea el ancho de banda del sistema, mayores sern las ganancias
(armonizadas y normalizadas) que se podrn aplicar.
El ancho de banda del sistema depende de la rigidez del sistema. Un sistema
rgido se podr regular correctamente en un rango de frecuencias mayor que un
sistema poco rgido.
Ejemplo:
En un sistema con sus componentes rgidamente unidos, un desplazamiento X
se traducir en un desplazamiento Y en su otro extremo, siendo Y=X para
cualquier
frecuencia
de
excitacin
de
X
En un sistema poco rgido, un desplazamientoX se traducir en un
desplazamiento Y siendo Y un valor variable en funcin de la frecuencia de
excitacin

En el caso de un servo sistema, algunos fabricantes han sido capaces de definir


tablas harmonizadas y normalizadas de ganancias de los lazos de regulacin
del servo en funcin de la rigidez del sistema.
Esta es la filosofa de la mayora de fabricantes japoneses, para los que el
tuning de un servosistema, se basa en modelizar el sistema en funcin de las
caractersticas del motor, la relacin de momentos de inercia y, la rigidez del
sistema.
Los resultados de este tipo de tuning son excepcionalmente buenos.
Cabe decir que en paralelo existen un montn de algoritmos de modelizacin,
control de vibraciones de la carga , control de resonancias, control de
perturbaciones, control de la variacin de inercia, feedforwards, etc
Pero todos estos algoritmos, que marcan la diferencia, forman parte del
knowhow de cada fabricante.
Si no se ha trabajado con servosde este tipo, tal vez resultar curioso que en
definitiva el tuning se limite a calcular el valor de relacin de inercias y rigidez
del sistema.
Cierto es que siempre es posible modificar ligeramente manualmente los
valores de ganancias para acabar de afinar el sistema al gusto de cada uno.

Los primeros controles de posicin que utiliz, hace ya algunos aos (y


muchos de los que hay hoy en da en el mercado) no utilizan tablas de rigidez en
el proceso de autotuning, se basan en cambio en una serie de interaciones
obteniendo como resultado de cada iteracin una mejor aproximacin de los
valores ideales de ganancia de los distintos lazos
Qu mtodo es mejor?
Creo que no hay una respuesta clara para esa pregunta.
Ambos mtodos deberan concluir en un control fino del motor y, esto
depender mucho de la calidad del servo y lo bueno que sea la persona
encargada de hacer el ajuste del servo.
Cmo valorar un tuning?
Para saber si un servo est bien ajustado o no hemos de fijarnos en la
bondad del mismo a la hora de seguir una consigna, cuanto ms se ajuste la
respuesta del mismo a la consigna, mejor ajustado estar. Para ello podemos
graficar el perfil comandado vs. La respuesta del motor, o.. directamente el error
de seguimiento.
Una buena herramienta es un anlisis frecuencia del mismo (Diagrama de
Bode), idealmente deberamos ver una linea de ganancias horizontal, que nos
indicara que la ganancia no vara para ninguna frecuencia, esto es
imposible, al aumentar la frecuencia el control del motor resulta ms difcil,
hasta llegar a un punto (frecuencia de corte, (coincide con una perdida en
ganancia de -3 dB) en la se considera que el servo ya no responder de una
forma deseable a la consigna demandada.
En todo caso, no debemos perder de vista que el mejor tuning no es siempre lo
mejor para nuestra aplicacin, por ejemplo aplicar una rigidez elevada
(ganancias altas) a un sistema mecnico que no alcanza dicha rigidez, pese a que
eventualmente pueda obtener un error de seguimiento mnimo tendr como
consecuencia una sobreactuacin del servo, vibraciones no deseadas, esfuerzos
mecnicos y en definitiva podra derivar en inestabilidad en el sistema.
Sentido comn hay que apretar pero no ahogar

Un sistema con poca rigidez es por ejemplo un sistema con transmisiones


elsticas (p.e. servos rotativos en una cinta transportadora de goma).

Un sistema con alta rigidez es porejemplo, un sistema de motor lineal (no todos
los motores son rotativos!) que por su naturaleza y rigidez tiene unas
prestaciones dinmicas imposibles para un motor rotativo.

pulsos, grados, milmetros: Escalado de unidades


Publicado el 29 diciembre, 2010 por Motion Control

Uno de los temas que en ocasiones nos hace perder ms el tiempo es el el


escalado, o conversin de unidades de encoder (o resolver) a unidades de
usuario (o de ingeniera), especialmente cuando tenemos mecnicas o
unidades con relaciones numricas digamos que poco agraciadas.
Los sistemas de realimentacin de posicin pueden se de muchos tipos, con
diferentes construcciones mecnicas, pricipios fsicos, con diferentes
funcionalidades y protocolos: A/A, B/B, Z/Z, incremental, absoluto, marcascodificadas, SSI, Endat, Tamagawa, lineal, rotativo, encoder, resolver, etc..
(dedicaremos un (o ms de uno) post especfico a este tema)
Pero al final.. sea cual sea la naturaleza del sistema de realimentacin, acabar
traducindose en un valor de posicin del motor que el motion controller
utilizar para por ejemplo calcular el error de seguimento (bondad del perfil de
movimiento) o por ejemplo para juzgar si se ha llegado a la posicin
comandada.
El valor que el servo sistema entrega al controlador de movimiento acostumbra
a ser un valor en cuentas de encoder, es decir, un valor discretizado en funcin
del nmero de bits de resolucin del encoder.
Imaginemos un motor con un encoder de 13 bits de resolucin. En este caso
estamos hablando de un encoder que es capaz de de dividir (discretizar) la
posicin del motor dentro de una revolucin en 8192 pulsos (2^13=8192).
Pero en general nos resultar ms agradable trabajar en unidades de usuario,
p.e. una una revolucin son 360, no 8192 pulsos, hay que tener en cuenta
que existen encoders de 16,17,18,20 y ms bits! por lo que sera deseable
poder trabajar en unidades de usario, ms humanas, como p.e. los grados,
revoluciones, etc
La conversin entre cuentas de encoder y unidades de usuario es sencilla por
ejemplo para el caso del encoder de 13 bits (8192 pulsos por revolucin) bastara
con aplicar la siguiente conversin:

Conversin de 360 a 13 bits

Por tanto si por ejemplo queremos movernos 100 el controlador enviar un


comando de posicin al servosistema de (100 x (2^13)/360) y a su vez el
controlador convertir la realimentacin del motor (codificada en 13 bits) a
grados aplicando la relacin inversa (360/2^13).
Con toda seguridad el lector se habr percatado de que 360/2^13 no da como
resultado un nmero entero por lo que en teora a cada revolucin se
acumular un error de clculo de sta.
Con toda seguridad el error propagado por la divisin no entera se traducir en
un error en la estimacin que el controlador realiza de la posicin del motor, es
decir por ejemplo en el caso de un eje rotativo que trabaje indefinidamente
y que tenga un error de clculo de un pequeo pulso por vuelta, al cabo de 8192
revoluciones acumular un error de 1 revolucin!. (El caso de un eje lineal con
recorrido finito pasa ms desapercibido).
Imaginemos ahora que para ms inri (y como acostumbra a ocurrir en la vida
real) entre el motor y la carga tenemos reductores mecnicos, con relaciones de
reduccin que an nos generen valores ms feos
Resulta claro que el hecho de trabajar con decimales es un problema

SOLUCIN:
En la mayora de servosistemas, es posible definir una relacin de pulsos de
entrada del controlador y pulsos de salida hacia el motor (Gear Ratio, Encoder
Ratio,)

Esta relacin se puede definir en el propio servo, en el controlador, o en


ambos
Volviendo al ejemplo anterior, tenemos que:
Unidades de usuario 360 por revolucin
Pulsos por revolucion son 8192 (2^13).
Por tanto, lo que el servo (o el Motion controller) deber hacer es un manejo de
las unidades y los pulsos sin errores de clculo. y en todo momento realizar las
acciones o correcciones necesarias para asegurar que 8192 unidades de encoder
correspondan con 360, para ello, muchas veces lo que el dispositivo realiza son
correcciones constantes teniendo en cuenta el resultado de la division entera
MOD , y el RESTO.

Muchas veces resulta til asignar ste trabajo al Servo (cuando el servo tiene
parmetros para el gear ratio) de modo que el controlador trabajar con
conversiones de unidades enteras sin decimales.
En otras ocasiones ser tambin posible definir en el propio controlador el gear
ratio del eje.
Sea como fuera, lo que no es recomendable es definir escalados de unidades con
decimales. Para ello, la mayora de controladores disponen de un par de
parmetros en los que se define la relacin entre cuentas de encoder y unidades
por vuelta.

Qu hacer con las transmisines mecnicas?


Se puede dar el caso de tener un encoder de 13 bits (8192 pulsos por vuelta) y
un engranaje con una relacin 1:3 entre motor y carga.

Existen dos estrategias:


-Una opcin es incluir el reductor en la relacin de cuentas de encoder en el
Controlador:
Cada (3 x 8192) cuentas se corresponde con 360 de revolucin de la carga
-Otra opcin (si el servo lo permite) es insertar la relacin 1:3 en el el gear ratio
del servo.
RESUMEN
En Definitiva, lo realmente importante es que seamos conscientes de que
muchos de los problemas que puedan aparecer en una aplicacin de control de
ejes se deben a errores en la definicin de la relacin entre unidades de usuario
y cuentas de encoder, por tanto debemos ser extremadamente cuidadosos en el
momento de establecer dicha relacin en el servo y el controlador.

Programando como es debido


Publicado el 15 febrero, 2012 por admin

Los bloques de funcin para control de ejes de PLC open tienen todos en comn
una misma estructura de parmetros de entrada, parmetros de salida y
parmetros de Entrada y Salida.
Entender cmo se comportan y para qu sirven los parmetros de E/S de un
bloque PLC open, facilitar el trabajo posterior de programacin.
Un bloque de funcin PLC open est montado sobre el estndar IEC-61131-3.
Dicha norma precisa que un bloque de funcin puede ser invocado en un
programa mediante una instancia, la instancia y sus subelementos es en
definitiva la variable que contiene toda la informacin relativa a la invocacin
del bloque de funcin.
En el ejemplo de la imagen Origen Disco es la instancia del bloque de funcin
MC_Home

Los bloques PLC open necesitan de una o ms entradas para la referencia del
Eje (Axis). Estos parmetros son de un tipo de dato AXIS_REF. y definen el eje
o ejes sobre los que acta el bloque de funcin.
La estructura de datos AXIS_REF, es diferente para cada fabricante, puesto que
PLC open define el tipo de dato AXIS_REF comno especfico del fabricante.
Un bloque de funcin se puede ser de dos tipos:

-Trabajar por nivel (Enable)


-Trabajar por flanco de subida (Execute)
Los bloques de funcin que trabajan por nivel acostumbran a estar relacionados
con funciones del estado del eje, como por ejemplo (MC_Power) que sirve para
habilitar (Enable=TRUE), o deshabilitar (Enable=FALSE) la potencia de un eje.

Los bloques de funcin que se activan por flanco, acostumbran a estar


relacionados con acciones, que se ejecutan en uno o ms ciclos de escn del PLC,
como por ejemplo (MC_Home) que iniciar una secuencia de bsqueda de
origen para un eje.
Los parmetros de salida del bloque de funcin nos sirven para monitorizar el
estado del bloque y, poder as utilizarlo en otras lneas de programa (en el
ejempo de la imagen, se utiliza el parmetro de salida Status de MC_Power
para encadenar una secuencia de bsqueda re origen.

Descripcin de los parmetros de salida de un bloque:


Done (Hecho): Indica que el bloque de funcin a finalizado satisfactoriamente
su cometido (por ejemplo que la secuencia de bsqueda de origen ha
terminado). Este tipo de salida est ligada a bloques de funcin que se activan
con flanco de subida (execute)

Status (Estado): Indica el estado de un bloque de funcin, por ejemplo en el


caso de MC_Power si el eje tiene potencia o no. Este tipo de salida est ligada a
bloques de funcin que se activan por nivel (enable).
Busy (Ocupado): Indica que el bloque de funcin est ejecutando su cometido
(previamente fue activado por Enable o Execute) pero que an no ha podido
terminar su trabajo (Done/Status)
Error (error): Como su nombre indica, el bloque de funcin (no
necesariamente el eje fsico), ha tenido un error por lo que jams podr
completar su trabajo (Done/Status). Ante un error ser necesario subsanar el
problema y reiniciar el bloque de funcin.
Aborted (Abortado): En realidad no est indicando ningn problema,
simplemente indica que otro bloque de funcin ha tomado el control del eje, por
lo que su trabajo ha sido abortado.
ErrorID (Identificador de Error): Facilita un cdigo de error del bloque en
caso de que ste se produzca (Error).
Existe una regla de oro para estas salidas Booleanas del bloque de funcin y, es
que estas son mutuamente exclusivas:

En otras palabras, definen un diagrama de estados del Bloque de Funcin, y por


tanto las reglas del juego a la hora de encadenar ste con otros bloques de
funcin o comandos del PLC.

En Realidad existen ms entradas y salidas, como por ejemplo: Buffer y Active,


que se utilizan para la transicin entre bloques, pero sern explicadas en otro
post.
El pulso Execute
Los bloques de funcin tipo Execute se activan automticamente con el flanco
de subida, es decir no precisan de una funcin external al propio bloque para
detectar el flanco.
La entrada Execute no necesita ser mantenida a verdadero (TRUE) para que el
bloque se ejecute (A diferencia de la entrada Enable que desactiva el bloque
inmediatamente).
En cambio s que existe una diferencia para el estado de las salidas del bloque
dependiendo de si la entrada Execute est mantenida o no.
-Las salidas que indican el estado final del bloque de funcin permanecern
activas indefinidamente mientras la entrada Execute sea cierta (TRUE), pero
caern un ciclo despus (Excepto la seal de error) de que la seal Execute
caiga a (FALSE).
El siguiente ejemplo muestra quan importante es esta consideracin a la hora de
programar.
Cuando el cdigo como el que se muestra a continuacin se ejecuta, la salida del
PLC Glue (goma) slo estar activada durante un ciclo de escn (tal y como
muestra la traza ), ya que est enclavada con la salida Move_S0.Done del bloque
de funcin.
En un controlador de altas prestaciones como el OMRON Sysmac NJ-501 que
opera con naturalidad por debajo del milisegundo.., el dispensador de goma
jams llegar a disparar producto cuando el eje llegue la posicin indicada.

En el siguiente post se comentarn las transiciones entre bloques establecidos


por el BufferMode de PLC open

Vous aimerez peut-être aussi