At some point it became clear that what actually fascinated me was anything that would automate an operation which otherwise would need a human interaction. It was inevitable to fall in love with the new “up-coming” world of home automation. Unfortunately, every time I tried to follow a project published or advertised about home automation, I found myself getting confused and finally bored with the details.
During the past 15 years I have visited exhibitions and read many articles and white papers offering “all in one” home automation solutions. After the initial excitement, I got confused with unnecessary complicated processes, giving me the feeling that they have completely missed the point.
Everything that currently exists under the title of “home automation” or “smart home” is a proprietary idea customised to somebody else’s requirements who is trying to convince you that his everyday needs are similar to yours. Any attempt to create open standards (X10) has failed to get broadly accepted and any only appeals to computer & electronic “geeks”.
I think we got into this situation because people have forgotten the reason they wanted to automate something in the first place.
This is what this article is all about. Reminding people the basics, and help them maintain the focus on satisfying the “why” while they come up with ideas of “how” they need to automate an operation. I believe there is a need for projects to change the way they are developed, in order to become more appealing to the average person. It is about time for this industry to hit the mass market and you can only achieve that by talking to the non-technical person. There is some much to gain from home automation, enough to change our everyday lives; forever… Introduction
As technology progresses, more and more functions that we can incorporate into a home automation system are born daily. New functionality is what makes home automation exciting and this is mainly due to the advance of digital electronics.
Although electronics should not be the only player that defines a home automation design, they are definitely playing the major role as they are usually representing the “brain” of the system that is able to make simple and complicated decisions.
If we look back in history (well before the electronic era) we can still see automation control introduced into our everyday life.
For example, many years ago in a typical house the water was transported back home by buckets (or clay containers) for the purpose of drinking, washing and flushing.
Later, a pipe system was introduced that got water into the house just by turning a tap.
This was a typical home automation installation that eliminated the need for walking to the water source with a bucket and simplified a long (and painful) series of human actions with the simple turn of the tap.
The piping system introduced some new problem as well, such as the leaking, or the breaking of the pipes when the water inside got frozen.
In our days these problems can be resolved with further automation (electronic and mechanical parts that can detect such conditions) and either react by themselves (valves) or alert the user (alarms) in order to prevent further damage.
What I am trying to emphasise with the example above is that if we take a step back and observe our lives, we can see what was the purpose of any automation in the house environment and under what needs and conditions that purpose was fulfilled.
In this article I would like to revisit the basic concepts of home automation and attempt to create the fundamental laws that can direct and define any automation design.
Home Automation Laws
If there had to be a single rule to follow for any home automation design, everybody must agree that it should be to satisfy the main purpose of its existence. In other words to automate the environment we live, in order to limit our physical actions to achieve a specific task.
This is stating the obvious but most people tend to forget or “relax” that rule when they get carried away with technology, complicating the functionality and operation of their home automation designs by adding unnecessary “gadgets”.
Life has taught Engineering that with any given functionality (of any design) there is an operational part that is equally important. In home automation the “operation” of functionality is more important than the functionality itself. The operation usually involves a human interaction which has to be eliminated or kept to the minimum in order to satisfy the very need of the automation.
Summarising the above to a single sentence, the first law of home automation is to:
Eliminate or Simplify the Need for User Interaction
When I walk into a room and it is dark, I have to switch the light on. The “functionality” of having a light in my room requires the “operation” of switching the light on, which in this case needs the “human interaction” of turning on a switch with my finger.
If I want to automate this procedure, I have to eliminate the need for the human interaction which means I have to eliminate the need for the operation to turn the switch with my finger, but somehow the light will come on when is needed.
Before I achieve that I have to go through all the logical steps of that functionality and introduce a system that will go through the same (or at least very similar) logical sequence that my brain did. In this case the system has to detect my presence in the room and then decide if the existing natural light is sufficient or there is a need for an artificial light to be switched on. If the system is as good as my brain undertaking these tasks, then as I walk into the room the light will come on automatically only when is needed.
The first law needs a second law that completes the fundamental purpose of home automation. Any system needs to be able to detect the current state of any of its components and make a decision to alter that state if it is necessary.
In our example, when we walk out of the room we will turn the light off. There are a few things we take into account before we take this action.
We are leaving the room so we no longer require lighting, but we know that we are not coming back immediately, otherwise we would have left the light on as we do not want to keep repeating the same action so frequently. In the same way the system has to decide if there is no presence in the room and the light is on, this must be an error condition and the light should be turned off. Possibly a delay mechanism will compensate for the case we return to the room immediately. There might be other parameters that possibly require the light to remain switched on, but here we are exploring a simple case scenario.
At any time the system needs to be aware of the state of the light in that room and when the “reasons” for keeping the light on are no longer valid, it should take the decision to alter the state and turn the light off.
Now let’s explore an abnormal situation where the light bulb in that room is broken.
If I walk in the room and try to switch the light on I will get no response. This will prompt me to repeat the action (testing the switch or testing my actual action of turning the switch). If I get no light again, then I will possibly check if I can turn the light on in another place (checking if the house has power) and finally I will check the actual bulb if it is broken.
In a typical home automation design the system needs to detect the error by itself and alert the user for that error condition (since it cannot take any further physical action by itself). The system should be able to provide all the information it can, in order to eliminate the user interaction in the process of the fault-finding. The system should know that the house has power and the possible fault (or statistically logical) must be the light bulb. It should warn the user to manually verify this statement and fix the problem. There could be an emergency light that could come up in case light is required for the actual check up.
All the above normal or abnormal conditions require the system to react on its own. Therefore the second law of home automation is to:
Prevent or Alert about an error condition
The use of the word “error” refers to the wrong state in the system and not necessarily to a problematic state or fault.
The complexity of the system can grow enormously when further intelligence is added, and both simple and sophisticated systems can be equally accepted as home automations if the satisfy the fist and second laws.
Home automation is not about bundling together every gadget available in the market or adding unnecessary control to an operation we perform everyday at home. A little touch screen monitor that displays various light switches and lighting themes, which by the way needs a couple of key presses for simply turning the light on, it might look nice but it should not be considered a home automation design. The end result of a complicated switch is for the user to spend more time processing information, focusing on the digital switch in order select the right button and spend more time switching the light on as he would with the old fashion mechanical plastic switch.
The functionality is a secondary need as we have first to make sure the operation we automate is actually eliminating or simplifying the user interaction and taking control of the error condition.
A lot of home automation systems (or sometimes labelled “smart homes”) are designed sorely for the purpose to take control of those abnormal conditions because the user might not be present to react on time. For example, systems are designed for detecting leaking in a water pipe or a short circuit in the power network or an intrusion in the security system.
Again, designing a system that respects one law but ignores the other is not a home automation design. Later we will see how different labels can be given to different designs according to their priorities.
If we accept these two laws as the Primary Rules for any home automation design we are serving the primary purpose of its existence.
One of the best ways to identify what we need to automate in our personal life is to film on a camera our typical day. When we playback all the daily actions, we will find operations that can be replaced by an automated system. Some operations are physical and some logical and both are needed to make the automation as complete as possible.
Let’s observe a simple task of our every day life. When we want to have a shower, using our existing water piping and heating automation, there are some further tasks that we can eliminate from the human interaction.
To take a shower we first make sure that there is hot water. We check the boiler and then turn on both the cold and hot water while we try to get the desired temperature. When the temperature is good enough (finger test), only then we are ready to get wet.
A home automated system could tell us if there is hot water available or a timer as it exists now in many places pre-heats the water at a specific time according to our lifestyle. The system could be designed to automatically deliver the water in a personalised or default best temperature and eliminate the “finger testing”.
There is new technology available that can provide entertainment during the shower (radio, music, video, etc) or a massage with water pressure. These new functionalities are all welcome in any home automation system as long as they adapt to the first 2 primary laws.
The last thing you want as a user is a complicated shower-Jacuzzi system that needs a keyboard and a manual in order to login and set it up every morning.
In other words, the added functionality is a secondary need of an automated system, but still an important one. So the first of the Secondary laws is to:
Everybody preaches that efficiency saves energy which translates into saving money.
An automated system can decide when it is best to heat the water taking into account things like night/day electricity charges, utilising the house heating system or getting hot water from the sun cell system on the roof (or an efficient combination of all the above). Many so called “smart homes” are designed only as energy efficient systems. Those systems if they cannot satisfy the first 2 Primary laws they should be treated as energy saving systems and not as home automation systems.
Therefore, the next secondary law of home automation is to:
These 4 laws can fully describe the use of a home automation system and when followed with the hierocracy described above they will always satisfy the main purpose, which is the automation of our every day life environment.
As we mentioned before in the shower example, the system could always provide hot water to a default temperature or to a personalised one.
This is a tricky one for technology. The system is required to identify individual users in order to apply personal preferences. There are 2 levels of automation that you can apply to achieve this. The first is semi-automatic, where the user has to identify-register himself when the system requires that information. Examples vary from complicated voice recognition systems, to simple selection of personalised buttons but both rely on a human interaction.
To achieve a fully automated system, the user must carry an electronic identification that can be read by the system at any time. Examples are personalised key rings, magnetic cards or even implanted chips under the skin, or the system could use unique characteristics of human organs like eyes, fingertips, etc. Some of them are more practical than others in different conditions. There is no simple solution to the problem of identification and it is possibly one of the major drawbacks for designing fully automated systems.
For most of the operations in the house the solution of an electronic id attached to a personal item that is most likely to be with you (glasses, watch) is an acceptable solution but again the technology and size of those id attachments is only just getting small enough in order to be wearable.
A home automated design can also work without the personal identification, by averaging the preferences of the many users. This might require sophisticated programming of the system in the initial setup.
Setup Vs Learning
Home automation products and solutions have been on the market for more than 15 years. Almost every single design and solution requires the user to be comfortable to program a set of commands, or input his personal settings into the system.
In most cases, in order to allow flexibility on the system, companies elevate more functionality in the software level, which requires further setup and personalisation.
This is where the average person gets confused and discards the idea of a complicated system being installed in his house, for which he would have no understanding of how to operate or control. In some cases home automation companies while they attempt to customise their designs (and have exclusive rights to any future updates or services) they complicate their systems on purpose.
In my opinion, this is the main reason that home automation has not been welcomed by the mass market and the average user. Even if companies had the best intentions to create user friendly systems, the problem of setting up and customising a system to each user’s preferences still exists.
The actual installation has the mechanical part where in most cases the need for an expert is unavoidable and the software part where currently an expert again is needed to setup any user preference to the system. In the software case, a simplified view is that the software actually only needs some values to be added that represent personal settings for various operations.
Most designs in these days have a main control panel where all these settings can be configured but that control panel often scares people away.
The control panel becomes the interface of the system presenting in a few screens all the functions around the house where a software expert/installer can configure from a single point (PC). For the expert this is an easy way to program the system (locally or remotely) but for the user this is still very confusing.
In order to eliminate the need for the expert, you can either educate the user to setup the system himself (with a manual), or ask the system to collect the information by itself.
The manual for many people is useful only to find the number of the customer support line, so if we really want to eliminate the expert, the system has to find a way to collect the information.
This sounds like an impossible task with huge complexity involved but if the required actions are split down to basic tasks, a combination of human interaction and system intelligence can provide all the information needed.
A simple way is for the system to ask (for each function) the user about his personal settings, at the actual place that every action is performed. This can also act as an introduction to the user, since he will physically utilise all the functions available.
Another way (less intrusive) is for the user to train the system by using manually all the functions for the first few operations at every location. Then the system will take that information as the “user preference” and for some period the system will fine tune those values as the user “corrects” the system.
Artificial Intelligent was born out of the need for systems to eliminate the pre-configured user-options and use a learning mechanism to identify those options themselves.
Under the fancy title of “Smart Homes” there are several different industrial names (home automation, energy efficient, etc) that currently are used by marketing as catch-phrases with no clear boundaries and without differentiating their principals.
The 4 Laws of automation can be used by the industry in order to discriminate between those areas and help each one to maintain the focus of its primary purpose.
Below is a table of different areas in the industry and how they should utilise the 4 laws of automation. As described in this article, home automation is an area with clear boundaries and priorities on the 4 laws. More areas and projects will surface in the coming years but as long as they have a clear order between the 4 laws of automation their usage and application in every day life will be defined by their initial purpose of existence.
Law 1 – Eliminate or Simplify the Need for User Interaction
Law 2 – Prevent or Alert about an error condition
Law 3 – Enhance Functionality
Law 4 – Preserve energy