Renewable energy and energy efficiency are vital to a country’s economic development. It covers the implementation of policies related to building energy efficiency [1]. Buildings account for about 40% of the total energy consumption in most countries [2]. Given the necessity for building energy consumption data, predictive models utilizing machine learning and statistical methods were proposed [3]. Machine learning was also employed to predict the indoor climate that affects energy consumption [4].
Recently, home energy consumption has attracted researchers’ attention. In the next 20 years, energy consumption in homes will increase by >40% [5]. A home energy management system (HEMS) is an intelligent system that controls home appliances to improve energy efficiency, promote renewable energy resources, and reduce electricity costs [2]. Controlling the air conditioner (AC) and electricity usage in residential homes has achieved energy savings of 22% [6]. Managing energy storage, renewable energy, and load scheduling in a smart home has reduced electricity costs by 57.62% [7]. The HEMS is a part of demand-side management (DSM), and load-side management techniques are used to maintain grid stability [8]. Nutakki and Mandava [8] compared heuristic, meta-heuristic, mathematical programming, and artificial neural network techniques to solve optimization problems in the HEMS, such as demand response, dynamic pricing, load forecasting, and appliance scheduling.
A typical HEMS architecture consists of sensing and measurement units, smart appliances, a user interface, and a central control unit. Home appliances can be classified into schedulable appliances, such as washing machines, and non-schedulable appliances, such as refrigerators [9]. Home appliance scheduling is one of the main aspects of the HEMS [5]. The main objectives of appliance scheduling are minimizing electricity cost and peak load demand [10, 11].
Common techniques for home appliance scheduling include the use of fuzzy logic controller (FLC) [12,13,14,15,16], deep reinforcement learning (DRL) [17, 18], genetic algorithm (GA) [19,20,21,22], and particle swarm optimization (PSO) [19, 22, 23]. Emami et al. [12] proposed FLC-based load scheduling in a smart home with PV and battery storage. The FLC controlled the operation of schedulable loads by considering the discrepancy between PV power generation and home power consumption, where a greater difference indicated a higher probability of switching on the appliances. Ghadi [13] proposed that the FLC shifts the load to avoid peak demand. The FLCs are composed of the global FLC, which identifies the most used appliances and their power demand; the first FLC, which shifts peak demand to low-demand periods; and the second and third FLCs, which shift peak demand to low-rising and low-falling periods, respectively.
In Ref. [14], home appliances were categorized into low-power, medium, and high-power. The FLC was used to select the operation of medium and high-power appliances, whether using on-grid or off-grid systems, based on active power, PV power, battery voltage, and the actual energy price. Zhang et al. [15] proposed that the FLC delays the operation of controllable loads to manage energy from renewable resources. The FLC has solar irradiation, electricity price, wind speed, and load power inputs. Atef et al. [16] suggested integrating the predicted models using machine learning and the FLC. The FLC was used to determine the optimal schedule of scheduled appliances based on the predicted values of load consumption and the electricity price.
The DRL in Ref. [17] was used to control the domestic hot water system. It delayed the operation of the hot water unit based on the PV power production, thus reducing the peak load and energy consumption. Lu [18] proposed the DRL to solve the multi-objective optimization in the HEMS. The system determined the optimal time to switch on appliances based on peak demand, electricity cost, and appliance punctuality. The GA implemented on the smart scheduler (SS) was proposed to schedule the energy consumption patterns of home appliances [19]. The optimization objectives were to minimize energy consumption and electricity costs, reduce peak load, and maintain user comfort. Tutkun et al. [21] proposed that the GA schedule the schedulable appliances at the beginning of the day. The electricity cost and peak load demand were used to calculate the fitness function of the GA algorithm. Alhasnawi et al. [23] proposed PSO for load scheduling based on electricity price, user preference, and the production or storage power.
Most of the existing works mentioned previously implement algorithms using software simulations or hardware prototypes. The appliance scheduling systems using FLCs were simulated using simulation software [12, 13, 15, 16], such as MATLAB developed by MathWorks [12] and LABVIEW developed by National Instruments [13]. Software simulations are also adopted in DRL algorithms [17, 18] using the Python programming language developed by Python Software Foundation running on a personal computer [18] and GA and PSO algorithms using MATLAB [19].
The hardware prototypes for the embedded platform are used to implement the FLC [14] and PSO [23]. The hardware prototype proposed in Ref. [14] consisted of a measurement module (ADE4473), a microcontroller (MSP430), a wireless communication module (Tibbo communication module EM1000W), and control outputs (relays). The measurement module was used to measure the PV current and battery voltage. The FLC was implemented on the microcontroller, where the fuzzy outputs were used to switch the relays for opening or closing the load’s contactors. The communication module was used to communicate with the web server and provide the user interface, such as displaying the measurement results, load profile, and device configuration.
The hardware testbed in Ref. [23] consisted of many terminal units (TUs), a base terminal unit (BTU), and an Internet of Things (IoT) platform. The BTU, comprised of the Raspberry Pi module, was used to access the data from the TU and send it to the IoT platform. ThingSpeak developed by MathWorks was employed as the IoT platform. It was used to visualize the load consumption and the microgrid’s power generation. In this case, the HEMS performed as the agent in the multi-agent system for demand response management. IoT technology has been adopted in many applications in energy management systems [24]. The Raspberry Pi and ThingSpeak are popular devices and cloud platforms used in IoT applications [25].
According to implementation platforms, research on HEMS can be divided into software simulation and hardware testbed. Software simulation provides flexibility and an easy way to implement and evaluate the HEMS algorithms. However, it suffers from real-time processing and actual conditions. In contrast, the hardware prototype has less flexibility but reflects a more realistic condition. Due to the high cost and complexity of hardware systems, previous prototypes discussed only consider several parts, especially those related to the control unit where the algorithm is implemented and the data communication module. This approach offers an efficient way to develop and evaluate the reliability of the proposed HEMS to be implemented in real applications in the sense of real-time processing and interfacing compatibility with the other actual devices.
There are two approaches for controlling home appliances: direct and indirect control [26]. In direct control, the HEMS controls the load directly based on commands from the master unit according to a particular HEMS algorithm. This requires home appliances to be equipped with an interface unit that can be accessed by the HEMS. The work by Chojecki et al. [14] is categorized as direct control. In indirect control, the user manually controls home appliances based on information or recommendations from the HEMS. The method is suitable for controlling legacy appliances or any appliances requiring human intervention. The work by Tantawy et al. [22] can be categorized as indirect control since the system provides a user interface to the customer regarding the cost and power consumption for different scenarios.
Previous studies show that the common optimization objectives of appliance scheduling in the HEMS are the minimization of electricity costs and peak load demand, with driving factors such as PV power generation, load consumption profile, and the time-of-use (TOU) pricing of the electricity provider. These objectives and driving factors are not applicable to all residential homes; for instance, the TOU tariff is subject to the regulations of the utility provider, and the load consumption profile depends on the resident’s behavior. Unfortunately, there is no general HEMS algorithm suitable for all conditions. Therefore, the HEMS should be designed according to the particular condition of the resident’s home. This paper focuses on appliance scheduling for a typical residential home with a grid-connected PV, no TOU tariff, and a small family with working parents and student children. The proposed HEMS aims to reduce electricity costs by scheduling schedulable appliances based on PV power generation. Our work aims to overcome the limitations of the graphical user interfaces developed in previous studies [14, 23] by adopting the supervisory control and data acquisition (SCADA), an established industrial control and monitoring system, while implementing the FLC technique for load scheduling. However, since the FLC algorithm cannot be implemented on the SCADA software, an embedded system, namely the Raspberry Pi, is adopted and integrated with the SCADA system.
The main contributions of the proposed systems are as follows:
- (1)
It proposes a Sugeno fuzzy that provides an easy method for defining fuzzy rules suitable for scheduling the load.
- (2)
The proposed system considers the inhabitants’ behavior when operating home appliances and is suitable for existing or legacy appliances where human intervention is required to start them, i.e. the indirect control method.
- (3)
The proposed system takes an innovative approach by integrating the established SCADA system with embedded platforms. This integration allows for the effective implementation and evaluation of the algorithm.
- (4)
The proposed SCADA system adopts an IoT-based SCADA that provides a user-friendly graphic interface, historical data, easy interfacing with industrial and IoT-based devices, and remote access via the Internet.
- (5)
The proposed Fuzzy-based load scheduling algorithm is implemented on an embedded system that can be deployed directly for a real-time application.
- (6)
The proposed system adopts the message queuing telemetry transport (MQTT) protocol, a popular IoT protocol that provides interfacing scalability with the latest technology.
The rest of the paper is organized as follows: Section II presents the proposed system, Section III presents the experimental results and discussion, and Section IV covers the conclusions.
The architecture of the proposed home appliance scheduling system is illustrated in Figure 1. The home appliances are divided into non-schedulable and schedulable appliances. In the figure, the non-schedulable appliances are represented by light green color boxes, i.e., lighting, freezer, water pump, and refrigerator, whereas the scheduled appliances are represented by light yellow boxes, i.e., water heater, washing machine, rice cooker, and microwave oven. In this work, the scheduled appliances are the existing (legacy) appliances that should be manually started by the human (inhabitant). The figure is denoted by the yellow switch (manual scheduling control). This feature offers the benefit that common appliances at the home can adopt the proposed approach. The home electricity is provided by the grid-connected PV, where the solar PV is connected to the grid using the grid-tie inverter. The smart power meter, represented by a circle with P in the figure, measures each appliance’s power and source’s power.

