SUMO AUTOMATION

Blog de divulgación técnica. Artículos basados en FAQs referentes al campo de la automatización industrial.

miércoles, 26 de enero de 2022

MOTION - Jerk

Motion control
Todo aquel que haya desarrollado aplicaciones de motion control se habrá encontrado con esta palabra, pues es un parámetro requerido en la mayoría de FBs para el control de movimiento en servoaccionamientos.

El jerk, se puede traducir como "tirón" o "sacudida".
Matemáticamente se define como la derivada de la aceleración. Es decir, la velocidad con la que cambia la aceleración.
El jerk es a la aceleración lo que esta es a la velocidad...

Muchos sabemos más o menos a que hace referencia, pero en ocasiones se desconoce en que consiste realmente...
Por ejemplo, en que unidades trabaja, que valor debe tomar, los efectos que produce, etc.

Este artículo presentará esta magnitud física de una forma más descriptiva, detallando como se puede utilizar para nuestros perfiles de movimiento en aplicaciones de motion control.

¿QUÉ ES REALMENTE?

De la misma forma que la aceleración determina en cuanto tiempo alcanzaremos una velocidad, el jerk determina en cuanto tiempo alcanzaremos la aceleración deseada. 
Entonces, el "perfil de aceleración" de un movimiento dependerá del jerk.

En un eje, el jerk suele expresarse en unidades/s^3
Si, por ejemplo, trabajamos con un eje en mm...
La velocidad se mediría en mm/s, la aceleración en mm/s^2 y el jerk en mm/s^3. 

Conceptualmente, podemos entender el jerk como el impacto que sufre la mecánica ante cambios de velocidad. 
Podemos decir que contra más bajo sea su valor mejor. Pues más se suavizará la dinámica.


¿CÓMO FUNCIONA?

> Partiremos de un ejemplo muy común en control de movimiento... Un perfil de velocidad trapezoidal:

Motion control
Consideremos Tiempo1 como tiempo para llegar a velocidad deseada y Tiempo2 para llegar a la aceleración...
·Sabemos que: 
Aceleración = Velocidad / Tiempo1
·Entonces: Jerk = Aceleración / Tiempo2
Vemos que este perfil de movimiento requiere una aceleración "instantánea" (onda cuadrada). Siendo así, teóricamente, el Tiempo2 sería nulo y el jerk infinito...

De todos modos, un eje nunca tiene una dinámica ideal... Supongamos que la aceleración para alcanzar la velocidad en 0.3s es de 5000mm/s^2. Si el servomotor puede llegar a esa aceleración en 0.00001s. Entonces, el jerk sería de 500000000mmm/s^3. Muy alto.

> La dinámica del ejemplo anterior es evidente que supone un golpe fuerte para la mecánica, pero el jerk nos permite "acelerar la aceleración". Lo que suavizaría ese tirón.
Por ejemplo, podemos lograr fácilmente un perfil de velocidad con curva en S:

Motion control
En este caso, queremos que se llegue a la aceleración deseada en 1/3 del tiempo. 
Pero, para que la velocidad se alcance en el mismo tiempo que con el perfil trapezoidal
, la aceleración máxima debe ser superior a la del caso anterior en un 150%.
Entonces, la aceleración será una onda trapezoidal, pero tendrá la misma área que la onda cuadrada del caso anterior.

·Siendo así: Aceleración = 1.5 x (Velocidad / Tiempo1)
·Por lo que: Jerk = Aceleración / (Tiempo1 x 1/3)

En el primer caso, requeríamos una aceleración 5000mm/s^2 para alcanzar la velocidad en 0.3s... Con la curva en S, la aceleración aumentaría a 7500mm/s^2, pero el jerk pasaría a ser de 75000mmm/s^3. Mucho más bajo.

> Aún se podría suavizar más el impacto (al máximo)... Mediante una aceleración con forma de onda triangular. Es decir, consiguiendo que la aceleración nunca fuera constante.
En este caso, se tardaría la mitad del Tiempo1 en acelerar y la otra en desacelerar (1/2).
El resultado sería un perfil de velocidad con la curva en S más pronunciada.
·Para ello: Aceleración = 2 x (Velocidad / Tiempo1)
·Entonces: Jerk = Aceleración / (Tiempo1 x 1/2)
Véase que se trabajaría con un jerk todavía más bajo. De hecho, el mínimo con el que podemos asegurar que se alcance la velocidad en el tiempo deseado... Pero alerta, se requeriría llegar a una aceleración que duplica a la del perfil de velocidad trapezoidal (200%). 

¿PRECAUCIONES?

Por defecto, en algunos FBs motion no es estrictamente necesario configurar jerk. Siendo así, lo normal es que se utilice el valor máximo de jerk que el eje es capaz de dar.
Entonces, estaríamos hablando de un perfil de velocidad trapezoidal. Y, el repetido impacto de la mecánica al acelerar/desacelerar, podría provocar un estrés en la mecánica que derivaría en un desgaste prematuro de la misma. 

