Home and Building Automation
Systems
An Overview
Summary
Definitions
Technology Overview
Technology Focus
MyHome / OpenWebNet
KNX
Modbus
Modeling / Designing for Dog
2 Dario Bonino - Home and Building Automation Systems 6/1/2012
Definitions
What are we talking about?
3 Dario Bonino - Home and Building Automation 6/1/2012
Systems
Home Automation System (HAS)
4 Dario Bonino - Home and Building Automation Systems 6/1/2012
Home Automation System (HAS)
Home automation
Automation of the home, housework or
household activity.
(remote) control of:
lighting
HVAC (Heating, Ventilation and Air
Conditioning)
appliances
and other systems
Home automation system
An integrated system (computer-based)
offering home automation functionalities
Integrates electrical devices in a house
Through a communication network
Possibly includes devices using different
communication protocols
5 Dario Bonino - Home and Building Automation Systems 6/1/2012
Building Automation System (BAS)
6 Dario Bonino - Home and Building Automation Systems 6/1/2012
Building Automation System (BAS)
Building automation
The advanced functionality
provided by the control system of a
building
E.g., security & access control, fire
detection & alarms, HVAC, lighting
control, air quality, smoke
detection, intrusion
detection, environmental
control, asset location/management
Building Automation
System(BAS)
A computerized, intelligent network
of electronic devices designed to
monitor and control the
7 mechanical, electronic,
Dario Bonino - Home andand lighting
Building Automation Systems 6/1/2012
Home vs. Building Automation
Building
Home Automation
Automation
Home Automation is almost a subset of
Building Automation
Most functionalities are shared
Different protocols and technologies
8 Dario Bonino - Home and Building Automation Systems 6/1/2012
Technology Overview
Which devices? Where? For what?
9 Dario Bonino - Home and Building Automation 6/1/2012
Systems
Technology Overview
Building Automation
RS-485
Home
Automation
10 Dario Bonino - Home and Building Automation Systems 6/1/2012
Network Technology
Bus Powerline
MyOpen Echelon
KNX X10
Modbus Insteon
Echelon Wireless
Dali ZigBee
CAN Z-Wave
MBus EnOcean
11 Dario Bonino - Home and Building Automation Systems 6/1/2012
Application Area
Automation Entertainment
Real-time Control UPnP
CAN DLNA
KNX, MyHome, Insteon, Ec General purpose
helon, Modbus, X10, ZigBe
Bluetooth
e, Z-Wave, EnOcean
WiFi
Lighting
Dali
(all Automation)
Metering
Mbus
RS-485
KNX, Modbus, Echelon, Zig
Bee, Z-Wave,…
12 Dario Bonino - Home and Building Automation Systems 6/1/2012
Challenges
Integration
Different electrical requirements
Different interaction modalities
Different behaviors (temporal, etc.)
Interoperation
Different protocols
Different interaction modalities
Master/slave
Peer-to-peer
Etc.
Modeling
Different technologies & assumptions
A single shared, common description
13 Dario Bonino - Home and Building Automation Systems 6/1/2012
Technology Focus
Assumptions, Networks, Idiosyncrasies
14 Dario Bonino - Home and Building Automation 6/1/2012
Systems
MyOpen / OpenWebNet
MyOpen system
Initially proposed by Bticino (Legrand group)
Proprietary bus (SCS)
Proprietary low-level protocol
Simple configuration (can be carried by electricians)
Accessible via OpenWebNet gateways
15 Dario Bonino - Home and Building Automation Systems 6/1/2012
OpenWebNet
Allows external applications to
communicate, monitor and control MyHome devices
Open Specification
Open protocol designed to work on minimal network
requirements
E.g., phone connections
16 Dario Bonino - Home and Building Automation Systems 6/1/2012
OpenWebNet
DTMF compatible
E.g., *1*1*12## Light 12, On
Defines 2 types of communication sessions
Command session
To send commands
To ask for device states
To require measure values
Event session
To monitor all the bus events, asynchronously
17 Dario Bonino - Home and Building Automation Systems 6/1/2012
OpenWebNet - Messages
Tag structure
*tag1*tag2*tag3*...*tagN##
Tag
Allowed characters
{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, #}
Delimitator
*
Message end
##
Content and structure changes for
Commands / State requests
Requests of measure values
18 Dario Bonino - Home and Building Automation Systems 6/1/2012
OpenWebNet – Commands/States
3-tag structure
*WHO*WHAT*WHERE## WHO Functionality Description
0 Scenarios
WHO
1 Lighting
The command/request
2 Actuators
functionality (among a set of
pre-defined values) 3 Load control
4 Temperature control
WHAT
5 Anti-burglar systems
The action to perform
6 Intercom
Possible actions are specified
7 Multimedia
for each WHO value
13 Gateway management
WHERE 15 CEN commands
Identifies the message 16 / 22 Sound diffusion
destination
17 Scenarios for MH200N gateways
Single device, device
groups, scenarios, zones, etc. 18 Energy management
25 CEN plus/ plus scenarios/ clean contacts
WHAT and WHERE can have
1001 Automation diagnostics
additional parameters
1004 Thermal control diagnostics
WHAT#PAR1#PAR2...#PARn
1013 Device diagnostics
WHERE#PAR1#PAR2...#PARn
19 Dario Bonino - Home and Building Automation Systems 6/1/2012
OpenWebNet – Commands/States
Switch on the lamp with id=12
*1*1*12##
Switch on the webcam with id=4000
*7*0*4000##
Switch off the temperature control for the zone 1
*4*303*1##
Switch off all lights
*1*0*0##
20 Dario Bonino - Home and Building Automation Systems 6/1/2012
Idiosyncrasies / Peculiarities
Explicit State Notion
Same format for State changes and Commands
State change events only in monitoring sessions
State change events only for “active devices”, buttons and
switches do not generate events.
States and commands only “defined” for “active”
devices
Buttons and switches do not have an explicit state
(independent from the controlled object)
21 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX
Formal merger of 3 leading systems for Home and
Building Automation
EIB
EHS
BatiBus
All devices carry a “bit” of intelligence on-board
2 Operating modes
S-MODE (System Mode)
Requires centralized binding & parameterization (with ETS)
E-MODE
Simple manipulation without PCs
Similar to MyOpen
22 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX - Architecture
23 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX - Application
Device implement “Distributed Applications”
Based on datapoints
Datapoints:
Represent process and control variables in the system
May be
inputs
Outputs
parameters
diagnostic data
…
Standardized Datapoint Types, grouped into
Functional Blocks
24 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX – Application (2)
Communication System and Protocol offer a reduced
instruction set to
Read and Write (set and get) Datapoint values
Application semantics is mapped to
Data format
Bindings
3 binding schemes
Free
Structured
Tagged binding
25 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX - Binding
Free binding:
No a priori prescription on which Datapoints may be
linked
Free addressing
Customized multicast grouping at the level of individual
Datapoints
Central to S-Mode
Structured binding
Precise pattern for linking a whole set of
Datapoints, usually corresponding to a Functional Block
or Channel
Free-address
E.g., Controller and Push-button Modes
Tagged binding
26
… too complex …
Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX – Binding Example
GroupAddress
(multicast access to
a datapoint)
Binding
GroupAddress
(multicast access to
a datapoint)
27 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX – Network technology
TP 1 (basic medium inherited from EIB)
Twisted pair cabling
SELV network and supply system
Asynchronous character oriented data transfer and half duplex bi-
directional communication
Transmission rate: 9600 bit/s
CSMA/CA collision avoidance
All topologies may be used and mixed (line, star, tree, ….)
PL 110
Communication over the mains supply network
Spread frequency shift keying signaling
Asynchronous transmission of data packets and half duplex bi-
directional communication
Central frequency 110 kHZ
Trasmission rate:1200 bit/s
CSMA, compliant to EN 50065-1
28 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX – Network technology
RF
868,3 MHz band for Short Range
Frequency Shift Keying, maximum duty cycle of 1%
32768 cps (chips per second)
Manchester data encoding
KNXnet/IP
Standard protocol for KNX devices connected to an IP
network
IP network as a fast backbone in KNX installations
Tunnels KNX Frames over IP
29 Dario Bonino - Home and Building Automation Systems 6/1/2012
KNX – Network topology
Line
Up to 256 devices
Connected into Areas via
a Main Line
Area
Up to 16 lines per area
Up to 16 Areas
Connected via a
Backbone Line
Max. Number of devices
65536
30 Dario Bonino - Home and Building Automation Systems 6/1/2012
Idiosyncrasies / Peculiarities
Implicit State Notion
Only a subset of device states can be queried
State Events
State change events can be published by carefully configuring the KNX
devices
S-MODE
Specific group address for notifications
Pass-through gateway configuration
All devices can publish state changes
In-operation events available
KNXNet/IP
Tunnel mode event-based
Supports partial device discovery
EIBNet/IP
Requires participation to a multicast delivery group:
239.192.39.238
31 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus
Application layer messaging protocol (level 7 of the
OSI model)
Provides client/server communication between
devices
different types of buses or networks
Industry serial de facto standard since 1979
Request/reply protocol
Services specified by function codes
MODBUS function codes
elements of MODBUS request/reply PDUs
32 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Network Architecture
33 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus - Protocol
Defines a simple protocol data unit (PDU)
Independent of the underlying communication layers
Mapping of MODBUS protocol on specific buses can
introduce some additional fields on the application data
unit (ADU)
34 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Protocol (2)
Function Code
Indicates to the server what kind of action to perform
Is coded in one byte
Valid codes are in the range of 1 ... 255 decimal
the range 128 – 255 is reserved and used for exception
responses
Function code "0" is not valid
Sub-function codes are added to some function codes to
define multiple actions
35 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus - Function codes
36 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Protocol (3)
Successful Transaction
Failing Transaction
37 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Data Model
Based on 4 primary tables
Distinctions between inputs and outputs, and between bit-
addressable and word-addressable data items, do not
imply any application behavior
All four tables can overlay one another
Each table supports up to 65536 data items
Read or write of items can span multiple consecutive
data blocks up to a data size limit which is
dependent on the transaction function code
38 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Data Model
Multiple data blocks Single data block
39 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus - Addressing
precise PDU
addressing rules
Each data block is
addressed from 0 to
65535
Each element within a
data block is
numbered from 1 to n
pre-mapping
between the
MODBUS data model
and the device
application is totally
vendor device
40specific Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus - Transaction
41 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Network technology
42 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modbus – Network technology (2)
TCP/IP over Ethernet
Asynchronous serial transmission over a variety of
media
wire : EIA/TIA-232-E, EIA-422, EIA/TIA-485-A
fiber, radio, etc.
MODBUS PLUS
high speed token passing network
43 Dario Bonino - Home and Building Automation Systems 6/1/2012
Idiosyncrasies / Peculiarities
Explicit State Notion
Can only be queried (read)
No command notion
Only write operations on registers
Client/Server approach
Does not support event-based interaction
Polling
No explicit device notion
Registers exposed through a Modbus Gateway
Devices identified by their slave id
No device discovery
Available registers are defined by the vendor
44 Dario Bonino - Home and Building Automation Systems 6/1/2012
Modeling/Design for Dog
How to conciliate reality with Dog requirements
45 Dario Bonino - Home and Building Automation 6/1/2012
Systems
Dog – Device Abstraction
Based on DogOnt
http://elite.polito.it/ontologies/dogont.owl
Devices are described in terms of network-
independent
Functionalities
Commands
Notifications
States
State Values
Event-based interaction
Network specific idiosyncrasies must be wrapped
and reconciled to the Dog abstract model
46 Dario Bonino - Home and Building Automation Systems 6/1/2012
Dog – Implementation Constraints
For each technology
1 Network driver (mandatory)
Handles networks-specific communication
Connection
Polling vs. Event Monitoring
Connection loss recovery
1 Gateway driver (optional)
Handles different gateways using the same network protocol
E.g., for installations with multiple sub-networks
>1 Device drivers
1 for each supported device
On-line conversions between operations on the abstract model
and on real devices
47 Dario Bonino - Home and Building Automation Systems 6/1/2012
Reconciling to Dog
Dog OpenWebNet
Device representation WHERE tag
URI WHAT tag
Commands WHO tag
Monitoring session
States
Event- based interaction
Notifications
48 Dario Bonino - Home and Building Automation Systems 6/1/2012
Reconciling to Dog
Dog KNX
Device representation Individual Address
URI Group Address
Commands Datapoints
States
State events
Only if purposely
Event- based interaction configured
Notifications Device discovery
49 Dario Bonino - Home and Building Automation Systems 6/1/2012
Reconciling to Dog
Dog Modbus
Device representation Register
URI Read
Commands Write
Slave ID
States
Event- based interaction
Notifications
Polling
50 Dario Bonino - Home and Building Automation Systems 6/1/2012
And the other technologies?
Z-Wave
Does not support event-based interaction (partially?)
Polling
Based on device discovery
Device creation at run-time (in Dog)
Same implementation constraints
Echelon
Almost equal to Modbus
Connection based on web services
…
51 Dario Bonino - Home and Building Automation Systems 6/1/2012
Questions?
52 Dario Bonino - Home and Building Automation Systems 6/1/2012
Thanks!
53 Dario Bonino - Home and Building Automation Systems 6/1/2012
License
This work is licensed under the Creative Commons “Attribution-
NonCommercial-ShareAlike Unported (CC BY-NC-SA 3,0)” License.
You are free:
to Share - to copy, distribute and transmit the work
to Remix - to adapt the work
Under the following conditions:
Attribution - You must attribute the work in the manner specified by the
author or licensor (but not in any way that suggests that they endorse you
or your use of the work).
Noncommercial - You may not use this work for commercial
purposes.
Share Alike - If you alter, transform, or build upon this work, you may
distribute the resulting work only under the same or similar license to
this one.
To view a copy of this license, visit
http://creativecommons.org/licenses/by-nc-sa/3.0/
54 Dario Bonino - Home and Building Automation Systems 6/1/2012