FunDuino Graduation Project Seminar:

Slides:



Advertisements
Similar presentations
Manar Mousa Al-Hamaidi
Advertisements

MM Player Supervised by: Dr. Luai Malhis. Prepared by: Mustafa Assaf & Mahmoud Musa.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
Haptic Glove Hardware Graduation Project Prepared by Yaman A. Salman Eman M. Masarweh 2012.
Gesture Controlled Car (GCC) By: Ashwaq Alkailany Reema Abubaker Supervised by: Dr. Luia Malhis.
Controlling Robot Car via Smartphone Supervisor: Dr. Jamal Kharousheh Prepared by : Hamza Qaddara Esmat Hedariya Hareth Hanani Faculty of Engineering Telecommunication.
Department of Electrical and Computer Engineering He Zhou Hui Zheng William Mai Xiang Guo Advisor: Professor Patrick Kelly ASLLENGE.
Move With Me S.W Graduation Project An Najah National University Engineering Faculty Computer Engineering Department Supervisor : Dr. Raed Al-Qadi Ghada.
OutLine Overview about Project Wii Robot Escaper Robot Problems and Solutions Demo.
Creating Games Brainstorming Session. The Plan We will use computer parts to create our characters in the computer games We will work to design two kinds.
Engineering 1040: Mechanisms & Electric Circuits Fall 2011 Introduction to Embedded Systems.
Computer Hardware and Software Chapter 1. Overview Brief History of Computers Hardware of a Computer Binary and Hexadecimal Numbers Compiling vs. Interpreting.
There are different types of translator. An Interpreter Interpreters translate one instruction at a time from a high level language into machine code every.
TECHNOLOGY. Computer games have always been driven by technology. For many years it was advances in graphics that changed the way computer games were.
Live Action First Person Shooter Game Patrick Judd Ian Katsuno Bao Le.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Project Description. This project aims to monitor an area through a camera, transmits the video wireless.
AMMAR HAJ HAMAD IZZAT AL KUKHON SUPERVISOR : DR. LUAI MALHIS Self-Driven Car.
Department of Computer Engineering College of Engineering An-Najah National University Prepared by : Saif Marwan & Osama Nabulsi Supervisor Name: Dr. Luai.
InfraRed Chat System Graduation Project 2. Introduction Now a day many systems are working hard to make different types of data transformation.One of.
RomoRobot Feras Khateeb Yousef Azem supervisors Dr.Raed Al-Qade Dr.Lui Malhis.
Prepared by: Areen Jondi Diala Hamadneh Supervised by: Dr. Raed Alqadi Dr. Luai Malhis.
GemIsland Prepared by: Areen Jondi Diala Hamadneh Supervised by: Dr. Raed Alqadi Dr. Luai Malhis.
Network Embedded Systems Wireless Video Game Controller James DiCicco Rebecca Loeser Dash Winterson Dhinakaran Dhanaraj.
 The TenCup Entertainment Table is an interactive table that enhances the game-play experience of Beirut for both the player and the spectator.
