¿Cómo se usa correctamente la función de desmagnetización en el chip de brújula digital de 3 ejes HMC5883L?

editar / tl; dr: El controlador de correa de configuración / reinicio es un circuito de puente H para entregar 10 mA de corriente continua a una correa que produce temporalmente una compensación de campo magnético de aproximadamente 1.1 gauss. Se puede usar un cambio en la medición antes y durante este desplazamiento de campo para confirmar que el dispositivo es funcional, como una prueba de fabricación. Sin embargo, también se dice que estas correas funcionan para desmagnetizar, pero todavía no he encontrado instrucciones claras sobre cómo usarlas para desmagnetizar el sensor . Por lo general, la desmagnetización de objetos macroscópicos se realiza con un campo de CA que disminuye lentamente en amplitud.


Cuando escucho la desmagnetización , pienso en la aplicación de un campo magnético externo oscilante (CA) a un material ferromagnético magnetizado, y luego, lentamente, la amplitud del campo de oscilaciones se reduce a cero para eliminar casi toda la magnetización residual. Los cabezales magnéticos de desmagnetización automática (y manual) de las grabadoras de cinta y el blindaje magnético de los CRT son algunos ejemplos.

Sin embargo, una lectura rápida de ese artículo muestra que el término desmagnetización también se aplica a la cancelación de los campos externos resultantes de la magnetización de materiales mediante el uso cuidadoso de una o más bobinas excitadas por una corriente continua para "cancelar" el campo dentro de un tiempo finito. región. El ejemplo son grandes bobinas en los barcos para cancelar los campos resultantes de los cascos ferromagnéticos que producen campos externos excitados por el campo magnético de la Tierra.

En los casos del chip de brújula digital de 3 ejes HMC5883L, o cualquier tipo similar de sensor magnetorresistivo, ¿cómo funciona la función de desmagnetización? ¿Hay realmente bobinas dentro del chip destinadas a transportar corrientes de CC para cancelar algunos campos? ¿Cómo se hace esto? ¿Cómo se calculan y aplican correctamente las corrientes?

Aquí está HMC5883L_3-Axis_Digital_Compass_IC.pdf donde dice:

Característica: Circuitos de transmisión de correa incorporados

Beneficio: controladores de correa de ajuste/restablecimiento y compensación para desmagnetización, autocomprobación y compensación de compensación

ingrese la descripción de la imagen aquí

arriba: captura de pantalla de la hoja de datos . Hay bloques separados OFFSET STRAP DRIVERy SET/RESET STRAP DRIVERde circuito, y parecen ser controlables por separado.

