Code Monkey home page Code Monkey logo

picontroller's Introduction

piController

A graduation project started developing at Çanakkale Onsekiz Mart University in September 2018. Finished developing at June 2019.

Getting Started

    Our main goal is to create a vehicle which is semi-autonomous and controlled with android device. We can manually control it via using TCP. Manual Control Script is always working and listening incoming TCP packets from phone. We are sending 4 different digits 2,4,6,8 as backward, left, right, forward from Android to Pi. When we let go any direction button, it sends digit 0 as to stop the vehicle.

preview

Demonstration of Manual Controlling

Semi-Autonomous Drive

    When vehicle is booted GPS Stream, Camera Stream, Stepper Motor Loop, Semi-autonomous Script Python scripts starts automatically. We can do this by editing /etc/rc.local file on device. On Android application first we hit GPS button and vehicle location shows on map. Then we pick a target location by either touching on the map or typing on Latitude, Longitude Textboxes. After picking a target location we hit SHOW button. SHOW button sends the selected target location to vehicle and when vehicle receives the target location it notifies the Android application. Then we can hit START button to simply start the process.

    The vehicle computes azimuth to target location and turns its heading to target. When vehicle faces the right way, it starts to move towards the target. As vehicle move towards the target it simultaneously checks for 2 things: Obstacles in front of the vehicle and if it's arrived to target location.

    Obstacle detection is achieved by ultrasonic sensor (HC-SR04). The sensor continuously checks the front, right and left of the vehicle as it is rotated by the stepper mottor attached to it. If it detects obstacle near 60 cm. of the sensor, it counts as the vehicle encountered an obstacle, and stops the autonomus driving. It sends a warning to Android application as to switch to manual driving and the vehicle detected an obstacle.

    If the vehicle doesn't encounter any obstacles, it goes forward to target and continously checking the current GPS location of vehicle and how close it is to target location. When it's 5 meters or closer to target location, it stops and notifies the Android application that the vehicle has arrived to target.

preview

Demonstration of Semi-Autonomous Drive

Authors

See also the list of contributors who participated in this project.

picontroller's People

Contributors

alimoncul avatar bboz avatar erenkundakci avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  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.