I cut out a few things like the budget and the "I'm so great, give me free stuff (selling yourself like a resume)" parts.
Introduction
My proposed monitoring and automation system has three major components:
- Air Conditioning.
- Plant Watering.
- Medication Reminder.
Air Conditioning: I’m a Canadian living in Southern California, so air conditioning (AC) is a necessity during the daytime. At night however, there is a drastic drop in temperature due to the dessert climate. Having central air, like most Californians, means one can cool an entire home from a single thermostat, which is nice, but you still need to check every window in the domicile to ensure they are closed. If a window is open while the AC is running, the efficiency drops and I’m essentially wasting money. Alternatively, if I’m running the air conditioning and the temperature outside has dropped significantly I’m wasting money again, since I could just open the windows and run a fan.
Plant Watering: My wife and I have a patio garden that requires watering. Many of our plants have died, well, because they don’t get watered. I would like to create an automated watering system that is gravity fed. At the very least I would need a soil moisture sensor and an electronic valve.
Plant Watering: Date stamped medication reminders are great, but what if your medication stays at home and you can’t remember if you’ve taken it or not? I will propose an automated way to always remember you medication.
Proposal – Air Conditioning System
Figure 1 is a rough floor plan of my apartment and I’ve indicated where the windows, patio door, and thermostat are located. The basic idea is to monitor the status of the windows and patio door (open or closed) so one can appropriately operate the AC. Also, the system will determine when I should open the windows and turn off the AC. I.e. when the outside temperature has dropped below a preset value. It should also be possible to control the AC unit remotely with a cellular phone, but I will need to determine a way to do this without modifying the thermostat since I live in an apartment.
Figure 1: Rough floor plan of apartment. The windows, patio door, and thermostat are labeled.
There are a few tasks to the air conditioning system, so I’ve broken them up below:
- Setup the Raspberry Pi, EnOcean Gateway, and Eclipse/OpenHAB to log magnetic contact sensor data, log temperature sensor data, and remotely control a small motor. I will need extra contact switches which I will use part of the $500 dollar budget to acquire. I will mount the Rasberry Pi above the thermostat and use the WiPi to connect it to my home wireless network. I will use OpenHAB to make the interface such that you can monitor the switch states from a panel driven by the Pi or use a mobile device to check the switch states.
- Setup one temperature sensor outside to monitor the outside temperature and one inside for the apartment temperature. I’ll encase the outside sensor so that it can withstand the elements. The outdoor sensor is to monitor the drop in temperature as the day passes. When the outside temperature drops to a point that is comparable to the apartment temperature, the users should be alerted that it is time to turn off the AC and open the windows. This should increase the efficiency of the system. If the temperature is low enough outside it makes more sense to decrease the apartment temperature by opening the windows instead of using the AC.
- The timers for thermostats are only useful if you return home at the same time each day. My wife is a stay-at-home mom and routinely leaves our home for random periods of time. It would be ideal for her to be able to turn on the AC unit before returning home. Since I cannot modify the thermostat, I can interface to it through an actuator to mechanically move the AC switch remotely. This could be as simple as a motor driving a nut on a threaded rod to move the switch. This will be controllable via a cellular phone with internet access.
Proposal – Plant Watering
Figure 2 shows the proposed plant watering system. It is a gravity fed watering system that will encompass some form of electronic valve. I have not indicated which valve or sensor will be used because I have not decided which ones to use yet. The sensor will likely be a soil moisture sensor. I would like to incorporate the HSM 100 humidity sensor from EnOcean for this if possible.
Figure 2: Automated plant watering. The mechanism and type of sensor are left unindicated.
Proposal – Medication Reminder
For anyone who takes daily medication, it can be nerving if you've left the house and cannot remember if you've taken it or not. The date stamped package is helpful, but loses its practicality as soon as one leaves the home. I propose a system to monitor this using the rocker switch from the kit. The user will ideally press the rocker switch after they've taken the medication. If the user forgets to take the medication or forgets to press the rocker switch and the front door to the apartment is opened, monitored by magnetic contact, an alarm will notify the user. Also, if the time of day lapses beyond a certain time and the rocker switch has not been pressed, the user will be notified. If the user takes the medication and forgets to press the rocker switch, the date stamped packaging will prevent them from taking a second dose. So, this system is to work in coordination with conventional medication packaging.
System
The system is quite simple from a functional point of view, which is shown in figure 2. The complexity will likely be in the implementation.
Figure 2: The proposed system; five contact switches, two temperature sensors, one rocker switch, a valve, and a soil moisture sensor.
Summary
As you can see, I have not just included one task to be automated, and I’m working towards an entire home automation system based on the OpenHAB system. I will be, of course, blogging about my project as per the rules of the challenge. I will also be releasing my entire design and any code I may write into the public domain.