Intente leer la hoja de datos, parece lo suficientemente clara. Pista: se llama autocomprobación.
@Andyaka He preguntado sobre el uso de la desmagnetización, no la autocomprobación ni la compensación de compensación. Estos son todos diferentes. No hay discusión sobre cómo desmagnetizar en este pdf. ¡Intenta leerlo de nuevo!
¿Qué esperas para desmagnetizar? No hay hierro dentro del chip, por lo que el uso del término desmagnetización solo se aplica a la configuración, por lo que puedo ver, es decir, la autocomprobación.
@Andyaka Lea la pregunta nuevamente también. He explicado dos tipos de desmagnetización. Supongo que es el segundo tipo para el que está diseñada esta función, por supuesto, no el primero. Creo que estás preguntando por el primer tipo.
No estoy preguntando sobre ningún tipo de desmagnetización, solo estoy señalando que no hay nada ferromagnético en el chip que necesite desmagnetización y las llamadas "correas" internas del chip NO PUEDEN desmagnetizar nada externo.
@Andyaka Entonces, el segundo uso de la palabra desmagnetización es diferente al primero. Creo que el segundo es lo que usted o yo llamaríamos anulación o cancelación de campo, y no desmagnetización. Esperemos a que alguien más familiarizado con la función de desmagnetización en los magnetómetros magnetorresistivos pueda aclararlo. Esta no es una pregunta fácil, en parte porque "desmagnetizar" aquí en realidad no significa lo que normalmente pensamos cuando escuchamos la palabra, como he tratado de señalar cuidadosamente en la pregunta.
@UH oh. Juega bien, o corre el riesgo de ser eliminado. Andyaka ha hecho algunos puntos válidos dos veces ahora. Se da a entender que estas bobinas son para la calibración del sensor. No hay nada que desmagnetizar. La calibración debe realizarse usando una brújula de referencia existente como guía antes de usar las bobinas. Si su brújula digital se desvía o se expone a un campo magnético intenso, necesitará desmagnetización/calibración nuevamente. Si su brújula es precisa, no es necesario utilizar las bobinas de desmagnetización.
@ Sparky256 desmagnetizar en este contexto no es desmagnetizar. Creo que la insistencia constante en que desmagnetizar debe significar siempre y solo desmagnetizar está enturbiando el agua. Creo que pasar los primeros dos párrafos explicando esto en la pregunta (anticipando esta confusión) y luego reiterar esto pacientemente varias veces en los comentarios es muy amable de mi parte. Las tres funciones enumeradas son "Desmagnetización, autocomprobación y compensación de compensación" y esta pregunta es sobre la primera de esas tres. No está relacionado con la desmagnetización de ninguna manera.
@UH oh. Comprendido. La desmagnetización tal vez no sea más que una compensación nula para el ADC interno o corrientes de polarización para la celda del sensor. Creo que la fabricación debería haber elegido otro término además de 'desmagnetización', que es engañoso en este caso.
@ Sparky256 Aparentemente, basado en la discusión sobre el desguace de grandes embarcaciones oceánicas en el artículo de wikipedia que he vinculado y discutido, este es un uso bien establecido en la navegación (es un chip de brújula digital) pero no en la electrónica. Estoy tratando de entender cómo aprovechar esta función. ¿Hago una calibración de software y luego calculo las corrientes para las bobinas manualmente? " ¿Cómo se usa correctamente la función de desmagnetización en el chip de brújula digital de 3 ejes HMC5883L? "
Nada parece satisfacerlo, por lo que hablar con un ingeniero de aplicaciones de Honeywell puede resolver sus problemas. He agotado lo que estaba en la hoja de datos, pero te quejas aún más. VTC como demasiado amplio para una respuesta satisfactoria.
@ Sparky256 Agradezco mucho su tiempo. Estoy haciendo una pregunta que aún no está respondida en las hojas de datos a las que vinculo en mis preguntas. No creo que eso haga que la pregunta sea demasiado amplia. Creo que es una buena pregunta. Puede resultar que un campo monopolar escalonado de 1,1 gauss sea suficiente para la desmagnetización "tradicional" del propio dispositivo magnetorresistivo, incluso si parece demasiado bajo para la desmagnetización diaria. También he preguntado sobre la física aquí . ¡Vamos al fondo de esto!

Respuestas (4)

Sé que este es un hilo viejo, pero lo encontré mientras intentaba resolver un problema con la brújula de mi cuadricóptero. Creo que la confusión acerca de "desmagnetizar" el HMC5883L proviene de lo que parecen ser dos funciones asociadas con el circuito de la correa/puente H. Una función es la autocomprobación en la que la correa/puente H genera 1,1 gauss en base a una corriente de 10 mA; la segunda función del circuito es impulsar una corriente mucho más alta para "desmagnetizar". Esta corriente proviene de un condensador externo (nominalmente 0,22 uf) y se supone que es bastante alta y de corta duración (tenga en cuenta en la hoja de datos el requisito de un condensador ESR bajo). También parece (aunque menos claro en la hoja de datos) que el sensor es "pulsado", luego leído y luego "restablecido pulsado" y lea nuevamente y las dos lecturas se restan para tener en cuenta el magnetismo residual y la deriva de temperatura. Eso implicaría que la acción de "desmagnetización" ocurre para todas y cada una de las lecturas. Esto parecería sugerir que no se puede ordenar a pedido, sino que ocurre automáticamente como parte de cada lectura. Lo que ahora me pregunto qué tan bien funciona realmente la función de desmagnetización interna si el chip está expuesto a campos muy altos y cuánto tiempo tarda (cuántos ciclos de lectura) en funcionar (suponiendo que comprenda correctamente la operación).

Oye esto es genial!! Recuerdo haber leído, sin entender realmente, luego olvidé el uso de la palabra "pulsado". De acuerdo con esta ayuda, volveré y volveré a leer la hoja de datos más a fondo. ¡Gracias por tomarse el tiempo para publicar esto!
Contribuiré con una pequeña recompensa retroactiva. Creo que algunas personas más también votarán a favor, lo que te llevará a la 100reputación para que puedas comenzar a dejar comentarios.

