MG90S – Metal Gear Micro Servo Motor

This is a micro size servo motor metal gears. Metal gears provide strength/torque at the cost of higher weight and quicker wear-out. This servo motor gives stall torque of 1.8 Kg.cm at 4.8V and 2.2 Kg.cm at 6V. This is a good contender for small RC toys and robots.
Servo motors are a type of brush DC motors with some extra features that make them ideal for use in robotics and in RC planes. Servo motors are used for angular motion and we can accurately know the angle in which the motor is rotated at any particular point. Most commonly servo motors rotate 90º on either side from the central starting point.
MG90S Wiring Description

Wire Number |
Wire Color |
Description |
1 |
Brown |
Ground wire connected to the ground of system |
2 |
Red |
Powers the motor typically +5V is used |
3 |
Orange |
PWM signal is given in through this wire to drive the motor |
Features:
- Operating Voltage: 4.8V to 6V (Typically 5V)
- Stall Torque: 1.8 kg/cm (4.8V)
- Max Stall Torque: 2.2 kg/cm (6V)
- Operating speed is 0.1s/60° (4.8V)
- Gear Type: Metal
- Rotation : 0°-180°
- Weight of motor : 13.4gm
- Package includes gear horns and screws
Specification:
- Modulation: Analog
- Torque: 4.8V: 30.60 oz-in (2.20 kg-cm)
- 6.0V: 34.70 oz-in (2.50 kg-cm)
- Speed: 4.8V: 0.11 sec/60°
- 6.0V: 0.10 sec/60°
- Weight: 0.49 oz (14.0 g)
- Dimensions: Length:0.91 in (23.1 mm)
- Width: 0.48 in (12.2 mm)
- Height: 1.14 in (29.0 mm)
- Gear Type: Metal
- Rotation/Support: Dual Bearings
- Rotational Range: 180°
- Pulse Cycle: 20 ms
- Pulse Width: 400-2400 µs
Interfacing with Arduino:

CODE:
#include <Servo.h>
Servo myservo; // create servo object to control a servo
// a maximum of eight servo objects can be created
int pos = 0; // variable to store the servo position
void setup() {
myservo.attach(9); // attaches the servo on pin 9 to the servo object
}
void loop()
{
for(pos = 0; pos < 180; pos += 1) // goes from 0 degrees to 180 degrees
{ // in steps of 1 degree
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
for(pos = 180; pos>=1; pos-=1) // goes from 180 degrees to 0 degrees
{
myservo.write(pos); // tell servo to go to position in variable ‘pos’
delay(15); // waits 15ms for the servo to reach the position
}
}
Application:
- In Industries they are used in machine tools, packaging, factory automation, material handling, printing converting, assembly lines, and many other demanding applications robotics, CNC machinery or automated manufacturing.
- They are also used in radio controlled airplanes to control the positioning and movement of elevators.
- They are used in robots because of their smooth switching on and off and accurate positioning.
- They are also used by aerospace industry to maintain hydraulic fluid in their hydraulic systems.
- They are used in many radio controlled toys.
- They are used in electronic devices such as DVDs or Blue ray Disc players to extend or replay the disc trays.
- They are also being used in automobiles to maintain the speed of vehicles.
Reference:
https://shopee.com.my/Arduino-Tower-Pro-MG90S-Metal-Gear-Micro-Servo-Motor-i.33091591.520360452
https://www.rhydolabz.com/robotics-servo-motors-c-155_157/mg90s-metal-gear-mini-servo-p-2337.html
https://www.tomsonelectronics.com/products/mg90s-metal-gear-micro-servo
https://www.thingbits.net/products/servo-motor-micro-w-metal-gear-mg90s