Ahora bien, un valor muy bajo de jerk también puede ser contraproducente. Pues, en ese caso, puede no llegarse a alcanzar la aceleración necesaria. 
Una onda de aceleración triangular es el límite. Con un jerk superior al de ese caso, el eje no podría llegar a la velocidad consignada en el tiempo deseado. Es como si, directamente, bajáramos el valor de la aceleración. 

Se debe tener en cuenta que suavizar la dinámica con el jerk tiene un precio... Como se ha visto, se requieren mayores aceleraciones para mantener los tiempos del perfil de velocidad. Eso implica picos de par directamente proporcionales al aumento de la aceleración.
Es importante tener eso en cuenta cuando se dimensiona el servoaccionamiento. 

En algunos equipos, se emplea el smooth (suavización) en lugar del jerk. Básicamente es el concepto contrario al jerk y suele expresarse en tanto por ciento. 
Con una onda de aceleración cuadrada el smooth sería del 0%, con una onda trapezoidal del 50% y con una onda triangular del 100%.

lunes, 24 de enero de 2022

COMMS - Protocolo IO-Link

El protocolo IO-Link es un estándar de comunicaciones (IEC61131-9) utilizado para la conexión de sensores y actuadores.

Comunicaciones industriales

La sensórica tradicional se basa en el envío de señales digitales/analógicas, sin proporcionar ninguna otra información. No obstante, la tecnología IO-Link permite la conexión de sensores y actuadores capaces de producir y consumir datos adicionales de interés para el sistema.
Comunicaciones industriales

Por ejemplo, un sensor fotoeléctrico estándar solo tiene dos estados lógicos (encendido o apagado/desconectado).
En cambio,
 una fotocélula IO-Link también podría informarnos de, por ejemplo:
- Calidad de detección
- Detección analógica (distancia, color...)
- Modo de operación
- Tiempo de funcionamiento
- Detección de desconexión
  etc.


Estas características hacen del IO-Link una tecnología ideal para la
integración en soluciones IT. Pues, en ciertas máquinas, los datos que puedan proveer estos sensores y actuadores permiten la toma de decisiones a nivel de producción (mantenimiento preventivo, análisis y estadísticas, etc).
Se trata de una solución para la digitalización (IoT) en la capa de "Edge computing", dado que los datos recopilados son utilizados onsite (en la programación de la máquina).

En el presente artículo se presentará este protocolo, detallando como funciona y como se debe implementar dentro de un sistema automatizado.


¿
ESPECIFICACIONES?

El IO-Link es un protocolo de comunicación serie con una arquitectura maestro-esclavo, donde los eslcavos (sensores/actuadores) se conectan a un único maestro con el que intercambian los datos 
La unidad maestra IO-Link se conecta como unidad subordinada al PLC. Normalmente en el rack del mismo o a través de buses de campo (p.e. Profinet, EtherCAT, EtherNet/IP, etc). Por lo que podemos encontrar más de un maestro en una misma arquitectura de máquina.

Comunicaciones industriales

En esta tecnología, la conexión entre maestro y esclavo se realiza punto a punto (aunque existe la versión inalámbrica). Y se requiere de un cable estándar para sensor, de 3 hilos.
El maestro incorpora varios puertos para la conexión de los dispositivos. Lo común es trabajar con conectores estandarizados M5, M8 y M12.
Pero hay unidades que admiten el cableado simple a bloque de terminales.

Comunicaciones industriales
Se debe tener en cuenta que este protocolo solo admite distancias de hasta 20 metros.

La comunicación entre maestro y esclavo es bidireccional y opera a 24Vdc.
La transmisión IO-Link suele tomar 400us, a una velocidad de 230kbaud.

¿CÓMO FUNCIONA?

Comunicaciones industriales
Los puertos en el maestro IO-Link admiten distintos modos funcionamiento. Estos son:
- Modo IO-LinkEl puerto se utiliza para comunicaciones con protocolo IO-Link.
- Modo DI: El puerto trabaja como una entrada digital convencional.  
- Modo DQEl puerto actúa como una salida digital convencional.
-
 Modo inactivoEl puerto no se va a utilizar, por lo que se desactiva.
Entonces, en un mismo maestro se pueden configurar los puertos con distintos propósitos. No es estrictamente necesario utilizar el protocolo IO-Link, lo que permite trabajar también con sensores estándares (en modo DI y DQ).

Comunicaciones industriales
Cuando un puerto trabaja en modo IO-Link, es cuando se utiliza el protocolo en cuestión. En el autómata se debe configurar el intercambio de datos entre el maestro y el dispositivo.
En ocasiones, para compatibilizar el uso de dispositivos de terceros con un maestro IO-Link, es necesario utilizar un archivo de descripción IODD (Input Output Data Description) con extensión xml.
Define el componente y permite configurar los datos a los que tendrá acceso el maestro.


¿
DATOS INTERCAMBIADOS?

La diferencia clave entre los sensores/actuadores estándares reside en que los IO-Link pueden transmitir 4 clases de datos con el maestro. Estas son:

- Datos del procesoIntercambio cíclico
Estos datos se intercambian automáticamente en intervalos regulares predefinidos. Incluyen los valores analógicos y estados de conmutación, es decir, el grueso de los datos requeridos para el proceso.

