Desnudando a Maxwell

publicado en: Sin categoría | 0

La primera vez que viste las ecuaciones de Maxwell te resultaron crípticas. Hermosas por su simetría, valiosas por su elegancia e iluminación, pero altivamente abstractas. Sin embargo, las siguientes visitas demuestran que aquella complejidad era una ilusión: son abstractas, cierto, pero claras y sencillas. Si no has tenido esa segunda oportunidad, te invito a repasarlas.
Antes de entrar en harina, quiero hacer varias consideraciones. En primer lugar, las ecuaciones de Maxwell son una descripción fragmentada de un ente único, que es el campo electromagnético. Por eso, hay que aproximarse a cada igualdad consciente de que sólo nos revela una faceta parcial. En particular, debemos desechar los conceptos independientes de electricidad y magnetismo. No es que estén atados; son una y la misma cosa. De hecho, se podría decir que las ecuaciones de Maxwell existían antes de Maxwell, y su hallazgo fundamental fue reunirlas.
En segundo lugar, se dice que de ellas deriva todo el electromagnetismo. Esta afirmación requiere matices. Sin ir más lejos, no podríamos deducir la ley de Ohm. O la de Hopkinson, su equivalente magnético. Ambas se consideran leyes experimentales, pero son medulares en el desarrollo de circuitos.
Por último, el legado de Maxwell es una teoría clásica, pero en la naturaleza los campos, y en particular el electromagnético, están cuantizados. En contextos muy determinados se dan fenómenos, como el efecto Hall cuántico, o los mismos orbitales atómicos, que no pueden explicarse sin tener esta consideración en cuenta.
Dicho esto, vamos a desnudar el significado de estas ecuaciones. Voy a expresarlas en notación diferencial, por resultar, creo, más intuitiva. E intentaré, sin perder excesiva rigurosidad, explicar lo mejor posible su simbología.

  • Ley de Gauss.

    \nabla\vec{D}=\rho

    Con esta expresión tan sucinta se está indica que las cargas (q) son fuente del campo eléctrico (\vec{E}). Para ser escrupulosos, la expresión que he usado contiene la densidad de carga (\rho) y el desplazamiento eléctrico (\vec{D}), pero esto no desvirtúa el significado. El operador divergencia \nabla apunta a un elemento que está la misma dirección que el vector al que acompaña; referido a un campo, nos habla del origen o destino de su flujo. Mejor dicho, señala la dirección de variación máxima.
    Así, podemos entender que las líneas de campo eléctrico tienen siempre una fuente, a la que llamamos carga. Y será positiva o negativa según la dirección:

    Campo eléctrico
    Campo eléctrico. Fuente: Chanchocan (Wikimedia)
  • Ley de Gauss magnética.

    \nabla\vec{B}=0

    Esta expresión nos introduce un nuevo campo, el magnético (propiamente sería \vec{H}, proporcional a la inducción magnética, \vec{B}). A diferencia la ley anterior, ésta expresa que si seguimos la dirección de variación de sus vectores, no encontramos nada. Sus líneas no tienen origen ni destino, son cerradas. Comúnmente se enuncia diciendo que no existen monopolos magnéticos. Pero sí dipolos, que encauzan este flujo. Me refiero a los imanes:

    Campo magnético
    Campo magnético
  • Ley de Faraday.

    \nabla x\vec{E}=-\frac{\partial{\vec{B}}}{\partial{t}}

    Decía que no se debe entender de forma independiente los campos eléctrico y magnético, así que es preciso describir cómo se relacionan. Esta ecuación liga \vec{E} y \vec{B}, pero contiene un par de signos nuevos que quiero clarificar. El primero es el rotacional (\nabla x), que a pesar de su similitud, no debe confundirse con la divergencia. Aquélla apuntaba en la dirección de cambio lineal de un flujo, éste lo hace perpendicularmente. Expresa el eje de una curva, aquélla hacia la que se tuerce el campo.
    Producto vectorial
    Producto vectorial

    Igual que el rotacional indica cómo varía un campo en el espacio, la derivada parcial (\frac{\partial{}}{\partial{t}}) expresa cómo cambia éste en el tiempo. Éste es el sentido profundo de la ley de Faraday: una alteración del campo magnético (temporal) es igual que una alteración del campo eléctrico (espacial). No quiero decir que lo primero produzca lo segundo, sino que son la misma acción. Cuando aumentamos o disminuimos el campo magnético, retorcemos a la vez el campo eléctrico alrededor del sentido en el que cambia.
    La siguiente animación representa la corriente inducida en una espira, que es la formulación tradicional de la ley de Faraday:
  • Ley de Ampère-Maxwell.

    \nabla x\vec{H}=\vec{J}+\frac{\partial{\vec{D}}}{\partial{t}}

    Nuevamente, que no nos confunda la notación: \vec{H} es proporcional a \vec{B} y \vec{D} es proporcional a \vec{E}. Y \vec{J}… bueno, ahora hablaremos de la corriente de conducción.
    Esta ley es el contrapunto de la anterior, y su parecido formal lo adelanta. Nos dice que una variación (temporal) del campo eléctrico va forzosamente acompañada de una alteración (espacial) del campo magnético. Y como en la ecuación previa, la relación entre ambos vectores es perpendicular.
    Pero hay un componente adicional algo sutil. El campo eléctrico puede variar cuando desplazamos cargas, pero si están dispuestas en una línea infinita, unas vienen a sustituir a otras y parecería que no cambiamos nada. En efecto, \frac{\partial{\vec{D}}}{\partial{t}} sería nulo. El término \vec{J} reacciona a ello: este tipo de movimiento de cargas se denomina corriente de conducción, y el campo magnético también se ve influido por ella.

