1
Automated Home Control Nick Atkinson, Matt Majeika, Ungku Afiq Ungku Farid Sponsored by Terry Slattery Overview With increasing energy concerns, different methods of conservation have appeared on the market. One of the fastest growing areas of energy conservation is that of home automation. The energy that various devices in a house consume can be reduced by increasing their control. The purpose of this senior project is to design and implement a home control system. This is a continued project from the previous 2006-2007 academic year. In order to demonstrate our project functionality, we installed our automated home control system in a house. This included installation of lighting and appliance control devices as well as a communicating thermostat that exhibits both manual and remote control. In order to control each of these subsystems, we also installed a home control server. Hardware Overview Lighting and Appliance Control Insteon devices LampLinc, InLineLinc– control a lighting device ApplianceLinc – control an appliance PowerLinc Controller V2 – USB communication between server and home power lines Dual Mesh network Communicate with Insteon devices via house wiring (110 VAC) Crosses both wiring phases through SignaLinc RF devices Communicating Thermostat Control Home Automation, Inc. Omnistat RC-80B thermostat Single heat / single cool HVAC system compatibility RS232 communication with home control server Custom DB9 cable Software Overview Insteon Driver – Ionbridge Ion – low level device driver for PowerLinc Controller Ionbridge – command processor for Ion A TCP server receives commands from AIHome web client Status is returned in text file on server Commands supported: On, off, bright, dim, ping, status Thermostat Driver – Omnitemp Low level device driver and command processor for Omnistat Receives input from command-line interface Returns status in a text file on server Commands supported: Change set point, change mode, status, change internal schedule User Interface - Ruby on Rails Ruby – programming language Rails – web development architecture Models – act as class headers and interact with database Controllers – perform actions invoked by user Views – provide graphical user interface Worked exclusively with controllers and views (Thomas, Agile Web Development with Rails, 2 nd Edition, 2006) AIHome Web Client Database Driven by SQLite 3 Primary tables: Appliances, Rooms, Thermostat Options, Schedules Database objects can be accessed using any field in the table Tables are linked through common fields Graphical User Interface Closed-Loop Control After issuing a command from the web client, the recipient status is requested and compared to the desired status If match, then command is labeled as successful If no match, command is reissued and process repeats once Upon second mismatch, error message is generated In case of Insteon command, Ionbridge is automatically started if off Added to ensure that commands are successfully transmitted to connected devices Installation and Test Installed system in Professor Dozier’s home Successful communication with Insteon devices across both 110 VAC phases Successful control of HVAC

Automated Home Control Nick Atkinson, Matt Majeika, Ungku Afiq Ungku FaridSponsored by Terry Slattery Overview With increasing energy concerns, different

Embed Size (px)

Citation preview

Page 1: Automated Home Control Nick Atkinson, Matt Majeika, Ungku Afiq Ungku FaridSponsored by Terry Slattery Overview With increasing energy concerns, different

Automated Home ControlNick Atkinson, Matt Majeika, Ungku Afiq Ungku Farid Sponsored by Terry Slattery

Overview

With increasing energy concerns, different methods of conservation have appeared on the market. One of the fastest growing areas of energy conservation is that of home automation. The energy that various devices in a house consume can be reduced by increasing their control. The purpose of this senior project is to design and implement a home control system. This is a continued project from the previous 2006-2007 academic year.

In order to demonstrate our project functionality, we installed our automated home control system in a house. This included installation of lighting and appliance control devices as well as a communicating thermostat that exhibits both manual and remote control. In order to control each of these subsystems, we also installed a home control server.

Hardware Overview

Lighting and Appliance Control• Insteon devices

◦ LampLinc, InLineLinc– control a lighting device◦ ApplianceLinc – control an appliance◦ PowerLinc Controller V2 – USB communication

between server and home power lines• Dual Mesh network

◦ Communicate with Insteon devices via house wiring (110 VAC)◦ Crosses both wiring phases through SignaLinc RF devices

Communicating Thermostat Control• Home Automation, Inc. Omnistat RC-80B thermostat• Single heat / single cool HVAC system compatibility• RS232 communication with home control server• Custom DB9 cable

Software Overview

Insteon Driver – Ionbridge • Ion – low level device driver for PowerLinc Controller• Ionbridge – command processor for Ion

◦ A TCP server receives commands from AIHome web client◦ Status is returned in text file on server

• Commands supported:◦ On, off, bright, dim, ping, status

Thermostat Driver – Omnitemp • Low level device driver and command processor for Omnistat• Receives input from command-line interface • Returns status in a text file on server• Commands supported:

◦ Change set point, change mode, status, change internal schedule

User Interface - Ruby on Rails• Ruby – programming language• Rails – web development architecture• Models – act as class headers and interact with database

• Controllers – perform actions invoked by user• Views – provide graphical user interface• Worked exclusively with controllers and views

(Thomas, Agile Web Development with Rails, 2nd Edition, 2006)

AIHome Web ClientDatabase• Driven by SQLite 3• Primary tables:

◦ Appliances, Rooms, Thermostat Options, Schedules• Database objects can be accessed using any field in the table

• Tables are linked through common fieldsGraphical User Interface

Closed-Loop Control• After issuing a command from the web client, the recipient status is requested and compared to the desired status◦ If match, then command is labeled as successful◦ If no match, command is reissued and process repeats once

◦ Upon second mismatch, error message is generated◦ In case of Insteon command, Ionbridge is automatically started if off

• Added to ensure that commands are successfully transmitted to connected devices

Installation and Test

• Installed system in Professor Dozier’s home

• Successful communication with Insteon devices across both 110 VAC phases

• Successful control of HVAC