Graduation project (Hardware Project) Prepared By : Sadiq Al-Haj M.Abu-baker.
1 A Basic Introduction to Flash. Outline What is a flash? Macromedia Flash MX 2004 Flash concepts Flash Demos Conclusion Additional help 2.
Introduction CSE 1310 – Introduction to Computers and Programming Vassilis Athitsos University of Texas at Arlington 1.
Lab 1 Summary.
VEHICLE BACK UP ALARM DESIGN Student: Qi Zhou Mentor: Dr. Stanislaw Legowski.
Introducing Scratch Learning resources for the implementation of the scenario
CSE 341 Project : Ultrasonic Radar PRESENTED BY: NAME : AKIFA TASNEEM ID : SECTION: 02 1.
Every week: Sign in at the door Have Fun Ask Share CoderDojo Roscommon "Above.
DALCON RFID IMPROVEMENT ECE 599, SPRING 2011 Brad Gasior, ECE Mike Fradkin, ECE Richard Young, ECE Sean Rinehart, ECE.
Michael Rahaim, PhD Candidate Multimedia Communications Lab
Intelligence Crane By: Maysoon Ashayer Muna Sholi Supervised by:
Computer Graphics: An Introduction
Hand Gestures Based Applications
Obstacle avoiding robot { pixel }
Arduino Based Industrial appliances control system by decoding dual tone multi frequency signals on GSM / CDMA network. Submitted by:
Auto baby Cradle Prepared by : Isra’ Alqarout Zainab Qurie
Depth Analysis With Stereo Cameras
Prepared by: Raghad J Foqha Supervisor: Dr. Saed Tarapiah
CNC Engraving Machine An-Najah National University Computer Engineering Department Hardware Project Supervised By: Dr. Luai M. Malhis Examiners.
Outline Introduction Standards Project General Idea
Monitoring Robot Prepared by: Hanin Mizyed ,Abdalla Melhem
An-Najah National University Computer Engineering Department Software Graduation Project (66581) Supervised By: Dr. Luai M. Malhis Examiners.
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Accelerometer-Based Character Recognition Pen
ARDUINO LINE FOLLOWER ROBOT
Dystopia game Amjd , Iyad , Haytham.
Directional Driver Hazard Advisory System
Drill Translate the following message:
Introduction CSE 1310 – Introduction to Computers and Programming
Chapter5.
SAFE (Smart Agency For Entities)
Topics Introduction Hardware and Software How Computers Store Data
Game Loop Update & Draw.
Enable Talk Prepared By: Alaa Mayyaleh Shurouq Abu salhiah.
Games Development Practices Sound Effects
There are different types of translator.
The Challenge of Cross - Language Interoperability
Accelerometer-Based Character Recognition Pen
Remote Firework Launcher
By Alaa Dwikat Mohammad tami Supervised by Dr. Samer Arandi
Hardware Graduation Project (2) Seminar
So you want to be a Game Designer
Introduction to arduino
Workshop On.
Presentation transcript:

FunDuino Graduation Project Seminar: “Microcontroller-based Wirelessly-Controlled Video Game System” Supervised by: Dr. Luai Malhis. Prepared by: Suad Seirafy. Fatima Zubaidi.

Outlines: Introduction Applications Hardware Progress Problems Future Work Conclusion

Outlines: Introduction Applications Hardware Progress Problems Future Work Conclusion

Wireless communication is becoming essential ! Introduction.. Trend*: Build systems that depend on tiny microcontrollers instead of large, complex computers. Wireless communication is becoming essential ! In Today’s world: the Video Game Industry is one of the largest and quickest growing industries.

Introduction.. Our Goal: Build a video game system based on microcontrollers only, that allow the users to play wirelessly and compete with each other.

Wirelessly controlled Video Game System So, What Do We Need?! Wirelessly controlled Video Game System “FUNDUINO”

Introduction.. What does FunDuino give?** Interactive play (Competition). Multi-level games (Challenge). Portable system (Mobility). Colored images and clear sound (Fun).

Outlines: Introduction Applications Hardware Progress Problems Future Work Conclusion

Applications.. First Game “ Asteroids” We used existent demo from gameduino website and integrated it to our system. So we were able to play it on our microcontroller using user controller

Applications.. Second Game “ Pacman” A multi-level, content-driven PacWoman game in which the player can design the maze of the game using a C# application, then he can choose a level from the levels menu and start playing.

Applications.. Second Application “ Frogger” An interactive(2-players) game in which each player tries to move his frog from one side of the road to the other while avoiding obstacles with a certain number of lives, at the end there will be one winner.

Hardware…* Game overall system !

Hardware… User Controller Side PIC18F4620

Hardware… User Controller Side Accelerometer MMA7260Q (Tri-Ax breakout)

Hardware… User Controller Side Flex sensor

Hardware… User Controller Side XBEE 4214A S1 transceiver

Hardware… Game Main Side* soret el arduino Main Microcontroller: ATmega328

Hardware… Game Main Side XBEE receiver shield

Hardware… Game Main Side Gameduino Adapter

What is Gameduino ? Gameduino is a game adapter for Arduino (or any other microcontroller with an SPI interface). It is controlled via SPI read/write operations Features : Outputs for a VGA monitor. Outputs for stereo speakers. Video output is 400x300 pixels in 512 colors. 256 characters, each with independent 4 color palette.