Para terminar, la aportación de Maxwell venía acompañada de un sorprendente regalo. El campo electromagnético así definido propaga las vibraciones. Si nos empeñamos en discriminar campo eléctrico y magnético, habría que decir que una vibración del primero produce una alteración del segundo, que a su vez modifica al primero. El resultado de esta interacción es una onda que viaja a la mayor velocidad posible. Acabábamos de descubrir la naturaleza de la luz.

Luz
Luz. Fuente: multimedia.biol.uoa.gr

Sensores inductivos

publicado en: Sin categoría | 0

En numerosas aplicaciones es necesario determinar cuándo dos elementos se aproximan: el cierre de una puerta, una válvula que llega al final de su carrera, una boya que alcanza cierta cota, conteo de productos, etc. Para este uso lo ideal es utilizar un sensor inductivo. Se trata de un instrumento robusto, que no requiere contacto directo y por tanto no sufre desgaste, que no se ve afectado por vibraciones o pequeñas acumulaciones de polvo, puede estar inmerso en fluidos, así como otras muchas ventajas.
Los sensores inductivos aprovechan la alteración que un conductor produce en un campo magnético variable. Básicamente, se generan movimientos de los electrones en el material que dan lugar a una corriente circular. Esta corriente inducida genera a su vez un campo magnético que se opone al aplicado.

Corrientes de Foucault
Corrientes de Foucault

En el caso que nos ocupa, un sensor inductivo es básicamente una bobina por la que circula una corriente alterna y que produce un campo magnético variable. Al aproximarle un metal, en el interior de éste se generan las corrientes de Foucault de las que hablábamos. Y éstas producen un campo magnético inducido que se opone al de la bobina. El efecto se observa como una impedancia sobre la corriente alterna original.

Funcionamiento de un sensor inductivo
Funcionamiento de un sensor inductivo. Fuente: European Passive Components Institute
Estados de un sensor inductivo
Estados de un sensor inductivo. Fuente: Wikimedia Commons

Hay que apuntar que este mecanismo sufre una cierta histéresis, por lo que la distancia de activación es ligeramente inferior a la de desactivación. Ésta también depende del material que se le aproxime: es mayor en el cobre, por ejemplo, de alta conductividad, que en el hierro.

Constructivamente, los sensores inductivos contienen un oscilador de alta frecuencia que alimenta la bobina. Su núcleo está expuesto por un extremo, que es la cabeza sensible. Una pequeña electrónica consistente en un rectificador y un comparador detecta el cambio de amplitud de la corriente al aproximar el conductor. En función de esto, se puede producir tanto una señal analógica que mida distancia, como una digital, que detecte proximidad.

