Existen varios tipos de motores eléctricos, como los steppers, o motores paso a paso, y los servomotores. Dentro de éstos últimos existen algunos modelos realmente interesantes, como es el caso del Servo SG90. Un servo que puede resultar ideal para los primeros proyectos, prácticas son este tipo de dispositivos, aprendizaje, control de robots sencillos, etc. Además, sus requerimientos de energía son bastante bajos, incluso se puede alimentar desde una placa Adruino o desde un puerto USB del PC a 5v.
Índice
¿Qué es el micro Servo SG90?
El servo SG90 es un servo en miniatura, con unas dimensiones muy compactas para poder integrar en proyectos donde el espacio es importante. Además, es económico y fácil de usar, con una demanda energética muy baja, por lo que también es posible usarlo en aplicaciones empotradas, IoT u otras de bajo consumo.
En cuanto al Servo SG90, este servomotor incluye un conector universal tipo S que podrá encajar en la mayoría de los dispositivos comerciales. Se compone de 3 cables con colores que identifican para qué se usa cada uno:
- Rojo: es el cable de alimentación positiva o Vcc (+)
- Marrón: es el cable de alimentación negativo (-) o GND (tierra)
- Naranja: es el cable que lleva la señal PPM (Pulse Position Modulation) para el control del servomotor
Algunos modelos también podrían presentar una composición de colores Negro-Rojo-Blanco, en cuyo caso el esquema en este caso sería GND-Vcc-Señal PPM respectivamente.
Características del Servo SG90
En cuanto a las características técnicas de este servomotor, el Servo SG90 destaca por:
- Peso soportado: entre 1.2 y 1.6 Kg (bastante para su pequeño tamaño)
- Par motor a 4.8v: 1.2 kg/cm
- Voltaje de operación: 4 – 7.2v
- Velocidad de giro a 4.8v: 0.12 s/60º
- Ángulo de rotación: 120º
- Rango de temperatura de funcionamiento: -30ºC y +60ºC
- Dimensiones: 22×11.5×27 mm
- Peso: 9 g o 10.6 g incluyendo el cable y conector
- Compatible con Arduino: sí
- Conector universal: compatible con la mayoría de receptores de radio control (Futaba, JR, GWS, Cirrus, Hitec,…)
También encontrarás algunas variantes del Servo SG90, como:
- MG90S: similar al SG90, pero tiene engranajes y acoplamientos de metal, por lo que puede soportar hasta 1.8 kg.
- MG996R: tiene un tamaño algo superior, pero puede soportar hasta 15 Kg alimentado a 6V, o 13 Kg si se alimenta a 4.8v.
Más información – Descargar datasheet
Dónde comprar un modelo de servomotor como este a bajo precio
Si quieres comprar un servomotor Servo SG90 de este tipo, puedes encontrarlos en algunas tiendas de electrónica especializadas o en la plataforma Amazon. Por ejemplo, estos productos recomendados:
Como puedes ver, son muy baratos, y los puedes comprar sueltos o por packs para robots y otros proyectos en los que necesites más de uno. Además, algunos packs incluyen ciertos accesorios adicionales, como aspas, tornillería, etc.
En cuanto a las variantes citadas anteriormente, tienes estas:
Ahora bien, si lo que buscas es un servomotor más potente y robusto, capaz de poder soportar mayores cargas y con un par mayor, entonces también tienes otros también compactos pero con unas prestaciones más altas:
- Servo Quimat con engranajes de metal y para soportar peso de hasta 20 Kg
- Servo Innovateking capaz de soportar hasta 35 Kg de carga en su eje
- Servo ANNIMOS con engranajes de acero inoxidable capaz de soportar hasta 60 Kg
- Servo SHYEKYO con engranajes de acero inoxidable y capaz de tolerar hasta 75 Kg.
Cómo usarlo con Arduino
Para poner un ejemplo de sketch para Arduino IDE y que puedas comenzar a comprender cómo funcionan los Servo SG90, aquí tienes un caso práctico. Pero antes, veamos cómo deberías conectar el servo a tu placa Arduino:
- Vcc: debe ir conectado a una alimentación externa o al conector 5V de Arduino. Si vas a usar varias fuentes de alimentación, recuerda poner siempre en común la tierra o GND para evitar problemas.
- GND: puedes conectarlo al GND de la placa Arduino.
- Señal PPM: puede ir a cualquiera de los pines PWM de Arduino. Por ejemplo, al D11 en nuestro sketch.
Para ver el código fuente de ejemplo, que podrás probar y modificar a tu antojo, tienes tanto los propios ejemplos que puedes ver en el IDE con la biblioteca Servo.h, como este otro:
#include <Servo.h> Servo myservo; //Crear el objeto servo int pos = 0; //Posición inicial del servo SG90 void setup() { myservo.attach(11); //Vincular el pin 11 de Arduino al control del Servo SG90 } void loop() { //Cambia la posición de 0º a 180º, en intervalos de 25ms for (pos = 0; pos <= 180; pos += 1) { myservo.write(pos); delay(25); } //Vuelve desde 180º a 0º, con esperas de 25ms for (pos = 180; pos >= 0; pos -= 1) { myservo.write(pos); delay(25); } }
Más información – Descargar manual de programación de Arduino