Skip to content

E-yantra/AndroidBasedTennisBallCollector_group14_cs308_2012

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 

Repository files navigation

2012 - CS308 Group 14

Project Android Based Tennis Ball Collector

2012 - CS308 Course Project
Project website : e-yantra.org
It is developed as a Embedded and Real Time Systems course project at Indian Institute of Technology (IIT Bombay)

Project Description

The aim of our project is to build a completely remotely controlled Firebird using the power of Android. What we have choosen to demonstrate is this project.

Android mobile processes the video stream (received via Wi-Fi) captured by the IP camera mounted on Firebird V bot, detects the presence or absence of TT ball and sends appropriate signal to the bot via Bluetooth. The bot then analyses the signal received and acts accordingly.

Team Members

Team 14

  1. Hasan Kumar Reddy (09005065)
  2. Vinod Reddy G (09005071)
  3. Bhanu Prakash (09005050)
  4. Avinash T (09005056)

Extension of

Tecnologies Used

  • Embedded C
  • JAVA
  • Android
  • Bluetooth
  • Gripper
  • OpenCV

Project Setup

  • Setup the as shown in Hardware manual
  • Install /bin/RemoteTennisBallCollector.apk in your mobile
  • Burn the firebird/defult/Tennisball.hex onto firebird
  • Connect both IPCamera and mobile to same Wi-Fi network
  • Start the Application
  • Enjoy!

Modules - code description

Android

  • root folder of the project/ ** jni/ ** libs/ ** res/ ** src/ ** AndroidManifest.xml ** default.properties ** ... other files ... where
  • the src folder contains Java code of the application,
  • the res folder contains resources of the application (images, xml files describing UI layout , etc),
  • the libs folder will contain native libraries after successful build,
  • and the jni folder contains C/C++ application source code and NDK’s build scripts Android.mk
    and Application.mk. These scripts control the C++ build process (they are written in Makefile language).
    Also the root folder should contain the following files
  • AndroidManifest.xml file presents essential information about application to the Android system
    (name of the Application, name of main application’s package, components of the application, required permissions, etc)
    It can be created using Eclipse wizard or android tool from Android SDK
  • default.properties is a text file containing information about target Android platform and other build details. This file is generated by Eclipse or can be created with android tool from Android SDK
  • src\com\eyantra\android\tennisball ** BallCollectorActivity.java - main class which does all control actions ** Bluetooth.java - Bluetooth communciation module ** DeviceListActivity - List the dveices for bluetooth ** OpenCV - OpenCV Java wrapper for C++ files in jni/ folder ** ReloadImageView - Class to reload images at regular interval (not used)
  • res/ ** layout/ - main layout ** drawable/ - images and sub-layouts used ** *values/strings.xml - Strings used in code
  • jni/ ** cvjni.cpp - contains C++ Open CV functions to be used in other places ** cv/ and cvcore/ - opencv library files

Firebird

  • Tennisball.c - firebird controller actions. Receives signal from Bluetooth and acts accordingly.

Developer's Setup

Use the Hardware and Software Setup manuals for complete set of instructions.

Softwares Setup:

Troubleshooting

  • Google it!

Hardware Setup:

  • Refer the Hardware setup manual complete set of instructions.

References


Copyright & License

ERTS Lab, IIT Bombay 2012
Copyright © 2010, ERTS Lab IIT Bombay [email protected]
All rights reserved.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  • Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

  • Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

  • Neither the name of the copyright holders nor the names of contributors may be used to endorse or promote products derived from this software without specific prior written permission.

  • Source code can be used for academic purpose. For commercial use permission form the author needs to be taken.

THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

Software released under Creative Commence cc by-nc-sa licence.
For legal information refer to:
http://creativecommons.org/licenses/by-nc-sa/3.0/legalcode


About

CS308: Embedded Systems Lab Course Project

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published