Por qué se llama desmagnetización...

La desmagnetización se considera tradicionalmente como un procedimiento de desmagnetización. Es apto aquí, pero hay que pensar en esa magnetización en términos de sus componentes superpuestos.

Considere este imán en un campo magnético:

ingrese la descripción de la imagen aquí

Esto es lo que experimentan los elementos sensores en la tierra (u otro campo externo). La "medida" es en realidad la desviación de la aguja desde un punto de referencia conocido (el centro de la escala en este ejemplo) hasta un punto en la escala creada por la fuerza de los campos externos.

Si se aplica un campo externo constante (o desigual) a lo largo del tiempo, eventualmente el "resorte" perderá algo de fuerza restauradora (tensión). Si luego elimina la fuerza externa, la aguja no regresará completamente al centro.

En el caso de un dispositivo magnetorresistivo, el equivalente es un cambio en el vector de alineación magnética. El dominio de las partículas subatómicas se alinea con el campo de origen y cuando agrega un campo adicional, las partículas se alejan de este dominio alterando la resistencia eléctrica del dispositivo.

Sin embargo, al igual que el resorte mecánico, la exposición constante a largo plazo da como resultado una realineación gradual del dominio de origen y el sensor deja de ser capaz de detectar el campo externo como diferente de su referencia "original".

Para solucionar esto, hay bobinas de desmagnetización que proporcionan un fuerte impulso local (fuerza momentánea) para eliminar cualquiera de estas influencias externas y restablecer el dominio magnético a su alineación original, recalibrando así el transductor.

Entonces, en cierto sentido, está desmagnetizando el dispositivo... al volver a magnetizarlo a la orientación original y eliminar el exceso de magnetización.

Uso en aplicaciones magnetorresistivas

Para cualquier dispositivo específico, puede encontrar el procedimiento de activación real para las bobinas de desmagnetización en la hoja de datos. Por lo general, consta de dos líneas que se conducen en oposición para hacer correr la corriente en una dirección a través de la bobina, luego en la dirección inversa al cambiar la polaridad de las dos señales. A menudo hay un amplificador interno en la parte entre los pines de control y las bobinas reales para que las entradas puedan permanecer de manera segura en alta impedancia y no extraer demasiada corriente de lo que sea que esté impulsando los pines de control (microcontrolador típico) .

Las preguntas más difíciles son cuándo y con qué frecuencia realizar este procedimiento; ese es el núcleo de la pregunta y la fuente de la frustración del OP.

Las hojas de datos no incluyen respuestas a estas preguntas porque son específicas de la aplicación . Las operaciones de desmagnetización tienen un alto costo de energía e interferencia (EMC). Necesita desmagnetizar cuando su sensor pierde suficiente rendimiento como para afectar su aplicación.

El rendimiento es la combinación de sensibilidad y tolerancia. La velocidad a la que el sensor se desvía (pierde sensibilidad o agrega compensación) es una función del entorno (qué tan fuertes y desequilibrados son los campos externos). La cantidad de deriva (error) que considera tolerable es una función de su aplicación (qué tan profundo es el piso de ruido de su ADC, qué tan tolerantes a errores son sus algoritmos, etc.).

Si no tiene un evento externo disponible para usarlo como señal de advertencia de rendimiento reducido, la práctica común es simplemente reiniciar a intervalos regulares.

No pregunté qué es la desmagnetización o por qué es necesaria, pregunté específicamente " ¿Cómo se usa correctamente la función de desmagnetización en el chip de brújula digital de 3 ejes HMC5883L? ". Sin embargo, esa es una buena imagen de gran color que atrae votos :) Aquí hay una pregunta relacionada que también hice en Physics SE; ¿Qué sucede realmente cuando un magnetómetro magnetorresistivo se desmagnetiza a sí mismo? . Tengo el presentimiento de que el material utilizado en el sensor es extremadamente susceptible de magnetizarse. Su respuesta también podría ser útil allí, ¡pero estoy buscando detalles!

Aquí hay una nota de aplicación que explica la funcionalidad de configuración/reinicio: https://aerospace.honeywell.com/~/media/aerospace/files/application-note/an213_set_reset_function_of_magnetic_sensors.pdf

¡Súper! ¡Muchas gracias! Le daré una buena lectura hoy.

