🛠 Control avanzado de E/S y diagnósticos en el módulo DRV8837

Unit 4-Encoder Motor Driver (DRV8837DSGR) · avance · Apprenez à exploiter les entrées-sorties étendues, le capteur de courant INA199A et la LED RGB pour le diagnostic temps réel.

Objectifs

Este tutorial tiene como objetivo dominar las funciones avanzadas de entrada-salida del módulo 4-Encoder Motor Driver. Configuraremos la lectura del sensor de corriente INA199A para monitorear el consumo eléctrico, usaremos el LED RGB WS2812C como indicador visual de estado y entenderemos la extensión I2C a través de los puertos Grove. El objetivo es implementar un bucle de diagnóstico en tiempo real para detectar bloqueos de motor o sobrecargas antes de que dañen el hardware.

Matériel nécessaire

Étapes

  1. Configuración de la dirección I2C: Por defecto, el módulo usa la dirección 0x24. Verifique la conectividad con un escáner I2C. Si usa múltiples módulos, cambie la dirección mediante resistencias de pull-up/down configurables (rango 0x08 a 0x77) para evitar conflictos en el bus.
  1. Inicialización del sensor INA199A: El módulo integra un sensor de corriente INA199A. Para leer el consumo, debe consultar los registros internos del microcontrolador STM32F030C8T6 vía I2C. La lectura no se realiza directamente en el INA199A sino mediante comandos del firmware del módulo que agregan datos de corriente por canal.
  1. Lectura de corriente del motor: Envíe un comando de lectura de estado para obtener los valores de corriente de cada canal. Un valor anormalmente alto indica un bloqueo mecánico o un cortocircuito. Compare estos valores con la carga máxima especificada de 1,2A por canal a 5V.
  1. Control del LED RGB WS2812C: El LED RGB sirve como retroalimentación visual. Configúrelo para mostrar colores según el estado: Verde (normal), Rojo (error de corriente > 1A), Azul (modo reposo). La comunicación con el LED también se realiza a través de los registros de control del módulo, no directamente por GPIO bit-bang en el anfitrión.
  1. Extensión I2C vía Grove: Use los dos puertos Grove HY2.0-4P para conectar otros sensores o módulos. Asegúrese de que las direcciones I2C de los periféricos conectados no se superpongan con la del driver (0x24) u otros módulos. El bus I2C compartido permite sincronizar acciones de control de motor con datos externos (ej: sensores de distancia).

Vérification

Pour aller plus loin

Integre estas lecturas de corriente en un algoritmo de control PID para ajustar la potencia según la carga real. También puede usar el LED RGB para codificar códigos de error específicos (parpadeos) para depuración en campo. Explore el modo reposo para reducir el consumo total del sistema robótico durante períodos de inactividad.

Otros tutoriales para esta placa

Ejemplos de código para esta placa

← Volver a la ficha 🛠 Todos los tutoriales