Note: Use the WIKI for latest informationen!


Using odomety you can calculate the robot's speed and the short-term position of the robot. This works by counting the rotations of left and right wheel.

ardumower odometry sensor


ardumower motor

Wiring of motor encoders:



Signal of odometry encoders

ardumower odometry encoder

Do-It-Yourself encoders

l50 odometry sensor   mower photo interrupter right

Ambrogio L50 (left): An encoder wheel of a computer mouse is glued to a slice. The screw of the wheel shaft is unscrewed, and the slice is added. Embedded in two Plexiglas pieces is a photo diode and photo transistor of a light barrier (e.g. LTH 301).

Tianchen TC-G158 (right): A light barrier (e.g. LTH 301) is interrupted by a gear-weheel of the motor shaft.


VCC           pinArduino
+--13 KOhm----+-------Collector  Emitter---GND
+--380 Ohm------------Anode      Kathode---GND

Example plot of odometry sensors

odometry plot

After a time, the odometry's error accumulates, and the course (Degree) and position (x/y) are getting unprecise - the course can be corrected by a compass sensor, the position by GPS.

Fusion of sensor values:
1. Calculation of short-time position by Odometry and Compass
2. Calculation of long-term position via GPS

ardumower odometry

A Kalman filter can be used to fusion all sensor values.


ublox neo 6m      GY-NEO6MV2 schematics

By the help of a GPS receiver (e.g. GY-NEO6MV2, ublox 6m), the long-term position can be calculated. Therefore, the GPS position values are averaged.


GPS TX (3.3V compatible) -- Arduino RX
GPS RX (3.3V compatible) -- Arduino TX
GPS VCC -- Arduino VCC 5V
GPS GND -- Arduino GND

Visualization of GPS data

GPS data (course, speed, position etc.) can be plotted by pfodApp:

gpsplot    gpsplotting     gpstracking


Here's a simulation of localization using odometry sensors.
ardumower sim

Position detection using cross-correlation

ardumower tracking pos sync


video  No video yet  (odometry is currently under development)

Letzte Foren Beiträge

    • Perimeter values
    • Hi dicknordstrom, the fluctuation in the mag is normal. The reason...
    • 14 hours 18 minutes ago
    • Perimeter values
    • Hi, I have made a small loop inside (about 5 meters long), in series I...
    • 22 hours 30 minutes ago
    • Ambrogio L200 Evolution
    • Könnte mir einer schreiben, ob ich das alles benötige? Oder ob es...
    • 2 days 18 hours ago
    • Ambrogio L200 Evolution
    • Der Due arbeitet schneller und damit flüssiger..der Mega läuft zwar...
    • 2 days 21 hours ago
    • Ambrogio L200 Evolution
    • Hallo, Vielen Dank für die Antwort. Hättest du eventuell ein paar...
    • 3 days 7 hours ago
    • PCB 1.3 Inbetriebnahme
    • Hi Jurgen. Thanks for your info but in fact now my RTC work perfectly...
    • 4 days 9 hours ago
    • PCB 1.3 Inbetriebnahme
    • Hi Bernard, Your problem is probably rather in that RTC and IMU have...
    • 4 days 9 hours ago
    • PCB 1.3 Inbetriebnahme
    • Yes It's exactly what i have understood. I take a fast look on it but...
    • 4 days 13 hours ago

More Topics »