INFORMACIÓN
El Servomotor SG90 RC 9g es un motor que permite el control preciso de la posición angular de 0° hasta 180° mediante una señal PWM. Incluye 3 brazos y 3 tornillos, cuenta con un cable de hasta 25cm.
Son utilizados en gran variedad de proyectos de electrónica, robótica, carros de control remoto, aeronaves y más. Funcionan con la mayoría de tarjetas electrónicas de control con microcontroladores, como por ejemplo las tarjetas de Arduino, Nodemcu, Esp32, Pic´s y Raspberry Pi y otras.
ESPECIFICACIONES Y CARACTERÍSTICAS
- Modelo: SG90
- Color: Azul
- Tamaño: 22.8mm x 12.3mm x 22.5mm
- Peso: 13 g
- Grados / Angulo de Rotación Máximo: 0° a 180°
- Engranajes: Nylon
- Temperatura de trabajo:-30 a +60 °C
DOCUMENTACIÓN Y RECURSOS
INFORMACIÓN ADICIONAL
Aplicaciones
- Se utiliza actuador de muchos robots como Biped Robot, Hexapod, brazo robótico, etc.
- De uso común para el sistema de dirección en juguetes RC
- Robots donde se requiere control de posición sin retroalimentación
- Por lo tanto, se usa menos peso en robots con múltiples DOF como robots humanoides
Servomotor SG90 utilizando la tarjeta UNIT DUAL MCU
A continuación te mostramos un diagrama y su respectivo código en MicroPython utilizando Thonny y el RP2040 en la nueva UNIT DUAL MCU para controlar un servomotor SG90 con dos botones:

Código
#Este código también funciona en el ESP32 mismo que se incluye en el UNIT DUAL MCU o por separado, solo recuerda cargar el bootloader de MicroPython y revisar los pines
import machine
import utime
# Configuración de los botones
boton1 = machine.Pin(19, machine.Pin.IN, machine.Pin.PULL_UP)
boton2 = machine.Pin(3, machine.Pin.IN, machine.Pin.PULL_UP)
# Configuración de los LEDs (opcional)
led1 = machine.Pin(21, machine.Pin.OUT)
led2 = machine.Pin(15, machine.Pin.OUT)
# Configuración del pin de control del servomotor
servo_pin = machine.Pin(0)
# Crea un objeto PWM para controlar el servomotor
pwm_servo = machine.PWM(servo_pin)
# Frecuencia del PWM para el servomotor (50 Hz)
pwm_servo.freq(50)
# Función para ajustar el ángulo del servomotor
def set_servo_angle(angle):
duty_cycle = int(1024 + (angle / 180) * 3072)
pwm_servo.duty_u16(duty_cycle)
try:
valor = 90 # Ángulo inicial en 90 grados
while True:
# Si el botón 1 está presionado, mueve el servomotor en una dirección (aumenta el ángulo)
if boton1.value() == 0: # Si el botón 1 está presionado
if valor < 390:
valor += 10
set_servo_angle(valor)
print(f"Ángulo del servo: {valor} grados") # Solo para depuración
led1.on() # Enciende el LED1 cuando el botón 1 está presionado
led2.off() # Apaga el LED2
# Si el botón 2 está presionado, mueve el servomotor en la dirección opuesta (disminuye el ángulo)
elif boton2.value() == 0: # Si el botón 2 está presionado
if valor > 0:
valor -= 10
set_servo_angle(valor)
print(f"Ángulo del servo: {valor} grados")
led2.on() # Enciende el LED2 cuando el botón 2 está presionado
led1.off() # Apaga el LED1
else:
led1.off() # Apaga LED1 cuando no se presiona el botón 1
led2.off() # Apaga LED2 cuando no se presiona el botón 2
utime.sleep(0.02) # Pausa corta para evitar lecturas innecesarias
except KeyboardInterrupt:
# Detén el PWM y limpia los recursos al interrumpir el programa con Ctrl+C
pwm_servo.deinit()
print("\nPWM detenido. Recursos liberados.")
*Nota: El servomotor incorpora un controlador que sólo permite tener una rotación 0° hasta 180° si se manda el ancho de pulso PWM desde el microcontrolador. Si estás utilizando el probador de servos este estará limitado de 0° a 90°. Este servo no incorpora tope para definir en los engranes mecánicamente la rotación de 0° hasta 180° por lo que si gira de forma manual el servo tendrá una rotación continua sin tener tope.

Limpiador de Alambre para Puntas de Cautín
Arduino Nano R4 32 bits RA4M1 CAN ABX00142
Convertidor USB a RS485 Chip CH340 con Proteccion
ESP32-C6 DevKit Dual Tipo C NanoESP32-C6 V1
Pelador de Cables Coaxiales Giratorio
Toallitas Húmedas para Limpieza de Equipos Electrónicos 30pcs COMPUTOALLAS
PT100 Sensor de Temperatura RTD 2 Hilos
Espejo Reflectante 20x3mm para Máquina Láser CO2
Due Core ATmel Arm compatible con Arduino
Arduino UNO R4 Minima ABX00080
UNIT Sensor Kit – Nivel Intermedio con 20 Prácticas
Elevador de Voltaje 1200W 20A
SFM-27 Alarma Buzzer Nivel Alto 90dB DC3-24V
Maquina de Grabado y Corte Láser CO2 5040 50W
SOL60-100 Rollo Soldadura Estaño 100g 60/40 1mm
1N5399 Diodo Rectificador 1000V 1.5A
Adaptador HDMI Conector Macho
Raspberry Pi Pico 2 W RP2350




































Valoraciones
No hay valoraciones aún.