Indoor Mapping Robot with Ultasonic Range Detection Sensor

Uğur AYAZ-2006502004   Onur KEPENEK-2006502034   İsmail ERSOY-2006502018

Dokuz Eyll University, Electrical and Electronics Engineering Department
#Spring 2012#

In this project we will design a robot that is indoor mapping by using ultrasonic range detection sensor that is move with a servo motor and digital compass module. Actuator mechanism consists of two DC motor and pallet system. The measured data transmit RF communication at 433MHz from robot to computer. All the robot system is controlled by  DFRduino RoMeo V1.0 card, its processor is  Atmega 328 microcontroller chip, this card is designed for robot applications specially.

        To draw a map that is an unknown area the robot is used both compass sensor data and ultrasonic range detector sensor. Two sensor data give a robot position and obstacles in unknown area. Two use range data and robot location, draw a map to unknown area.


     Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments.

      Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. The microcontroller on the board is programmed using the Arduino programming language (based on Wiring) and the Arduino development environment (based on Processing). Arduino projects can be stand-alone or they can communicate with software running on a computer (e.g. Flash, Processing, MaxMSP).

DFRduino RoMeo’s some properties;

    • uC Atmega 328
    • 14 Channels Digital I/O
    • 6 PWM Channels (Pin11,Pin10,Pin9,Pin6,Pin5,Pin3)
    • 8 Channels 10-bit Analog I/O
    • USB interface
    • Auto sensing/switching power input
    • ICSP header for direct program download
    • Serial Interface TTL Level
    • Support AREF
    • Support Male and Female Pin Header
    • Integrated sockets for APC220 RF Module and DF-Bluetooth Module(We haven’t got this   module)
    • Five I2C Interface Pin Sets
    • Two way Motor Drive with 2A maximum current
    • 7 key inputs
    • DC Supply
USB Powered or External 7V~12V DC
    • DC Output
5V /3.3V DC and External Power Output 

It has very simple program language base on C. Programmer of Arduino is free on its home page. We should select board Arduino Duemilanove w/ATmega 328 on programmer for program our card.

DYP-ME007(Ultrasonic Range Detection Sensor)

     Using the DYP-ME007 with Arduino in order to calculate distances from objects. The sensor. The DYP-ME007, it’s an IC that works by sending an ultrasound pulse at around 40Khz. It then waits and listens for the pulse to echo back, calculating the time taken in microseconds (1 microsecond = 1.0 10-6 seconds). You can trigger a pulse as fast as 20 times a second and it can determine objects up to 3 metres away and as near as 3cm. It needs a 5V power supply to run.

DYP-ME007(Ultrasonic Range Detection Sensor)’s some properties;
Working Voltage : 5V(DC)
Working Current : max 15 ma
 Working frequency : 40kHZ
 Output Signal : 0-5V (Output high when obstacle in range)
 Sentry Angle : max 15 degree
 Sentry Distance : 2cm - 5m
 High-accuracy : 0.3cm
 Input trigger signal : 10us TTL impulse
 Echo signal : output TTL PWL signal

Module Working Principle: 

         Adopt IO trigger through supplying at least 10us sequence of high level signal,
    •The module automatically send eight 40khz square wave and automatically detect whether receive the returning pulse signal,
        If there is signals returning, through outputting high level and the time of high level continuing is the time of that from the ultrasonic transmitting to receiving.

Pin Configuration;

1.      VCC
2.      Trig(T)
3.      Echo(R)
4.      OUT
5.      GND

Hitachi HM55B Compass Module

     The Hitachi HM55B Compass Module is a dual-axis magnetic field sensor that can add a sense of direction to electronic devices.  The sensing device on the Compass Module is a Hitachi HM55B chip. An onboard regulator and resistor protection make the 3 volt HM55B chip compatible with 5 volt microcontrollers.


    • Sensitive to microtesla (T) variat ions in magnetic field strength
    •Simplifies direction by resolving magnetic field measurements into two componen
    • Good for 6-bit (64-direction) resolution measurements after software calibration
    •Only 30 to 40 ms between start measurement and data-ready
    •Built-in resistor protection for data pins eliminates bus conflict risks
    •Compact and breadboard-friendly 0.3 inch, 6-pin DIP package
    •Compatible with all BASIC Stamp, Javelin Stamp and SX microcontrollers
    •Makes communication and direction calculations especially easy with the PBASIC  SHIFTOUT,  SHIFTIN, and ATN for the BAS IC Stamp 2 series of microcontrollers

     The Hitachi HM55B chip on the Compass Module reports its x and y axis measurements in terms of  microteslas (T) in 11-bit signed values.  The HM55B is designed to return a value of 1 for a north magnetic field of 1 T parallel to one of its axes.  If the magnetic field is south, the value will be -1.   These are nominal values.  According to the HM55B datasheet, the actual T value for a measurement of 1 could range anywhere from 1 to 1.6 T.  A negative 11-bit value will not appear negative in a word variable unless a mask is applied.  For example, when bit-10 is 1, bits 11 to 15 are also changed to 1 with a mask in the test and calibration programs.

     The microcontroller connected to the HM55B must control its enable and clock inputs and use synchronous serial communication to get the axis measurements from its data input and data output  pins. 

     It takes the HM55B 30 to 40 ms to complete a given measurement.  The microcontroller can either perform other tasks during this time or poll until the measurement is complete. 

Servo Motor

     Servo motors are used in closed loop control systems in which work is the control variable. The digital servo motor controller directs operation of the servo motor by sending velocity command signals to the amplifier, which drives the servo motor. An integral feedback device (resolver) or devices (encoder and tachometer) are either incorporated within the servo motor or are remotely mounted, often on the load itself. These provide the servo motor's position and velocity feedback that the controller compares to its programmed motion profile and uses to alter its velocity signal. Servo motors feature a motion profile, which is a set of instructions programmed into the controller that defines the servo motor operation in terms of time, position, and velocity. The ability of the servo motor to adjust to differences between the motion profile and feedback signals depends greatly upon the type of controls and servo motors used. See the servo motors Control and Sensors Product section.

     Three basic types of servo motors are used in modern servosystems: ac servo motors, based on induction motor designs; dc servo motors, based on dc motor designs; and ac brushless servo motors, based on synchronous motor designs.

 Servo motor’s some properties;

      • Stall Torque 5.5 kg/cm(4.8V) - 6.5kg/cm(6V)
      • Operating Speed 0.2 sec/60 degree (4.8v) - 0.16 sec/60 degree (6v)
      • Operating Voltage 4.8 - 6 V
      •Dead Bandwidth 10 us
      • Gear Type nylon
      • Apply forcars & airplane

design by Uğur Ayaz