- Estado de valorIntercambio cíclico
Se transmiten junto a los datos del proceso e indican al maestro si estos son validos o no. Esta información también se conoce esta como "Port Qualifier". 

- Datos del dispositivoIntercambio acíclico
Son datos que se intercambian a petición del maestro, normalmente desde el programa del autómata. Suelen incluir información de identificación, diagnóstico o parámetros del sensor/actuador.

- EventosIntercambio acíclico
Se transmiten cuando se dispara algún error o advertencia en el dispositivo esclavo. Normalmente, para avisar de alguna malfunción (p.e. desconexión, cortocircuito, suciedad, sobrecalentamiento, etc). 

La transmisión de los datos intercambiados cíclicamente y acíclicamente son independientes. No se ven afectadas entre ellas, por lo que las tramas críticas no tienen que esperar hasta que se envíen los datos almacenados en el buffer. .


¿
CONCLUSIONES?

Con la rápida adopción del IoT en la industria, los desarrolladores necesitan un medio para la implementación de sensores y actuadores inteligentes.
El IO-Link es un protocolo robusto y estandarizado, con una interfaz fácil de usar, por lo que se presenta como una alternativa muy potente.

La integración del protocolo IO-Link en un sistema ya existente resulta muy directa. Es una tecnología muy flexible.
Hemos visto que los maestros IO-Link pueden trabajar como subordinados en distintos buses de campo. Además, admiten el uso de sensores convencionales en sus puertos, lo que hace más sencillo el poder actualizar una instalación ya existente.

Antes de pensar en una solución IO-Link, es imprescindible comprender como y porque se quiere utilizar, y evaluar como implementar el protocolo de una forma eficiente.
Es importante saber en que dispositivos nos sería útil este protocolo y que datos son imprescindibles para la máquina o sistema... Pues, en ocasiones, la recolección de datos en exceso puede ser contraproducente.
Nos debemos centrar en una producción más eficiente, segura y con tiempos de inactividad mínimos. 

viernes, 14 de enero de 2022

HMI - Normativa CFR 21

HMI
La norma 21 CFR Part 11, comunmente conocida como CFR 21, es una regulación dictada por la FDA (autoridad para la administración de medicamentos en USA).
Los puntos destacados de esta norma se centran en los registros electrónicos. El objetivo es tener trazabilidad respecto a 
las acciones y modificaciones que se realizan en una máquina o sistema (qué, quien, cuando, etc).
También ofrece directrices mínimas para buenas prácticas de fabricación (GMP).

Siendo así, establece unos requisitos de obligatorio cumplimiento para sistemas electrónicos utilizados en ciertas industrias. Lo que incluye la maquinaria del sector farmacéutico (principalmente). Pero también médico, cosmético, de alimentación, etc.
Cada vez es una regulación más solicitado por los usuarios finales de maquinaria a nivel internacional (debe acatarlo cualquier compañía que desee vender componentes médicos o productos farmacéuticos al mercado norteamericano).

Los sistemas automatizados de dichos sectores suelen cumplir con esta regulación mediante la implementación de funcionalidades dedicadas en HMI (o sistemas SCADA). Pues son los dispositivos de la máquina más expuestos, con los que los usuarios/operarios interaccionan con el sistema. 
Por lo tanto, es importante escoger equipos y softwares de desarrollo que sean capaces de cumplir con todas las directrices que recoge la norma.

En este breve artículo, se detallarán todos los aspectos fundamentales a tener en cuenta para cumplir con CFR 21/11...

¿EN QUÉ CONSISTE?

Seguidamente se exponen los tres pilares fundamentales sobre los cuales se respalda la implementación de la CFR 21 (parte 11):

HMI
- Gestión de usuarios y seguridad:
Es una funcionalidad que la mayoría de HMIs ya integran de forma nativa, pero para ceñirse a la CFR 21 hay muchos requisitos que se deben cumplir...
Primeramente, es imprescindible que las cuentas y credenciales con las que se identifica cada usuario sean únicas.
Dichas credenciales también deben cumplir con requisitos de complejidad, bloqueo y caducidad forzada.
Evidentemente, se deben configurar los roles de cada usuario para garantizar que solo pueden acceder a las partes del proyecto para las que están autorizados. 
Los roles o permisos también pueden apilarse, de tal manera que una acción pueda requerir múltiples roles.
Se suele disponer también de firmas electrónicas para acciones que requieran una confirmación adicional de los permisos de usuario. 

HMI- Seguimiento de auditoria (Audit Trail):
Esta funcionalidad es la más representativa de la norma. Consiste en la capacidad del HMI para almacenar todos los registros y acciones de los usuarios en la máquina.
Se pueden crear y aplicar múltiples perfiles de auditoria a proyectos en función de los requisitos específicos del sistema...
A nivel de programa, se suelen utilizar objetos estándares en el proyecto del terminal (botones, entradas de datos, etc). No obstante, los objetos que resulten críticos pueden asociarse a un evento programable dentro de la pista de auditoría.
Entonces, al modificar ese botón o introducir ese dato, se almacena la información del cambio realizado (normalmente, con una prueba de validación antes de aplicar el cambio). Esto permite la posterior revisión de todas las modificaciones hechas en la máquina.
Algunos ejemplos de los eventos que suelen auditarse son el login y logout de usuarios (así como la modificación de sus credenciales), el reconocimiento de alarmas, los cambios en las recetas o configuraciones y las paradas del sistema entre otros...

