项目作者: JCodeX-Dev

项目描述 :
Natural Disaster Management System using IBM Bluemix, Node-Red, Arduino, Node-MCU & Bluetooth
高级语言: CSS
项目地址: git://github.com/JCodeX-Dev/Natural-Disaster-Management.git
创建时间: 2018-12-28T04:41:12Z
项目社区:https://github.com/JCodeX-Dev/Natural-Disaster-Management

开源协议:

下载



























CHAPTER 1



INTRODUCTION



1.1
Introduction



When natural
calamities occur, it is really difficult to get to rescue. If the condition
becomes more worse in case of no communication then it is a chaos all over.
This prototype focuses on rescuing the victims and handling the basic needs for
their survival.



The project
concentrates on establishing that mode of communication between the people
which enables them to contact with the outer world. The project at first
identifies the locations which are reachable by using the data retrieved from
the ISP’S and their cell towers. After collecting that data, we will be able to
identify the unreachable areas. To these locations, a chopper will be sent with
N number of drones which will be inter-connected with each other and also with
the chopper.



1.2 Objectives



The main objective behind this
project is to identify the unreachable networks in the aftermath of a natural
disaster and to provide a virtual network in the affected area using drones and
long-range communications.



1.3 Motivation



The
motivation behind this project is to help the developers to build such a prototype
in which technologies like cloud computing and Internet of Things can be
implemented in a way that it will be beneficial for the human society.



1.4 PROJECT SCOPE



<![if !supportLists]>·
<![endif]>Communication being the important part when a natural
calamity occurs. One should ensure the safety of themselves and get to rescue.
Collecting the information from the ISP’S we will identify the major region
which is being hit by the floods with the help of the networks in that region.



<![if !supportLists]>·
<![endif]>The Government officials will be sent a message about the
regions which are affected by the natural calamity.



<![if !supportLists]>·
<![endif]>The data will then be stored in the cloud application
platform and the chopper will be sent to the affected regions with contains
multiple number of drones which are interconnected with each other with the
help of the ad-hoc Networks.



<![if !supportLists]>·
<![endif]>Now the victims will be provided a new private network when
initially there was no network.



<![if !supportLists]>·
<![endif]>With the help of the network users can download an
application where the application instructs the drone about what the victims
need.



<![if !supportLists]>·
<![endif]>The cloud platform maintains a database and keeps track of
the data to know how much of amount of goods are supplied to the victims.



<![if !supportLists]>·
<![endif]>Therefore, if any of the public or media questions the
government about the status of the affected area then they can simply display
the details which are stored in the database of the cloud platform.



<![if !supportLists]>·
<![endif]>Through this process most of the victims can be saved and
get them to rescue.





1.4 CHAPTER SUMMARY



This work
can be implemented using Node-MCU, Bluetooth and IBM cloud platform which has
wide implementation and many IOT related services. The future scope of this
work is based upon on the aftermath of any natural disaster that occur, an any
situation to provide support and services to the victims by the use of this
technology by understanding the regions where there is no network using cell
towers and ISP’s and then providing virtual network using drones and long-range
communications and also providing resources for the victims.









CHAPTER 2



ANALYSIS AND DESIGN



2.1
Functional Requirements



<![if !supportLists]>·
<![endif]>The chopper in this condition is represented by the device
called as Node-MCU where it can be operated with a person in it.



<![if !supportLists]>·
<![endif]>The drones which are indeed connected with each other can be
represented by a Bluetooth module which is connected to the chopper that is the
Node-MCU device which is later connected through the reachable networks using
the long-range communication systems.



<![if !supportLists]>·
<![endif]>With the help of female to female converter the devices can
be connected with each other and indeed can communicate with the code written
in the devices.



<![if !supportLists]>·
<![endif]>A cloud-based application platform is built in order to keep
track of the data. Cloud is already automated with all the necessary
applications inbuild in it which makes easy for the developers to use them.



2.2 Non-Functional Requirements



<![if !supportLists]>·
<![endif]>While the chopper is supplying the basic needs to the
victims the cloud maintains all the data about the supplies about how much is
being supplied and the remaining goods.



<![if !supportLists]>·
<![endif]>Figure 2.2.1 shows the database of the cloud platform about
the resources which is present among the total resources.



<![if !supportLists]>·
<![endif]>The data collected will be sent to the government officials
and later when time comes it will be easier for them to display it to the
public and the media.



<![if !vml]><![endif]>



Figure 2.2.1



2.3
Architecture



The figure 2.3.1 shows the working
and the pin diagram of Node MCU device. Node MCU[3] is designed in such a way
that it consists of an in-built wireless module in order to make the
connections easier. A Bluetooth module is also being used which represents a
drone in this prototype the block diagram of the Bluetooth module is also been
display in the figure 2.3.2. An application is been deployed specially for
these requirements which rescues the victims and gets them to the safety. The
application user interface picture is been displayed in the figure 2.3.3.



