340 likes | 505 Views
Knight Bright Group #1: Robin Adams Nathan Doran Tyler Hemp-Hansen Shaun Sontos. What is “ Knight Bright ”?. Knight Bright is a 2-dimensional, 100 (10x10) pixel tabletop interactive LED (RGB) gaming system.
E N D
Knight BrightGroup #1:Robin AdamsNathan Doran Tyler Hemp-HansenShaun Sontos
What is “Knight Bright”? • Knight Bright is a 2-dimensional, 100 (10x10) pixel tabletop interactive LED (RGB) gaming system. • The primary motivation behind this project is to develop a fun, easy to use, user-programmable interactive tabletop.
Project Goals • Use a (secondary) MCU to control an array of LEDs via LED PWM drivers • Transmit the output of an IR sensor circuit into a (secondary) MCU • Establish serial communication protocol that enables reliable communication between MCUs • Successfully integrate Bluetooth capabilities into the project • Develop an mobile peripheral application • Successfully integrate user programmable and memory expansion capability • Develop a host programming GUI environment
Game Programming • Desktop programmer GUI can make games and upload them to the board • Simplified C compiler • Program stored as files on a SD card. Each character represents a assembly command or modifier specific to this application • Large storage space for many programs
Compiler Parser Lexical Analyzer Input Program Lexeme List Symbol Table Output Machine Code Code Generator
Knight Bright Simulator • Simulator to test games without hardware • Critical for development while assembling and debugging the hardware
Microcontroller • ATmega328P • 3 Microcontrollers • Primary microcontroller – Fetches and executes instructions from the program file on the SD card. Directs actions to the other microcontrollers. • Display microcontroller – Executes commands related to LEDs and graphics • Input microcontroller – Addresses and monitors IR sensors. Reports current status back to primary microcontroller
LED Requirements • Diffused common cathode LED bulbs • Maximum driving current of 30 mA per bulb • LED Control Techniques • PWM (S/W or H/W) • Total of 300 LED lines must be sinked • Ultimately, a dedicated LED driver IC was used to drive the LED PWM 5mm Common Anode Diffused RGB LED
TLC5941/5940 • TLC5941 (TI LED driver) • Low cost • Ease of use • Proliferated software support • EEPROM not necessary Human eye only requires ~50-60 Hz, and ~33% duty cycle for smooth pulses. 212 = 4096 levels
LED Driver Control … … Driver 6 Driver 5 • Each TLC5941 IC drives 5 RGB LEDs. • All TLC5941 ICs access their respective LED lines on the board horizontally. • The reference base for this 5 LED row addressing scheme begins at the bottom right corner. Driver 4 Driver 3 Driver 2 Driver 1 5V 7 6 5 3 9 8 4 11 12 13 10 14 2 1 0 LED Driver (TLC5941)
Led Driver Addressing 5:32 Decoder selects 20 Addresses(0 – 19) to XLAT pins LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver LED Driver MODE, SIN, SCLK, BLANK, GSCLK All Common to MCU 5:32 Decoder A2 A1 A0 A4 A3 Driver MCU
PCB and Wood Frame Layout Top Layer 100 Pixel Circuits Bottom Layer Corner sections, PCB, and PSU 2 Layer Frame Layout • Top Layer: IR circuits • Bottom Layer: Four (5x5) Pixel Circuit Corner sections, PCB, and PSU
Sensor Cell Design • General requirements • Each sensor must detect an object in front of the cell to provide input to the device • Each Cell must contain a RGB LED to provide output • Primary Considerations • An intelligent design approach must be used to minimize the number of microcontroller pins needed for user interfacing • The group should also utilize cost efficient methods to meet the requirements
Sensor Array Design Row Select Column Select Sensor circuit Sensor circuit & & Sensor circuit Sensor circuit & & Return to MCU
Pixel Circuit Design • Innovative Solutions • Move Row/Column pull down resistors to Decoder output • Voltage divider • Jump output ‘A’ to input to ‘B’ for 3 input gate • Diode added to return line to prevent back feeding into and gates
Wireless Method • For use with an mobile device, the most prevalent methods are Bluetooth and Wi-Fi • Other wireless technologies were tossed out because of the added cost of an adapter to the mobile device • In the end, Wi-Fi is simply overkill for the application
Mobile Application Platform: • Android has a familiar environment with Java Eclipse • Vast libraries, specifically one for Bluetooth usage • Open source and many support tutorials and explanations • Easy drag and drop style GUI creator Features: • The user is able to select what program is running on Knight Bright • For certain programs the App will be used as a controller • Text input from the App to the device • Grid for one to one control
TDK-Lambda LS200-5 Note: Careful component selection lead to a need for only 1 voltage regulation device for the Bluetooth chip (.05 x 1.7 = .085 Watts)
Testing • By designing isolated regions the board was able to be tested one quarter at a time • A ‘change of state’ test program was generated which included all basic colors and a response to positive return