HMI
- Veracidad y seguridad de los datos:  
Todas estas acciones registradas en el terminal, se tienen que almacenar de forma segura.
Normalmente el almacenamiento se hace en bases de datos o una memoria.
Los datos validados proporcionados por el sistema deben presentarse como informes de solo lectura (a veces, incluso, encriptados).
El formato de archivo más común es .pdf, pues hojas de cálculo como .csv no serían válidas dado que son editables.
También se deben configurar copias de seguridad incrementales y completas programadas regularmente para el almacenamiento de datos a largo plazo.
Normalmente, las copias deben mantenerse en una memoria independiente, fuera de la línea.

jueves, 13 de enero de 2022

PLC - Conexión remota mediante VPN

La gran mayoría de autómatas actuales incorporan puertos Ethernet compatibles con el protocolo TCP/IP. Siendo así, resulta sencillo conectarse a ellos de forma remota...
La tecnología más utilizada con dicha finalidad se conoce como Red Virtual Privada (VPN).  
La conexión suele realizarse con routers, que se emplean para conectar la red local a una red mayor (ya sea internet o una red formada por varias plantas). 

PLC

El uso de acceso remoto vía VPN resulta muy beneficioso, tanto parar los fabricantes de maquinaria como los usuarios finales.
Pues el fabricante puede ayudar a resolver incidencias y hacer diagnósticos preventivos de la máquina.
Y el usuario final puede  utilizar el acceso remoto para disponer de información en tiempo real sobre su producción. 

Este artículo tiene como objetivo presentar esta solución tan comunmente utilizada para poder entender las nociones básicas de su funcionamiento.


¿COMO FUNCIONA?

Simplificándolo, una VPN establece una conexión entre dos puntos (dispositivos, routers o redes). Esta es una conexión segura, pues requiere autenticación (usuario-contraseña y/o certificado) y los datos transferidos se cifran.
Esto hace que sea muy poco probable que terceros puedan interferir en la conexión.

En una conexión VPN (también denominada túnel VPN), encontraremos los roles de cliente-servidor o, lo que es lo mismo, iniciador-destinatario.
Se establece la conexión del cliente al servidor (normalmente mediante internet).

Los routers de las máquinas tienen la función de cliente y se conectan al servidor (o servidores) permitiéndoles la conexión.

PLCUna parte esencial de la VPN es el enrutamiento. Pues para que un dispositivo acceda a otro en remoto, necesita saber la dirección a la que enviar el mensaje si el destino no está en la red local...
Esto se gestiona en el router, que recibe un mensaje y lo reenvía a una dirección conocida hasta que se envía por internet (para que llegue al dispositivo destinatario). 
El router tiene mínimo un puerto WAN (Wide Area Network) para conectarse a internet o una red mayor, y otro LAN (Local Area Network) para la red local. Cada uno en su rango de IP...

Para las conexiones VPN existe un alto nivel de estandarización en cuanto a protocolos/implementaciones.
No existe una VPN estándar, sino varias. Las dos principales son IPSec y OpenVPN (o SSL), incluidas en la gran mayoría de productos y/o servicios más utilizados.


¿EJEMPLO PRÁCTICO?

En la siguiente imagen se presenta un ejemplo de túnel VPN y los componentes utilizados para configurarlo:

PLC

En este caso, el fabricante quiere tener acceso remoto desde su red (oficina) a la máquina en casa del cliente (planta) para poder modificar el programa del PLC si se requiere.
La red de la máquina en planta tiene el rol de cliente VPN, pues el router al que se conecta la máquina inicia la conexión. Mientras que la oficina del fabricante es el servidor, con acceso inmediato a los datos de la máquina.

En la planta vemos la máquina (red LAN) está conectada a un router que tiene conexión a internet a través de la red de la planta (WAN).
Los servicios locales son:
- La VLAN (Vitual Local Area Network) se utiliza para independizar los puertos Ethernet del router en dos distintos... Una VLAN es la red local donde se conecta la máquina (rango de IPs fijo). La otra VLAN (WAN)  forma parte de la red de planta y obtiene su dirección IP (entre otros parámetros) de un servidor DHCP que está en la red.
- El enrutamiento permite que se envíen mensajes de una VLAN a otra según la dirección de destino. También detiene los datos de red de planta (mensajes de multidifusión) para que no accedan a la red local de la máquina.
- El firewall se utiliza para detener los ataques a la red de planta.
El router de la máquina, como iniciador VPN, debe tener la hora bien sincronizada.
Normalmente, se obtiene de un servidor horario (NTP) ubicado en internet.
También requiere tener configurado el nombre de dominio del destinatario.