Architecture of home appliance scheduling system. FLC, fuzzy logic controller; SCADA, supervisory control and data acquisition.
The SCADA human machine interface (HMI) is the SCADA system with a graphical user interface used to monitor appliances’ consumed power and generated power from the energy resources. It wirelessly connects to the smart power meter for easy and convenient installation at home. The HMI provides a user-friendly monitoring dashboard and saves the monitored data into the database (historical data). SCADA software usually has a script tool to perform simple programming tasks, such as standard mathematical operations and conditional statements. However, it is not suitable for implementing the FLC algorithm. Therefore, we propose to employ the embedded system, namely the Raspberry Pi, as a platform for FLC implementation. In Figure 1, the FLC is called the Master Control. The primary challenge in integrating SCADA software with standard programming languages, such as those used on the Raspberry Pi, is the difference in variable update mechanisms [27], as SCADA systems update variables continuously at fixed time intervals. In contrast, the programming language updates it sequentially. Integrating the SCADA system and the FLC implemented in the Raspberry Pi is performed using the MQTT protocol to resolve this issue.
Compared to the conventional HEMS, the integration of SCADA and an embedded platform offers several benefits:
- –
The SCADA HMI provides a better graphical user interface for controlling and monitoring the HEMS compared to common IoT platforms.
- –
The embedded platform provides an effective way to implement the AI technique, such as FLC, while integrating it with SCADA for maintaining the AI-based HEMS.
- –
The SCADA system can be integrated with standard industrial sensor and actuator devices for efficient HEMS development and deployment.
The configuration of the hardware prototype of the proposed appliance scheduling system is depicted in Figure 2. The prototype is mainly used to evaluate the real-time implementation of the load scheduling system on embedded platforms and data communication between devices. The electrical aspect, such as the generated and consumed power, is simulated using the developed embedded simulator. The configuration of the hardware prototype consists of four main components: Master Control Unit, SCADA HMI, Appliance Simulator, PV and AC Bus Simulator. These components communicate with each other using WiFi communication, where the HMI is the WiFi access point, and the rest are the WiFi stations. The HMI is a cloud-based SCADA that is connected to the Internet and, thus, can be accessed anywhere. The lightweight MQTT protocol is adopted to exchange data between devices effectively.

