This project entitled "Distributed Simple Reflex Agent Over IoT" submitted by Md Aumit Hasan and Farhadur Raja Fahim to the department of Software Engineering, Daffodil International University, Dhaka, Bangladesh, is accepted by the department in partial fulfillment of the requirements for the degree of Bachelor. of Science in Software Engineering in April, 2018. The expert says that by 2020 the connected devices over IoT will be thirty billion, which is four times the total number of human beings in the world. Many multinational organizations are creating new user services, but this cannot meet people's demands because it is not possible for organizations to understand all types of user services.
The basic concept of this research project is to isolate sensors, actuators and logic using distributed architecture and using these distributed sensors and actuators user will create their required services using web platform. This paper will help to provide a basic idea how the end user can create their own service using distributed sensors and actuators using web application.
Introduction 1
Objectives 2
We want to build a system that will give the end user the ultimate power to build their required services. But it is not very easy for the user to understand the process of changing and updating the work process if we think of the traditional IoT devices. In our proposed system we have also built a very user friendly interface for end users as they can use it easily.
Traditional IOT devices work with sensors and actuators with logic as a tightly coupled system Sometimes a sensor or actuator is used for some purpose that is predetermined. But in our proposed system we want to provide sensors and actuators that are independent.
Overview 2
Outline of the Thesis 3
Literature Review 4
Related Works 5
We review the current situation of IoT according to distributed architecture, simple reflex agent, and end-user development, but we do not find any work that uses distributed sensors, actuators, and different switches that create easily composed service like ours. But little work has been done on distributed IoT architecture, controlling device using another device, loosely distributed sensors and actuators. We also found some works that work on self-adaptive service, end-user programming and their independence to create their own service.
They showed that using these loosely coupled sensors, actuators and logic can work together through the cloud and control devices, taking input and giving output. A group has worked in the area of self-adaptive service that accepts requirements and changes the service at runtime [21]. This work is related to our work as it reviews the composition of the end user service and changes service.
This group shows that end-user control over service composition and automatic adjustment complement each other [21]. A few years ago, the end-user independence site had very few works. Recently, research has been done that provides the end user with three building blocks to support end-user configuration using a sensor actuator and makes recommendations [20].
A workshop was organized to share researchers' knowledge and experience regarding end-user development [18].
Related Topic and Framework 5
- Distributed Agent Architecture 5
- Simple Reflex Agent 6
- End User Service Composition 6
- Dracula.js Library 6
- IoT Framework 7
- IBM BlueMix 7
- AWS IoT 7
- Azure IoT 7
- Cloud IoT Core 8
In this work we have used sensor from mobile as it is easy to collect data from mobile and the user does not need other sensor device. The Internet of Things is a system where we must isolate sensors, actuators and logic. On the server side of our system we have firebase application for stored data coming from the device.
An end user can easily access, customize and create composite applications according to their needs through our system. The end user can create his required service related to these sensors and actuators easily using the user friendly interface of our proposed system. But by giving the power of service composition to the end user we have made a new dimension.
Junaid; Shafiullah, Mohammad, (2016), Distributed Agent Architecture Using Internet of Things, unpublished bachelor thesis, East West University, Bangladesh. 7] Lixin Zhou, Catherine Xiaocui Lou (2012), Intelligent freight tracking system based on the Internet of Things. RFID Technology and Its Applications in Internet of Things (IoT), IEEE Xplore 2012, Consumer Electronics, Communications and Networks (CECNet), Yichang, China.
Li, 'A Semantic Analysis for Internet of Things', in International Conference on Intelligent Computing Technology and Automation (ICICTA), May 2010. Wang, 'Future Internet: The Internet of Things', in Third International Conference on Advanced Computing Theory and - technology (ICACTE), August 2010. Jun, “Internet of Things Security Analysis”, at the International Conference on Internet Technology and Applications (iTAP), August 2011.
13] Rafiullah Khan, Sarmad Ullah Khan."The Internet of the Future: Internet of Things Architecture, Possible Applications and Key Challenges". Li, “Descriptive Models for Internet of Things,” in IEEE International Conference on Intelligent Control and Information Processing (ICICIP), August 2010. Du, “Research on the Architecture of Internet of Things,” in 3rd International Conference on Advanced Computer Theory and Engineering (ICACTE), Aug.
Proposed System Description 9
Required Concept 9
- Sensor service 9
- Actuator Service 9
- Microservices 10
- Composite Service 10
- Loosely Coupled Architecture 10
- Tightly Coupled Architecture 10
Sensor is an input device, module or subsystem that detects event or changes in its environment and sends the information to the predetermined system or computer processor. Accelerometer is an electromagnetic device that measures acceleration, which is the rate of change of velocity of an object. Department of Defense put the satellite into orbit and later they made it available to civilians.
Anywhere in the world, four satellites are visible and each transmits information about its position and time at regular intervals. When a machine, robot or computer program works, it makes decisions according to its design or purpose. After a final decision is made, it has to do the work of changing the environment and this is done by the actuator.
It is an architectural style that builds an application is a combination of loosely coupled services. This architecture enables the continuous development of a large and complex application such as enterprise software and software required for continuous development. Loosely coupled architecture refers to a system that has different parts that are not only independent, but also may not be together.
In IoT usually has three components: Sensor that makes it possible to grasp and understand the environment, Logic that is like a brain decision and Actuator that tries to determine the decision. Tightly coupled architecture refers to a system in which all components are highly interdependent.
Proposed System Architecture 11
Mechanism 11
- Application Installation 12
- Device Registration 12
- Data Into Data Server 12
For our proof of concept, we used an Android app that will collect sensor data from an Android device. GPS sensor and accelerometer are required on your Android device to perform actions with this app. To install this app, simply copy the apk to your Android devices and install the app on your device.
We can build our own server to store data, but for convenience we used Firebase [23] to store data. The device sends GPS and accelerometer sensor data to the database after a certain period of time.
Protocol Used 12
Server Side Application 13
Web Application 13
User can access his sensor data and with the help of it he can design an agent program for decision making. After any decision is made and to achieve the decision objective, the user can use the actuators when needed. On this platform user can create simple reflex agent based on the current sensor data.
If someone doesn't want to be tracked by someone then he has to share his device id otherwise it is not possible to track him. After providing a valid device ID, the user must decide whether he wants the device's location by coordinate or address. According to this location, the system will give a result whether the device is within an area or not.
Now the user has selected the Operator from the right view and placed in IF Block after GPS. If he wants to check the device within a range, then he should choose the less than (<) operator. If the user chooses the Email Service, then he must provide an email and a text message.
After rendering, the program agent function will calculate weather the device is within a range or not.
Proof of Concept 15
Proof of Concept Implementation 15
Application Details 15
If you select Coordinate, the system must know the coordinate (latitude and longitude) of the place. Microservice to get the result whether its target device is in its defined range or not. If he selects a phone number and drags that into the Else block, he'll get two fields to fill in.
The user will provide the phone number to be notified and the text field must have massage.
Contributions 20
Limitations of this System 20
Future Works 20
Web Application 14
Application Details 16
Application Details 17
Application Details 18
Application Details 19