Normalmente se trabaja con direcciones IP dinámicas por lo que se usa un servidor DNS que asigna al dominio (p.e. fabricante.oficina.com) una dirección IP.

En la oficina del fabricante (destinatario), se deben configurar los siguientes elementos: 
- De la misma forma que  ocurre con el iniciador VPN, la hora del destinatario debe estar configurada correctamente. Puede utilizar el mismo servidor NTP para ello.
- Dado que el iniciador VPN busca al destinatario por su nombre, el router debe indicar su nombre y dirección IP regularmente a un servidor DNS en internet. 
- La configuración de la conexión VPN del iniciador debe estar registrada en el destinatario, pues si se detecta una solicitud de conexión entrante se deben comprobar las credenciales para que se acepte y se abra el túnel.  

Este ejemplo concreto se ha basado en una forma de acceso a internet por ADSL/cable
En el caso de las conexiones inalámbricas directas o cableadas, la conexión es algo más simple pero la filosofía es la misma.

¿DATOS A ENVIAR?

Realmente viene a ser posible enviar cualquier tipo de datos IP a través de conexión VPN...
Seguidamente se enumeran algunos de los ejemplos prácticos más utilizados:
- Cargar nuevos programas al autómata en remoto (para modificaciones o actualizaciones que requiera la máquina).
- Posibilidad de conexión con el PLC de la máquina para ver como se ejecuta el programa e identificar averías.
- Comunicación bidireccional mediante una interfaz remota (p.e. SCADA) 
y la máquina.
- Notificación de alarmas y warnings de la máquina al fabricante.
- Recepción o transmisión de información a (y desde) un servidor de bases de datos remoto (p.e. Oracle). 
... entre muchas otras posibilidades.

lunes, 10 de enero de 2022

MOTION - Referenciado con homing

El homing en motion control se define como un modo de funcionamiento del servo, utilizado para referenciarlo en una posición mecánica concreta (absoluta). 

Motion control
Para ejecutar esta funcionalidad, se suele utilizar el bloque de función MC_Home (PLCopen) en el programa del controlador. 
Ya se presentó este FB de motion, junto a otros, en un artículo anterior (enlace aquí). 

Al ejecutar la instrucción, se da la posición de home al eje. No obstante, hay distintas formas de hacerlo, dependiendo de la parametrización previa que se determine en el servo para ello.

El presente artículo pretende esclarecer porque utilizar este modo de funcionamiento y como hacerlo. Detallando los procedimientos más habituales para su implementación. 


¿PARA QUÉ SIRVE
?

Tal como ya se ha comentado, el homing permite referenciar una posición en el eje, normalmente para disponer de un origen a partir del cual realizar posicionados absolutos.
Recordemos que en un posicionado relativo la posición de origen sería indiferente, pues la consigna no deja de ser un incremento de unidades respecto la posición actual. 

Normalmente se utiliza para servomotores con encoders incrementales, dado que no guardan la posición tras nuevo ciclo de alimentación... En la mayoría de casos, esto implica tener que volver a calibrarlos mediante el homing.
Aún así, puede requerirse hacer un homing a un servomotor con encoder absoluto. Ya sea para posicionarlo la primera vez que se pone en marcha o bien si la secuencia de la aplicación lo requiere... 

Solemos distinguir entre dos tipos de homing; los de referenciado activo y pasivo
En los activos, se hace una secuencia de movimientos hasta la detección de una señal física para, una vez en posición, dar el origen de referencia al eje.
En los pasivos, simplemente se da un origen de referencia  al eje en la posición actual en la que se encuentra.

¿MÉTODOS?

Seguidamente se definirán, de forma genérica, los distintos procedimientos que habitualmente admite la funcionalidad de homing.
Cabe destacar que el uso de un método u otro se debe configurar en el eje previamente. De tal manera que, al lanzarse la instrucción de MC_Home, se ejecutará la secuencia acorde...

Empecemos con los referenciados activos

Motion control
- Referencia a fase Z
La fase Z (o pulso índice) es una señal física del encoder que sirve como marca. Esta se activa cada vuelta de motor indicando al drive que ha vuelto a pasar por ese punto.

En el referenciado a la marca Z, se realiza un movimiento desde la posición actual hasta el siguiente pulso índice que detecte el drive. Una vez se llega a esa punto, se le da la nueva posición origen al eje. 
Se suele utilizar como referencia para poder asegurar un posicionado exacto, pues esta señal nunca se desajustará...
Pero alerta... Cada motor tiene la fase Z en un punto distinto. Se debe tener eso presente, sobre todo, si se hace un cambio de motor.

- Referencia a señal de home
La señal de home suele ser un sensor externo conectado a las entradas del drive. Específico para determinar la posición de origen, pues no tiene otra funcionalidad. 
En el movimiento de referencia a la señal de home, el eje se mueve hasta la detección de la conmutación en dicha entrada. Es allí donde se establece la nueva posición de origen. 
El motor no tiene porque parar y referenciarse en ese punto exacto... Es común que se aplique un offset respecto a la posición de detección para margar el origen.
También es muy común, para mayor precisión, que tras la detección del sensor se vaya buscar la fase Z más cercana para que ese punto sea el home.