Hardware configuration of home appliance scheduling system. HMI, human machine interface; MQTT, message queuing telemetry transport; SCADA, supervisory control and data acquisition.
The Appliance Simulator is used to simulate the operation of an appliance and is implemented on an ESP-32S microcontroller module. It models the power consumption of an appliance based on a prepared power consumption profile dataset. The dataset is collected from the home during a week using an IoT-based data logger. The database is stored in a comma-separated value (CSV) file and read by the Master Control Unit, which is sent to each appliance using the MQTT protocol. According to the appliance types, there are two power consumption profile datasets. The non-scheduled appliance dataset contains the power consumption profile during a week with a 1-min time interval. The scheduled appliance dataset contains the power consumption profile during the operation time only; for instance, it is around 30 min in the rice cooker dataset. In this case, the starting time of the appliance will be defined by the proposed load scheduling. The PV and AC Bus Simulator simulate the PV power generation and AC bus power profiles, respectively. Like the Appliance Simulator, they run the power profiles according to the datasets sent by the Master Control Unit via the MQTT protocol.
The Master Control Unit implemented on a Raspberry Pi module performs two tasks: simulation data generator and FLC-based appliance scheduling. The simulation data generator generates the power profile from the dataset to run the Appliance, PV and AC Bus Simulators, as described previously. The FLC-based appliance scheduling algorithm is used to schedule the starting time of the washing machine, rice cooker, microwave oven, and water heater. The algorithm will be discussed in the next section.
One of the main contributions of the proposed system is the integration of the SCADA system and embedded platform. Thanks to the MQTT protocol, data communication can be easily integrated. The MQTT protocol is a publish-and-subscribe protocol, where the data are sent from the publisher to the subscriber via an MQTT broker. In this work, the MQTT broker is installed on the Raspberry Pi module (Master Control Unit), as shown in Figure 2.
The MQTT data communication used in the proposed system is illustrated in Figure 3. In the MQTT protocol, the message is defined by its topic. The subscriber who subscribes to the same topic with the publisher will receive the message published by the publisher. There are four topics used in this work, as shown in Figure 3. The first topic (indicated with red color) is used to exchange the power profile data from the Appliances, PV and AC Bus Power Profile Generator (publisher) to the Appliances, PV and AC Bus Simulator (subscriber). The second topic (indicated in blue) is used to exchange the power profile data from the Appliances, PV and AC Bus Simulator (publisher) with the Haiwell HMI (subscriber). It is noted here that the Haiwell HMI receives the power profile data from the Appliances, PV and AC Bus Simulator, not from the Appliances, PV and AC Bus Power Profile Generator. This scenario allows the system to be quickly deployed in the actual application, as the actual devices can replace the simulators without the need to change the MQTT configuration.

MQTT data communication. AC, air conditioner; FLC, fuzzy logic controller; HMI, human machine interface; MQTT, message queuing telemetry transport.
The third topic (indicated in black) is used to exchange PV power data from the Haiwell HMI (publisher) with the FLC (subscriber). The FLC uses the PV power data to determine the appliance schedule. The fourth topic (indicated in green) is used to send the appliance schedule generated by the FLC (publisher) to the Haiwell HMI (subscriber). In general, an approach to integrate the SCADA system (Haiwell HMI) and the embedded platforms (Raspberry Pi and ESP-32S) exploits the benefits of each component and facilitates the MQTT protocol, offering an efficient method for implementing the appliance load schedule.
As described previously, the SCADA HMI offers a user-friendly graphical interface. It is common for the SCADA software to be bundled with a friendly tool for designing the user interface. This tool provides an easy and convenient method for designing a user interface dashboard suitable for control and monitoring tasks. In this work, the Haiwell HMI is programmed using the Haiwell Cloud SCADA software developed by Xiamen Haiwell Technology Co., Ltd. [18], which is available for free download.
The design of the HMI main display is illustrated in Figure 4. The bottom part consists of three panels: the simulation panel, appliance scheduling panel, and sub-menu panel. The simulation panel is used to run and monitor the simulation process. The simulation task comprises the start time, mode, and simulation time, which are controlled and displayed on this panel. The appliance scheduling panel shows the appliance’s schedule as generated by the FLC. The sub-menu panel is used to open other sub-menus, such as the control and monitoring menu that is used to control and monitor the system in more detail; the energy management menu that is used to monitor the FLC input and output; and the historical data menu that is used to display and download historical data. The rest of the parts display the power consumption of appliances, PV power, and AC bus power.

