capstone final presentation jason dahn chessmate … · application & usage designed to help...

18
ChessMate Capstone Final Presentation Jeremiah Schultz Alex Babicz Philip Lo Jason Dahn

Upload: lynhan

Post on 27-Aug-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

ChessMateCapstone Final PresentationJeremiah SchultzAlex BabiczPhilip LoJason Dahn

What is ChessMate?

An interactive, LED-illuminated chess board that enhances a player's experience by providing various digital board augmentations

● These include multicolor LEDs that illuminate the valid moves for a player when they pick up a specific piece

● ChessMate senses which piece is picked up, computes all of the possible moves that a piece can make based on the game's current state, and displays the moves via colored LEDs beneath the game surface

● Players are provided with a physical representation of their nextmoves beneath the playing surface

Application & Usage

● Designed to help visualize chess moves on the playing surface○ “Middle-man” between player’s thought-process and game-board

● Applicable to players of all skill levels○ Assist new players in learning possible moves for each piece

○ Complement experienced user’s knowledge with visual representation

● Provides visual representation of the entire game○ Does not provide either user with an advantage/disadvantage

○ Move decisions are still made by the user

○ Simplifies the thought process in determining your next move

Development Team

● Jeremiah Schultz (Lead): Move-generation algorithms, button interface design, game-flow design

● Philip Lo: LED driver software development, LED/Sensor enumeration and construction, sensor addressing

● Alex Babicz: Hardware & external peripheral construction, interrupt routines, sensor calibration

● Jason Dahn: SSP interface, Hardware-Software sensor interfacing, piece-tracking algorithms

Design-Layout Abstraction

Simplified Design

IR Proximity Sensors

Vishay TCRT1010

ControllerLPC4088

(Cortex-M4)

Adafruit Multi- Color LED Strip

Game Board Surface

Digital SSP

No electricalconnection

Design Process Overview

● Component selection○ Sensor type (RFID, IR, pressure sensitive), individual LEDs or strips

● PCB Design & Fabrication○ Schematic○ PCB Layout/Artwork

● Hardware development○ Game surface and external peripherals

● Software development○ Move-generation and piece-tracking

● Final Product○ Subsystems combined to produce final implementation

Virtual and Assembled PCB

IR Proximity Sensor

● Infrared Proximity Sensor○ Detects when a piece is on/off a square○ Tweaking was needed to find “sweet spot” detection distance

● Analog output - converted to digital for simplicity○ Inverter performs the conversion from analog to binary○ Binary 0/1 inverter output indicates if space is occupied or not○ Sent as a low/high voltage to GPIO on PCB

● One sensor per square = 64 total○ Common GND/voltage for each sensor○ Unique sensor lead passed through inverter○ Board reads sensors and updates piece location via software

Circuit Diagram:

Digital RGB LED Strip

● Digitally controlled LEDs○ Individually control each LED○ 1 daisy-chained strip for the entire board

■ 2 separate power sources

● LEDs illuminate a possible/valid move○ Valid move - GREEN○ Calibrated square - BLUE○ Eliminate a piece - RED

● 1 strip placed beneath each row○ One LED per square○ Daisy chained connection - serially load bits○ Drive via SSP through software

Snappable ProtoBoard

● Bridges the external and on-board PCB components○ Sensor and LEDs communicate with PCB but are off-board○ Only unique signals need to be sent to/from the PCB

● Simplified connections○ Allows for common GND/Vcc for all sensors○ Placed at optimal sensing and wiring distance beneath surface○ Reduces required number of wires coming from PCB itself

● Debugging is heavily external - simplicity!○ Few components physically on the PCB itself○ Isolate problems off of the board - no need to resolder components

Move Generation and Piece Tracking● Game-state is tracked using a multi-dimensional, array-based implementation

○ Initial positions of pieces are always known○ One move per turn○ Update memory according to each move made throughout the game

● Piece-specific move-generation algorithms compute valid moves for an individual chess piece

○ Individual algorithm for each piece

○ When piece is picked up, processor uses the stored algorithm and game-state to analyze the board and provide user with valid moves

● Button Communicates with the processor to signify when a player has made a decision

○ Allows user to change their mind○ Only reading data from sensors when necessary

LIVE DEMO

Any volunteers?

Game Flow

● Pieces begin in their initial positions as any normal chess game● Player picks up a piece and waits for blue calibration light to appear beneath

that piece’s tile○ Once the tile is illuminated blue, the user presses the button to display their valid moves

● Upon a button press, ChessMate computes and displays all possible moves for the piece chosen by the user

○ User can make a move or return their piece to its original position○ Button press after returning piece to the board to signify end of turn

● Process is repeated throughout the game until a winner is decided○ Normal chess rules as any other game - only difference is the LEDs!

Future Developments & Features

● Completely eliminate button interface to make moves display automatic● Customizable LED colors for players & their respective moves● LCD touch-screen to provide a fluid UI

○ Track pieces taken, player turns, last moves made, turn timers, etc.

● Make use of bluetooth for mobile app○ Allow an advisor to suggest moves, which become illuminated beneath the board○ Allow spectator to view game-state remotely from a mobile device○ Keep game history, high scores, add commentary

Cost Analysis

● Circuit pieces: <$90○ LED Strips, IR Sensors, inverters, protoboards, resistors, wires

● Physical pieces: <$50○ Chess pieces, glass, wood

● Manufacturing: <$400○ Building an individual board

● Prototype total: <$600

● Mass production dramatically reduces costs!○ Mass-manufacturing ~10% cost, components built-in,

physical pieces mass-produced○ Easily marketable as a consumer product

Challenges Faced & Key Takeaways

● Wiring Mess - several wires per component○ Minimum 64 sensors/LEDs for entire enclosure

● “Simplest” features ended up taking longest○ SSP & LED interfacing non-trivial○ Sensor calibration required to accurately sense data

● Start Early & Stay On Track!○ Milestones are crucial to not falling behind

● Redundant paths are definitely necessary○ Touchscreen -> Bluetooth -> button○ Extra GPIOs○ Test headers on important (AKA all) signals

Q&AThanks for tuning in!

We’ll take any questions or comments you have