- Referencia a final de carrera
Los ejes también suelen tener finales de carrera (conectados a las entradas del drive). No dejan de ser sensores que sirven para imponer límites de hardware del motor, pero también pueden utilizarse para hacer el home. 
En el movimiento de referencia a final de carrera, el eje se mueve hasta detectar el final de carrera (positivo o negativo). Normalmente, el motor se detiene y se produce otro movimiento de retorno hasta el punto de conmutación de dicha señal para establecer el origen.
Como en la referencia a señal de home, también se puede aplicar un offset respecto a esa posición o ir a buscar la fase Z más cercana antes de dar el origen.

Por lo que respecta al referenciado pasivo:

- Referencia para ajuste de posición
En este caso, al ser un referenciado pasivo, el eje no realiza ningún movimiento al ejecutar el homing.  
En este referenciado, la posición actual del motor se ajusta a un nuevo valor de posición deseado (origen). 

¿EJEMPLO PRÁCTICO?

Imaginemos un servoaccionamiento acoplado a un husillo. Este mueve una carga de forma lineal y hará distintas secuencias de movimientos entre las posiciones -100 y +100 (en cm).
El caso es que queremos definir el 
origen en la posición 0 (central). Y, cada vez que se ponga en marcha el sistema se deberá hacer el calibrado en dicha posición... 

Motion control

El servodrive tiene conectados tres sensores que detectan la pieza (carga)... Dos finales de carrera (positivo y negativo, como límites de hardware) y otro que es la señal de home. 
Los finales de carrera son el Negative limit input y Positive limit input, mientras que el sensor de home es el External home input
.

Vamos a proponer un referenciado activo a señal de home, pero también utilizaremos los límites de hardware para la secuencia...
Seguidamente vemos como se propone configurar el método de homing en el eje: 

Motion control

Se ha definido la secuencia de tal manera que siempre se detecte la señal de home moviéndose en sentido positivo (para detectar siempre la misma parte de la pieza). Entonces, se pueden dar las siguientes situaciones que se ven en el gráfico:
1) Primero se detecta el External home input, con lo que ya se referencia el origen a 0.
2) Primero se detecta el  Positive limit input, con lo que el motor se empieza a mover en sentido negativo hasta dar con el Negative limit input. Entonces, vuelve a moverse en sentido positivo hasta dar con el External home input (donde se referencia el origen a 0). 

En el eje no solo se configura esta secuencia, evidentemente también sería necesario definir la dinámica del motor (velocidad, aceleración/desaceleración, etc). 


¿PRECAUCIONES?

Tal como se muestra en el ejemplo anterior, la referencia de homing suele ser la posición 0, pero no tiene porque ser así siempre.
Se puede definir como origen cualquier posición, siempre que esté dentro del rango de trabajo del eje... Pues puede haber ejes configurados como rotativos (con módulo) o que tengan definidos límites de posición por software. 

Las señales que intervienen en una secuencia de homing suelen ser, por naturaleza, de sensores normalmente cerrados (NC). 
Esto es así por seguridad, pues en caso de desconexión es como si se activara la señal en cuestión. Esto evita posibles impactos mecánicos al no detectar las señales en cuestión. 

El bloque de función MC_Home solo puede abortarse mediante el FB de MC_Stop o deshabilitando el de MC_Power del eje.
También dejaría de ejecutarse si se da cualquier error que no permite la correcta finalización del mismo.  

miércoles, 29 de diciembre de 2021

COMMS - Protocolo PROFINET

El protocolo de comunicaciones PROFINET (Process Field Network) es un estándar abierto de Ethernet Industrial basado en TCP/IP e IT.
Es el sucesor del PROFIBUS DP (protocolo serie), c
on el que comparten propiedades al tener un mismo origen. Pues ambos son mantenidos por una misma organización. 

Comunicaciones industriales

Esta tecnología permite el intercambio de datos entre los dispositivos de control y de campo en tiempo real. Siendo así, resulta ideal para la automatización de máquinas e incluso como enlace con el mundo IT.
Es uno de los estándares líder en Europa, en todas las áreas de automatización (tanto a nivel de proceso como de planta)Respaldado y utilizado por innumerables fabricantes.

Este artículo pretende exponer en detalle este protocolo tan comunmente utilizado, con el objetivo de presentar las nociones básicas respecto a como trabaja y su implementación. 

¿CÓMO FUNCIONA?

PROFINET, a diferencia de muchos otros protocolos basados en Ethernet Industrial, trabaja con un modelo consumidor-proveedor para el intercambio de datos. 
En una arquitectura maestro-esclavo, el maestro tiene control unidireccional sobre todos los esclavos... Pero el modelo proveedor-consumidor permite al maesto trabajar como proveedor de datos hacia los elementos de campo y, a su misma vez, como consumidor de aquellos datos que le son devueltos.