Design of HMI main display. HMI, human machine interface.
The project manager menu of the Haiwell Cloud SCADA software is depicted in Figure 5. The main tools for HMI design include device configuration, variable setting, and display design, which are indicated in the figure. The device configuration configures the devices connected to the HMI using specific communication protocols, such as Serial port, Ethernet, and MQTT. The variable setting defines the variables used in the SCADA application. The variables consist of the interval variable, which is accessed in the HMI memory, and an external variable, which is accessed from the external device. The display design tool is essential for developing the graphical user interface, as discussed below.

Project manager menu of Haiwell Cloud SCADA software. SCADA, supervisory control and data acquisition.
The display designer tool of Haiwell Cloud SCADA software is depicted in Figure 6. The center part is the dashboard of the designed display, while the right part is the graphic library as the drawing tool. The graphical display in the dashboard is quickly drawn by the drag and drop of the objects provided in the graphic library. Some examples of graphical objects are Bit lamp, Bit switch, Word lamp, Word switch, Numeric input/display, Function button, and Rotating shape. In Figure 6, the design of the numeric display is indicated in the center, where the variable, namely “PV.PV_power,” is assigned to the numerical display and represents the PV power as shown in the dashboard. Drawing tools allow the programmer to quickly draw the dashboard without programming skills.

Display designer tool of Haiwell Cloud SCADA software. SCADA, supervisory control and data acquisition.
The architecture of the proposed FLC-based appliance scheduling is depicted in Figure 7. The popular Sugeno fuzzy is used to determine the starting time of the washing machine, rice cooker, water heater, and microwave oven based on the availability of PV power and the day. The Sugeno fuzzy was selected for several reasons. Unlike ANN, GA, or PSO, fuzzy logic offers a simple approach in which the fuzzy rule-based load scheduling design can be easily interpreted. Furthermore, it is computationally effective and suitable for real-time implementation in the embedded system. Compared to the Mamdani fuzzy, the Sugeno fuzzy provides an effective way to define the fuzzy output as a crisp value, which conforms with the load scheduling time that requires a precise value. Therefore, the user can easily determine the preference load scheduling time in the Sugeno fuzzy design.

Architecture of FLC-based appliance scheduling. FLC, fuzzy logic controller; OM SCH, microwave oven schedule; RC SCH, rice cooker schedule; WH SCH, water heater schedule; WM SCH, washing machine schedule.
The figure shows that the next-day appliances’ schedule is determined based on the PV power generated on the current day. Thus, the inputs of FLC generate PV power at around 08:00 hr, 12:00 hr, and 15:00 hr. The time selection is based on two observations. First, the selected times represent the PV power profile, i.e., rising power in the morning, peak power at noon, and falling power in the afternoon. Second, they represent the activity times of the inhabitants of a typical small family. The weekday input represents the different behaviors of the inhabitants during the working days (Monday to Friday) and weekends (Saturday and Sunday).
The output of the FLC is the scheduled time of the washing machine, rice cooker, and microwave oven. It is important to note that the appliance schedule follows typical small family habits. Based on this assumption, the operation of the appliances is defined as follows:
- (1)
The washing machine is used once a day, either in the morning, at noon, or in the afternoon.
- (2)
The rice cooker is used once a day, in the morning.
- (3)
The water heater is operated twice a day, in the morning and the afternoon.
- (4)
The microwave oven is operated once a day, in the afternoon.
The FLC membership functions are illustrated in Figure 8. Figures 8(a)–(d) show the membership functions of PV Power H8, PV Power H12, PV Power H15, and Weekday, respectively. The linguistic variable of PV Power H8 has the values of “Low” and “Med,” with their membership functions shown in Figure 8(a). The linguistic variable of PV Power H12 has the values of “Low,” “Med,” and “High,” with their membership functions shown in Figure 8(b). The linguistic variable of PV Power H15 has the values of “Low” and “Med,” with their membership functions shown in Figure 8(c). The linguistic variable of Weekday has the values of “Work” and “End,” with their membership functions shown in Figure 8(d).

