Ir a contenido
📢 ¡Nos mudamos! 🏢✨ Av. Lapislázuli 2074-Interior 7, colonia Victoria, Guadalajara, Jal. Lunes - viernes 10am - 6:30pm
📢 ¡Nos mudamos! 🏢✨ Av. Lapislázuli 2074-Interior 7, colonia Victoria, Guadalajara, Jal. Lunes - viernes 10am - 6:30pm
ESC 30A

ESC 30A

¿Que es?

Un ESC (Electronic Speed Controller) es un dispositivo electrónico que sirve para controlar la velocidad del motor brushless.

El ESC que utilizaremos sera Controlador de velocidad electrónico ESC 30A Multi Axis para Brushless como la mayoría de los ESC  incorpora un circuito eliminador de batería (BEC) que puede soportar hasta 2A.

Especificaciones:

  • Corriente continua: 30A
  • Corriente máxima: 40A
  • Salida Regulador BEC: 2A / 5V
  • Tipo de batería: 2 - 3 Celdas
  • Programable: Sí
  • Dimensiones: 68 x 25 x 8 mm
  • Peso: 37 g

Material:

Desarrollo

Como se dijo anteriormente un ESC sirve para controlar motores brushless o motores sin escobillas, la aplicación mas común para motores brushless son drones, en este pequeño tutorial aprenderás a usar un ESC y como controlarlo desde una tarjeta arduino.

Los ESC se controlan con una señal pwm, esta señal debe tener 20 ms de periodo, el pulso oscila entre 1ms y 2ms.

El ESC que estaremos utilizando necesita ser activado con un pulso de 1ms.

Posiblemente si usted ha trabajado con servomotores este método le resultara conocido, pues es la manera en la que funciona un servomotor.

Para generar el pulso usaremos la librería Servo.h, esta librería viene incluida con el IDE por lo que no es necesario instalar nada.

Lo primero que debemos hacer es activar el ESC con un pulso de 1000 us que equivale a 1ms.

esc.writeMicroseconds(1000);

Leer el valor del potenciometro y almacenarlo en una variable 

int val = analogRead(A0);

Enseguida cambiamos el valor que obtenemos directamente del ADC (0-1023) a un rango de valores que necesitamos (1000 - 2000) este rango seran microsegundos (us).

val = map(val, 0, 1023, 1000, 2000);

Por ultimo se crea la señal con la función con el valor que se calculo anteriormente.

esc.writeMicroseconds(val);

El código quedaría de la siguiente manera, como de costumbre todo lo necesario se encuentra en el repositorio de github.

REPOSITORIO

 

Diagrama de conexión

Artículo anterior Sensor de temperatura y humedad analógico AMT1001

Comentarios

martin - agosto 7, 2022

muy bueno muchas gracias

Dejar un comentario

Los comentarios deben ser aprobados antes de aparecer

* Campos requeridos