Grove - Servo

Introduction

5.0V I2C

Grove - Servo is DC motor with gearing and feedback system. It is used in driving mechanism of robots. The module is a bonus product for Grove lovers. We regulated the three-wire servo into a Grove standard connector. You can plug and play it as a typical Grove module now, without jumper wires clutter.

But if you feel more like a proto servo, check out EMAX 9g ES08A High Sensitive Mini Servo. They are the same model, both of good quality and burden-free price.

Feature

  • Small module
  • Grove Compatible Interface
  • Easy to use

Specification

Item Min Typical Max Unit
Working Voltage 4.8 5.0 6.0 V
Torque 1.5/1.8 Kg.cm
Speed 0.12/0.16 s/60°
Size 32X11.5X24 mm
Weight 8.5 g

Platforms Supported

Getting Started

Connection

Here we will show you how this Grove - Servo works via a simple demo. First of all, we need to prepare the below stuffs:

Seeeduino V4 Grove - Servo Base Shield
enter image description here enter image description here enter image description here
Get ONE Now Get ONE Now Get ONE Now

The Servo has three wires: power, ground, and signal. The power wire is typically red, and should be connected to the 5V pin on the Arduino/Seeeduino board. The ground wire is typically black or brown and should be connected to a ground pin on the Arduino board. The signal pin is typically yellow, orange or white and should be connected to Digital 9 on the Arduino board. We can change to the digital port as we like. But don’t forget to change the port number in the definition of the demo code at the same time.

  • Connect the module to D9 port of Base Shield.
  • Plug Grove- Base Shield into Arduino.
  • Connect Arduino to PC via a USB cable.

Software

  • Let’s sweep the shaft of a servo back and forth across 180 degrees by using Adruino Servo Library.
  • Open the code directly by the path: File -> Examples ->Servo->Sweep.

/* Sweep
 by BARRAGAN <http://barraganstudio.com>
 This example code is in the public domain.

 modified 8 Nov 2013
 by Scott Fitzgerald
 http://www.arduino.cc/en/Tutorial/Sweep
*/

#include <Servo.h>

Servo myservo;  // create servo object to control a servo
// twelve servo objects can be created on most boards

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 >= 0; 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
  }
}
  • Upload the sketch. We can see the servo sweep.

Resources


ArduinoWioBeagleBoneRaspberry PiLinkIt ONE

Caution

The platforms mentioned above as supported is/are an indication of the module's hardware or theoritical compatibility. We only provide software library or code examples for Arduino platform in most cases. It is not possible to provide software library / demo code for all possible MCU platforms. Hence, users have to write their own software library.

Help us make it better

Welcome to the new documentation system of Seeed Studio. We have made a lot of progress comparing to the old wiki system and will continue to improve it to make it more user friendly and helpful. The improvement can't be done without your kindly feedback. If you have any suggestions or findings, you are most welcome to submit the amended version as our contributor via Github or give us suggestions in the survey below, it would be more appreciated if you could leave your email so that we can reply to you. Happy Hacking!