FLC membership function. FLC, fuzzy logic controller.
The Sugeno fuzzy rules are designed based on the assumptions described previously. In this work, three scenarios are adopted, each representing different habits of the inhabitants as follows:
First scenario (Fuzzy-A): The rules are designed to follow the behavior of inhabitants who leave early and return late, with the water heater scheduled to turn on at 07:00 hr and 17:00 hr during working days. Some fuzzy rules of the first scenario are listed in Table 1.
Second scenario (Fuzzy-B): The rules are designed to follow the behavior of inhabitants who leave in the mid-morning and return in the mid-afternoon, with the water heater set to turn on at either 07:00 hr or 08:00 hr, and again at either 15:00 hr or 16:00 hr during working days. Some fuzzy rules of the second scenario are listed in Table 2.
Third scenario (Fuzzy-C): The rules are designed to follow the behavior of inhabitants who leave late and return early, with the water heater set to turn on at 09:00 hr or 10:00 hr and again at 14:00 hr or 15:00 hr during working days. Some fuzzy rules of the third scenario are listed in Table 3.
Some fuzzy rules in the first scenario (Fuzzy-A)
| No. | PV Power H8 | PV Power H12 | PV Power H15 | Weekday | RC SCH | WH SCH1 | WM SCH | OM SCH | WH SCH2 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Low | Low | Low | Work | 6 | 7 | 12 | 15 | 17 |
| 2 | Low | Low | Low | Off | 8 | 9 | 12 | 14 | 15 |
| 3 | Low | Low | Med | Work | 6 | 7 | 12 | 15 | 17 |
| 4 | Low | Low | Med | Off | 8 | 9 | 12 | 15 | 16 |
| … | … | … | … | … | … | … | … | … | … |
| 21 | Med | High | Low | Work | 6 | 7 | 10 | 15 | 17 |
| 22 | Med | High | Low | Off | 7 | 8 | 10 | 14 | 15 |
| 23 | Med | High | Med | Work | 6 | 7 | 10 | 15 | 17 |
| 24 | Med | High | Med | Off | 7 | 8 | 10 | 15 | 16 |
OM SCH, microwave oven schedule; RC SCH, rice cooker schedule; WH SCH, water heater schedule; WM SCH, washing machine schedule.
Some fuzzy rules in the second scenario (Fuzzy-B)
| No. | PV Power H8 | PV Power H12 | PV Power H15 | Weekday | RC SCH | WH SCH1 | WM SCH | OM SCH | WH SCH2 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Low | Low | Low | Work | 7 | 8 | 12 | 14 | 15 |
| 2 | Low | Low | Low | Off | 8 | 9 | 12 | 14 | 15 |
| 3 | Low | Low | Med | Work | 7 | 8 | 12 | 15 | 16 |
| 4 | Low | Low | Med | Off | 8 | 9 | 12 | 15 | 16 |
| … | … | … | … | … | … | … | … | … | … |
| 21 | Med | High | Low | Work | 6 | 7 | 10 | 14 | 15 |
| 22 | Med | High | Low | Off | 7 | 8 | 10 | 14 | 15 |
| 23 | Med | High | Med | Work | 6 | 7 | 10 | 15 | 16 |
| 24 | Med | High | Med | Off | 7 | 8 | 10 | 15 | 16 |
OM SCH, microwave oven schedule; RC SCH, rice cooker schedule; WH SCH, water heater schedule; WM SCH, washing machine schedule.
Some fuzzy rules in the third scenario (Fuzzy-C)
| No. | PV Power H8 | PV Power H12 | PV Power H15 | Weekday | RC SCH | WH SCH1 | WM SCH | OM SCH | WH SCH2 |
|---|---|---|---|---|---|---|---|---|---|
| 1 | Low | Low | Low | Work | 9 | 10 | 12 | 13 | 14 |
| 2 | Low | Low | Low | Off | 9 | 10 | 12 | 13 | 14 |
| 3 | Low | Low | Med | Work | 9 | 10 | 12 | 14 | 15 |
| 4 | Low | Low | Med | Off | 9 | 10 | 12 | 14 | 15 |
| … | … | … | … | … | … | … | … | … | … |
| 21 | Med | High | Low | Work | 8 | 9 | 11 | 13 | 14 |
| 22 | Med | High | Low | Off | 8 | 9 | 11 | 13 | 14 |
| 23 | Med | High | Med | Work | 8 | 9 | 11 | 14 | 15 |
| 24 | Med | High | Med | Off | 8 | 9 | 11 | 14 | 15 |
OM SCH, microwave oven schedule; RC SCH, rice cooker schedule; WH SCH, water heater schedule; WM SCH, washing machine schedule.
Only three scenarios are adopted in the current implementation, and the user manually selects each. However, this can be extended to other scenarios, and a machine learning technique can automatically select them accordingly. This is left for future work.
The proposed system is evaluated using the real dataset from a home equipped with an IoT-based data logger. The data logger records the power consumption profiles of the home appliances at a 1-min time interval. The PV power dataset is obtained from the Solarman data logger, which is installed in the PV inverter of the on-grid PV system with a capacity of 2,000 Wp. It is worth noting that since the PV power dataset is obtained from actual conditions, it reflects the real PV power affected by PV temperature and other weather conditions. The Solarman data logger records the PV power at a 5-min time interval. Then, since the time interval of the appliances dataset is 1 min, the PV power dataset is reformatted into a 1-min time interval. Therefore, the dataset contains the PV power and appliance power consumptions at a 1-min time interval. During the experiments, for simplicity and based on the observation that the weekly activities of the inhabitants are the same, the experiments evaluate only a week of data (Monday to Sunday). Thus, there are a total of 10,080 data points. Then, the dataset is simulated in real-time to evaluate the proposed system, where a 1-min time interval in the dataset is simulated in 1 s. Therefore, it requires 168 min to simulate a 1-week dataset.
During the simulation, the non-schedulable appliance power data is loaded from each simulation step dataset. Thus, the usage time is precisely the same as the profile in the dataset. For the schedulable appliance, the starting time is determined by the proposed method. Once it is scheduled to run, the power consumption each minute and the operation duration follow the dataset. Four scheduling methods are evaluated: Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C. The Fixed method schedules the appliances as follows: the water heater operates at 06:00 hr and 17:00 hr, the rice cooker operates at 07:00 hr, the washing machine operates at 08:00 hr, and the microwave oven operates at 16:00 hr. The scheduling of the Fuzzy-A, Fuzzy-B, and Fuzzy-C methods is based on the proposed FLC described in Section 2.e.
The SCADA HMI main display is shown in Figure 9. The upper part displays the power consumed by the home appliances, the power generated by the PV and grid, and the communication status of each device. In the figure, a light green circle indicates that the device is connected to the HMI, while a dark green circle indicates disconnection. The consumed/generated power is displayed in a light blue box. The lower left part shows the simulation status, such as the day, hour, minute, and simulation step. The simulation mode switch shown in the figure is used to select the simulation mode, i.e., Fixed scheduling and Fuzzy scheduling. It can be used to select the user preferences, such as the Fuzzy-A, Fuzzy-B, and Fuzzy-C scenarios, as described in the previous section. The time schedules of the washing machine, water heater, rice cooker, and microwave oven are displayed in the center-lower part. It is noted here that the schedule is generated at night and used for day-ahead scheduling.

