170 likes | 279 Views
Software Narrative. (Left to Right) Matt Finn Brian Crone Samuel Oshin Yonatan Feleke. Project Overview. Future Cash Register
E N D
Software Narrative (Left to Right) Matt Finn Brian Crone Samuel Oshin Yonatan Feleke
Project Overview • Future Cash Register • The future cash register is a point of sale box designed to make transactions completely wireless through the use of the NFC technologies. It will accept payments and send receipts through NFC. It will also aide the cashier with ordering through voice recognition
Project-Specific Success Criteria Ability to customize the inventory via the user interface (Atom) Ability to communicate with an NFC device (dSPIC30) Ability to interface with an IR sensor to detect the presence of a user (dSPIC30) Ability to display prompts to user through LCD (dSPIC30) Ability to aid cashier by highlighting menu choices while placing order with voice recognition (Atom)
Microcontroller • dsPIC30F5011 • Architecture: 16-bit • CPU Speed (MIPS): 30 • Memory Type: Flash • Program Memory (KB): 66 • RAM Bytes: 4,096 • Operating Voltage Range: (V) 2.5 to 5.5 • I/O Pins: 52 • Pin Count: 64 • Internal Oscillator: 7.37 MHz, 512 kHz • Digital Communication Peripherals: 2-UART, 2-SPI, 1-I2C • Analog Peripherals 1-A/D 16x12-bit @ 200(ksps) • Timers 5 x 16-bit 2 x 32-bit
Software Design Consideration • Split into 3 parts • Atom • Microcontroller • Tester
Atom Application • Devloped in C# • 6 Modules • GUI • Restaurant/Menu class structure • Voice Recognition • Serial communication with micro • Cryptography/Security • Database backup
Modules • GUI • Ordering screen • Checkout/payment screen • Admin screen • Restaurant/Menu Class structure • Top level class: contains inventory, restaurant info, and admin password • Inventory class: contains lists of menu items along with lists of combo items • Menu Item class: contains item name, price, description, keywords, possibly picture • Combo Item class: contains list of menu items included in combo, name, keyword, and price
Modules Cont. • Voice Recognition • Uses System.Speech.Recognition namespace • Serial Communication • Uses SerialPort class from System.IO.Ports namespace • Cryptography/Security • Uses System.Security.Cryptography namespace • Possibly AES • Will encrypt before storing onto hard drive • Database - managed on SQL server
Micro Controller Application • Micro Controller: • Poll infrared • To identify if customer is near • Send a “Go” signal • Through UART to COM port. • Wait for “Pay” signal • Send to LCD • Place NFC close to red circle
Micro Controller Application • Micro Controller • Poll NFC until not empty • Read through SPI • Send a “Pay” Signal • With Credit Card Credentials • Wait for “Receipt” Signal • Store Receipt to Ram • Write to NFC FIFO Manager • Send Through SPI to NFC
Block Diagram Part 1
Block Diagram Part 2
Tester Application • Android SDK • Android App in development • Will be using an NFC Enabled Device to test
Questions? Be Gentle