Giter Site home page Giter Site logo

mahbubiftekhar / robotour Goto Github PK

View Code? Open in Web Editor NEW
7.0 5.0 4.0 277.23 MB

RoboTour is a robotic tour guide that assists people in environments such as museums or art galleries. The system comprises of an autonomous robotic guide, a purpose built Android application, and a web server mediating the communication between the two.

Home Page: https://www.mahbubiftekhar.co.uk

License: MIT License

Python 3.90% Kotlin 21.76% Shell 0.01% C++ 0.06% C 0.30% Makefile 0.16% Jupyter Notebook 73.54% PHP 0.27%
robotics kotlin-android ev3dev kotlin python3 museum assistive-robotics assistive-technology android-app android-application

robotour's Introduction

SDP - GROUP 18 - 2017/18

 

RoboTour is a robotic tour guide that assists people in environments such as museums or art galleries. The system comprises an autonomous robotic guide, a purpose-built Android application, and a web server mediating the communication between the two. Up to two Android devices can control RoboTour and followed by many more. The app allows users to interact with RoboTour intuitively in multiple languages. RoboTour has been designed for minimal maintenance; once the initial setup has been performed.

RoboTour Promotional Video

Directed by Finn, Actors: Alice, Mahbub and Michal

The System Design Project is intended to give students practical experience of

(a) building a large scale system

(b) working as members of a team.

The Systems Design Project is a University of Edinburgh, Semester 2 module, SDP is a group project involving the construction of an item of significant complexity under conditions designed to give insights into industrial teamwork.

It is a 20 credit course with design, construction and assessment through the semester, ending in a demonstration day with industry visitors.

More detail about the course and how it will run this year are in these slides from the introductory lecture held in semester 1 Professional Issues.

The Project

SDP 2017/2018's task is to use Lego and an Arduino to design an assistive robotic device, with an appropriate software interface.

Flexibility was given to set your own goals for this task, but here is an example of what you could attempt: a person indicates an object on the floor with a laser pointer, and the robot picks it up and returns it to the person.

Groups

The class is assigned to groups of 7 or 8, each responsible for the development of a single robot. Assessment involves group marks for the product (performance and documentation of the robot systems).

Each group had an assigned mentor, with whom they meet around once a week, and who offers advice and monitors progress, but - importantly - does not lead or manage the group. Advice on how the group should organise themselves for good project management will be provided. Problems within the group should first be brought to the attention of your mentor; if you have an issue with your mentor, you should bring this to the attention of the SDP TA (see below).

The project involves applying and combining material from several courses to complete a complex design and implementation task. At the end, of course, each group demonstrates its implemented system and gives a formal presentation to an audience of the students, supervisors, and visitors from industry (E.g. Google, Amazon, KAL, Robotical).

DRPS SDP 2017/2018

The project was developed for System Design Project at the University of Edinburgh. All 20 projects were assessed by external judges from industry (e.g. Google, Amazon, Accenture, KAL, Sky). Team RoboTour was awarded the Technical Innovation Prize

RoboTour provides four key features to enhance the user’s experience

  • Multi-language support in Human-Robot Interaction via speech and app
  • Guides visitors to a specific art piece and points it out to the user
  • Plays audio description of art pieces in the language the user selected
  • Provides recommendations and optimal route planning routes

RoboTour assists people who have one of the following problems:

• They’re a museum visitor who needs directional assistance
• Or they’re a visitor who cannot read the displays in the museum whether this is because they cannot read the language or because they have problems with their vision.

RoboTour robot can interact with visitors and guide them to the piece of art they are looking for by moving with the user through the museum and pointing out the art piece upon arrival.

There are three main components to RoboTour:

  • Android App - Responsible for allowing the user to select paintings they wish to go to and send commands to the robot.
  • Server: All Android devices communicate to the robot via the server. The server is responsible for mediating and storing commands between all Android devices and the robot. The purpose of having the server is to allow multiple android devices to communicate with the robot.
  • Robot: Oversees path planning and navigation around the museum

The app is backwards compatible with older versions of Android; the app will work with Android SDK version 17 onwards (users also require 20mb free space and an internet connection). The app was developed in Android Studio 3.1 using Kotlin.




The robot is a differential drive platform, i.e. the movement is achieved with two motorised drive wheels. Varying the rotational speed of the wheels independently, allowed us to introduce rotation of the chassis in addition to the linear translation. Additionally, two rear wheels are added for stability and weight support. They were designed with the aim of minimising the friction and disturbance of the robot control.





To install the app on an Android device, installation, you are required to enable [Unknown Sources](https://www.androidcentral.com/unknown-sources).
This feature is turned off by default on stock Android, and can be turned on by following these steps: 

Device Settings ​-> ​Advanced Settings ​-> ​Security ​->​ Enable Unknown Sources  

Once the app is downloaded, go to the Downloads folder on your phone and click on the apk or select it from the notifications bar. Follow the installation instructions. Once installed the app will be in your App drawer under RoboTour. Tap the app to open it. 

Group Members

Contact us

You are welcome to visit out Facebook page or send us an e-mail on [email protected]

References

MIT License

Copyright (c) 2018 RoboTour Authors

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

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.