SCADA HMI main display. HMI, human machine interface; SCADA, supervisory control and data acquisition.
Figure 9 illustrates how the red lines connecting power sources and loads provide the user with an intuitive representation of the home’s electrical network. The changes in light and dark colors of the circle and rectangle provide fast and accessible information to the user about the status of the appropriate objects, i.e., the communication status for the circle object and the power source and appliance statuses for the rectangle object. The time for load scheduling shown at the center bottom of the figure helps the user switch on the appliances appropriately using the indirect control method.
The SCADA HMI monitoring and control display is shown in Figure 10. It comprises 10 sub-panels, where eight sub-panels refer to the home appliances and two to the PV and AC bus. Each panel has a status indicator and detailed information on the appliance’s electricity, such as voltage, current, power, and energy. In addition, a control button is added to the panel to control the appliance manually. Since the HMI can be accessed remotely via a smartphone or computer browser, it provides the inhabitant with useful information and easy control of the home appliances, especially those related to energy consumption.

SCADA HMI monitoring and control display. HMI, human machine interface; SCADA, supervisory control and data acquisition.
Figure 11 shows the SCADA HMI FLC-based appliance scheduling display. It displays the real-time status of the FLC, which defines the appliance scheduling. In the figure, the actual input values of the FLC are displayed on the left side, where PVEM, PVLM, PVAF, and DAY represent the FLC variables of PV Power H8, PV Power H12, PV Power H15, and Weekday, respectively, as described in Section 2.e. The output on the right side is the schedule of the appliances. It is worth noting that even though the FLC is implemented on the embedded platform, the input and output values can be monitored on the HMI. Thus, it helps the user or designer to monitor the algorithm in real-time easily using the HMI device installed at home or an application on the smartphone.

SCADA HMI FLC-based appliance scheduling display. FLC, fuzzy logic controller; HMI, human machine interface; OM SCH, microwave oven schedule; RC SCH, rice cooker schedule; SCADA, supervisory control and data acquisition; WH SCH, water heater schedule; WM SCH, washing machine schedule.
Figures 12 and 13 show the PV power generation and home appliances’ power consumption profiles during a week and in 1 day, respectively. In the figures, the red solid line, cyan dash-dotted line, blue dotted line, black dashed line, and green dashed line represent the PV power and power consumptions of Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C methods, respectively. Figure 12 shows that the daily profile of the PV power generation is almost similar, i.e., it has the peak power at noon. However, the power profiles for rising power in the morning and falling power in the afternoon show the differences. It is noted here that the FLC-based scheduling is calculated for the next day; thus, on Monday, all methods are the same, as shown in Figure 12.

PV power generation and home appliances’ power consumption profiles during a week.

PV power generation and home appliances’ power consumption profiles in 1 day.
Figure 13 shows that the blue dotted line (Fuzzy-A), black dashed line (Fuzzy-B), and green dashed line (Fuzzy-C) dominate during the time interval from 06:00 hr to 18:00 hr. The results indicate that the proposed FLC-based scheduling conforms to the rules specified in Tables 1–3. It is interesting to note that the peak power of the Fuzzy-C (green dashed line) is lower than the others in the morning time. It means that load scheduling can distribute the load properly.
Figure 14 shows the non-schedulable appliance power consumption profiles during a week, where the red solid line, green dash-dotted line, blue dotted line, and black dashed line represent the power consumption profile of the freezer, water pump, refrigerator, and lighting, respectively. The figure shows that the power consumption profile of the freezer is almost similar every day, where it fluctuates, switching on and off the whole day, and shows a peak power at noon. The power consumption profile of the refrigerator closely resembles that of the freezer. The water pump operates at a particular time of the day. The lighting is switched on from 18:00 hr to 06:00 hr the next day.