Entonces, los roles que encontramos en una tipología PROFINET, son los siguientes:
    - ControladorMaestro (comúnmente un único PLC) que comunica con los demás
    equipos de la red y almacenan toda la información de la misma.

    - Dispositivo: Cualquier esclavo de campo que puede ser monitorizado por el controlador
    y, puntualmente, puede enviar información de diagnóstico al supervisor.
    Los dispositivos se definen mediante un nombre PROFINET único e irrepetible.
 Y
    requieren una dirección IP (en rango con la del controlador).

    - SupervisorTípicamente es el rol de un software de programación... Este rol sirve para
    monitorizar el estado de los dispositivos, asignar direcciones IP y/o nombres PROFINET,
    hacer tareas de diagnóstico en la red, etc.

Comunicaciones industriales


El controlador puede intercambiar los datos de forma 
cíclica y acíclica con los dispositivos y aprovecha la naturaleza full-duplex del medio físico Ethernet.
La comunicación entre controlador y dispositivos es simultánea en ambos sentidos, lo que lo hace un protocolo muy flexible.


Según con que equipo comunique el controlador y los requerimientos de dicha comunicación, este protocolo utiliza los llamados perfiles PROFINET. Básicamente son telegramas estándares dentro del protocolo diseñados para funcionalidades específicas.
PROFIsafe para la seguridad funcional (safety integrated), PROFIdrive para accionamientos (motion control) y PROFIenergy para aplicaciones de gestión de energía en sistemas de producción.

Comunicaciones industriales


¿PASOS EN LA COMUNICACIÓN?

En la línea de lo comentado, la función básica del PROFINET es el intercambio de datos entre controlador y dispositivos a controlar (con la filosofía consumidor-proveedor).
Los pasos al establecer dicha comunicación son los siguientes:

1) Resolución de nombre y direcciones
    Los dispositivos se identifican al controlador PROFINET mediante un nombre. Entonces, el
    controlador les asigna la dirección IP.

2) Establecimiento de conexión:
    El controlador envía la solicitud de conexión al dispositivo. Esta solicitud ya determina
    ítems críticos como los datos a intercambiar, la velocidad y el tiempo de vigilancia
    (watchdog) para asegurar que no ha habido desconexión.

3) Intercambio de datos
    En este punto, una vez conectados controlador y dispositivo, ya empiezan a intercambiar
    datos cíclicamente (según lo preestablecido).
    El controlador procesa las entradas, controla las salidas y notifica las alarmas del
    dispositivo.

4) Desconexión de equipos:
    Normalmente esta situación solo se da cuando se supera el tiempo de vigilancia de
    comunicaciones establecido entre controlador y dispositivo (
watchdog). Lo que indica un
    fallo al actuar los datos de E/S en el proceso cíclico...
    No obstante, el controlador también podría desconectarse intencionadamente de algún
    dispositivo.


¿
INTERCAMBIO DE DATOS?

Con PROFINET, se suelen diferenciar dos canales de comunicación según el "modo" en el que queramos comunicar un controlador con un dispositivo.
Con el uso de uno u otro, cambia la velocidad y el determinismo del intercambio de datos, por lo que se escogen según los requerimientos del proceso... 
No obstante, las dos variantes suelen coexistir en la misma red. Estas son:  

- PROFINET RT: Real Time
Posibilita la comunicación con dispositivos en tiempo real, con retardos de hasta 1 a 10 ms.
Para su implementación no se precisan requisitos de hardware adicionales o topologías específicas.

Suele ser el más utilizado... Por ejemplo, al comunicar con unidades de E/S distribuidas, controlar comandos de variadores de frecuencia y demás funcionalidades básicas.

PROFINET IRT: Isochronous Real Time
Este canal se utiliza en aquellas comunicaciones donde se exige una alta precisión y determinismo. Pues garantiza una comunicación isócrona entre el controlador y los dispositivos de campo, con tiempos inferiores a 1 ms.
En este caso, el hardware involucrado debe soportar implícitamente dicha variante y solo es aplicable a unas topologías de red específicas.
Generalmente, se usa en aplicaciones de motion. Donde los servomotores que deban realizar posicionados precisos y/o tareas de sincronismo. 

A parte, PROFINET dispone de un canal de comunicación NRT (Non Real Time). Este utiliza todas las capas del modelo OSI y solo trabaja mediante el direccionamiento por IPs.

Comunicaciones industriales
Presenta una mayor latencia que los anteriores (entre 30 y 100 ms), pero permite acceder a los dispositivos a través de enrutamientos e internet.
Solo se utiliza con fines de supervisión (software), visualización (HMIs), entre otros intercambios de datos que no requieren altas velocidades. 




¿CONFIGURACIÓN
?

Solo nos queda ver, a nivel práctico, como se debe hacer la puesta en marcha de una red PROFINET para poder establecer las comunicaciones expuestas anteriormente... 

Comunicaciones industriales

1) Importar archivo GSDML de dispositivo
En el software del controlador, incluir este archivo de descripción del dispositivo (.xml).
El fabricante del equipo es quien debe subministrar este archivo. Contiene toda la información PROFINET del equipo i es imprescindible para poderlo enlazar con el controlador.

2) Configuración de dispositivo
Como se ha indicado anteriormente, es necesario dar IP y nombre PROFINET al dispositivo importado. 
En este punto, el equipo ya es visible en la red para el controlador.

