Descripción
El servomotor SG90 es un actuador en el cual podemos controlar la posición de su eje de forma electrónica utilizando una señal PWM. Es ideal para pequeños proyectos electrónicos como maquetas, robots, modelos de autos, barcos o aviones así como cualquier otra aplicación en donde el tamaño es importante.
Este servo de pequeño tamaño es ideal para las primeras experiencias de aprendizaje y prácticas con servomotores, ya que sus requerimientos de energía son bastante bajos y se permite alimentarlo con la misma fuente de alimentación que el circuito de control. Por ejemplo, si se conecta a una tarjeta arduino, se puede alimentar durante las pruebas desde el puerto USB de la PC sin mayor problema.
El servomotor SG90 tiene un conector universal que encaja perfectamente en la mayoría de los receptores de radio control, tarjetas controladoras de servos y tarjetas de desarrollo con microcontroladores. Los cables en el conector están distribuidos de la siguiente forma:
- Rojo: Alimentación (+)
- Cafe: Alimentación (-) o tierra
- Naranja: Señal PWM
Características y especificaciones
- Voltaje de operación: 4.0 a 7.2 VDC
- Torque a 4.8 VDC: 1.2 kg/cm
- Rango de rotación: 180º
- Material de engranes: Nylon
- Velocidad de giro a 4.8 volts: 0.12 seg / 60 º
- Conector universal para la mayoría de los receptores de radio control
- Compatible con tarjetas como Arduino y microcontroladores que funcionan a 5 volts
- Peso: 10.6 gramos
- Dimensiones:
- Largo 2.7 cm
- Ancho: 2.2 cm
- Alto: 1.15 cm
Conexión de SG90 con Arduino
Al tratarse de un servo muy pequeño, este puede conectarse y alimentarse directamente desde una placa con microcontrolador como el Arduino Uno tal como se muestra en la siguiente imagen, sin embargo si vamos a emplear un conjunto de estos servos, entonces lo más conveniente será agregar una fuente de alimentación independiente para los motores.

Programa de prueba para SG90 con Arduino
El siguiente programa realiza un barrido en todo el rango de posiciones del servo. Es útil para comprobar el funcionamiento del servomotor SG90 y como base para otros programas que implemente comportamientos más complejos.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 | /** Geek Factory - "Dale vuelo a tus proyectos" www.geekfactory.mx PROGRAMA DE PRUEBA PARA SERVOMOTOR SG90 CONSULTA EL ARCHIVO LICENCIA.TXT PARA CONOCER MÁS SOBRE LOS DERECHOS DE DISTRIBUCIÓN DE ESTE MATERIAL O LA SIGUIENTE URL: HTTPS://WWW.GEEKFACTORY.MX/LICENCIA-CONTENIDO. PUBLICADO BAJO LICENCIA ATTRIBUTION-NONCOMMERCIAL-SHAREALIKE 4.0 INTERNATIONAL (CC BY-NC-SA 4.0). GEEK FACTORY INVIERTE TIEMPO Y RECURSOS EN DESARROLLAR ESTOS EJEMPLOS Y TUTORIALES. SI ENCUENTRAS ÚTIL ESTE CÓDIGO, CONSIDERA REALIZAR UNA COMPRA CON NOSOTROS. Resumen: Este programa realiza un barrido en todas las posiciones posibles del servo de 0 a 180 grados y de vuelta a 0. Es útil para comprobar el funcionamiento de los servos RC usando la tarjeta Arduino Uno o similar. */ #include <Servo.h> // constructor del objeto de la clase servo, la instancia se llama miservo Servo miservo; // variable utilizada para los ciclos de posición del servo int pos = 0; // pin donde está conectado el servo const int servopin = 12; /** Función setup: se ejecuta una vez cuando encendemos el arduino */ void setup() { // enviar la señal PWM para el servo al pin configurado anteriormente miservo.attach(servopin); } /** Función loop: se ejecuta continuamente mientras el arduino permanece encendido */ void loop() { // cíclo que incrementa la posición del servo for (pos = 0; pos <= 180; pos++) { // escribir la nueva posición que solicitamos miservo.write(pos); // retardo para permitir que el servo se posicione delay(15); } // cíclo que decrementa la posición del servo for (pos = 180; pos >= 0; pos--) { miservo.write(pos); delay(15); } } |








Jesus Ruben –
Excelente servo