Cuando se desea focalizar más el campo para reducir la distancia de detección, la bobina del detector se rodea de una envoltura metálica, denominada blindaje, que amortigua penetración lateral del campo. En este caso es preciso situar el objeto metálico a detectar justo unos milímetros frente al sensor, lo que es muy adecuado para aplicaciones de posicionamiento. El blindaje suele roscarse, para facilitar el mecanizado. Para concentrar aún más el campo magnético, se puede prolongar el blindaje hasta el extremo de la cabeza del sensor; en estos casos, se dice que está enrasado.

Sensor no enrasado
Sensor no enrasado
Sensor enrasado
Sensor enrasado

Comentar por último que existen otros sensores muy dispares que aprovechan igualmente cambios en la inductancia. Por ejemplo, se puede medir desplazamiento de un elemento lineal frente a otro al penetrar un núcleo en un bobina. O determinar el movimiento relativo entre dos bobinados, como se hace en los sincronizadores.

Marcado ATEX

publicado en: Sin categoría | 0

En muchas industrias se trabaja bajo circunstancias susceptibles de generar atmósferas explosivas. Mi experiencia en este sentido pasa por la planta termosolar Andasol 3, así como por la fábrica de superficies Cosentino. En el primer caso las sustancias inflamables son gases; en el segundo las mezclas explosivas también se pueden generar por presencia de polvo. En estas circunstancias, es preciso llevar a cabo un estudio e identificación de riesgos para definir un plan de acciones que lo reduzcan. En España la norma principal que regula estos entornos es el Real Decreto 681/2003, que traspone la directiva europea 99/92/CE (ATEX-137). También aplican el Real Decreto 144/2016, la Ley 31/1995 o la ITC29 del Reglamento de Baja Tensión. Entre otros requerimientos, se exige el uso de equipos específicamente preparados para trabajar en atmósferas explosivas, que deben contar con un marcado especial. El contenido de dicha placa debe ser acorde a la zona donde se instala, y viene determinado por la norma EN 60079-14 caso de ser eléctricos, o la ISO/EN 80079-36. Su interpretación es sencilla, aunque puede resultar farragosa a quien lo aborde desde la normativa, quizás porque se ha querido definir un sistema estricto pero al mismo tiempo versátil. Son códigos válidos, por ejemplo, CE 0163 Ex II 2G Ex de/ II/IIB T4 Gb, o bien Ex IIC 1G p T6, o también Ex mb IIIC IP67 T150ºC Dc. La interpretación se complica un poco más porque en algunas instalaciones conviven equipos recientes con otros anteriores a 2003, que se ajustan a otro sistema. En lo que sigue voy a intentar aclarar el etiquetado según normativa actual.
El marcado ATEX se compone de una serie de indicadores que expresan distintas características del equipo en relación a la zona donde se va a instalar. Lógicamente, las protecciones de éste deben ser igual o más restrictivas de lo que requiere el análisis de riesgo. Aunque los elementos del etiquetado se suelen expresar de acuerdo a un orden, éste no es significativo y el código podría entenderse con otra distribución de sus partes. Algunas de estos indicadores no precisan figurar obligatoriamente, y expresan posibles requerimientos adicionales. Otros pueden repetirse, cuando un equipo es válido para más de una circunstancia. Los componentes, necesarios o posibles, son los siguientes:

  • Marca CE. Equipo conforme con las directivas europeas.
  • Organismo. Número de cuatro cifras que identifica al organismo notificado que ha llevado a cabo las pruebas y garantiza su validez.
  • Pictograma. Símbolo específico que indica la protección contra explosión.

    Pictograma ATEX
    Pictograma ATEX
  • Grupo.Indica el área de utilización y a veces el tipo de explosivo:
    • I. Minería (grisú).
    • II. En superficie. Se puede explicitar con IIA (propano, acetona, amoniaco…), IIB (etileno…) y IIC (hidrógeno, acetileno…).
    • III. Polvo. Si se requiere más precisión, IIIA (partículas combustibles), IIIB (polvo no conductor), IIIC (conductor).
    • Nota: en ciertos marcados se expresa diferenciadamente actividad y explosivo (ejemplo: II 2G/D Ex IIA). También se puede expresar un tipo de explosivo concreto (IIB+H2).

  • Categoría. Indica la frecuencia con la que puede tener lugar la atmósfera:
    Atmósfera Zona (presencia) Categoría
    RD144/16 UNE-EN60079/14
    Gas 0 (permanente) 1G Ga
    1 (ocasional) 2G Gb
    2 (rara) 3G Gc
    Polvo 00 (permanente) 1D Da
    01 (ocasional) 2D Db
    02 (rara) 3D Dc

    Nota: En el grupo I las categorías son M1/Ma (diseño para trabajar con atmósfera explosiva) y M2/Mb (cortan la alimentación si se detecta).

  • Ex. Se ha adoptado un modo de protección normalizado. Si cumple el estándar EN60079, se nota EEx.
  • Modo de protección.
    • Gases: d (envolvente antideflagrante), p (sobrepresión interna), q/qb (relleno pulverulento), o/ob (inmersión en aceite), e/eb (seguridad aumentada), i/ia/ib/ic (seguridad intrínseca), p/pxb/pyb/pzb (salas presurizadas), n/nAc/nLc/nRc/nCc (material no productor de chispas), m/ma/mb/mc (encapsulado), op (radiación óptica).
    • Polvo: t/ta/tb/tc (envolvente), p/pD (sobrepresión interna), i/ia/ib/ic (seguridad intrínseca), m/ma/mb/mc (encapsulado). Se acompaña a veces de la letra D.
    • Equipos no eléctricos (h): g (seguridad inherente), p (presurización), d (envolvente antideflagrante), c (seguridad constructiva), b (control de fuentes de ignición), k (inmersión en líquido), t (protección por envolvente), fr (respiración restringida).
    • Nota: se pueden combinar los modos de protección. Por ejemplo, tb [ia Da] indica que la caja del equipo impide el ingreso de polvo, tiene limitada su temperatura con protección b, y posee en su interior una barrera de seguridad intrínseca, lo que lo hace válido para una zona 00.

  • Temperatura. Indica temperatura máxima que puede alcanzar el equipo. Se expresa bien directamente (T270ºC, por ejemplo), bien por grupos: T1 (450ºC), T2 (300ºC), T3 (200ºC), T4 (135ºC), T5 (100ºC), T6 (85ºC). También se pueden expresar condiciones ambientales, como -10ºC<Ta<+60ºC.
  • Protección IP frente a entrada de partículas o polvo, indicada de la forma usual.
  • Protección IK frente a riesgo mecánico, con el código usual
  • Marcados adicionales: protección contra acceso a personas (de A -acceso con la mano- a D -con un alambre-), o condiciones (H -alta tensión-, W -condiciones atmosféricas-…), componentes, etc.

