Giter VIP home page Giter VIP logo

tivac-based-map-router's Introduction

GPS Tracking System

Our project consists of three main components:

  1. TM4C123GH6PM microcontroller
  2. Ublox NEO-6m GPS Module
  3. Trajectory Plotter web python based app

Project features

  • serial watchdog with esp-32 to monitor the operations and easily debug code.
  • flask web server to update the location.
  • shortest path algorithm (A*) along with some other algorithms and structures.
  • lcd to print current latitude and longitude beside the accumulated traveled distance.

TODO

  • sensor fusion algorithm with IMU (gyro, accel, magnetometer) to compensate the considerable gps error, also it is a must in high speed scenarios like driving a car. The best and easy-to-implement algorithm is Extended Kalman filter.

  • implementing RTOS, the simplest algorithm is Round-Robin, which will prove beneficial in multi-sensor setup

  • implementing interrupt.

  • adding simple voice commands to direct the user towards the destination

  • correction methods for the distance function

Team Members

Names id
Mahmoud Mohamed Mahmoud Ahmed 2001261
Kareem Amr Mohamed Soliman 2001033
Mahmoud Mohamed Ali Soliman 2001866
Mohamed Ahmed Samir Amin 2001876
Mohamed Yaser Elsaid 2001226
Yousef Mohamed Ibrahim Mohamed 2001496
Mohamed Mahmoud Rezk 2002114
Abdalrahman Esaam Mohamed Elemam Elemam 1900771

implementation

Ports and pins Configuration

GPS NEO-6m

pins GPIO pins
VDD Vbus
GND GND
TX PE4 *** uart5_rx ***
RX PE5 *** uart5_tx ***

LCD

pins GPIO pins
VDD Vbus
GND GND
V0 POT
RS PB0
RW PB1
E PB2
D4 PB4
D5 PB5
D6 PB6
D7 PB7

idea of working

  • When the tiva lunch it first wait for the gps to receieve sentances displaying loading
  • when it starts working we use
    SW1 ---> set the current location as the end point
    SW2 ---> set the current location as the start point

Usage

LINUX platforms

  • First, download the tivaware (either the full SDK version or TM4c123gxl) from here, this step requires TI account.

  • Clone the project to your local machine

git clone https://github.com/mohamedrezk122/tivac-based-map-router
  • Follow this tutorial on how to setup lm4tools( for flashing binaries to the board), and tivaware.

  • Open terminal in project directory and execute the following commands

mkdir build
cmake ..
make 
sudo make flash   

tivac-based-map-router's People

Contributors

abdalrahmanessam avatar kareem-007 avatar ma7moud-x avatar mohamed-ahmedsamir avatar mohamedrezk122 avatar moyaser315 avatar yousef-m0usa avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.