Progress.. Software Tools   PIC C Compiler: In the user controller side in order to write the C code for PIC18F4620 microcontroller and produce the hex file. Arduino0023 Compiler: In the main part to program the ATmega328 microcontroller. SPI and GD Libraries: helped us dealing with the gameduino.  Gameduino Online Convertor Tool: To convert the backgrounds and the sprites used in the games to the corresponding header files.

The new technology …Gameduino ! Sprites graphics : The hardware always draws sprites in order, from lower-number to higher. Memory at 3000-37FF (RAM_SPR) holds the control data for the 256 sprites. Each sprite is controlled by a 32-bit value: collision class (J or K) membership (bit 31). source image 0-63 (bits 25-30). Y coordinate 0-511 (bits 24-16). palette select 0-15 (bits 12-15). rotation and flip 0-7 (bits 11-9) X coordinate 0-511 (bits 8-0)

Gameduino Sound: The hardware sound is based on a system of additive synthesis. There are 64 independent voices : each voice generates a tone at a specific frequency. Each voice has a waveform select bit (sine vs noise), and left and right amplitude values

Gameduino Sprite collision detection: The gameduino has special memory area that you can use to detect when sprites overlap. Gameduino keeps track of which pixels cover others, and writes the result into the collision RAM. Each byte in the collision RAM corresponds with the same ??? numbered.

Gameduino Sprite Rotate : Each sprite has a 3-bit ROT field that applies a simple rotation and flip to the sprite image By using these in combination, the sprite image can be rotated.

1. PIC (User Controller side) reads sensors data from the ADC Progress..System Flow 1. PIC (User Controller side) reads sensors data from the ADC

2. PIC sends the data (Using Tx and Rx) to the XBEE sender. Progress..System Flow 2. PIC sends the data (Using Tx and Rx) to the XBEE sender.

3. XBEE Receiver (Game Controller Part) receives the data. Progress..System Flow 3. XBEE Receiver (Game Controller Part) receives the data.

4. Arduino (main side) reads data from the XBEE. Progress..System Flow 4. Arduino (main side) reads data from the XBEE.

5. Arduino communicates with the Gameduino using SPI operations. Progress..System Flow 5. Arduino communicates with the Gameduino using SPI operations.

Progress…Games development Sprite control Asteroids Pacman Frogger (2-players) Frogger (1-player) Pacman (multi-levels)

Progress.. Sprite control First Step in gameduino world. control a simple sprite (up, down, left and right) via the user wireless controller by moving the accelerometer to the corresponding direction.

Progress.. Asteroids Integrate the user controller part with an existing demo from the gameduino.

Progress.. Pacman This our first complete game in the gameduino world.

Progress .. Pacman development Designed all maze pieces using Photoshop and use them as sprites.

Progress .. Pacman development Add Pacman sprite.* add another msakar tmo Add Pacman and ghosts sprites.

Progress .. Pacman development Wrote the logic of the game which includes moving the Pacman depending on signals received from the user controller. random movement of ghosts. collision detection between Pacman and ghosts. score increasing depending on the pills eaten . refreshment of the background .

Pacman (multi-levels) This is the second version for Pacman game. We developed it to be 3 levels, the levels are differs in: ghosts number complexity of the maze.

Frogger (1-player) This is our Seocnd Game. Frogger

Frogger development Brought an existing background image for Frogger game and converted it using online converter. Designed the rest of sprites and convert them also (homes, cars, ..) Design the logic of the game continues movement for some sprites. moving Frogger depending on signals received from the user controller. collision detection between Frogger and some sprites. scores calculation. lives calculation. refreshment of backgrounds and sprites

Frogger (2-players) This is the second version for Frogger game. Two players each one tries to reach the second side carefully and build more homes there. Each one has a score and limited number of lives.

Problems.. Thinking of a way to produce a high quality VGA output. Getting Started with the gameduino world since the online resources are limited !. Arduino was not receiving any data using the regular XBEE shield because of the noise from the wires. The problem was solved just when we built our own shield for the receiver in a way that reduces the noise as much as possible.

Future Work.. As a future work for our project, we are thinking to develop it to become a content- driven game engine, also there is a plan to add SDCARD to the main controller in order to include huge gaming systems (a lot number of games with multi levels).

Thank You