AS5600 Modulo Encoder magnético, Sensor de Angulo 12 bits, 3.3V, I2C, PWM

[AS5600] AS5600 Modulo Encoder magnético, Sensor de Angulo 12 bits, 3.3V, I2C, PWM

https://electrofranko.com/web/image/product.template/55042/image_1920?unique=d1305ea

S/ 17.00 17.0 PEN S/ 17.00

S/ 17.00

Not Available For Sale

Esta combinación no existe.

Términos y condiciones
Envío: 2-3 días laborales


Referencia Interna: AS5600

Módulo Encoder Magnético Rotativo (AS5600)

Sensor de posición angular absoluto de alta resolución sin contacto para control preciso de motores.

El módulo codificador magnético AS5600 es un sensor avanzado diseñado para determinar la posición angular absoluta de un eje mediante tecnología de efecto Hall sin contacto. Su principio operativo detecta los cambios del campo magnético generados por un imán diametral sobrepuesto, eliminando el desgaste mecánico y los errores por suciedad. Esta arquitectura interna ofrece una alta resolución de 12 bits que se transmite mediante comunicación I2C o salidas analógicas continuas proporcionales directas. Es una solución extraordinariamente compacta y fiable para servomotores, cardanes, robótica y sistemas de automatización industrial exigentes.

Especificaciones Técnicas del Módulo

Parámetro Detalle
Tensión de AlimentaciónDC 3.3 V o 5.0 V seleccionable
Resolución Angular12 bits (4096 posiciones por vuelta)
Protocolo de ComunicaciónI2C estándar (Dirección esclavo 0x36)
Modos de SalidaAnalógica ratiométrica o PWM
Rango de Ángulo ProgramableDesde 18° hasta un giro total de 360°
Corriente de Operación6.5 mA típico (Modo activo completo)
Parámetro Detalle
Consumo en Modo ReposoMenor a 1.5 mA de corriente
Imán RequeridoImán de neodimio de tipo diametral
Distancia Máxima al Imán0.5 mm hasta un límite de 3.0 mm
Pines de Interfaz PrincipalVCC, GND, SDA, SCL, OUT, DIR
Pin DIR (Dirección)GND = Horario / VCC = Antihorario
Dimensiones de la Placa15 x 16 mm

Diagrama de Conexiones y Mapeo de Pines

Diagrama de Conexión AS5600

Ventajas del Módulo

Medición Absoluta Sin Contacto: Retiene la posición exacta del ángulo tras un apagado repentino del sistema, evitando calibraciones o retornos a cero de ejes.

Inmunidad al Desgaste Físico: Al operar mediante detección de campo magnético a distancia, no sufre degradación mecánica como los potenciómetros rotativos tradicionales.

Precisión de 12 Bits: Permite desglosar una revolución completa de 360 grados en 4096 pasos digitales, ofreciendo una tolerancia menor a 0.1 grados en control.

Flexibilidad de Hardware: Brinda salidas simultáneas a través del bus I2C industrial para datos digitales y salidas de tensión analógica para sistemas heredados.

Código Arduino de Medición en Tiempo Real

// Código optimizado para la lectura digital del encoder magnético AS5600 via I2C // Implementa un filtro acumulativo básico para mitigar ruido y calcula ángulo en grados #include <Wire.h> const int direccionAS5600 = 0x36; // Dirección fija I2C del chip AS5600 const int muestras = 5; // Cantidad de lecturas para el filtro de estabilidad void setup() { Serial.begin(9600); Wire.begin(); // Inicialización de líneas de comunicación I2C (SDA y SCL) Serial.println("--- Buscador de Posición Angular AS5600 Inicializado ---"); } void loop() { long acumuladorPasos = 0; // Ciclo para capturar múltiples muestras consecutivas y estabilizar el valor for (int i = 0; i < muestras; i++) { // Apuntar a los registros de lectura de ángulo del chip (0x0E y 0x0F) Wire.beginTransmission(direccionAS5600); Wire.write(0x0C); Wire.endTransmission(); Wire.requestFrom(direccionAS5600, 2); if (Wire.available() >= 2) { int lecturaAlta = Wire.read(); int lecturaBaja = Wire.read(); // Combinar los dos bytes leídos para formar el número entero de 12 bits (0 a 4095) acumuladorPasos += ((lecturaAlta & 0x0F) << 8) | lecturaBaja; } delay(5); // Breve espera para evitar saturación del bus } // Promedio aritmético filtrado int pasosFiltrados = acumuladorPasos / muestras; // Conversión de la escala digital de 12 bits a grados físicos decimales float anguloGrados = (pasosFiltrados * 360.0) / 4096.0; // Despliegue de datos depurados a través del terminal serie Serial.print("Pasos Crudos: "); Serial.print(pasosFiltrados); Serial.print(" | Posición Angular Absoluta: "); Serial.print(anguloGrados, 2); // Imprime el ángulo final con precisión de dos decimales Serial.println("°"); Serial.println("----------------------------------------"); delay(200); // Frecuencia de actualización equilibrada para visualización humana }