<![if !vml]><![endif]>



Figure 2.3.1 PIN DIAGRAM OF NODE MCU





<![if !vml]>Image result for bluetooth module connections<![endif]>



Figure 2.3.2 Bluetooth Module








<![if !vml]><![endif]>



Figure 2.3.3 WORKING DIAGRAM



Communication being the important
part when a natural calamity occurs. One should ensure the safety of themselves
and get to rescue. Collecting the information from the ISP’S we will identify
the major region which is being hit by the floods with the help of the networks
in that region. The Government officials will be sent a message about the
regions which are affected by the natural calamity. The data will then be
stored in the cloud application platform and the chopper will be sent to the
affected regions with contains multiple number of drones which are
interconnected with each other with the help of the ad-hoc Networks. Now the
victims will be provided a new private network when initially there was no
network. With the help of the network users can download an application where
the application instructs the drone about what the victims need. The cloud
platform maintains a database and keeps track of the data to know how much of
amount of goods are supplied to the victims. Therefore, if any of the public or
media questions the government about the status of the affected area then they
can simply display the details which are stored in the database of the cloud
platform. Through this process most of the victims can be saved and get them to
rescue.



CHAPTER 3



IMPLEMENTATION



3.1 Modules Description



3.1.1
Data Collection



In
this module, the networks where the disaster affected areas will be collected
using cell tower and ISP’s. Same goes for the drones, which goes to the network
affected areas providing its own virtual cell network, through which the
victims will be able contact or ask for the resources which will be send to the
cloud using long-range communications.



3.1.2
Data Analysing



The
data collected is send to IBM cloud to analyse the data, which will inform us
about the network down areas out of the total disaster affected area. A map of
the disaster affected area is analysed by marking the network available areas
in the map out which we get network down areas.



For
the drones, when the victims ask for the resources, the data is sent to the
cloud database, where it is analysed about how much resources are being
required by the people in those area.



3.2
Implementation Details



3.2.1 Network
Analysing



The network reachability data is collected from the nearby cell towers
and ISP’s, which is given as input to our cloud system where it is analysed out
of the total area of the place where the network is up and running from which,
we get know the places where network is totally down, and these places require
more attention.



3.2.2 Network Provisioning



The
drones are made to fly around the network affected area through the where it
gathers around the place, interconnecting with each other using ad-hoc network technology[1], which creates inter-connected network of
drones which in turn will create a cell network of its own, which can be used
by the victims with their existing smartphones to call and text someone or can
get help from rescue team.





3.2.3
Cloud System



The victims will use their smartphone to use the application provided for
the emergency to get resources like food, water, clothes, medicines, etc. These
data will be sent to [4]cloud through the network
provided by the drones in this system, where it is analysed, that is which
resource is the victim requesting for, from where and how much resources are
left in those places. After which the cloud system send response to the drone
to carry the resources to the victim to the requested location.



3.2.4
Device Connections



<![if !vml]><![endif]>



Figure 3.1 Interfacing Node MCU
with Bluetooth



3.3 Tools
Used



3.3.1
IBM Watson IoT Platform



IBM Watson
IoT Platform for IBM Cloud gives you a versatile toolkit that includes gateway
devices, device management, and powerful application access. By using Watson
IoT Platform, you can collect connected device data and perform analytics on
real-time data from your organization.









3.3.2
MIT App Inventor



App Inventor
for Android is an open-source
web application. It allows newcomers to a href="https://en.wikipedia.org/wiki/Computer_programming"computer
programming
to create a href="https://en.wikipedia.org/wiki/Application_software"software
applications
for the a href="https://en.wikipedia.org/wiki/Android_(operating_system)"Android
operating system. It uses a graphical interface, very similar to a href="https://en.wikipedia.org/wiki/Scratch_(programming_language)"Scratch
and the Star
Logo TNG
user
interface
, which allows users to a href="https://en.wikipedia.org/wiki/Drag-and-drop"drag-and-drop
visual objects to create an application that can run on Android devices.



3.3.3
Arduino IDE



The a href="https://en.wikipedia.org/wiki/Arduino"Arduino integrated
development environment is a a href="https://en.wikipedia.org/wiki/Cross-platform"cross-platform
application that is written in the programming language a href="https://en.wikipedia.org/wiki/Java_(programming_language)"Java.
It is used to write and upload programs to any compatible microcontroller
boards.



3.3.4 Node-MCU



Node MCU is
an open source IoT platform. It includes firmware which runs on the ESP8266
Wi-Fi SoC and hardware which is based on the ESP-12 module. The term “NodeMCU”
by default refers to the firmware rather than the development kits, which is
used for implementing MQTT protocol.



3.3.5 Bluetooth



The HC-06 is
a class 2 slave Bluetooth module designed for transparent wireless serial
communication. Once it is paired to a master Bluetooth device such as PC, smart
phones and tablet, its operation becomes transparent to the user. All data
received through the serial input is immediately transmitted over the air. When
the module receives wireless data, it is sent out through the serial interface
exactly at it is received.



















