Title: Smart Appliance / May 03-21 Home Automation via the Web
1Smart Appliance / May 03-21Home Automation via
the Web
- Client
- Senior Design
- Faculty Advisor
- Doug Jacobson
- Team Members
- Mark Melville (EE)
- Brendan Hickey (CprE)
- Scott Reeder (CprE)
- Brian Thorp (CprE)
- Mike Fernholz (EE)
2Presentation Outline
- Introduction to Project
- Project Activities
- Resources and Schedules
- Closing Materials
3List of Definitions
API Application Program Interface. Interfaces between the operating system and application programs.
Host Controller Device that attaches between a wall plug and a computer that sends and receives X-10 signals.
Smart device Any piece of electronic equipment that is highly automated, or imitates human intelligence.
X-10 A communications protocol that allows compatible products to talk to each other via the existing 110V electrical wiring in the home.
X-10 Module Hardware that facilitates communication between appliances and an X-10 controller. A module would plug into an outlet, and a lamp, for example, would plug into the module.
4Project Introduction
5General Problem Statement
- GOAL Develop a home automation system that is
accessible via the WWW - Users include vacationing or security-conscience
homeowners - System is designed to enable a homeowner to
operate lights, appliances and other devices and
check if their garage door is open or closed via
the web.
6General Solution Statement
- Software
- Programmed in Java
- Three parts to the software
- GUI application that can be run on the home
computer that controls the X-10 devices from that
computer - Java applet that can be run from any web-enabled
device that connects to the home computer to
control the home network - Java server that controls the devices when the
applet has connected to the host computer - Hardware
- Garage door monitor
7Operating Environment
- Software
- Platform independent
- Client applet must run on a browser that supports
Java applets - Hardware
- Host computer must have a serial port to talk to
the X-10 controller - Garage door sensor must be able to withstand
moderate vibration and seasonal temperature and
humidity changes
8Intended Users
- Person who currently owns or will purchase a
CM11A host controller - Small businesses that desire the same
security/monitoring requirements that our system
provides
9Intended Uses
- Control appliances and lamps locally
- Control appliances and lamps remotely
- Automate control via timed events
- Allows user to check if their garage door is open
or closed
10Assumptions
- Device shall be easy to install, configure, and
use - User is familiar with operating a computer
- User will have a computer with a serial port and
continuous internet access.
(dial-up not recommended) - Home environment will comply with the specified
operating environment - X-10 system will not experience outside
interference from other X-10 systems
11Limitations
- Limited to 16 different X-10 controlled devices
- Server must be running on the home computer when
the client desires to connect and control
remotely - Device response time is limited by the speed of
the users Internet connection
12End Product Description
- Installable software package
- Installation instructions
- User software
- Software Documentation
- Source Code
- X-10 Hardware
- Must be purchased separately (CM11A devices
required) - Garage Door Sensor
- Monitoring module
- Mounting hardware
- Installation instructions
13Project Activities
14Present Accomplishments
- Software
- Created local control software
- Created remote Java applet
- Implemented server into local software
- Hardware
- Created sensor circuit
15Approaches Considered and Ones Used X-10
Hardware
- FireCracker
- Advantages smaller, no dedicated serial port
required - Disadvantages less functionality, no 2-way
support - ActiveHome CM11A
- Advantages 2-way capable, more uses
- Disadvantages more expensive
- CM11A chosen because of 2-way functionality
16Programming Language
- Java
- Advantages Familiar designing GUIs using Java,
X- 10 API, cross-platform - Disadvantages Slower
- C
- Advantages Speed, flexibility
- Disadvantages Not familiar with GUI design,
could not find anything like the X-10 API found
for Java. - Java chosen because of X-10 API and familiarity
17Networking architecture
- Stand-alone client/server
- Advantages More secure and stable
- Disadvantages Requires software on each
machine - Java Applet
- Advantages Most familiar, easy to use and
implement - Disadvantages Requires Java-enabled browser
- Java Applet chosen because it was the best fit
for the project
18Garage Door Sensor
- Buying base sensor and building off of it
- Advantages Quicker and more reliable.
- Disadvantages Cost and less known about the
circuit. - Making entire circuit
- Advantages More knowledge of entire circuit.
- Disadvantages Time and troubleshooting
- Entire circuit was created from scratch, but
commercial kit used for testing purposes.
19Garage Door Circuit
- Have the circuit be an X-10 module
- Advantages More compact, easier to use
- Disadvantages Much more time to design and
implement - Have the circuit attach to an X-10 module
- Advantages Easier to design, more flexibility
- Disadvantages Requires an external module to
function - The circuit will attach to an X-10 module because
it allows the team to focus on the garage door
circuit itself instead of the X-10 circuitry.
20Research Activities
- X-10 protocol
- X-10 hardware CM11A
- X-10 APIs and programming
- X-10 2-Way functionality
- Secure web sites
- Trusted Applets
- Sensor modules
21Design Activities
- General System Design
- Local Software
- Remote Software
- Server
- Custom Hardware
22General System Design
Remote PC
Java-enabled PDA or Phone
Java Applet
Web server
Control Server
Key Team-created Hardware or Software Commercial
X-10 Modules
Local PC
Local Software
Computer Interface
Lamp Module
Appliance Module
Custom X-10 Hardware
Living room Lamp
Television
Sensor
23Local Control Screenshot
24Local Software Add a Device
25Trusted Applet
26Receiver Circuit Schematic
27Transmitter Circuit Schematic
28Integration with X-10
- Original Approach
- Send signal to 2-Way X-10 module
- Modified Approach
- Create a new power signal from X-10 module based
on sensor circuit signal
29Implementation Activities
- Software
- 1) Create local software
- - Create GUI
- - Send X-10 commands
- - Add/Modify/Remove devices
- 2) Create remote applet
- - Create GUI
- - Add code to send commands
- - Store on web site with login screen
- 3) Implement server into local software
- - Add remote operation functionality into
local software
30Implementation Activities
- Hardware
- 1) Create Infrared Transmission Circuit
- - Design oscillator
- - Combine with Infrared LED
- 2) Create Infrared Receiver Circuit
- - Design amplifier
- - Design filter
- - Combine with Infrared Phototransistor
- 3) Combine Transmitter and Receiver Circuits
- - Create Infrared switch
- 4) Combine infrared circuit with X-10 module
- - Create proper integration hardware or
circuitry
31Testing and Modification Activities
- Software testing
- Test GUI
- Test local control functionality
- Test remote control functionality
- Hardware Testing
- Test infrared circuit
- Test circuit with X-10 module
- System testing
- Test local control
- Test remote operation
- Test garage door sensor with software
32Other Project Activities
- Software
- Local control software.... (90)
- Remote Java applet...........(100)
- Web Site with log in....... (100)
- Server implementation into local
software..(100) - Add macros to software. (75)
- Show status of 2-way devices...... (75)
- Hardware
- Sensor circuit(100)
- Implement circuit with X-10 module. (75)
33Resources and Schedules
34Total Financial Resources
35Final Personal Budget
36First Semester Schedule
Project Planning and Technology Selection
Develop Project Plan
Implement Project Design (Hardware)
37Second Semester Schedule
Software Coding and Testing
Product Revision
Documentation
Product Demo
38Conclusion
39Project Evaluation
- Identify possible designs to implement,
- and choose one fully met
- Hardware and software specifications
- fully met
- Code software by specification
- nearly met
- Design hardware
- fully met
- Test hardware and software
- nearly met
- Documentation
- fully met
40Commercialization
- Production Costs (sensor) 20
- Selling price (sensor) 40
- Selling price (Software) 20
- Market vacationers, security conscience
homeowners - plus a monthly fee for using web service
41Recommendations for Additional Work
- Commercialization
- Add support for additional X-10 devices
- Secure website with a database
- Write a java X-10 Api
42Lessons Learned
- What went well
- Communication
- Teamwork
- What didnt go well
- Unspecific project
- Procrastination
- Technical knowledge gained
- X-10 protocol
- Non-Technical knowledge gained
- Time management
- What to change
- Start Earlier
43Risk and Risk Management
- Anticipated risks
- Team scheduling
- Loss team member
- Finding parts
- Finding a java API
- Anticipated risks encountered
- None
- Unanticipated risks
- X-10 API incomplete
- Integrating sensor with X-10 module
44Closing Summary
- Need for project
- No software available for remote operation
- Didnt have a garage door sensor
- Original software was horrible
- Software for Windows only
- Chosen Solution
- Java application and applet
- Garage door sensor
- Effectiveness of solution
- Allows for remote operation of devices
- Easy to use
45Questions?