Profundizando en los detalles, este IC tiene bobinas reales de desmagnetización/calibración, que son más una tira que una bobina. Los procedimientos de calibración son los últimos párrafos. Esto se cita directamente de la hoja de datos que publicó.

HMC5883L

www.honeywell.com 9

FUNCIONAMIENTO BÁSICO DEL DISPOSITIVO

Sensores
magnetorresistivos anisotrópicos El circuito del sensor magnetorresistivo Honeywell HMC5883L es un trío de sensores y circuitos de soporte específicos de la aplicación para medir campos magnéticos. Con la fuente de alimentación aplicada, el sensor convierte cualquier campo magnético incidente en las direcciones del eje sensible en una salida de voltaje diferencial.

Los sensores magnetorresistivos están hechos de una película delgada de níquel-hierro (Permalloy) y están modelados como un elemento de tira resistiva. En presencia de un campo magnético, un cambio en los elementos resistivos del puente provoca un cambio correspondiente en el voltaje a través de las salidas del puente. Estos elementos resistivos están alineados para tener un eje sensible común (indicado por flechas en el diagrama de pines) que proporcionará un cambio de voltaje positivo con campos magnéticos que aumentan en la dirección sensible.

Debido a que la salida es solo proporcional al componente del campo magnético a lo largo de su eje, se colocan puentes de sensores adicionales en direcciones ortogonales para permitir una medición precisa del campo magnético en cualquier orientación.

Autotest

Para verificar que el HMC5883L funcione correctamente, se incorporó una función de autocomprobación en la que el sensor se excita internamente con un campo magnético nominal (en configuración de polarización positiva o negativa). Luego, este campo se mide y se informa. Esta función está habilitada y la polaridad es establecida por los bits MS[n] en el registro de configuración A.

Una fuente de corriente interna genera corriente continua (alrededor de 10 mA) desde el suministro de VDD. Esta corriente CC se aplica a las correas de compensación del sensor magnetorresistivo, lo que crea una polarización de campo magnético artificial en el sensor . La diferencia de esta medida y la medida del campo ambiental se pondrá en el registro de salida de datos para cada uno de los tres ejes.

Mediante el uso de esta función integrada, el fabricante puede verificar rápidamente la funcionalidad completa del sensor después del ensamblaje sin configuración de prueba adicional. Los resultados de la autocomprobación también se pueden utilizar para estimar/compensar la desviación de la sensibilidad del sensor debido a la temperatura. Para cada "medición de autocomprobación", el ASIC:
1. Envía un pulso de "Establecimiento"
2. Toma una medición (M1)
3. Envía la corriente de compensación (~10 mA) para generar el campo de compensación (~1,1 Gauss) y toma otra medida (M2)
4. Pone la diferencia de las dos medidas en el registro de salida de datos del sensor:

OPERACIÓN DE
AUTOPRUEBA Para verificar que el HMC5883L funcione correctamente, se incorporó una función de autoprueba en la que las correas de compensación del sensor se excitan para crear una intensidad de campo nominal (campo de polarización) para medir.

Para implementar la autocomprobación, los bits menos significativos (MS1 y MS0) del registro de configuración A se cambian de 00 a 01 (sesgo positivo) o 10 (sesgo negativo). Luego, colocando el registro de modo en modo de medición simple o continua, se realizarán dos ciclos de adquisición de datos en cada vector magnético. La primera adquisición será un pulso fijo seguido en breve por los datos de medición del campo externo.

La segunda adquisición tendrá la correa de compensación excitada (alrededor de 10 mA) en el modo de polarización positiva para los ejes X, Y y Z para crear un campo de autocomprobación de aproximadamente 1,1 gauss más el campo externo. Los primeros valores de adquisición se restarán de la segunda adquisición y la medición neta se colocará en los registros de salida de datos.

Dado que la autocomprobación agrega ~1,1 Gauss de campo adicional a la intensidad de campo existente, el uso de una configuración de ganancia reducida evita que el sensor se sature y los registros de datos se desborden. Por ejemplo, si el registro de configuración B se establece en 0xA0 (Ganancia = 5), los valores alrededor de +452 LSb (1,16 Ga * 390 LSb/Ga) se colocarán en los registros de salida de datos X e Y y alrededor de +421 (1,08 Ga * 390 LSb/Ga) se colocará en el registro de salida de datos Z.