Para terminar, quiero anotar que las normas ATEX se vienen actualizando con bastante frecuencia, incluidas las que afectan al marcado. Este mismo año se ha revisado la norma UNE-EN 60079-25, que cubre los sistemas eléctricos con seguridad intrínseca.

Proyecto UWS-2 (1)

publicado en: Sin categoría | 0

Desde hace unos meses he tenido abandonada la publicación porque durante los ratos libres he retomado el proyecto UWS. Se trata de un entorno de desarrollo SCADA programado en Python con interfaz web. Cuando publiqué la última actualización de la primera versión, comentaba que me quedaban varios temas pendientes. El que más me preocupaba era la seguridad, aunque tampoco estaba del todo satisfecho con la estructura. Por eso, he decidido hacer borrón y cuenta nueva y desarrollar una nueva versión. Está aún incompleta: necesita unas horas para rehacer la gestión de alarmas y sobre todo, introducir capturas de excepciones y documentar. Pero el grueso es lo bastante completo para que pueda comenzar a describirla.
Los principios que han orientado UWS-2 han sido la organización, la abstracción, la versatilidad y la seguridad. Uno de los defectos de los que adolecía la antigua versión era que las variables se compartían entre todos los controladores (antes llamados PLC). Incluida la interfaz web, que por otro lado tampoco tenía una gestión de usuarios, ni utilizaba comunicaciones cifradas. Era difícil corregir estos defectos con las estructuras existentes:

