ECE 477 Final Presentation Team 03 - Spring 2013 Ryan Pawling Spencer Julian Josh Hunsberger Robert...
-
Upload
genesis-neal -
Category
Documents
-
view
216 -
download
0
Transcript of ECE 477 Final Presentation Team 03 - Spring 2013 Ryan Pawling Spencer Julian Josh Hunsberger Robert...
ECE 477 Final Presentation
Team 03 - Spring 2013
Ryan Pawling Spencer Julian Josh Hunsberger Robert Harris
Outline
• Project Overview
• Block Diagram
• Design Challenges
• Individual Contributions
• Project Demonstration
• Questions and Discussion
Project Overview
• What is "Hackers of Catron"?o An electronic Settlers of Catan® board.
Settlers of Catan® is a resource gathering and trading board game in which players compete to build the largest economy.
• What we will improve upon?o The game is really fun, but it takes too long to
set up. This project shortens the setup process.
o This design makes resource gathering and spending automatic.
o Hackers of Catron simplifies the execution of Catan without adding more complexity.
Block Diagram
USB
llRaspberry
Pi
Web Server AVR32 UC3 B
Microcontroller
(8) Hall Effect
Sensors
Economy Control Logic
RGB LED Driver
Single Hall Effect Sensor
Game Control Code 7
Segment LED
Display Driver
Wifi Acces
s Point
(8) 7 Segs
5 sets (daisy-chained)
(3) RGB LEDs
7 sets (daisy-chained)
Hall18
2
3
8:1 MUX
18 Sets
Addr - 3
SPI
2
I2C
Load Enable
Seg 8
Dig 8
RGB 3
Hall
TWI
Design Challenges• Sense small game pieces at up to 145 specific
locationso Hall Effect sensors spaced properly on large
PCBo Magnetic pieceso Multiplexed signals
• Track and automate trading of resourceso Web application to be multiple device friendlyo Raspberry Pi to act as low-cost web server
• Display a randomly-generated game boardo Color of RGB LEDs denotes resource typeo Seven Segment displays denote rarities
• Create random numberso Random numbers generated by the Raspberry
Pi and microcontroller system clock
Design Challenges• Mapping game positions
o Relational static structure of all positions on the board and their adjacent positions, hexes, and ports
• Creating a development card decko Only allow 25 cards to be drawno Appropriately weighting the cards
• Web application speedo Original CGI based application incredibly slowo Updated to WSGI and significant amount of
Javascript
• Communicationo Communicate between microcontroller and
Raspberry Pi via I2Co Microcontroller acts as EEPROM slave to
Raspberry Pi
Joshua's Contributions• Suggested the original idea
• Hardwareo Built Early Prototypeso Estimated Power Requirementso Created Circuit Schematic
• Researched Patent Liability
• Plotted High Level Flowchart
• Microcontroller Programmingo Test Functionso Board Resource Generationo Dice Rollo Piece Placement Legalityo Longest Roado Raspberry Pi Communication
1
123
14
Spencer's Contributions• Suggested use of Raspberry Pi and Operating
Systemo Tested alternative boardso Tested alternative linux distributionso Set up raspberry pi for use
• Found and tested functions during microcontroller testing
• Assisted with flowchart creation and layout
• Designed and developed original web interfaceo HTML5 and CSS3 Frontendo Python 2.7 backend converted to Python 3
• Developed most of the backend of the version 2 web interfaceo Ported into skeleton structureo Assisted with front end design and
development
• Created parts of the packagingo 3D Printed hexagons
Robert's Contributions• Initial prototyping of LED drivers
• PCB Layouto Hand routed 20.5"x16" PCB with hundreds of
componentso Trace width calculations for extremely long
traces
• PCB Populationo Soldered many componentso Debugged and fixed errors in the PCB
• Package Construction
• Web applicationo Styling of web application user interfaceo Back end (Python) and front end (Javascript)
programmingo Porting of web application to "bottle"
framework
• Project video
Ryan's Contributions• Prototyping
• Packaging design considerations
• Test code written for all interfaces
• Populating PCB
• Packaging construction
• Flowcharts and game logic
• Microcontroller softwareo Low-level functionso Check for legal piece placemento Main game loopo Relational Map of all positions on the boardo Updating the board state
• Debugging Micro and Pi communication
• Project Video
Project Specific Success Criteria
• An ability to generate a random Catan board and represent the resources and their relative scarcity visually.
• An ability to detect the placement of pieces on the board and update game status accordingly.
• An ability to display game status (current scores, resources, etc.) via a web interface.
• An ability to enforce correct turn based gameplay via the board lighting and web interface.
• An ability to handle resource trading between players via the web interface.
Summary
• Hackers of Catron is an electronic version of Settlers of Catan®.
• Large PCB emulates physical boardo Hall Effect sensors detect pieceso RGB LEDs and seven segment displays show
generated game board
• Communication between Raspberry Pi and Microcontrollero Uses I2C for communicationo Microcontroller acts as EEPROM Slave to
Raspberry Pi
• Raspberry Pi hosts web server and acts as Wi-Fi Access Pointo Web application allows players to see/use hand
and score
• All success criteria met