Non-schedulable appliance power consumption profiles during a week.
Figures 15 and 16 show the microwave oven power consumption profiles during a week and in 1 day, respectively. The red solid line, green dash-dotted line, blue dotted line, and black dashed line represent the microwave oven power consumption profiles of the Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C methods, respectively. Figure 15 shows that the FLC-based scheduling, represented by the green dash-dotted line, blue dotted line, and black dashed line, schedules the microwave oven to operate earlier than the Fixed method (red solid line). It is clearly shown in Figure 16, where the time schedules of the microwave oven determined by the Fuzzy-A, Fuzzy-B, and Fuzzy-C are 15:00 hr, 14:00 hr, and 13:00 hr, respectively. The results comply with the rules defined in Section 2.e.

Microwave oven power consumption profiles during a week.

Microwave oven power consumption profiles in 1 day.
Figures 17 and 18 show the rice cooker power consumption profiles during a week and in 1 day, respectively. The red solid line, green dash-dotted line, blue dotted line, and black dashed line represent the rice cooker power consumption profiles of the Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C methods, respectively. Figure 18 shows that the FLC-A and FLC-B methods schedule the rice cooker operation at 06:00 hr, earlier than the Fixed method. Meanwhile, the FLC-C method schedules it at 08:00 hr, later than the Fixed one. The time-scheduled result complies with the fuzzy rules in Section 2.e.

Rice cooker power consumption profiles during a week.

Rice power consumption profiles in 1 day.
Figures 19 and 20 show the water heater power consumption profiles over a week and 1 day, respectively. The red solid line, green dash-dotted line, blue dotted line, and black dashed line represent the rice cooker power consumption profiles of the Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C methods, respectively. Figure 19 shows that the Fuzzy-based methods schedule the water heater later than the Fixed method in the morning and earlier in the afternoon.

Water heater power consumption profiles during a week.

Water heater power consumption profiles in 1 day.
Figures 21 and 22 show the washing machine power consumption profiles during a week and in 1 day, respectively. The red solid line, green dash-dotted line, blue dotted line, and black dashed line represent the washing machine power consumption profiles of the Fixed, Fuzzy-A, Fuzzy-B, and Fuzzy-C methods. Figures 21 and 22 show that the Fuzzy-based methods schedule the washing machine later than the Fixed method. As shown in Figure 22, the washing machine scheduled by the Fuzzy-A and Fuzzy-B starts at 10:00 hr, while it starts at 11:00 hr by the Fuzzy-C method.

Washing machine power consumption profiles during a week.

Washing machine power consumption profiles in 1 day.
Table 4 compares the daily energy consumption from the grid using four methods. The table shows that the Fuzzy-C method achieves the lowest daily energy consumption from the grid every day. This proves that the fuzzy rule to switch on the appliances in the late morning and early afternoon, i.e., when the PV power is high, works effectively in reducing energy consumption from the grid.
Comparison of daily energy consumption from grid
| Method | Daily energy consumption from grid (watt-hours) | ||||||
|---|---|---|---|---|---|---|---|
| Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | |
| Fixed | 5,323.05 | 5,681.67 | 5,568.30 | 5,535.62 | 5,455.28 | 5,750.07 | 5,501.20 |
| Fuzzy-A | 5,355.93 | 5,679.64 | 5,576.08 | 5,478.09 | 5,424.97 | 5,675.41 | 5,303.84 |
| Fuzzy-B | 5,311.13 | 5,663.61 | 5,565.32 | 5,260.69 | 5,377.45 | 5,642.21 | 5,282.40 |
| Fuzzy-C | 5,301.71 | 5,324.94 | 5,483.92 | 5,030.17 | 5,298.20 | 5,385.92 | 5,204.98 |
When examining each method, the Fixed method achieves the lowest daily energy consumption on Monday. This result can be understood from Figure 12, where the peak power consumption of the Fixed method on Monday is lower than on other days. The Fuzzy-A method achieves the lowest daily energy consumption on Sunday. This is caused by the fuzzy rule that switching on the appliances in the early morning and late afternoon during working days does not effectively reduce energy consumption. In contrast, the rules for switching on the appliances in the late morning and early afternoon during the off days will effectively reduce energy consumption. The Fuzzy-B and Fuzzy-C methods achieve the lowest energy consumption on Thursday. The result can be observed from Figure 12, where the highest PV power during the middle morning to middle afternoon is achieved on Thursday.
Figure 23 shows the energy consumption from the grid profile over a week, where the upper picture is the zoomed area on the last Sunday night. The figure shows that the Fuzzy-C method achieves the lowest energy consumption, followed by the Fuzzy-B, Fuzzy-A, and Fixed methods. This result conforms with the FLC rules described in Section 2.e, as the Fuzzy-C rules shift the operation time of the schedulable appliances close to the time when the PV power generation is high. The zoomed area in the upper picture shows that the Fuzzy-C method reduces energy consumption by about 1,000 watt-hours compared to the Fuzzy-B method.