Chapter 4



CONCLUSION
AND FUTURE SCOPE



4.1 CONCLUSION



Using the
cloud platform service and connecting it with few devices like Node MCU and
Bluetooth module we can identify and rescue the victims and collect their data
of the basic needs which are supplied to them. After the rescue the victim’s
technologies are provided with their basic needs which will help them for their
survival. With the help of latest like image processing and Artificial
intelligence we can identify exact position of the victims too. Cloud being the
secure platform and its inbuilt features makes the prototype much easier.



4.1 FUTURE SCOPE



This project was developed to prepare for the
management of aftermath of a natural disaster; however, there are lots of scope
to improve the performance of this system in the area of drone technology, network
provision, and data assessing, etc.



So, there are many things for future enhancement of this project. The
future enhancements that are possible in the project are as follows.



<![if !supportLists]>§ <![endif]>Wider range for providing virtual cell network.



<![if !supportLists]>§ <![endif]>In the area of data security and system security.



<![if !supportLists]>§ <![endif]>Better machine learning algorithm, to understand the disaster affected
area and resources required by the victims



















APPENDIX A



Source Code for Node-MCU



#include



#include



#include



SoftwareSerial BTserial(D10,
D9);//rx,tx D10===Tx,D9==rx



int btresponse = 0;





//———— Customise these values
—————-



const char ssid =
“Phoenix”;



const char password =
“08082017”;





#define ORG “tkv6xk”



#define DEVICE_TYPE “bluetooth



#define DEVICE_ID “2802”



#define TOKEN
“wNYyHDVjPrTBrMk43”



//———— Customise the above
values ————





char server[]
= ORG “.messaging.internetofthings.ibmcloud.com”;



char topic[]
= “iot-2/evt/Data/fmt/json”;



char authMethod[] =
“use-token-auth”;



char token[]
= TOKEN;



char clientId[] = “d:”
ORG “:” DEVICE_TYPE “:” DEVICE_ID;





WiFiClient wifiClient;



PubSubClient client(server,
1883,wifiClient);





int TotalResources=100;



int FoodKit=50;



int MedicineKit=30;



int ClotheKit=20;





void setup()
{




Serial.begin(9600);




BTserial.begin(9600);




Serial.println();




Serial.print(“Connecting to “);




Serial.print(ssid);




WiFi.begin(ssid,
password);




while (WiFi.status() !=
WL_CONNECTED) {




delay(500);




Serial.print(“.”);




}



Serial.println(“”);



Serial.print(“WiFi connected, IP address: “);



Serial.println(WiFi.localIP());



}





void loop()
{



if (BTserial.available()
> 0) {




btresponse = BTserial.read();
// Reads the data from the serial port




Serial.println(btresponse);




PublishData(btresponse);




btresponse = 0;




return;




}



}



void PublishData(int t){



if (!!!client.connected())
{



Serial.print(“Reconnecting
client to “);



Serial.println(server);



while (!!!client.connect(clientId, authMethod, token)) {



Serial.print(“.”);



delay(500);



}



Serial.println();



}



String data;




if(t==49){




data=”\”Food Kit\””;




FoodKit—;




TotalResources—;




}




else if(t==50){




data=”\” Medicine Kit\””;




MedicineKit—;




TotalResources—;




}




else if(t==51){




data=”\”Clothe Kit\””;




ClotheKit—;




TotalResources—;




}




String payload = “{\”d\“:{\”Food\”:”;




payload += FoodKit;




payload+=”,” “\”Medicine\”:”;




payload += MedicineKit;




payload+=”,” “\”Clothes\”:”;




payload += ClotheKit;




payload+=”,” “\”Requested\”:”;




payload+=data;




payload += “}}”;



Serial.print(“Sending
payload: “);



Serial.println(payload);



if (client.publish(topic,
(char*) payload.c_str())) {



Serial.println(“Publish
ok”);



} else {



Serial.println(“Publish
failed”);



}



}











































APPENDIX B



Mobile Application Code



<![if !vml]><![endif]>









Node Red Flow



<![if !vml]><![endif]>



<![if !vml]><![endif]>









USER INTERFACE OF THE APPLICATION





<![if !vml]><![endif]>









References



[1] Subir Kumar Sarkar, T.G. Basavaraju, Ad-hoc
mobile wireless networks
,2nd edition
, CRC
Press, 16 November 2016.



[2] C. Puttamadappa, Ad Hoc Wireless Networks: Architectures and Protocols,1st edition, Pearson Education India, 2006.



[3] Marco Schwartz, Internet of Things with ESP8266, Packt
Publishing Limited, 6 January 2016



[4] Arsheep
bagha, Internet of Things: A Hands-On Approach, First edition, Orient Blackswan Private Limited - New Delhi, 2015.