Grove - Vibration Motor

Introduction

3.3V 5.0V Digital

This is a mini vibration motor suitable as a non-audible indicator. When the input is HIGH, the motor will vibrate just like your cell phone on silent mode.

Version Tracker

Revision Description Release
v0.9b Initial public release May 10, 2011
v1.0 Directly uses an I/O port to drive Vibration Motor Nov 5, 2011
v1.2 Transistor added, uses bigger current to drive Vibration Motor July 11, 2013

Features

  • Grove compatible
  • Non-audible
  • Low power consumption
  • High reliability

Tip

More details about Grove modules please refer to Grove System

Specifications

Item Min Typ Max
Operating Voltage 3.0V 5.0V 5.5V
Control Mode Logic Level (When Logic HIGH, the motor is ON. When LOW, the motor is OFF.)
Rated speed 9000 rpm

Platforms Supported

Usage

With Arduino

To make it vibrate is just as easy as to turn on an LED. Here is an example showing how to turn on the vibration motor.

  1. Plug it onto the Digital port 9 of Grove - Base Shield using a Grove cable.
  2. Plug the Grove - Base Shield onto Arduino.
  3. Connect Arduino to PC by using a USB cable.
  4. Copy and paste code below to a new Arduino sketch, and upload it to your Arduino.

Use the demo code shown below:

int MoPin = 9;    // vibrator Grove connected to digital pin 9

void setup()  {
    pinMode( MoPin, OUTPUT );
}

void loop()  {

    digitalWrite(MoPin, HIGH);
    delay(1000);

    digitalWrite(MoPin, LOW);
    delay(1000);
}

Now, feel the vibration of your motor!

With Raspberry Pi

1.You should have a Raspberry Pi and a grovepi or grovepi+.

2.You should have completed configuring the development enviroment, otherwise follow here.

3.Connection

  • Plug the sensor to grovepi socket D8 by using a grove cable.

4.Navigate to the demos’ directory:

cd yourpath/GrovePi/Software/Python/
  • To see the code
nano grove_vibration_motor.py   # "Ctrl+x" to exit #
import time
import grovepi

# Connect the Grove Vibration Motor to digital port D8
# SIG,NC,VCC,GND
vibration_motor = 8

grovepi.pinMode(vibration_motor,"OUTPUT")

while True:
    try:
        # Start vibrating for 1 second
        grovepi.digitalWrite(vibration_motor,1)
        print 'start'
        time.sleep(1)

        # Stop vibrating for 1 second, then repeat
        grovepi.digitalWrite(vibration_motor,0)
        print 'stop'
        time.sleep(1)

    except KeyboardInterrupt:
        grovepi.digitalWrite(vibration_motor,0)
        break
    except IOError:
        print "Error"

5.Run the demo.

sudo python grove_vibration_motor.py

Project

Inspired by OVERWATCH, we have made a very cool Wooden Laser Gun toy for fun these day!

The Wooden Laser Gun and the Gun Target are all based on an Arduino board called Seeeduino Lotus. The laser emitter on the Laser Gun is controlled to fire laser pulse to “activate” the Gun Target. And there are 3 light sensors on the Gun Target to detect the laser pulse. It seems very simple right? If you are interested in our project, please make one for yourself or your child! It’s worth to spend one day DIY it as a Xmas present.

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!