You are on page 1of 7

A SMART WASTE MANAGEMENT SYSTEM USING IOT AND

BLOCKCHAIN TECHNOLOGY

Introduction

Disposing e-waste in an ecologically responsible way is known as intelligent waste


management (SWM). The process begins with collecting consumer device trash, which is
then sorted into valuable and non-use materials. Reusable items are saved for reselling,
whereas non-reusable items are disposed of in an environmentally friendly manner. The
non-reusable disassembled components are shredded and separated several times before
being discarded. In towns, trash is collected, separated, screened, and disposed of using
automated IoT and secret etherum blockchain technologies, either for recycling or
destruction. The latter is accomplished scientifically via the use of IoT and personal
etherum blockchain.

Proposed Model
Developing a Smart Waste Management Strategy, which combines these two technologies,
results in intelligent waste management (SWMS). We use the SWM-IoT data assets to keep
track of the assets' state and track any changes. Using numerous actuators in a real-world
situation is how we'll use this technique in this research. At this time, the present setup
follows the hyperledger development's rules and regulations for blockchain research. The
SWMS is based on weight. Thus customers must pay according to the quantity of trash they
generate while using the services. You may finance the SWMS completely automatically
via a highly safe procedure utilizing a proprietary coin governed by Blockchain
Technologies.

For underdeveloped nations, where authorities lack ingenuity, blockchain technology can
reduce coverage and service costs. By measuring the system's performance and evaluating
its application, this thesis aims to prove its idea. Using payment systems to execute SWM
stored procedures, the blockchain captures changes in property values. These contracts are
small and light, meeting limitations.
Tools and Technology specifications

1. Windows 10 OS, 4GB RAM, 10GB free space


2. Windows: Microsoft Visual C++ Redistributable 64-bit and 32-bit depending on OS
configuration, Visual Studio Express, or the Node Package Manager (NPM). ...
3. Mac OS: Xcode.
4. Linux: GNU Compiler Collection (gcc), g++, or Make
5. An active LTS or maintenance LTS version of Node.js
6. Programming languages
▪ Angular for Web Application (Frontend)
▪ Node.js for Simulation (Backend)
▪ Database programming using MongoDB

Angular (Frontend)

Angular is a development platform that aims to make web development feel effortless,
focused on developer productivity, speed and testability. Applications built with Angular can be
deployed to mobile devices and desktops as websites and native applications. Angular is used in
public-facing applications and sites such as Google Cloud Platform and AdWords, as well as
many internal tools. Angular is a framework for building user interfaces. It provides building
blocks to helps to quickly set up a maintainable, scalable app. Angular empowers developers to
build apps that live on the web, mobile, or the desktop. Angular is a JavaScript framework
which makes you able to create reactive Single Page Applications (SPAs). This is a leading
front-end development framework which is regularly updated by Angular team of Google.
Angular 7 is completely based on components. It consists of several components forming a tree
structure with parent and child components.

Node.Js (Backend)

Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. As an


asynchronous event-driven JavaScript runtime, Node.js is designed to build scalable network
applications. Node.js is similar in design to, and influenced by, systems like Ruby's Event
Machine and Python's Twisted. Node.js takes the event model a bit further. It presents an event
loop as a runtime construct instead of as a library. In other systems, there is always a blocking
call to start the event-loop. Typically, behavior is defined through callbacks at the beginning of a
script, and at the end a server is started through a blocking call like EventMachine::run(). In
Node.js, there is no such start-the-event-loop call. Node.js simply enters the event loop after
executing the input script. Node.js exits the event loop when there are no more callbacks to
perform. This behavior is like browser JavaScript the event loop is hidden from the user.

HTTP is a first-class citizen in Node.js, designed with streaming and low latency in mind. This
makes Node.js well suited for the foundation of a web library or framework. Node.js being
designed without threads doesn't mean you can't take advantage of multiple cores in your
environment. Child processes can be spawned by using our child_process.fork() API, and are
designed to be easy to communicate with. Built upon that same interface is the cluster module,
which allows you to share sockets between processes to enable load balancing over your cores.

MongoDB

MongoDB is an open-source document database and leading NoSQL database. MongoDB is


written in C++. MongoDB is a cross-platform, document oriented database that provides, high
performance, high availability, and easy scalability. MongoDB works on concept of collection
and document. Database is a physical container for collections. Each database gets its own set of
files on the file system. A single MongoDB server typically has multiple databases. Collection is
a group of MongoDB documents. It is the equivalent of an RDBMS table. A collection exists
within a single database. Collections do not enforce a schema.

