2012: A Home Odyssey
description
Transcript of 2012: A Home Odyssey
2012: A Home Odyssey
Senior Design Group #5 (Summer 2012)
Members:Kyle D‘ArcangelisJohn EdisonHeston PosnerJimmy Wong
• Home Automation System
• Wireless Communication between Subsystems
• Android-based Application Control
• Lighting, HVAC, Television
Overview
• Reduce energy consumption• Reduce cost• Compact• Reliable• Easy to use
Project Goals and Objectives
Overall Project Block Diagram
• TI MSP430G2553 Value Line MCU• TI CC1100 RF Transceiver • TI LM3S8962 ARM Cortex-M3 MCU• 3.3V for all digital logic circuitry• 925 MHz wireless communication for up
to 100m• 2 layer printed circuit boards
Hardware Specifications and Requirements
Microcontroller ComparisonModel Memory Language Experience Price
MSP 430G2553 16 kB Flash C Yes $1.00
ATmega 328p-pu 32 kB Flash C++ No $2.50
ATMEL ATmega 328P-PU MSP430G2553
• Compatibility• Low Cost• Low Energy Comsumption• Dual Inline Packaging (DIP)• PWM pins for IR Remote
TI MSP 430 G2553
• Android OS 2.2 SDK
• Touch Interface
• Google App Engine 1.6.3 SDK
• High replication data storage
Software Specifications and Requirements
• MSP430G2553 Microcontroller
• TI CC1100 RF Module
• Lutron Maestro Duo MAW-600H Light Dimmer
Lighting Subsystem
Lighting Subsystem
Lighting Subsystem
• MSP430G2553 Microcontroller
• TI CC1100 RF Module
• LED Indicators
HVAC Subsystem
HVAC Subsystem
HVAC Subsystem
• Infrared Remote Control Transmitter
• Receives commands from the Stellaris base station
• Taskso Power on/offo Channel up/downo Volume up/downo Channel Number Selection
Television Subsystem
• TI MSP430G2553
• TI CC1100 RF Module
• IR LED
Television Subsystem Components
Television Subsystem
Television Subsystem
• TI MSP430G2553 Value Line MCU• TI CC1100 RF Transceiver • TI LM3S8962 ARM Cortex-M3 MCU• RJ45- Ethernet
Main Controller
Main Controller
• Lightweight IP• Internet protocol implementation on the
Stellaris
Sample API Format
• Dynamic DNS• Booster Stack Lite
• Stellaris and MSP430 wireless protocol
Main Controller
Google App Engine vs Traditional Server (AMP Stack)
Google App Engine Traditional Server
Non-relational database structure
Relational database structure
Inherently a distributed architecture (Data replication is automatically handled)
Must manually configure a distributed architecture
No join operations are available
Join operations are available
Automatically creates a full application environment
Must be hosted on a server for remote access
• No need for relationships between tables • No join operations will be needed for the
queries of our application• Simplicity of uploading new versions of
the server application via an Eclipse plugin
• Central administrator console• 10 server applications allowed for a
single Google account (Allows for plenty of testing)
• Enough resources to allow for a fully operational application
Why we chose Google App Engine
Overall Project Block Diagram
Software Design:Database Entities
Software Design:User and Admin Privileges
• Utilizes the "simple_list_item1" menu layout
• When a menu item is selected, the corresponding class, containing the .xml layout load and the
functionalities, will run
UI Design:Main Menu
• Allows the user to viewthe current provider and enter in a new provider
• Current provider textviewdisplays the company nameand the residential rates
• To enter in a new provider,the user would have to enterthe name and the rates
UI Design:Input Provider Interface
• Input wattages for specificdevices controlled by aparticular subsystem
• Android Spinner objectswill be used to select between different fixtures(For Dimmer and HVAC)
• Textfields used for wattageinput
UI Design:Input Wattages Interface
• Textview used to displaythe wattages of the
selected fixture• Spinners will be used to
select a specific fixture• It will always display the
TV wattage (Due to only1 television set will becontrolled)
UI Design:Current Wattages Interface
• Allows the user to calculatethe monetary cost ofthe electricity usage according to a specific dateor month
• Utilizes a DatePickerobject to choose thedate
• Utilizes a Spinner object tochoose the month
UI Design:Calculate Usage Interface
• Tabular interface for each subsystem• Status page and voice recognition
reference page available through the option button
• Each tab remains its integrity until the user
exits the control interface• Each tab contains a voice recognition
activation button
Subsystem Control
• Allows the user to controlthe brightness level oflighting fixtures
• Checkboxes are used to select lighting fixtures• SeekBar object used to
choose the brightness level• Button used to set light level
UI Design:Dimmer Control Interface
• Allows the user to control the different functions of the HVAC subsystem• Fan has the following options: ON and AUTO• System has the following options: COOLING, HEATING, OFF
UI Design:HVAC Control Interface
• Allows the user to utilize typical universal remote control functions.
UI Design:TV Control Interface
• SpeechRecognizer• Class that converts speech to text
• RESULTS_RECOGNITION• Array of possible candidate sentences
• CONFIDENCE_SCORES• Weighted value from -1 to 1 rating the
accuracy• Bag of words
• “Dim the kitchen lights to fifty percent”• ‘lights’ + ‘fifty’ + ‘kitchen’ + ‘percent’
Android.Speech
Admin Content
MSP430 Launchpad x2 $4.30CC110L BoosterPack x1 $19.00EKS-LM3S8962 x1 SampledPCB x2 $50.00Google App Engine $0.00Android Already OwnedLutron Dimmer x2 $25.00IR Remote Parts x1 $5.00
------------------- --------------- -------------Current Total: $27.60Target Budget: $350.00
Questions / Comments?