3) Asignar dispositivo al controlador
Se enlaza el dispositivo previamente configurado con el controlador que se va a intercambiar los datos.
En este punto se define el canal de comunicación RT, IRT o NRT, lo que define la velocidad (tiempo de reloj del controlador) y determinismo de las comunicaciones.

4) Configurar el intercambio de datos cíclico
Por último, solo queda detallar que mapeado de variables del dispositivo en el controlador.
Es aquí donde se puede definir el uso de un perfil PROFINET concreto (tramas predefinidas).

viernes, 24 de diciembre de 2021

VARIADOR - Técnica 87Hz

En ocasiones, es necesario que un motor trabaje por encima de su frecuencia nominal (normalmente 50Hz).
Se suele pensar que con poner un variador y aumentar la frecuencia de salida es suficiente, pero hacerlo tiene sus limitaciones... Pues, hasta los 50Hz, la relación tensión/frecuencia (V/f) es constante. Pero, por encima de los 50hz, solo puede aumentar la frecuencia (no la tensión).

Variador de frecuencia


Como consecuencia, por encima de la frecuencia nominal, disminuye el flujo magnético en el motor.
Este debilitamiento de campo implica una reducción del par entregado por el motor.
Véase el gráfico adjunto...


El caso es que, desde años atrás, los bobinados del motor se protegen con mayor aislamiento. La idea es que permitan picos de tensión (provocados por los IGBTs de salida del variador), y esto ha dado pie a que se presenten nuevas formas de conexión de los motores para aumentar su potencia.

Aquí es donde aparece esta solución alternativa, la técnica de 87Hz...
Permite aumentar la velocidad de un motor estándar hasta 87Hz (104Hz en motor de 60Hz), sin debilitamiento de campo (par constante hasta 87Hz) y consiguiendo una potencia 1.7 veces superior...

En este artículo se detallará como implementar esta técnica tan comunmente utilizada, resolviendo todas las dudas que pueda generar. 

¿EN QUÉ CONSISTE?

Para poder aplicar esta técnica, se requiere que los equipos utilizados cumplan con los siguientes requisitos:
Variador de frecuencia

- Motor
    Que admita conexión triángulo y estrella (230VΔ / 400VΥ). 
    Vamos a conectarlo en triángulo (230V)
    Véase adjunta la imagen de la caja de bornes del motor. 
    
- Variador
    Escoger un modelo de 400V.
    Que sea de una talla de potencia superior, mínimo 1.7 veces, a la del motor (kW). 

Entonces, al conectar el motor en triángulo y alimentarlo a 400V, el variador puede generar la siguiente curva tensión/frecuencia: 

Variador de frecuencia




Aquí se puede ver como, aplicando la técnica de 87Hz, la relación V/f es constante hasta 87Hz.




¿EJEMPLO?

Imaginemos que partimos de un motor con la siguiente placa de características

Variador de frecuencia



En este caso ya se contemplan las especificaciones con la técnica de 87Hz, pero no siempre es así.




Las características básicas del motor a 50Hz son:
Δ (230V)    0.18kW / 1.00A
Y (400V)    0.18kW / 0.58A

Ahora bien, realizando una conexión a 87Hz:
Δ (400V)    0.33kW / 1.00A
Véase que, con respecto a una conexión estrella a 400V, la frecuencia, intensidad y potencia nominales se multiplican por un factor de 1.7 aprox. Esta relación de √3 es la que guardan las dos tensiones (230/400V). 

Entonces, para poder aplicar la técnica de 87Hz se requiere de un variador de 400V con una potencia nominal de 0.33kW y una corriente de salida de 1A (o superiores) .

¿CONFIGURACIÓN VARIADOR?

Al utiliza la técnica de 87Hz, es necesario que el variador elegido esté bien parametrizado para asegurar un funcionamiento acorde con los requerimientos expuestos.
A continuación, se detallan los aspectos a considerar para la puesta en marcha:

1) Parametrizar los datos de motor a 230V (triángulo). Es decir, los parámetros referentes a la placa de características del motor

2) Realizar autotuning para la medición automática de las constantes internas del motor

3) Modificar los parámetros de tensión nominal (400V) y frecuencia base (87Hz).


¿PRECAUCIONES?

Cuando se implementa la técnica de 87Hz el motor opera por encima de sus características nominales..
Entonces, para el dimensionamiento de los equipos, se deben tener presentes las siguientes consideraciones:

- Al superar la frecuencia nominal del motor, aumentan las pérdidas en el hierro de forma proporcional, por lo que es recomendable reducir el nivel de sobrecarga del motor.

- Es importante asegurarse de que el motor tenga un buen aislamiento térmico. De no ser así, los incrementos de tensión podrían dañarlo.

- Por lo que respecta al variador, se debe escoger un modelo que pueda dar una frecuencia de salida de 87Hz

- Solo se recomienda aplicar esta técnica con motores de potencias hasta 45kW

- Siempre se debe hacer caso a las recomendaciones del fabricante. Y, en caso de duda, consultar con un especialista.