Content uploaded by Mostafa Zaman
Author content
All content in this area was uploaded by Mostafa Zaman on Jan 06, 2022
Content may be subject to copyright.
Design and Implementation of a Distributed Control
Platform for a Smart Building Testbed
Nathan Puryear
Department of Electrical and Computer Engineering
Virginia Commonwealth University
Richmond, Virginia, USA
puryearna@vcu.edu
Roja Eini
Department of Electrical and Computer Engineering
Virginia Commonwealth University
Richmond, Virginia, USA
einir@vcu.edu
Mostafa Zaman
Department of Electrical and Computer Engineering
Virginia Commonwealth University
Richmond, Virginia, USA
zamanm@vcu.edu
Sherif Abdelwahed
Department of Electrical and Computer Engineering
Virginia Commonwealth University
Richmond, Virginia, USA
sabdelwahed@vcu.edu
Abstract—One of the leading frontiers of the Internet of Things
(IoT) era, smart building systems have made modern homes
more innovative, interconnected, and autonomous. The goal of
a smart home system is to enhance users’ comfort, safety, and
efficiency. In this paper, a smart building testbed is designed and
constructed as a cyber-physical system that allows testing and
validating building control algorithms, communication networks,
and user interfaces. The building control unit is responsible
for optimizing the performance of testbed actuators (thermal,
lighting, and access systems), whereby building parameters are
aggregated via a set of distributed sensors and communicated
to a management system. This data is observed and analyzed
by the control system to produce optimal control commands.
The building communication network is developed based on
the Message Queuing Telemetry Transport (MQTT) protocol,
in which subscribers receive the measurement data, format
it, and send it to the user-interface unit. The user interface
is implemented in a Node-RED platform, where the data is
visualized in real-time, and users are capable of interacting with
the automation system. Experimental results demonstrate the
usefulness of such a prototype for smart building monitoring
and control research.
Index Terms—Smart building testbed, Internet of Things,
Building control system, Communication protocol, Building user-
interface, Node-RED.
I. INTRODUCTION
The rising popularity of the Internet of Things (IoT) has
led to the proliferation of smart homes, and is considered
one of the significant application domains by researchers.
The IoT concept describes a system of interrelated physical
elements (sensors and actuators), virtual objects, computers,
and users, that communicate and transfer data over a network
for monitoring and control [1]. A smart home is an IoT
device, control technology, display technology, and communi-
cation technology-oriented residential platform that connects
various facilities to satisfy the system’s automation needs
and ensure efficient control and management. Its primary
objective is to integrate systems’ operation and control in an
accessible, cost-effective, safe, convenient, and environmen-
tally sustainable living environment [2]. A smart home utilizes
various technologies including data acquisition, data analytics,
data storage, data transmission, and data visualization. These
technologies are linked together through various networking
facilities to satisfy the whole system’s communication needs,
and ensure more convenient monitoring and maintenance.
Smart homes represent a natural extension of the latest
technology of information, electronics, and communication.
The focus of smart homes in recent years has primarily been
concerned with convenience, recreation, and health care. Smart
home solutions are often capable of providing remote access to
the homes’ systems to manipulate climate control, doors and
windows, and lighting. The benefits of residential IoT systems
are not only enjoyed by the residents, but they can provide
usefulness to other members of the community as well. For
example, external meter reading can be accomplished through
these smart home systems. Data relating to domestic water,
electricity, gas, and telecommunications may be automatically
transferred via the internet to the corresponding utility to
provide added convenience for the service providers, as well
as the service users. Furthermore, home health and safety
have become critical features of smart houses, allowing greater
peace of mind for residents. As the many benefits of having
a smart home have become more apparent in recent years,
many new homes are being built with sensors and actuators
installed to provide more modern amenities [3]–[6]. Smart
homes are becoming more intelligent and cost-effective as
computing, information, and communication technologies are
continuously being refined and made more affordable.
This paper investigates the design, implementation, and
validation of a distributed control platform for a smart building
testbed, which can be used to demonstrate novel, IoT-based
control implementations. The testbed is a scaled four-story
building equipped with a communication network, sensors, and
actuators. The environmental parameters (including tempera-
ture, light, humidity, and doors/windows status) are collected
from various nodes in the testbed and transmitted in real-
time via the dedicated IoT network. This information is then
analyzed in the building control system (implemented on a
Raspberry Pi computer) to generate the commands for the ac-
tuators. A model-based predictive control system is employed
to regulate the thermal parameters, and a switching controller
is used to control the actuators and lights. The communication
network is developed based on a Message Queuing Telemetry
Transport (MQTT) protocol, and Google Protocol Buffer (Pro-
tobuf) messages are utilized for encoding the data in a standard
format before being published to the MQTT broker. The broker
manages message handling to deliver messages to various
MQTT subscribers, which are smart building components such
as thermal and lighting systems.
A Node-RED platform is implemented to visualize the
building’s historical and real-time trends, and to interact with
various systems. Data is visualized in real-time through a
dashboard created using Node-RED, and users can manipu-
late controllable devices using user interface elements within
the dashboard. Node-RED is an open-source flow creation
platform, originally developed by IBM, which can be used
for IoT hardware systems, application programming interfaces
(API)s, and Web services [7], [8]. Node-RED is a free
JavaScript-based platform that supplies a visual flow editor
within a browser. The platform offers many features, such as
rapid development of programming flows that are capable of
interacting with sensors and actuators connected to general-
purpose input/output (GPIO) pins. Node-RED allows devel-
opers to connect information, output, and process nodes, to
construct data collection, monitoring, and processing flows [6].
It permits the connection between web services and provides
inter-operable nodes which allow for more complicated tasks,
such as sending sensor data via email or services such as
Twitter. Node-RED is a versatile and efficient prototyping
platform that allows for applications to be created quickly,
in particular applications that support IoT goals. The essence
of this tool is to enable engineers, technicians, and even end-
users to build and customize applications in real-time using
an intuitive development environment [9]. The experimental
results demonstrate the efficiency of the developed prototype
in building control and monitoring. All the hardware and
software specifications used in the testbed are explained in
detail for similar, future implementations.
The following section provides the related works in IoT-
based smart home design. Section III presents the smart home
testbed architecture. Section IV introduces the communication
architecture that was designed for the testbed. Section V
presents the predictive control approach applied for managing
testbed components. The testbed implementation using Node-
RED, is provided in section VI. Simulation results are shown
in the next section. Finally, conclusions and future work are
given in section VIII.
II. PRIOR WO RK
Existing studies on smart building design are mainly fo-
cused on two aspects of these infrastructures: communication
networks and indoor environment management. Many dif-
ferent communication protocols such as Bluetooth, Zig-Bee,
Wi-Fi, Z-Wave, IR wireless, Wireless USB, ultra-wideband
(UWB), and LoRa are widely deployed in smart buildings.
The study in [10] utilized a commercial LoRa gateway to
aggregate the environmental data from the end nodes located
in six spots in a 12-story smart building. Authors claimed
that their proposed communication architecture consumes low
power; however, it can not transmit a large number of bytes at a
time. Literature [11] integrated Zig-Bee protocol into a home
automation system. Their proposed communication setup is
energy-efficient and has low complexity. Authors in [12]
developed a smart building communication network based on
Wi-Fi to get the optimum performance under hostile operating
environments. In [13], a scenario where many smart home
sensors are communicating with a smart gateway over the
Bluetooth protocol is investigated. The authors analyzed the
potentials of this protocol in energy harvesting. A UWB-based
communication network is introduced for smart homes in [14].
Their developed architecture enables secure authentication in
the network.
Literature [15]–[19] investigated the management and con-
trol of various features (such as thermal conditions, security
and privacy, and energy consumption) in smart buildings.
The study in [15] proposed a smart control algorithm for
optimizing the energy consumption of cooling and heating
systems in a commercial building. In [16], authors developed
a smart building energy management system by incorporating
occupancy data, generated using battery-operated wireless
sensor nodes. Literature [17], [18] focused on the privacy
and security aspects of smart homes. An IoT-based scheme is
proposed in [17], to secure the existing authentication schemes
in smart homes. In [18], a novel protocol is introduced to
allow for secure software updates on infected nodes. Authors
claimed that their network offers more robust IP protection and
is cost effective. A machine learning-based control approach is
proposed in [19], for minimizing thermal energy consumption
and maintaining comfortable thermal conditions in a smart
building.
Most of the previous studies in smart building applications
(including the literature mentioned earlier) are developed and
implemented through computer-based models or simulations.
While computer simulations allow for exploring ’what if’
scenarios without experimenting them on a real-world system
itself, their performance depends on the accuracy of the
developed simulation model; therefore, they can not always
provide a realistic representation of an actual system. This
study aims to address the design and implementation of a smart
building prototype, including all of the relevant components
(such as communication, control, data collection, and storage
systems). This testbed opens up many future expansions for
practical research on cyber-physical systems management.
III. SMA RT BUILDING TES TB ED ARCHITECTURE
A pre-fabricated, multi-room building with four floors has
been upgraded to provide a physical testbed for the smart
home. Modifications were made to enclose the smart house
for humidity and temperature testing, while still allowing
access to each floor. In addition, the testbed has temperature
and humidity sensors, passive infrared sensor (PIR) motion
sensors, fans, electric heating pads, and servo motors for
controlling doors and windows. The specifications of sensors
and actuators embedded in the smart house testbed are given
in Table I [20]. The platform is modular, and designed to be
easily modified if needed. A range of pieces, including doors
and motor mounts, have been 3D printed for the project. The
3D model of the smart house is provided in Fig. 1. Rooms on
each floor have the following designations: the ground floor
consists of an open seating space between the living room
and the kitchen. The stairs lead to the second floor, where a
spacious living area with a gated space is accessible. The third
floor has an elevator connection, a bedroom, and a bathroom.
The fourth floor is an enclosed attic [20].
TABLE I
SEN SOR S INC ORP ORAT ED IN T HE TE STB ED
Component Quantity Part Number
Micro Servos 13 SG92R
Temperature/humidity sensors 9 DHT22
PIR motion sensors 4 1528-1991-ND
Fans 5 259-1790-ND
Heatering pads 5 AE10830-ND
LEDs (RGB strips) 9 NeoPixel
Raspberry Pi 1 Raspberry Pi 4 Model B
Raspberry Pi Zero 4 Raspberry Pi Zero W
IV. COMMUNICATION ARCHITECTURE
The implemented communication architecture, comprised
of the communication protocols and message structures used
within the smart house testbed, is explained in this section. The
architecture is designed to be easy to integrate and promote
interoperability between sensing and control nodes.
A. Communication Network
Message Queuing Telemetry Transport (MQTT) is used as
the method of communication in this project, because it is a
simple and widely supported protocol, especially for IoT ap-
plications. Because of this, multiple heterogeneous subsystems
in the smart building testbed can communicate and share data
through one network. MQTT is a publisher/subscriber-based
protocol, which uses a data broker to collect information from
data publishers, and to forward this data to data subscribers
[21]. Fig. 1 shows a simplified depiction of how MQTT is
implemented in the smart house, where nodes within the house
publish sensor data through a Mosquitto (MQTT) broker to
be processed via another Node-RED (subscriber) instance.
The testbed is implemented with one MQTT broker for the
whole structure, and multiple subscribers; one subscriber is
implemented for each data consumer.
Fig. 1. Node-RED Smart House Communication Implementation
B. Communication Ontology
MQTT provides a way of organizing data into topics,
which enables an ontological data routing and processing
method. In this testbed, individual MQTT topics are used for
distinguishing the type, route, and producer of each message;
however, MQTT does not provide a standard for semantically
structuring the data. For this purpose, Google Protocol buffer
(Protobuf) messages are defined to standardize the message
structure, ensuring compatibility between the publishers and
subscribers in the testbed. These Protobuf messages are spec-
ified in a Protobuf message file, and shared with all of the
nodes and server in the testbed. Libraries are provided for
many programming languages to enable the encoding and
decoding of Protobuf messages. For each publishing Node-
RED instance, a Protobuf encoder node is included in the
program flow before the data is published to the MQTT broker.
The encoder node will encode the message according to the
definition specified in the Protobuf message definition file, and
subscribers to MQTT message topics will need to decode the
encoded Protobuf messages to be able to interpret the data.
There are several message types defined to structure the data
published by each node, where each type represents data from
a particular kind of sensor. For example, a “Temperature” Pro-
tobuf message type is used to publish data from a temperature
sensor. There are fields for each message type common to all
sensor data messages, such as the sensor’s unique identifier, the
time at which the sensor value was recorded, and the quality
of the data. Some message types may have additional fields,
such as the temperature scale in the “Temperature” message
type. Fig. 2 shows an example “Motion” message displayed
as a JSON object in the Node-RED debugger after it has been
encoded and published by a remote Raspberry Pi 0 W, and de-
coded within the building management Raspberry Pi Model 4
B. For this message type, the value recorded from the sensor is
encoded as an enumeration: either “MOTION DETECTED”
or “NO MOTION DETECTED”.
Fig. 2. Example Decoded “Motion” Protobuf Message
V. PREDICTIVE CO NT ROL LE R ARCHITECTURE
In conventional buildings, subsystems such as heat-
ing/cooling, ventilation, and lighting systems are set through
simple controllers, e.g., rule-based, or proportional integral
derivative (PID) controllers. These types of controllers are
extensively used in building management applications because
of their accessible design, straightforward implementation, and
low operational costs [22]. Conventional building management
systems solely rely on the currently measured sensor values
and desired conditions to control devices, and they do not
consider future changes in the system and its environment in
decision making. Therefore, the main drawback of these man-
agement systems is that they are not adaptive, nor are they pre-
dictive. For instance, PID-based building management systems
are not able to respond to the dynamically changing environ-
mental factors and future trends (such as future building energy
profiles) in a space and can cause discomfort and energy inef-
ficiency [22]. Components in a conventional building operate
independently without coordination, which means that even if
each device satisfies a specific control objective (comfort and
energy savings) in each zone individually, it might not meet
the overall performance requirement in the entire building (i.e.,
fulfilling several control tasks simultaneously). Smart control
strategies are used in the building management systems to
address the issues mentioned above. Advanced control systems
can better track changes on the setpoints because they have
knowledge on the future setpoint trends, and system’s reac-
tions to changes in the control variables. For instance, using
predictive control strategies in thermal systems can reduce
overheating and overcooling the space by considering the
future thermal conditions. Occupant-related variables, such as
Fig. 3. Structure of A Model-based Predictive Controller
the occupants’ perception of comfort/feedback/behavior, can
be included in smart building management systems to enhance
control performance. In this implementation, a model-based
predictive controller is designed for the smart building thermal
systems, and it is implemented on a Raspberry Pi which has
an open-source operating system based on Debian Linux [23].
Each floor with its components is considered a subsystem in
the control design, and one model-based predictive controller
is assigned to each floor.
The model-based predictive controller (MPC) uses a system
model to predict the future states and make optimal control
decisions through its path [24]. In every step, an optimization
problem, including the current and future states and operating
constraints, is solved, and control signals from the current step
up to the prediction horizon Hare generated. The first element
of the control input sequence is injected into the system at
instant k, and the process is repeated in each instant [24].
The general representation of the system model is as fol-
lows:
x(k+ 1) = f(x(k), u(k)) (1)
where x(k)and u(k)denote the system states (temperature
in each floor) and control inputs (thermal system set-points),
respectively, and kis the time step. For implementing a model-
based controller on the testbed, we extracted a thermal model
(as the system model) from literature [25]. The cost function
for system (1) is defined as follows:
J(k) =
K−1
X
k=0
H
X
h=1
L(x(k+h), u(k+h−1)) (2)
where Kis the final time step. In every time step k, the cost
function J(k)is minimized with the predicted parameters up
to the horizon H: The cost function generated contains (1) the
deviation of the measured states (current temperature in each
zone) from the desired states (desired temperatures), and (2)
control inputs (thermal systems set-points).
L(x(k), u(k−1)) = kx(k)−x∗(k)k2
P+ku(k−1)k2
Q
+k∆u(k−1)k2
R
(3)
where P, Q, and Rare the weighting matrices. x∗(k)is the
desired value of state x(k)at time step k.u(k)and ∆u(k)
denote the control input and control input changes at time
step k, respectively. The cost function in each time step kis
minimized to drive the system to the desired indoor conditions
x∗(k)(minimizing the deviation of the measurements from
the desired values) while minimizing the thermal energy
consumption (control inputs).
In our implementation, the state variable x(k)is a vector
of zonal temperatures that should be regulated, and x∗(k)is a
vector of desired, optimal zonal temperatures. In each instant,
current state values (zonal temperatures) are measured, and
future states (temperatures) are predicted using the system
model in [25]. The cost function is the sum of current and
future thermal tracking errors—the difference between mea-
sured and desired values—and thermal energy consumption
from the initial step to the final step. Control inputs are the
thermal set-points for the zonal heating and cooling systems,
derived by the optimizer when minimizing the cost function.
By supplying the optimal control inputs to the building’s
thermal actuators, desired zonal temperatures are maintained
while energy usage is minimized in the thermal systems.
VI. NO DE -RED PLATF OR M IMPLEMENTATION
The primary method of interacting with the smart building
components will be a user interface that facilitates connecting
data sources to data consumers, visualizing data, and remote
configuration. Node-RED is selected for this purpose, which
provides a browser-based development environment, as shown
in Fig. 4, based on NodeJS. Node-RED can be deployed on
a range of hardware, from single-board computers to cloud
server instances [26]. Node-RED can be used on devices
directly connected to sensors to configure parameters for data
acquisition in this testbed remotely. It can also be used at the
edge to aggregate data from multiple sources and process data
before it is sent to remote processing systems. Finally, Node-
RED can also be used in a core server, or cloud platform. It
can gather data from multiple sources, analyze the data, and
store data in one or more databases [26].
Node-RED provides a flow-based, graphical editor, as well
as a dashboard for viewing data. Users can create program
flows using blocks (also known as nodes) from the pre-
installed palettes (or libraries), or extend the functionality by
installing blocks from other palettes. In Fig. 4, a flow is created
using additional nodes, such as the “Python MPC” node, which
runs a daemon process to execute a model-based predictive
controller algorithm developed in Python. This specific flow
is discussed in the experimental results in Section VII.
A. Node Data Processing and Storage
Once data is collected from each node, it needs to be stored
for later use. For this purpose, multiple databases can be
leveraged, each supporting different types of data. For sensor
data, a time-series database such as InfluxDB can be used.
Time-series databases are helpful for this type of application
because data visualization systems often provide standardized
connectors to automatically query this data, preventing the
need to develop a custom interface. For other types of data,
a Non-Structured Query Language (NoSQL) database, such
as MongoDB, can be used. MongoDB is useful for semi-
structured data, as it does not rely on pre-defined data schemas.
This is convenient for metadata storage, as metadata for one
type of system might not easily conform to a structure used
by other methods.
B. Node Data Visualization
One of the primary focuses of this testbed is data visual-
ization, where both real-time and historical data are provided
through a data visualization interface. Node-RED has a built-
in dashboard system that can visualize real-time data at the
node in which Node-RED is deployed. An example dashboard
created using Node-RED is shown in Fig. 6. The dashboard
displays a historical trend, as well as the current measurements
(real-time environmental data). Additionally, it provides a way
to manipulate the building control inputs. From this dashboard,
which is available on the building manager Raspberry Pi, users
can manually toggle lights, fans, and heating elements for a
specific floor. The system automatically encodes the control
information according to the Protobuf message specifications
and publishes the control message to the relevant MQTT
control topic. These remote systems publish Protobuf encoded
status information and signal values, and the building manage-
ment system decodes these messages to display the data in this
dashboard.
VII. EXP ER IM EN TAL RES ULT S
As the primary goal of this research is to demonstrate the
use of a smart building testbed for developing monitoring and
control strategies, a use case is established for integrating
a model-based predictive control system for controlling the
temperature within the smart house testbed. An existing pre-
dictive control application written in Python, described in [20],
was modified to work within the Node-RED environment, as
shown in Fig. 4. The algorithm is modified by converting
it from using direct GPIO pins to using the communication
architecture established via MQTT and Protobuf messages.
With the Node-RED integration, this control system can be
easily modified through the web-based development environ-
ment. This allows for a distributed control system, where
one system with better computing resources (Raspberry Pi
Model 4 B) can run the control algorithm using inputs and
outputs remotely provided by a less capable system (Raspberry
Pi 0 W). While the Raspberry Pi 0 computers are more
cost-effective at developing simple IoT systems, their limited
resources can pose a challenge for running multiple services
such as control algorithms and visualization systems. Because
of this, we found that the Raspberry Pi 0 computers were only
suited for encoding and decoding the Protobuf messages used
for communicating sensor values and control information, and
we also had to reduce the memory available for Node-RED to
256 MB, to avoid instability issues.
In the thermal testbed, sensors measure the zonal tempera-
ture and humidity, and this data is sampled every two seconds
by the Raspberry Pi 0 W computer. The measurements are
transmitted via MQTT to the Raspberry Pi 4, which hosts
Fig. 4. Node-RED MPC Temperature Control Flow
Fig. 5. Node-RED Automated Lighting Flow
the MQTT broker as well as the Node-RED environment
where the model-based controller is implemented. In a more
realistic scenario, there would be dozens of sensors connected
to multiple Raspberry Pi 0 computers, each sending data to the
Raspberry Pi 4, which could potentially cause communication
delays to the remote control system. Because of this, a random
delay (between two and four seconds) was added to Node-
RED to simulate communication delays, as shown in Fig. 4.
This added delay had no noticeable effect on the output of the
remote, MPC-based temperature control system.
Several additional Node-RED flows were developed as well,
to both demonstrate the system’s capability to work with
different types of sensors, and to evaluate the robustness of
such a system. Another example flow is given in Fig. 5, which
ingests motion data and toggles lights based on occupancy
status. This flow demonstrates how data from different nodes,
providing data from heterogeneous sensors, can be easily
aggregated with this system to achieve a desired goal.
Fig. 7 shows the outputs of the thermal controller imple-
mented on the Raspberry Pi 4. The first graph in Fig. 7 shows
Fig. 6. Node-RED Dashboard
the cost value, which is the summation of temperature setpoint
tracking error and thermal consumption. The cost trajectory
shows a downward trend, and eventually stabilizes at 0.123.
The second graph presents the zonal temperature using the
model-based predictive controller; the controller regulates the
thermal condition around the thermal setpoint of 20◦C. The
zonal temperature fluctuates slightly around the desired value
(i.e., satisfactory condition). These results demonstrate the ef-
fectiveness of our smart building implementation using Node-
RED and MQTT, where distributed sensors and actuators
are controlled using a flexible development and visualization
environment.
VIII. CONCLUSIONS AND FUTURE WOR KS
A distributed communication and control platform for a
smart building testbed is designed, implemented, and validated
in this research. The testbed presented in this paper provides a
modular framework based on inexpensive components, widely
used communication protocols, and a flexible development
environment that could be implemented in any smart city
initiative. The testbed is a small-scale, four-story building that
features a communication network, sensors, and actuators. The
environmental characteristics such as temperature, humidity,
and occupancy status are gathered from distributed nodes
in the testbed, communicated to a management system in
real-time, and analyzed in the building control system to
determine optimal control inputs for the testbed actuators.
This testbed gives researchers and students a platform for the
rapid development of novel IoT technologies, services, and
capabilities and can easily be adapted for many smart city
educational and research purposes.
Fig. 7. MPC Simulation Results
To demonstrate the use of such a testbed, a model-based
predictive control system is utilized to regulate the temperature
within the smart house. The communication network is built on
the MQTT protocol, and Google protocol buffers are employed
to standardize the messages communicated between different
nodes; both of which help enforce interoperability within the
system. Data is visualized via the Node-RED dashboard in
real-time, and users may provide control commands through
the dashboard’s user interface. The test results show the
effectiveness of the prototype built for distributed building
control and monitoring.
The future goals of this testbed are to demonstrate more
capabilities of this architecture by introducing additional sen-
sors and additional nodes. The work demonstrated in this paper
is not easily scalable, but will be with the addition of other
key components, as described in [27]. For the control aspect,
Node-RED provides an intuitive interface for configuring a
single control algorithm, but is difficult to scale to several
nodes since each node would need to be configured directly.
An orchestration platform is needed for specifying and deploy-
ing distributed control algorithms across many interconnected
nodes, which would be the case in an actual smart city
implementation. For the communication aspect, MQTT does
not directly scale well to a large number of publishers and
subscribers, but there are projects such as EMQ X [28]
which attempt to solve this scalability issue with MQTT. This
testbed will allow for more complicated scenarios, for instance,
optimizing the temperature control based on additional factors
such as power consumption. Additionally, this work will be
used for a more extensive testbed consisting of multiple smart
buildings, allowing for an even more significant number of use
cases.
REFERENCES
[1] L. Atzori, A. Iera, and G. Morabito, “The internet of things: A survey,”
Computer Networks, pp. 2787–2805, 10 2010.
[2] M. Li, W. Gu, W. Chen, Y. He, Y. Wu, and Y. Zhang,
“Smart home: Architecture, technologies and systems,” Procedia
Computer Science, vol. 131, pp. 393–400, 2018. [Online]. Available:
https://www.sciencedirect.com/science/article/pii/S1877050918305994
[3] K. Bing, L. Fu, Y. Zhuo, and L. Yanlei, “Design of an internet of things-
based smart home system,” in 2011 2nd International Conference on
Intelligent Control and Information Processing, vol. 2, 2011, pp. 921–
924.
[4] S. Das, D. Cook, A. Battacharya, E. Heierman, and T.-Y. Lin, “The
role of prediction algorithms in the mavhome smart home architecture,”
IEEE Wireless Communications, vol. 9, no. 6, pp. 77–84, 2002.
[5] V. Lesser, M. Atighetchi, B. Benyo, B. Horling, A. Raja, R. Vincent,
T. Wagner, X. Ping, and S. X. Zhang, “The Intelligent Home
Testbed,” Proceedings of the Autonomy Control Software Workshop
(Autonomous Agent Workshop), January 1999. [Online]. Available:
http://mas.cs.umass.edu/paper/134
[6] C. Yerrapragada and P. Fisher, “Voice controlled smart house,” in
IEEE 1993 International Conference on Consumer Electronics Digest
of Technical Papers, 1993, pp. 154–155.
[7] “Node red programming guide.” [Online]. Available:
http://noderedguide.com/
[8] A. Rajalakshmi and H. Shahnasser, “Internet of things using node-red
and alexa,” in 2017 17th International Symposium on Communications
and Information Technologies (ISCIT), 2017, pp. 1–4.
[9] M. Leki´
c and G. Gardasevic, “Iot sensor integration to node-red
platform,” 2018 17th International Symposium INFOTEH-JAHORINA
(INFOTEH), pp. 1–5, 2018.
[10] L. H. Trinh, V. X. Bui, F. Ferrero, T. Q. K. Nguyen, and M. H.
Le, “Signal propagation of lora technology using for smart building
applications,” in 2017 IEEE Conference on Antenna Measurements
Applications (CAMA), 2017, pp. 381–384.
[11] V. Moravcevic, M. Tucic, R. Pavlovic, and A. Majdak, “An approach for
uniform representation and control of zigbee devices in home automation
software,” in 2015 IEEE 5th International Conference on Consumer
Electronics - Berlin (ICCE-Berlin), 2015, pp. 237–239.
[12] H. Ghayvat, W. Chen, P. Gope, and A. Ghayvat, “Issues and mitigation
of attenuation and direction of arrival in wellness protocol to wire-
less sensors and networks based smart building,” 2017 International
conference of Electronics, Communication and Aerospace Technology
(ICECA), vol. 2, pp. 700–705, 2017.
[13] O. Galinina, K. Mikhaylov, S. Andreev, A. Turlikov, and Y. Kouch-
eryavy, “Smart home gateway system over bluetooth low energy with
wireless energy transfer capability,” Eurasip Journal on Wireless Com-
munications and Networking, vol. 2015, no. 1, 2015.
[14] Y. Zhang, W. Liu, Y. Fang, and D. Wu, “Secure localization and
authentication in ultra-wideband sensor networks,” IEEE Journal on
Selected Areas in Communications, vol. 24, no. 4, pp. 829–835, 2006.
[15] L. Yu, D. Xie, T. Jiang, Y. Zou, and K. Wang, “Distributed real-time
hvac control for cost-efficient commercial buildings under smart grid
environment,” IEEE Internet of Things Journal, vol. 5, no. 1, pp. 44–
55, 2018.
[16] Y. Agarwal, B. Balaji, R. Gupta, J. Lyles, M. Wei, and T. Weng,
“Occupancy-driven energy management for smart building automation,”
in Proceedings of the 2nd ACM Workshop on Embedded Sensing
Systems for Energy-Efficiency in Building, ser. BuildSys ’10. New
York, NY, USA: Association for Computing Machinery, 2010, p. 1–6.
[Online]. Available: https://doi.org/10.1145/1878431.1878433
[17] V. L. Shivraj, M. A. Rajan, M. Singh, and P. Balamuralidhar, “One time
password authentication scheme based on elliptic curves for internet
of things (iot),” in 2015 5th National Symposium on Information
Technology: Towards New Smart World (NSITNSW), 2015, pp. 1–6.
[18] C. Huth, P. Duplys, and T. G¨
uneysu, “Secure software update and ip
protection for untrusted devices in the internet of things via physically
unclonable functions,” in 2016 IEEE International Conference on Perva-
sive Computing and Communication Workshops (PerCom Workshops),
2016, pp. 1–6.
[19] R. Eini and S. Abdelwahed, “Learning-based model predictive control
for smart building thermal management,” in 2019 IEEE 16th Interna-
tional Conference on Smart Cities: Improving Quality of Life Using ICT
IoT and AI (HONET-ICT), 2019, pp. 038–042.
[20] R. Eini, L. Linkous, N. Zohrabi, and S. Abdelwahed, “A testbed for a
smart building: Design and implementation,” 2019.
[21] R. A. Atmoko, R. Riantini, and M. K. Hasin, “IoT real time data
acquisition using MQTT protocol,” Journal of Physics: Conference
Series, vol. 853, p. 012003, may 2017. [Online]. Available:
https://doi.org/10.1088/1742-6596/853/1/012003
[22] D. Boyd, Intelligent Buildings. A. Waller, 1994. [Online]. Available:
https://books.google.com/books?id=eypSAAAAMAAJ
[23] E. Upton and G. Halfacree, Raspberry Pi User Guide. John Wiley &
Sons, 2014.
[24] E. F. Camacho and C. B. Alba, Model predictive control. Springer
science & business media, 2013.
[25] R. Eini and S. Abdelwahed, “Distributed model predictive control based
on goal coordination for multi-zone building temperature control,” in
2019 IEEE Green Technologies Conference(GreenTech), 2019, pp. 1–6.
[26] T. Hagino, Practical Node-RED Programming: Learn powerful visual
programming techniques and best practices for the web and IoT. Packt
Publishing, 2021.
[27] N. Zohrabi, P. J. Martin, M. Kuzlu, L. Linkous, R. Eini, A. Morrissett,
M. Zaman, A. Tantawy, O. Gueler, M. A. Islam, N. Puryear, H. Kalka-
van, J. Lundquist, E. Karincic, and S. Abdelwahed, “Opencity: An open
architecture testbed for smart cities,” in 2021 IEEE International Smart
Cities Conference (ISC2), 2021, pp. 1–7.
[28] “An open-source, cloud-native, distributed mqtt broker for iot.” [Online].
Available: https://www.emqx.io/