UWS-1
UWS-1

Gran parte del trabajo en esta segunda versión ha consistido en migrar lo existente a algo similar a una arquitectura cliente-servidor. El Ensemble crea ahora las variables por un lado y los controladores por otro, y éstos sólo tienen acceso a sus métodos después de identificarse y contar con una serie de derechos. Para ello es necesario introducir usuarios, roles, grupos de variables y reglas. Si lo quisiésemos llevar a un gráfico como el anterior, quedaría algo así:

UWS-2
UWS-2

De un primer vistazo, parecen haber desaparecido muchos elementos. No se ven los objetos de salida, el webserver, ni tampoco existen otros implícitos en el primer gráfico, como las expresiones. No se han esfumado: todos se han convertido en controladores. En UWS-2, todo lo que maneje variables (datos en definitiva) es un objeto derivado de la clase Controller. Y como tal, debe someterse a unas reglas. En primer lugar debe identificarse contra el Ensemble utilizando un usuario y una contraseña. Éste analiza roles y permisos y le otorga el tipo adecuado de acceso a las variables, según los grupos a los que pertenecen. Como se da el caso de que un controlador puede gestionar varios usuarios (el servidor web, por ejemplo), es preciso establecer un marco independiente para cada uno, lo que he denominado Frame. En realidad la identificación no la hace el controlador directamente, sino un Frame perteneciente a él. Los permisos posibles son:

  • r: lectura de valores o atributos de una variable.
  • w: escritura de valores o atributos.
  • x: acceso a un método especial.
  • s: añadir un método especial a la variable.

Ya explicaré más adelante qué son los métodos especiales. Mi preocupación original era cómo otorgar a un objeto controlador acceso limitado a las variables sin merma de eficiencia ni mediante un proceso farragoso. Una solución elegante es pasarle sus métodos. Y para hacerlo aún más elegante y cómodo, lo adecuado es que cada objeto variable tenga un objeto espejo en el controlador, llamado Subscriptor. Durante la instanciación, dicho objeto recibe de forma automática y según permisos los métodos que le corresponden, y se le asocian las llamadas pertinentes, como update(), para que ejecute el código adecuado al actualizarse el valor de la variable.

Tag y Subscriptor
Tag y Subscriptor

Cada controlador trabaja con sus subscriptores con la misma comodidad que tendría caso de hacerlo con las variables, pero su alcance está acotado. Esto nos hace despreocuparnos de la seguridad del código de los módulos de controlador, que podría ser desarrollado por programadores independientes. Bueno, o quizás no. Vamos a dejarlo en casi. Python es un lenguaje abierto hasta extremos insólitos, y por ejemplo una llamada a globals() nos permite inspeccionar y alterar todo el entorno. Digamos que la nueva arquitectura previene del error, pero no del sabotaje desde dentro.
En sucesivas entregas iré desgranando más detalles de UWS-2, hasta que esté listo para publicarlo. Espero que resulte de interés.

Manejo de errores

publicado en: Sin categoría | 1

