Journal of information and communication convergence engineering 2018; 16(1): 60-65
Published online March 31, 2018
https://doi.org/10.6109/jicce.2018.16.1.60
© Korea Institute of Information and Communication Engineering
The Internet of Things (IoT) is happening now. By implementing IoT, we can build smart home system. Smart home is an application that is a combination of technology and services that specialize in the home environment with specific functions aimed at improving the efficiency, comfort and security of the occupants. Smart homes filled with connected products are loaded with possibilities to make our lives easier, more convenient, and more comfortable. This intelligent home system uses a microcontroller to process functions that provided by smart home system, such functions as RFID for door access and PIR sensors for motion detection. By using Android users could control the sensors anytime and anywhere. Microcontroller used is Arduino IDE with WeMos D1R2 board. Based on the testing process, there was a successful communication between the components of the device, sensors, and Android devices. Users could open or close the solenoid, users can also turn off or turn on electronic devices using Android.
Keywords Automated home, Internet of Things (IoT), Microcontroller, Smart home
IoT or Internet of Things is a system whereby interrelated devices could exchange data over the Internet without requiring human-to-human or human-to-computer interaction [1]. Things in the IoT are like a sensor-mounted chair, a heart monitor implant, or a vehicle with a sensor installed to alert tire pressure. IoT use objects with sensors to record data. The data obtained will be processed through a processor board or microcontroller. Microcontroller commonly used for IoT is Raspberry Pi, Arduino, ESP8266, and others. People are now tend to invest in IoT by implementing several application [2]. One of the application of IoT is smart home system.
Smart home system (hereafter Smart Home) allows users to build and maintain a house that is smart enough to maintain energy levels and provide many applications automatically. Smart Home will take advantage of its environment and allow for regular controls while users are not in or inside the home. So, the user could know that the house is performing well in terms of energy.
Smart Home is divided into several parts including Smart Home for door security and motion sensors. Security systems in homes are now sometimes easy to penetrate by using only a few tools. By implementing Smart Home on the security of the door then its security can be increased. Moreover, by equipping with a motion sensor, the smart home application could detect the human presence. The proposed system should able to control other electronic devices via the internet. The implementation of smart home system could be seen in Fig. 1.
In this paper, authors make a Smart Home application using microcontroller based on Android so users can feel safe and comfortable in the house.
The main contributions of this paper are as follows. (1) The designed IoT system enables the communication among different smart devices, including smart phones, microcontroller, and sensors. (2) The system provides solution to improve the home security by using cutting edge technology.
The remaining part of this paper is organized as follows. Section II presents the background and the related work. Sections III presents the design of the IoT system and Section IV present the testing of the proposed system. Finally, the conclusions are drawn in Section V.
In this section, the previous work of IoT, Ubidots, and microcontroller are presented.
The IoT is a technology that has become popular to describe the machine connectivity phenomenon [3-5]. Small sensors and computer chips are placed on a variety of devices or things, which enable them to communicate via the internet or other network to computer systems. As the IoT moves more into daily life, it creates exciting opportunities for developer and researcher alike [6]. In industry, IoT could do automation in the industrial processes [7]. IoT can be used for agricultural purposes [8]. IoT was illustrated by its typical use in medical system and smart home [9, 10].
Ubidots is a server that can be used for the implementation of the Internet of Things. Ubidots helps for the process of cloud implementation. Ubidots provides APIs to help with the data collection process and make it informational. API is a way or solution for objects to interact with the web. This API allows makers to make changes and retrieval data from the server. This API supports both HTTP and HTTPS usage. To exchange data required API key. To retrieve a value or variable from the server then required the ID of that variable and the user account tokens that the server has given. To facilitate Android developers, Ubidots has provided a library that works to shorten the writing of HTTP requests in Java [11]. Ubidots has been used in several IoT-based system, for example for health management system [12], smart home [13, 14] and for environmental monitoring system [15].
Arduino IDE (Integrated Development Environment) is an open-source software that helps create scripts or code and upload the script or code on the board or microprocessor. Arduino IDE has an environment written in Java. The Arduino IDE also has a compiler for C or C++ languages. Arduino IDE does have a major function to help create scripts or code for various boards or microprocessors [16].
Microcontroller is a microprocessor that has additional parts that make it possible to organize or control other objects. It can be interpreted that the microcontroller run programs that have been created by the user and stored in memory. Microcontroller is a very useful tool that can help the designer to manipulate data obtained from input or output. Usually microcontroller is composed of microprocessor, memory and I/O. The microprocessor itself is composed of central processing unit (CPU) and control unit (CU). CPU is the main brain that performs arithmetic and logic processes. While CU controls the operation of the microprocessor and sends signals to other parts of the microprocessor to perform instructions [17].
Block diagram and schematic design are used to explain how to assembly the device. The block diagram and schematic design can be seen in Fig. 2. The ESP8266 is an ease Wi-Fi chip with full TCP/IP stack and MCU (microcontroller unit) capacity. WeMos ESP8266 is associated with RFID to get data from ID tags that are already available, then switches are useful for arranging the connected solenoid with 12-V adapter and WeMos ESP8266. This is used to supply the power when ID tag in the scan match with the desired then solenoid will be electrified and open. Terminal is used to connect GND (ground) pin and 3.3-V pin to be used by RFID and Relay.
A passive infrared (PIR) sensor connected with WeMos ESP8266 and LED. A PIR sensor is an electronic sensor that measures infrared (IR) radiation being emitted from objects in its field-of-view. A PIR-based motion detector is used to sense movement of people, animals, or other objects. They are commonly used in burglar alarms and automatically-activated lighting systems. An individual PIR sensor detects changes in the amount of infrared radiation impinging upon it, which varies depending on the temperature and surface characteristics of the objects in front of the sensor. When an object, such as a human, passes in front of the background, such as a wall, the temperature at that point in the sensor’s field-of-view will rise from room temperature to body temperature, and then back again. The sensor converts the resulting change in the incoming infrared radiation into a change in the output voltage, and this triggers the detection. The picture can be seen in Fig. 3.
Database is used to store data both from server and from user input. The database is used to store user account information such as tokens and tags from RFID. The database relation used is shown in Fig. 4.
Arduino IDE was used to develop program for microcontroller. The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing and other open-source software. To interact with the sensor or server, we need to add the Library manually. To add the Library to the Arduino IDE, we must select Sketch and then select Include library.
The microcontroller program is divided into two parts, namely the setup part and the loop section. The setup part is the function that runs at the beginning of the microcontroller run, and the loop part is a function that runs continuously after the setup function is executed.
This section discusses the system testing of the smart home system using IoT. System testing is done by doing the process. The purpose of system testing is to know whether the program can perform well and in accordance with the needs.
The sign in page is used for users who want to access the available sensors. The sign in page can be seen in Fig. 5. If the username and password are entered correctly, then the user will be moved to the main menu. After the user successfully logged in the user will be directed to the main menu that contains profile, sensor menu, and logout. Where the profile contains the user information, the sensor menu contains the sensors that will be used and logout to exit the application.
This Sensor Menu page contains sensors that can be used by users, such as RFID sensors and electronic device sensors, which in which RFID serves to open the solenoid and the electronic device itself serves to turn off or turn on the lights. The interface of the sensor menu can be seen in Fig. 6.
When the user clicks on the RFID it will show a function of entry that is useful to open the solenoid, by changing the value from 0 to 1 or 1 to 0. This function use Blynk API and called Android using JSON.
After that if it has opened the solenoid, then the user can also turn on the lights and turn it off, in the same way that is by changing the value from 0 to 1.
On the RFID management page, admin could manage and add a new RFID for the use of a new sensor. After entering the RFID manage page, the Admin can see some tags that have been stored in the database. To delete the tag, Admin could directly press the garbage button, where its function will directly delete the tag in the database. The RFID management page can be seen in Fig. 7.
In the user management page, devoted to admin that is useful to manage the user that is from start new user add, edit and delete. The manage user page can be seen in Fig. 8.
On this page, Admin could add user by pressing button plus and move page. Admin can also delete users by pressing the button illustrated junk, and immediately delete the user want to be deleted without the need to move pages.
In the Token Management page, Admin could add a new token for the use of a new sensor. The Manage Token page can be seen in Fig. 9.
After entering the manage token page, admins can see some tokens that have been stored in the database, then admin can also add a new token by pressing the image plus the top left. Admin can also edit the same way by simply pressing the pencil button. Moreover, admin could also delete token, and the function immediately runs without having to move the page again.
Improvement of the security level at home is a major challenge in the country like Indonesia, the technological improvement is a mandatory work for this issue. We propose a novel technology by means of which gathered data from physical sensing devices is mitigated in the cloud server to produce the current state of the environment.
The IoT based architecture meet the real-time monitoring to the home situation of the people, and remote control of household equipment through the network, has the security alarm, remote control, remote environmental monitoring and other functions, and has certain practical significance.
The sensors and microcontroller are successfully interfaced with the cloud server. The data is stored successfully in the database and can be accessed remotely via Android devices. All observations and experimental set up proves that this is a complete solution for smart home system. User can have access to the data from electronic devices and doors, and they are able to monitor the condition and situation in the home. Implementing this system will enhance the quality of live by improve the security aspect.
The system can further been improved by incorporating new self-learning techniques which could deployed in the cloud to understand the behavior of the sensing data and can take autonomous decisions.
received his bachelor’s degrees in computer science from Sepuluh Nopember Institute of Technology, Surabaya, Indonesia in 2002 and his master’s degree in Information Technology from University of Melbourne, Australia, in 2007. He is currently an assistant professor at Informatics Department, Petra Christian University, Surabaya, Indonesia. His research interests include information system, intelligent system and big data analytics.
received his bachelor’s degrees in electrical engineering from Petra Christian University, Surabaya, Indonesia in 1990 and his master’s degree in Telecommunication Engineering from Asian Institute of Technology, Bangkok, Thailand, in 1994. He is currently an associate professor at Electrical Engineering Department, Petra Christian University, Surabaya, Indonesia. His research interests include IoT, intelligent system and computer vision.
received his bachelor’s degrees in information technology from Petra Christian University, Surabaya, Indonesia in 2018. He is currently a junior software developer in Surabaya. His research interests include IoT and information system.
Journal of information and communication convergence engineering 2018; 16(1): 60-65
Published online March 31, 2018 https://doi.org/10.6109/jicce.2018.16.1.60
Copyright © Korea Institute of Information and Communication Engineering.
Leo Willyanto Santoso,Resmana Lim,Kevin Trisnajaya
Petra Christian University,Petra Christian University,Petra Christian University
The Internet of Things (IoT) is happening now. By implementing IoT, we can build smart home system. Smart home is an application that is a combination of technology and services that specialize in the home environment with specific functions aimed at improving the efficiency, comfort and security of the occupants. Smart homes filled with connected products are loaded with possibilities to make our lives easier, more convenient, and more comfortable. This intelligent home system uses a microcontroller to process functions that provided by smart home system, such functions as RFID for door access and PIR sensors for motion detection. By using Android users could control the sensors anytime and anywhere. Microcontroller used is Arduino IDE with WeMos D1R2 board. Based on the testing process, there was a successful communication between the components of the device, sensors, and Android devices. Users could open or close the solenoid, users can also turn off or turn on electronic devices using Android.
Keywords: Automated home, Internet of Things (IoT), Microcontroller, Smart home
IoT or Internet of Things is a system whereby interrelated devices could exchange data over the Internet without requiring human-to-human or human-to-computer interaction [1]. Things in the IoT are like a sensor-mounted chair, a heart monitor implant, or a vehicle with a sensor installed to alert tire pressure. IoT use objects with sensors to record data. The data obtained will be processed through a processor board or microcontroller. Microcontroller commonly used for IoT is Raspberry Pi, Arduino, ESP8266, and others. People are now tend to invest in IoT by implementing several application [2]. One of the application of IoT is smart home system.
Smart home system (hereafter Smart Home) allows users to build and maintain a house that is smart enough to maintain energy levels and provide many applications automatically. Smart Home will take advantage of its environment and allow for regular controls while users are not in or inside the home. So, the user could know that the house is performing well in terms of energy.
Smart Home is divided into several parts including Smart Home for door security and motion sensors. Security systems in homes are now sometimes easy to penetrate by using only a few tools. By implementing Smart Home on the security of the door then its security can be increased. Moreover, by equipping with a motion sensor, the smart home application could detect the human presence. The proposed system should able to control other electronic devices via the internet. The implementation of smart home system could be seen in Fig. 1.
In this paper, authors make a Smart Home application using microcontroller based on Android so users can feel safe and comfortable in the house.
The main contributions of this paper are as follows. (1) The designed IoT system enables the communication among different smart devices, including smart phones, microcontroller, and sensors. (2) The system provides solution to improve the home security by using cutting edge technology.
The remaining part of this paper is organized as follows. Section II presents the background and the related work. Sections III presents the design of the IoT system and Section IV present the testing of the proposed system. Finally, the conclusions are drawn in Section V.
In this section, the previous work of IoT, Ubidots, and microcontroller are presented.
The IoT is a technology that has become popular to describe the machine connectivity phenomenon [3-5]. Small sensors and computer chips are placed on a variety of devices or things, which enable them to communicate via the internet or other network to computer systems. As the IoT moves more into daily life, it creates exciting opportunities for developer and researcher alike [6]. In industry, IoT could do automation in the industrial processes [7]. IoT can be used for agricultural purposes [8]. IoT was illustrated by its typical use in medical system and smart home [9, 10].
Ubidots is a server that can be used for the implementation of the Internet of Things. Ubidots helps for the process of cloud implementation. Ubidots provides APIs to help with the data collection process and make it informational. API is a way or solution for objects to interact with the web. This API allows makers to make changes and retrieval data from the server. This API supports both HTTP and HTTPS usage. To exchange data required API key. To retrieve a value or variable from the server then required the ID of that variable and the user account tokens that the server has given. To facilitate Android developers, Ubidots has provided a library that works to shorten the writing of HTTP requests in Java [11]. Ubidots has been used in several IoT-based system, for example for health management system [12], smart home [13, 14] and for environmental monitoring system [15].
Arduino IDE (Integrated Development Environment) is an open-source software that helps create scripts or code and upload the script or code on the board or microprocessor. Arduino IDE has an environment written in Java. The Arduino IDE also has a compiler for C or C++ languages. Arduino IDE does have a major function to help create scripts or code for various boards or microprocessors [16].
Microcontroller is a microprocessor that has additional parts that make it possible to organize or control other objects. It can be interpreted that the microcontroller run programs that have been created by the user and stored in memory. Microcontroller is a very useful tool that can help the designer to manipulate data obtained from input or output. Usually microcontroller is composed of microprocessor, memory and I/O. The microprocessor itself is composed of central processing unit (CPU) and control unit (CU). CPU is the main brain that performs arithmetic and logic processes. While CU controls the operation of the microprocessor and sends signals to other parts of the microprocessor to perform instructions [17].
Block diagram and schematic design are used to explain how to assembly the device. The block diagram and schematic design can be seen in Fig. 2. The ESP8266 is an ease Wi-Fi chip with full TCP/IP stack and MCU (microcontroller unit) capacity. WeMos ESP8266 is associated with RFID to get data from ID tags that are already available, then switches are useful for arranging the connected solenoid with 12-V adapter and WeMos ESP8266. This is used to supply the power when ID tag in the scan match with the desired then solenoid will be electrified and open. Terminal is used to connect GND (ground) pin and 3.3-V pin to be used by RFID and Relay.
A passive infrared (PIR) sensor connected with WeMos ESP8266 and LED. A PIR sensor is an electronic sensor that measures infrared (IR) radiation being emitted from objects in its field-of-view. A PIR-based motion detector is used to sense movement of people, animals, or other objects. They are commonly used in burglar alarms and automatically-activated lighting systems. An individual PIR sensor detects changes in the amount of infrared radiation impinging upon it, which varies depending on the temperature and surface characteristics of the objects in front of the sensor. When an object, such as a human, passes in front of the background, such as a wall, the temperature at that point in the sensor’s field-of-view will rise from room temperature to body temperature, and then back again. The sensor converts the resulting change in the incoming infrared radiation into a change in the output voltage, and this triggers the detection. The picture can be seen in Fig. 3.
Database is used to store data both from server and from user input. The database is used to store user account information such as tokens and tags from RFID. The database relation used is shown in Fig. 4.
Arduino IDE was used to develop program for microcontroller. The open-source Arduino Software (IDE) makes it easy to write code and upload it to the board. It runs on Windows, Mac OS X, and Linux. The environment is written in Java and based on Processing and other open-source software. To interact with the sensor or server, we need to add the Library manually. To add the Library to the Arduino IDE, we must select Sketch and then select Include library.
The microcontroller program is divided into two parts, namely the setup part and the loop section. The setup part is the function that runs at the beginning of the microcontroller run, and the loop part is a function that runs continuously after the setup function is executed.
This section discusses the system testing of the smart home system using IoT. System testing is done by doing the process. The purpose of system testing is to know whether the program can perform well and in accordance with the needs.
The sign in page is used for users who want to access the available sensors. The sign in page can be seen in Fig. 5. If the username and password are entered correctly, then the user will be moved to the main menu. After the user successfully logged in the user will be directed to the main menu that contains profile, sensor menu, and logout. Where the profile contains the user information, the sensor menu contains the sensors that will be used and logout to exit the application.
This Sensor Menu page contains sensors that can be used by users, such as RFID sensors and electronic device sensors, which in which RFID serves to open the solenoid and the electronic device itself serves to turn off or turn on the lights. The interface of the sensor menu can be seen in Fig. 6.
When the user clicks on the RFID it will show a function of entry that is useful to open the solenoid, by changing the value from 0 to 1 or 1 to 0. This function use Blynk API and called Android using JSON.
After that if it has opened the solenoid, then the user can also turn on the lights and turn it off, in the same way that is by changing the value from 0 to 1.
On the RFID management page, admin could manage and add a new RFID for the use of a new sensor. After entering the RFID manage page, the Admin can see some tags that have been stored in the database. To delete the tag, Admin could directly press the garbage button, where its function will directly delete the tag in the database. The RFID management page can be seen in Fig. 7.
In the user management page, devoted to admin that is useful to manage the user that is from start new user add, edit and delete. The manage user page can be seen in Fig. 8.
On this page, Admin could add user by pressing button plus and move page. Admin can also delete users by pressing the button illustrated junk, and immediately delete the user want to be deleted without the need to move pages.
In the Token Management page, Admin could add a new token for the use of a new sensor. The Manage Token page can be seen in Fig. 9.
After entering the manage token page, admins can see some tokens that have been stored in the database, then admin can also add a new token by pressing the image plus the top left. Admin can also edit the same way by simply pressing the pencil button. Moreover, admin could also delete token, and the function immediately runs without having to move the page again.
Improvement of the security level at home is a major challenge in the country like Indonesia, the technological improvement is a mandatory work for this issue. We propose a novel technology by means of which gathered data from physical sensing devices is mitigated in the cloud server to produce the current state of the environment.
The IoT based architecture meet the real-time monitoring to the home situation of the people, and remote control of household equipment through the network, has the security alarm, remote control, remote environmental monitoring and other functions, and has certain practical significance.
The sensors and microcontroller are successfully interfaced with the cloud server. The data is stored successfully in the database and can be accessed remotely via Android devices. All observations and experimental set up proves that this is a complete solution for smart home system. User can have access to the data from electronic devices and doors, and they are able to monitor the condition and situation in the home. Implementing this system will enhance the quality of live by improve the security aspect.
The system can further been improved by incorporating new self-learning techniques which could deployed in the cloud to understand the behavior of the sensing data and can take autonomous decisions.
Somrudee Deepaisarn, Paphana Yiwsiw, Chanon Tantiwattanapaibul, Suphachok Buaruk, and Virach Sornlertlamvanich
Journal of information and communication convergence engineering 2023; 21(3): 216-224 https://doi.org/10.56977/jicce.2023.21.3.216Yeo, Ng Yin;Park, Soo-Hong;
The Korea Institute of Information and Commucation Engineering 2010; 8(5): 528-533 https://doi.org/10.6109/jicce.2010.8.5.528Young Seek Cho, Jaerock Kwon, Hwan-Yong Kim
The Korea Institute of Information and Commucation Engineering 2013; 11(4): 247-252 https://doi.org/10.6109/jicce.2013.11.4.247