Energy consumption from the grid profile during a week.
Table 5 compares energy consumption from the grid during a week using four methods. The Fuzzy-C method achieves the highest energy consumption reduction of 4.6%. The reduction is low and can be understood from the defined fuzzy rules, which are restricted by the inhabitants’ behavior; for instance, the water heater or microwave oven cannot be scheduled at noon. It is worth noting that the proposed Sugeno-FLC offers a simple approach to developing the rules, in allowing the user to easily define the desired schedule based on the inhabitants’ behavior. Furthermore, by examining the proposed Sugeno fuzzy, where the inputs are the PV power and weekday, and because the daily PV power profile is almost the same during a week, as shown in Figure 12, the weekly energy consumption will be the same. It is worth noting that the average PV power is higher in the dry season than in the wet season. However, the daily PV power profile remains the same. The weekly efficiency of energy consumption is similar.
Comparison of energy consumption from grid during a week
| Method | Energy consumption from grid—Accumulation (watt-hours) | |||||||
|---|---|---|---|---|---|---|---|---|
| Monday | Tuesday | Wednesday | Thursday | Friday | Saturday | Sunday | Reduction (%) | |
| Fixed | 5,323.05 | 11,004.72 | 16,573.01 | 22,108.64 | 27,563.92 | 33,313.99 | 38,815.19 | 0 |
| Fuzzy-A | 5,355.93 | 11,035.57 | 16,611.65 | 22,089.73 | 27,514.71 | 33,190.11 | 38,493.95 | 0.8 |
| Fuzzy-B | 5,311.13 | 10,974.73 | 16,540.05 | 21,800.74 | 27,178.19 | 32,820.40 | 38,102.80 | 1.8 |
| Fuzzy-C | 5,301.71 | 10,626.65 | 16,110.57 | 21,140.74 | 26,438.94 | 31,824.86 | 37,029.84 | 4.6 |
As described previously, the real-time simulation is conducted during the experiments, where 1 s simulates 1 min in the dataset. In this simulation, all the devices shown in Figure 2, i.e., the Appliance Simulator, PV and AC Bus Simulator, SCADA HMI, and Master Control Unit, run at 1-s intervals. Since the MQTT protocol is adopted as the data communication protocol between the devices, all the data passes through the MQTT broker; it is required to calculate the data delivery ratio, defined as the number of received data divided by the number of sent data. In this experiment, because the SCADA HMI gets all data from the other devices, the number of received data is calculated in the SCADA HMI during the simulation.
Table 6 shows the data delivery ratio for four methods conducted during real-time simulation. The highest and lowest ratios are 99.70% and 99.56%, respectively, with an average ratio of 99.62%. This result suggests that the proposed system achieves a very high data delivery ratio, especially the MQTT protocol used for real-time communication.
Data delivery ratio during real-time simulation
| Method | Data delivery ratio (%) |
|---|---|
| Fixed | 99.60 |
| Fuzzy-A | 99.61 |
| Fuzzy-B | 99.56 |
| Fuzzy-C | 99.70 |
| Average | 99.62 |
In this experiment, the proposed system was tested in a small family home with working parents, student children, and typical home appliances. The proposed Sugeno fuzzy is designed for this condition. Fortunately, this approach can be customized to handle larger homes or commercial buildings by adjusting or adding rules according to the required controllable appliances. The rules can also be added to accommodate the multiple-time usage of the appliances.
The proposed load scheduling is an indirect control method, where the HEMS provides the user with the information on the time for switching on the appliances via the HMI installed at home or a smartphone application. This allows the user to manually control the legacy or older appliances without an advanced control system. However, an additional power meter device should be installed to provide integrated power appliance monitoring by the SCADA system.
It is worth noting that since the proposed HEMS employs the SCADA HMI as the master control, the system can be implemented using both direct and indirect control methods based on the appliances.
In this paper, an innovative approach has been developed to integrate IoT-based SCADA and embedded platforms for HEMS implementation. The Sugeno fuzzy implemented on an embedded system is adopted to schedule the operation of the washing machine, water heater, microwave oven, and rice cooker in a small family home with grid-connected PV. The appliance scheduling aims to reduce electricity consumption from the grid by maximizing the PV power usage. The proposed fuzzy load scheduling offers the flexibility to adjust the fuzzy rules based on inhabitants’ behavior and controllable appliances. Integrating SCADA HMI and embedded fuzzy systems provides an effective solution for implementing HEMS in residential homes for better monitoring and control of energy consumption. The proposed IoT-based SCADA and fuzzy approach can be customized and easily incorporated into the modern smart home system.
In the future, the proposed system will be extended to cope with more complex HEMS and optimization algorithms, such as adopting AI-based optimization for tuning fuzzy membership functions, optimizing the fuzzy rules, and optimizing user comfort related to temperature and lighting control at home. Furthermore, the direct and indirect control methods of home appliance operation will be investigated for effective actual implementation.