Documents within a collection can have different fields. Typically, all documents in a collection
are of similar or related purpose. A document is a set of key-value pairs. Documents have
dynamic schema. Dynamic schema means that documents in the same collection do not need to
have the same set of fields or structure, and common fields in a collection's documents may hold
different types of data. Any relational database has a typical schema design that shows number of
tables and the relationship between these tables. While in MongoDB, there is no concept of
relationship. MongoDB is a document database in which one collection holds different
documents. Number of fields, content and size of the document can differ from one document to
another.
SOFTWARE AND ANALYSIS
Every smart bin is equipped with ultrasonic sensors which measure the level of dustbin being
filled up. The container is divided into three levels of garbage being collected in it. With its
continuous use the levels get filled up gradually with time. Every time the garbage crosses a
level the sensors receives the data of the filled level. This data is further send to the garbage
analyzer as instant message using GSM module. Every message which is received at the garbage
analyzer end is being saved as data which is further used for the process of analysis and
predictive modelling. The data received at real time is used by the application interface for better
viewing of the filled level.
The data received is saved in the database keeping all its at- tributes intact as time and date. A
history of data collected in months is used by the department of data analysis for predic- tion and
report making. The application interface shows the real time level to the garbage analyzer and
using that it directs its team of garbage collector to collect the garbage to avoid overflow. The
prediction model is designed to predict the time in which the every level of container will be
filled in future. This will help the waste management department to optimize the route for the
collection of waste every time garbage collector moves around the city for garbage collection.
This helps in saving time, resources of the waste department and work is then performed in more
efficient manner.
Real Time Interface
The real time view of the filled level of every container is developed in Microsoft Excel [4]. The
dynamic reporting technique in Excel helped us develop this interface. Every level the dustbin
gets filled up is received at the interface end using message service. This message received is
taken in the form of text files which is connected to the excel sheet showing the filled level of
every container.
SMS received from the GSM modules of our dustbin is taken in the form of text files. The text
file in connected to the excel sheets. The updated values of the dustbin level are taken to form
the real time report. The updated values from the excel sheet is taken using various excel
function like IFERROR, LARGE, INDEX, IF, COUNTIF and ROW. The widget is developed
using charts in excel. The Doughnut chart is the indicator of all three levels. The pie chart is used
to make the pointer that moves accordingly as levels the dustbin gets filled in real time. The
color coding of the levels is done as: Green for level 1, Orange for level 2 and Red for level 3.
Data Analytics
The smart-bin designed will be sending data about the levels of garbage collected in different
parts of the city/town. The dataset created can be analyzed to gain lots of insights. The collected
data set over a period of time will create a historical data set. This data set will contain many
variables such as shown below in the table.
Variables of Historical Dataset
Variables Description

ID Unique ID of each smart-bin


Sector Sectors are divided as A to G based on driving
routes

Date Date stamp


Time Time stamp
Day Day stamp
Level Level sent by the smart-bin (1,2,3)
Total quantity of garbage in Levels for a partic-
QuantityID ular ID

Total quantity of garbage in Levels for a partic-


QuantitySector ular Sector
DayTimeNum Day and Time in numerical (0 to 7)
TimeNum Time in numerical (0 to 1)
Full Full or not, i.e. Level 3 (1=Full, 0=Not Full)
Almost full, i.e. Level 2 or 3 (1=Almost Full,
Almost 0=Not almost full)

The dataset contains different variables of which "ID", is the unique ID of a bin, and is the
primary key. Our smart-bin sends us the message which contains the updated level of gar- bage
along with the Date and Time stamp. The other factors like Location of the smart-bin and Full or
not status is includ- ed using SQL joints and Excel spreadsheet functions. The main aim of our
smart-bin's data analysis is to create a prediction model which can predict the time a particular
smart-bin will be getting filled up. We can use the concept of Machine Learn- ing in order to
train our prediction model with the available.
historical dataset generated in the given time period. In order to check the predictive model, we
can divide the dataset into training and testing data set. The goal will be to predict "Full" and
"Almost" status, i.e. Level 3 and Level 2 or 3 respectively. With large amount of dataset
produced, a larger accuracy can be obtained and thus a trend in the waste generation can be
known effectively based on factors like locality, time, day of the week etc. Moreover, with the
historical dataset, we will be able to figure out the average time it takes a smart-bin to get filled
up totally and the average time it takes to gain a single level. Now, this analysis can be used in
building up the algorithm for route planning by predicting the fill due date of each bin based on
their last updated level. We will be using the fol- lowing variables for the algorithm:
Route Optimization Algorithms
i ,k = 1,2 ... n , ID of n number of smart-bins Li = Current Level of the ith smart-bin.
ti = Time for which the ith bin is filled up totally.
ak1 = Average time for kth smart-bin to get filled 1 level up. It is computed through analysis of a
month's data for each Bin.
ak3 = Average time for kth smart bin to get filled up completely.
It is computed through analysis of a month's data for each Bin.
Tk[Lk , tk] = Array which consist the last updated level and time of every smart-bin in the
network.
Result: Predicted percentage filled status of every smart-bin and thus estimate the optimal route
based on potential filled Bins.
begin
for i=1 to n do
If Li==3 then // Compare Li with 3 to check if
ith bin is full or not.
for k=1 to n do if k!=i then
qk = Tk[1]+(3-Tk[0])ak1 // Compute the ex- pected time for every kth smart-bin to get full.
pk = qk - Ti // Compute the time required more to get full by the kth smart-bin.
if pk<=0 then // Check if kth bin is already
filled.
f(b)=k // Store ID of kth smart-bin in an ar-
ray.
else if pk>0 then
prk= [(ak3-pk)/ak3]*100 //Compute the pre- dicted current percentage level filled of kth bin.
if prk>65 then //The threshold percentage is considered as 65 here.
f(b)=k // Store ID of kth smart-bin in an
array.
end
end
end

Conclusion
Utilizing this technique makes garbage collection in the city much simpler. It aids in decreasing
air pollution, transportation congestion, human resources, and the associated costs of all of those
things. Using the implemented technological possibility, we can direct the trash collection
vehicles to choose the quickest route. This initiative can provide communities that want to
become more intelligent and people-friendly with a competitive advantage. Blockchain and
Smart Contracts are used in future smart waste disposal to handle micropayments. The thesis
also shows that DAOs can develop new business models with reduced entry costs and higher
levels of creativity. Together, people can collect money and invest in answers to their issues
while still knowing that they have complete control over their money.

You might also like