Con demasiada frecuencia veo personas hacer cuentas y arrojar resultados con una cantidad ridícula de cifras significativas, sin comprender qué es la precisión o la certidumbre, ni por supuesto cómo gestionar el error. Por eso me he sentido obligado a escribir un poco sobre el tema, de forma llana, sin profundizar en definiciones, estadística o epistemología, para que sea asequible a cualquier lector.
En primer lugar, aunque parezca obvio, recordar que el error es inevitable. No hablo siquiera de errores humanos, de diseño, de ejecución, sistemáticos, de interpretación… Hoy sólo voy a tratar errores en las medidas. No existe ningún instrumento absolutamente preciso. Una buena regla laser, por ejemplo, puede dar precisiones de una parte en un millón. Esto significa que, para distancias en torno al metro, podemos confiar en el valor hasta la micra. ¡Pero no más allá! Dicha regla no nos va a dar medidas fiables con más de seis cifras. Por supuesto, se pueden construir instrumentos más precisos, pero siempre existirá el error. Por otro lado, incluso un mismo instrumento nos puede arrojar distintos valores. Siguiendo el ejemplo anterior, variaciones imperceptibles en el uso de la regla producen resultados diferentes. En este caso, se puede tomar muchas medidas y usar la media. El error entonces depende de cómo estén de dispersos los datos y su cantidad. A más muestra, el error será menor, pero nuevamente es imposible reducirlo a cero.
Asumiendo por tanto que toda medida tiene un error, estamos obligados a su mención. Si afirmo que un objeto pesa 7700 gramos, sin más, no estoy proporcionando una información útil. Quizás pesa 7700g, o 7701g, o 7700,5g. Incluso 8000g sería un valor compatible. Es necesario por tanto indicar de alguna forma nuestra confianza, la precisión de la medida, y esto se hace expresando el error. Siguiendo el mismo ejemplo, hay un abismo entre decir que un objeto pesa 7700±400g, o que pesa 7700±1g. En el primer caso, el error es del 5%, algo muy impreciso; en el segundo, sólo de un 0,01%. A diferencia de lo que muchos piensan, de esta forma no se indica un margen en el que tiene que estar forzosamente el valor verdadero. Normalmente significa que la probabilidad de que esté dentro ronda el 68%. Así, cuando nos digan que algo mide v±e, tenemos una confianza del 68% de que el valor real está entre v-e y v+e. Si el lector quiere más seguridad, no debe preocuparse, esto suele también implicar que tenemos una seguridad del 99,7% de que lo que queremos medir está entre v-3e y v+3e.
A tenor de lo anterior, no tiene sentido tampoco que expresemos más cifras de las significativas. Decir que una habitación mide 32,87±2m2 es inapropiado, puesto que no podemos confiar en medidas inferiores a dos metros cuadrados. Lo correcto sería redondear, cortar hasta donde tenemos seguridad, y expresar la superficie como 33±2m2. En ocasiones, para abreviar, se omite el error dando por entendido que ya hemos hecho esta operación. Así, cuando decimos que la densidad del cobre es 8,96g/cm3 se quiere expresar que es 8,96±1g/cm3.
Hasta aquí hemos hablado de la expresión del error, pero también hay que tenerlo presente en las operaciones. Imaginad que soldamos 10 barras de 3,5±0,1m de largo. Tenemos claro que obtendremos una de en torno a 35m. ¿Pero con qué error? Sin entrar en demostraciones matemáticas, las reglas de la propagación de errores son:

  • En sumas y restas, el error total es la suma de todos los errores.
  • En multiplicaciones y divisiones, el error total es la suma de los errores, pero en proporción.

En el ejemplo anterior, el error será diez veces el de una barra, ya que sumamos la longitud de todas estas. Una vez soldadas, medirán 35±1m. También podemos ver la operación como un producto: (35±e)m=10·(3,5±0,1m). En este caso, puesto que el número 10 no tiene error (no es una medida, sino una constante), el cálculo que haríamos sería e/35=0,1/3,5. Se obtiene el mismo resultado.
Para acabar, quiero proponer un ejemplo. Queremos medir la diferencia de presión entre dos puntos (parte inferior y superior de un tanque, o impulsión y aspiración de una bomba, por ejemplo). Y podemos hacerlo de dos formas: con un transmisor de presión diferencial o con dos transmisores de presión absoluta. Suponiendo que el error es en ambos casos ±0,01bar, ¿qué método es mejor? Cuando usamos dos transmisores, el resultado final procede de la resta de dos medidas, y según lo que hemos dicho los errores se han de sumar. La operación arroja un error entonces de ±0,02bar, el doble. Además, tendríamos problemas relacionados con el ajuste de ambos. Por eso, aunque el coste fuese el mismo, deberíamos desaconsejar esta instalación y optar por un único transmisor de presión diferencial.