Para salir del modo de autocomprobación, cambie los bits MS1 y MS0 del registro de configuración A de nuevo a 00 (Modo de medición normal). Los límites aceptables de los valores de autocomprobación dependen del ajuste de ganancia. Los límites para Ganancia=5 se proporcionan en la tabla de especificaciones.

A continuación se muestra un ejemplo de un proceso de "autocomprobación positiva" que utiliza el modo de medición continua:

  1. Escriba CRA (00) – envíe 0x3C 0x00 0x71 (promedio de 8, 15 Hz predeterminado, medición de autocomprobación positiva)

  2. Escribir CRB (01) – enviar 0x3C 0x01 0xA0 (Ganancia=5)

  3. Modo de escritura (02): enviar 0x3C 0x02 0x00 (modo de medición continua)

  4. Espere 6 ms o controle el registro de estado o pin de interrupción de hardware DRDY

  5. Bucle Enviar 0x3D 0x06 (Lea los 6 bytes. Si se cambia la ganancia, entonces este conjunto de datos está usando la ganancia anterior) Convierta tres valores hexadecimales complementarios de 2 de 16 bits en valores decimales y asígnelos a X, Z, Y, respectivamente. Envíe 0x3C 0x03 (apunte al primer registro de datos 03) Espere alrededor de 67 ms (si la frecuencia es de 15 Hz) o controle el registro de estado o el pin de interrupción de hardware DRDY.

Fin_bucle

  1. Verifique los límites: si los 3 ejes (X, Y y Z) están dentro de los límites razonables (243 a 575 para Ganancia = 5, ajuste estos límites según la configuración de ganancia utilizada. Vea un ejemplo a continuación). Luego, los 3 ejes pasan positivo autocomprobación Escriba CRA (00) – envíe 0x3C 0x00 0x70 (Salga del modo de autocomprobación y de este procedimiento) De lo contrario,
    si Ganancia<7 Escriba CRB (01) – envíe 0x3C 0x01 0x_0 (Aumente la configuración de ganancia y vuelva a intentarlo, omita el siguiente conjunto de datos)

De lo contrario Al menos un eje no superó la autocomprobación positiva.
Escribir CRA (00) – enviar 0x3C 0x00 0x70 (Salir del modo de autoprueba y este procedimiento)

End If
A continuación se muestra un ejemplo de cómo ajustar los límites de la "autoprueba positiva" en función de la configuración de ganancia:

  1. Si Ganancia = 6, los límites de la autocomprobación son: Límite bajo = 243 * 330/390 = 206 Límite alto = 575 * 330/390 = 487

  2. Si Ganancia = 7, los límites de la autocomprobación son: Límite bajo = 243 * 230/390 = 143 Límite alto = 575 * 230/390 = 339

Esta es la parte sobre la autoevaluación. Los beneficios de los controladores de correa de ajuste/restablecimiento y compensación son 1) "Desmagnetización", 2) "Autocomprobación" y 3) "Compensación de compensación". Estoy preguntando específicamente sobre 1) "Desmagnetización" y ha pegado una sección en 2) "Autoprueba". Realmente aprecio su ayuda, pero no estoy interesado en la autoprueba. Estoy preguntando sobre algo que no se explica en el PDF. Si la respuesta se explicara en el PDF, no habría preguntado aquí.
@UH oh. Si lees los detalles, todos son lo mismo. Los procedimientos representan las 3 operaciones que mencionaste. Es por eso que no pudo encontrar una sección sobre "Desmagnetización", ya que es parte de estos procedimientos de calibración. Por una vez, lea TODOS los detalles.
Aplicar una corriente fija de ~10ma para producir un campo repetible de aproximadamente 1,1 gauss es un procedimiento de prueba. Está encendido o apagado. Si está destinado a cancelar o compensar de alguna manera otro campo arbitrario, la corriente tendría que ser continuamente variable e incluir ambos signos, y no veo eso aquí. Estoy empezando a preguntarme si la palabra "desmagnetización" nunca debería haberse usado en la descripción del producto para empezar.
¡Aquí hay una pista interesante! - parte inferior de la página 2: http://www.digikey.tw/Web%20Export/Supplier%20Content/HoneywellSSEC_342/pdf/honeywell-mps-faqs.pdf
Resulta que la hoja de datos no es clara al respecto, pero hay un procedimiento de desmagnetización que es independiente de la función de calibración; electronics.stackexchange.com/a/339877/102305