ece 477 final presentation team 03 - spring 2013
DESCRIPTION
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. - PowerPoint PPT PresentationTRANSCRIPT
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
2I2C
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• Communication
o Communicate between microcontroller and Raspberry Pi via I2C
o Microcontroller acts as EEPROM slave to Raspberry Pi
Joshua's Contributions• Suggested the original idea• Hardware
o Built Early Prototypeso Estimated Power Requirementso Created Circuit Schematic
• Researched Patent Liability• Plotted High Level Flowchart• Microcontroller Programming
o 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 interface
o 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 packaging
o 3D Printed hexagons
Robert's Contributions• Initial prototyping of LED drivers• PCB Layout
o Hand routed 20.5"x16" PCB with hundreds of components
o Trace width calculations for extremely long traces
• PCB Populationo Soldered many componentso Debugged and fixed errors in the PCB
• Package Construction• Web application
o 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 software
o 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