H.A.C.S. - PowerPoint PPT Presentation

1 / 31
About This Presentation
Title:

H.A.C.S.

Description:

... control system which uses a remote system such as a mobile phone or PDA to ... or sprinkler, can be controlled by a home owner in a remote location. ... – PowerPoint PPT presentation

Number of Views:23
Avg rating:3.0/5.0
Slides: 32
Provided by: krazy
Learn more at: http://www.utdallas.edu
Category:
Tags: locate | mobile | phone

less

Transcript and Presenter's Notes

Title: H.A.C.S.


1
H.A.C.S.
  • The Home Appliance Control System

Presented by The Awesome Group
Presented by The Awesome Group
2
What is HACS?
  • A home appliance control system which uses a
    remote system such as a mobile phone or PDA to
    monitor, control, and coordinate home appliances
    such as your security system, oven, TV, etc.

3
Assumptions and Dependencies
  • Infallibility
  • No Power Failures
  • No Network Failures
  • Each Appliance has Sufficient Power and a
    Dedicated CPU
  • Wireless Network is the same as LAN
  • HACS has an Internet Connection
  • Perfect Cellular Reception
  • Sufficient Hardware

4
Requirements
  • HACS should
  • Allow users to check the status of their
    appliances, even when not at home
  • Activate and deactivate appliances
  • Alert users and emergency departments to critical
    malfunctions
  • Be able to accept any HACS compatible appliance

5
Requirements List
  • (1) Appliance Control Appliances, devices such
    as an oven, microwave, air conditioner, or
    sprinkler, can be controlled by a home owner in a
    remote location. That is the user may set the
    different attributes (e.g. oven temp, AC fan
    speed, sprinkler settings etc.) for each
    appliance from a wireless device
  • (2) Adaptability/Detection The system will be
    able to detect changes within the home and
    maintain the user settings.
  • (3) Manually Adaptable The user can set system
    set the status of different appliances manually
    and user commands have precedence over automatic
    commands.
  • (4) Communication HACS should be able to
    communicate with all appliances.
  • (5) Safety HACS should maintain the safety of
    the users home and person at all times. Devices
    should be maintained in non-hazardous states.

6
The Big Picture
User Interface
HACS
User
7
Use Case Diagrams(for traceability)
  • Bad!

8
Use Case Diagram Over All
Use Case Diagram for Hacs
Register Wireless
ltltextendsgtgt
Add Appliance
ltltextendsgtgt
Register Appliance
Remove Appliance
ltltusesgtgt
User
Login
ltltusesgtgt
Get Status
ltltextendsgtgt
ltltextendsgtgt
PoliceDept
Set Status
Manage Status
Appliance
FireDept
Emergency Alert
9
Use Case Log In
  • HACS must be secure!
  • Nobody other than the owner should be able to
    modify an appliances status
  • What if your neighbor down the street decided to
    play a joke and turn on your oven!

10
Sequence Diagrams Log In
UserInterface
HACS
UserRecord
User User
issuesCommand
connect(id)
verify(id)
returnVerification
11
Use Case Get Status
Manage Status
ltltextendsgtgt
User
Appliance
GetStatus
  • Is the garage door open?
  • Did you leave the oven on?
  • The user wants to know how the appliances are
    operating at any given time!

12
Sequence Diagrams Get Status
In general, this should represent a simple
sequence of events
13
Sequence Diagrams Get Status
But what if access is denied?
14
Use Case Set Status
Manage Status
ltltextendsgtgt
User
Appliance
Set Status
  • Now that you know what the appliance is up to,
    dont you want to change what it is doing?

15
Sequence Diagrams Set Status
HACS
UserInterface
Appliance
User
selectApp
setStatus(app,uid,attribute, value)
Login
setStatus(attribute,value)
returnStatus
returnStatus
displayStatus
16
Use Case Register Appliance
Add Appliance
Register Appliance
ltltextendsgtgt
ltltextendsgtgt
Appliance
Remove Appliance
User
  • Register Appliance is extended by Add/Remove
    appliance use cases to handle registration
    interactions within the HACS system.

17
Sequence Diagram Add Appliance
Interface
HACS
xyzAppliance
User User
setup appliance
provide appliance identification details
configure appliance settings
detect appliance
provide ACK
add appliance
provide response
set range limits
store range limits
18
Sequence Diagram Remove Appliance
appliance
UserInterface
Hacs
User User
request remove appliance
request remove appliance
remove appliance
notify
Send new status
notify
19
Use Case Register Wireless
register wireless
Wireless
User
  • The user registers a wireless device with HACS.

20
Sequence Diagram Register Wireless
HACS
xyzAppliance
User User
add user
provide identification details
add device
send confirmation
21
Use Case Emergency Alert
notify
Fire_Department
Intruder_Detector
Alert_controller
Emergency_Dept
Fire_Detector
  • Reuse!

Police_Department
22
Use Case Evolved Emergency Alert
PoliceDept
Emergency Alert
Appliance
FireDept
23
Sequence Diagram Alert System
abcAlert_contr
emergency
Police
Fire
Hacs
Device_interfac
oller
Emergency_dept
e
create_sockets()
Here it is
assumed devices
start_threads()
communicate on
sockets
start_sensing()
Hacs notified on socket
forward request on socket
Demultiplex_request()
Hacs notified on socket
connect to data base
connect to data base
Notify_request()
will use some api
or sockets for
communication
wid specific
department
24
Class Diagram Alert System
25
CRC Cards Appliance
Appliance
Object
  • Interface between HACS and specific appliances
  • HACS

26
CRC Cards Oven
Oven
Appliance
  • Report Exceptions
  • Change Temperature
  • Change Mode
  • Set Timer
  • Turn On/Off
  • HACS
  • Alert Controller

27
CRC Cards Garage Door
Garage Door
Appliance
  • Open
  • Close
  • Report Exceptions
  • HACS
  • Alert Controller

28
CRC Cards Light
Light
Appliance
  • On
  • Off
  • Set Intensity
  • Report Exceptions
  • HACS
  • Alert Controller

29
CRC Cards Alert Controller
Alert Controller
Object
  • Control Alerts
  • Pass Exceptions to HACS
  • Alert Emergency Departments
  • HACS
  • Appliance
  • Appliance subclasses
  • Emergency Department

30
Class Diagram HACS System
Note hid will contain perhaps an
internet address for the Hacs
system
HACS
hid
UserInterface
userRecords
currentWindow
apps
uid
EMservices
UserRecord
hid
connections
user_id
Connect(uid)
displayWindow(window)
setId(user_id)
getStatus()
getStatus(hid, appliance)
getId()
setStatus()
setStatus(hid, appliance, attribute, value)
addAppliance()
getAppliances(hid)
delAppliance()
notify()
Login()
ltltactorgtgt
appliance
appId
attributes
hid
get(attribute)
set(attribute, value)
alert(hid)
lights
Windows
GarageDoor
FireAlarm
open()
on()
setSecurity(on_off)
close()
detect()
off()
detectMotion()
setIntensity(value)
31
The END!
  • Questions?
  • Comments?
  • Praise for our greatness?
Write a Comment
User Comments (0)
About PowerShow.com