Tải bản đầy đủ (.docx) (29 trang)

43 iot assignment 1 frontsheet 2018 2019

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.5 MB, 29 trang )

ASSIGNMENT 1 FRONT SHEET
Qualification

TEC Level 5 HND Diploma in Computing

Unit number and title

Unit 43: Internet of Things

Submission date

Date Received 1st submission

Re-submission Date

Date Received 2nd submission

Student Name

Nguyen Van Loc

Student ID

GCD18350

Class

GCD0704

Assessor name


Tran Trong Minh

Student declaration
I certify that the assignment submission is entirely my own work and I fully understand the consequences of plagiarism. I understand that
making a false declaration is a form of malpractice.

Vanloc

Student’s signature
Grading grid

P1

P2

P3

P4

M1

M2

M3

M4

D1

D2



❒ Summative Feedback:

Grade:
Assessor Signature:
Internal Verifier’s Comments:

Signature & Date:

❒ Resubmission Feedback:

Date:


INTERNET OF THINGS
ASSIGNMENT REPORT

UNIVERSITY: UNIVERSITY OF GREENWICH VIET NAM
CLASS:

GCD0703

NAME:

NGUYEN VAN LOC

MENTOR:

TRAN TRONG MINH


EMAIL:


TABLE OF CONTENTS



TABLE OF FIGURES


I. Analyse what aspects of IoT are necessary and appropriate when designing software applications:
(LO1)
1. Explore various forms of IoT functionality. (P1)


IoT Definitions:
In general, the term Internet of Things refers to situations where network communication and
computing capacity extend to objects, sensors and everyday items not usually considered
computers, enabling these devices with minimal human interference to produce, share and
consume data. However no single universal description exists.



What is the purpose of IoT?
- In the case of an IoT Eco-system, a remote agent (tablets, smartphones) may be used to
send a command or request information through an IoT computer.




-

The computer then executes the instruction or may also transfer the data back to the
network to be evaluated.

-

This data collection and processing will be done in many places, including the cloud, the
local archive or even the data itself.

IoT Real World Applications :
1. Agriculture and Pest Control:
-

Since we are going to look into the different IoT applications and the various IoT use cases,
let’s start off with the areas where IoT use is most overlooked – farming. Agriculture is
essential for human survival and the way the population keeps multiplying, it can be hard
to maintain such large-scale agriculture without a major revolution.

-

Integrating IoT applications with farming can help to boost the production and keep it in
line with the population explosion happening all over the globe. IoT applications can result
in precision farming – that is, use of analytical data to understand soil moisture level,
climatic changes, plant requirement, etc, and thus boost yield as well as encourage
efficient use of resources.

-

This method can also be used for livestock management as well. A threat that the

agricultural sector has always faced is pest infiltration. However, in one of the recent IoT
use cases, a company, Semios, makes use of sensors to track pest population. There are
other IoT systems as well which could be used to trap pests and notify authorities about it.


2. Environment:
-

In recent times, we are becoming more and more aware of the environment and the
damage that human activities have caused. Now, we are slowly trying to correct our
mistakes and tackle environmental issues. We can make use of IoT applications to help us
with this goal.

-

Some of the areas where IoT are working is preservation of bees. Honey Bees are facing a
threat in this polluted world. Climate change is affecting them as well. However, by
implanting IoT devices, beekeepers can take better charge of preserving hives. Using IoT
with connected sensors, it is possible to keep track of the hive temperature, amount of
food present in the hives and also, the pollen collection. IoT can be also used in waste
management also, helping us take better care of our environment.
3. Smart Home Applications:

-

Smart homes are probably the most common of all IoT use cases. The concept of smart
homes has revolved around the internet for a long time. When Mark Zuckerberg displayed
his smart home Jarvis, many people felt that they could actually fulfill their dream of
having a Smart home.


-

A smart home works with the active use of IoT applications. Smart home devices collect
and share information with one another in an integrated platform and automate their
actions based on the owner’s preference. Hence, it is clear that they engage in a learning
process to understand the preferences of their owner.

-

There are many IoT use cases related to Smart home appliances, but one of them can be
Smart Thermostats, which monitor and control home temperatures to the comfort of the
owner. Plus, there is smart lighting as well where the lighting adjusts themselves based on
the user preference as well as external lighting.
4. Health Care:

-

The use of IoT in the healthcare sector can redefine healthcare as a whole. The entire
healthcare sector comprises physicians, patients, hospitals, and health insurance
companies. IoT can target and enrich each of these parties. Patients already have access to
several forms of wearables like fitness bands and blood pressure monitors to help with
their health.


-

There are also alert mechanisms put in these devices to notify doctors or family members
in the case of emergencies. For the physicians, it is quite easy to get into the history of a
patient through the IoT device and access real-time health data easily. Real-time health
data can also be used to increase the efficiency of clinical trials. IoT devices can be used

inside hospitals to track locations of medical devices like defibrillators or wheelchairs and
also help with inventory management, monitoring the environment, and temperature
regulation. Learn more about machine learning applications in healthcare industry.

-

Since most IoT devices collect data and store them in the cloud, health insurance
companies can access this data to track the routine activities of a patient (their lifestyle
choices), whether they are adhering to their treatment plans or even looking into the
operation processes.
5. Smart Cities

-

Many governments plan to build smart cities – that is – cities which heavily use IoT for
several reasons like traffic management, public transportation, parking, utility billing, etc.
Smart Cities can be referred to as large-scale IoT applications which cover a lot of
problematic areas in a city.

-

While costly, it can be safe to say the benefits far outweigh the cost. With the combination
of sensors, GPS data collection and cloud platforms, it will be easy to monitor traffic
conditions of a specific area, plan construction program by predicting its impact on traffic
and find alternative routes when necessary.

-

Use of smart billing for household use of energy and smart street lighting can help in the
management of energy use. Another use case of the many IoT use cases is improving

public safety by using smart cameras or smart microphones to help detect crime in any
area across a city.
6. Safe Driving:

-

With the increasing use of mobile phones, there has been a tragic rise in car accidents.
These accidents have been connected to distracted driving. While there have been
warnings against the use of mobile phones while driving, many drivers do not pay heed to
it. However, with the help of IoT technology, it is possible to track the mobile usage of
drivers during driving and block distracting apps.

-

IoT applications can also be used to understand driver behaviour and coach drivers based
on how they are driving. A recent area where IoT is being used is in the construction of
driverless cars. While it seems like something from the future, driverless cars are already


in the making. These cars use advanced sensors and gyroscopes, all of which are
connected to cloud platforms and the internet.
-

Using this platform, the driverless car is able to data from a variety of sources which tells
them about the traffic conditions as well as potholes, sharp turns, speed breakers and
other useful information required for driving. Driverless cars can be a perfect addition in a
Smart City to ensure smooth traffic conditions.
7. Waste Management:

-


We are slowly moving into a world which takes waste creation seriously. While many
companies are moving away from non-biodegradable goods, it is important to manage the
waste already being generated. IoT can bring a lot on the table to help with waste
management.

-

One of the IoT use cases is selecting the right route for garbage trucks. IoT applications can
notify truck drivers about filled dustbins and set a route for them so that they do not have
to waste time by exploring locations with empty dustbins. IoT devices can also help in
developing Smart bins, that is, trash bins which can segregate waste into categories like
plastic, metal, glass or paper. Bin-e, a Polish company, has already generated Smart Waste
Bins as one of the many IoT use cases related to waste management.
8. Tackling Industrial Issues:

-

Using IoT in the industrial sector is sometimes seen to be similar to the Industrial
revolution. How can IoT help with Industries? In the manufacturing department, IoT can
be used in asset management and inventory management. Implanting IoT in the
manufacturing sector can help in tracking the efficiency of the systems being used, detect
any errors in the machinery, detect causes of lack of efficiency, etc. IoT in the industry can
help in tackling unplanned downtime too.
9. Supply Chain:

If you are using Amazon or Swiggy, you might be aware of the tracking system they use to
track the delivery of your goods. Supply chains have been using IoT applications for quite
some time. It has helped suppliers to track goods in transit as well as get immediate
customer feedback with the help of a rating system. IoT systems can also help the supplier

or drivers to preserve the goods better during transit by communicating information about
temperature and pressure that the item is being preserved in. Hence, IoT can optimize
workflow by improving the supply chain transit.
IoT example:
-




-

INSTEON:

Figure 1: INSTEON.




-

Location: Los Angeles, California
How they’re using IoT: In addition to controlling lighting and appliances, Insteon
lets users monitor windows, doors, water leaks, smoke and more via sensors.
Industry impact: Ever gone on vacation and wondered if you left a window open
for thieves and rain to breach? With Insteon, you'll know if that's actually the case
so you can return home or call a neighbor to shut it.

EYELOCK:



Figure 2: EYELOCK.





-

Location: New York, New York
How they’re using IoT: Eyelock creates iris-based identity authentication technology.
It's suite of IoT products serves the automotive, financial, mobile and healthcare
sectors.
Industry impact: Eyelock recently integrated its embedded iris recognition technology
into ViaTouch Media's vending solution VICKI.

SIMPLISAFE:

Figure 3: SIMPLISAFE.





Location: Boston, Massachusetts.
How it's using IoT: SimpliSafe makes wireless/cellular home security systems that are
disaster-ready, protected against power outages, operate on extra-secure networks and
employ deep encryption.
Industry impact: The company's Glassbreak Sensors can differentiate between types of
shattering — say, a broken bottle versus a broken window pane.



2. Review standard architecture, frameworks, tools, hardware and APIs available for use in IoT
development. (P2)
2.1.

Architecture of Internet of Things (IoT):

Internet of Things (IoT) technology has a wide variety of applications and use of Internet of Things is
growing so faster. Depending upon different application areas of Internet of Things, it works
accordingly as per it has been designed/developed. But it has not a standard defined architecture of
working which is strictly followed universally. The architecture of IoT depends upon its functionality
and implementation in different sectors. Still, there is a basic process flow based on which IoT is built.
So. here in this article we will discuss basic fundamental architecture of IoT i.e., 4 Stage IoT
architecture.

Figure 4: Stage IoT architecture.
So, from the above image it is clear that there is 4 layers are present that can be divided as follows:
Sensing Layer, Network Layer, Data processing Layer, and Application Layer.
These are explained as following below.



Sensing Layer









2.2.

o Sensors, actuators, devices are present in this Sensing layer. These Sensors or Actuators
accepts data(physical/environmental parameters), processes data and emits data over
network.
Network Layer
o Internet/Network gateways, Data Acquisition System (DAS) are present in this layer. DAS
performs data aggregation and conversion function (Collecting data and aggregating data
then converting analog data of sensors to digital data etc). Advanced gateways which
mainly opens up connection between Sensor networks and Internet also performs many
basic gateway functionalities like malware protection, and filtering also sometimes
decision making based on inputted data and data management services, etc.
Data processing Layer
o This is processing unit of IoT ecosystem. Here data is analyzed and pre-processed before
sending it to data center from where data is accessed by software applications often
termed as business applications where data is monitored and managed and further
actions are also prepared. So here Edge IT or edge analytics comes into picture.
Application Layer
o This is last layer of 4 stages of IoT architecture. Data centers or cloud is management stage
of data where data is managed and is used by end-user applications like agriculture, health
care, aerospace, farming, defense, etc.
What is the IoT Framework?

IoT (Internet of Things) framework is a key part of a large IoT ecosystem, which promotes and links all
elements in the scheme. It allows device management, handles communication protocols on software
and hardware, collects / analyses information, improves information flow and intelligent apps
functionality.
IoT (Internet of Things) is a network of devices which are connected to the internet for transferring
and sensing the data without much human intervention, the framework used to this is termed as the IoT

framework, this framework consists all the required capabilities for the cloud support and other needs
which is needed to satisfy the IoT technology, few of the common IoT frameworks that are used
frequently are KAA IoT, Cisco IoT Cloud Connect, ZETTA IoT, SAP IoT, IBM Watson, Hewlett Packard
Enterprise, etc
 List of IoT Framework:
Now we will discuss the IoT Framework one by one


KAA IoT

Kaa IoT is one of the most effective and rich Open Source Internet of Things Cloud Platforms, where
anyone can freely implement their smart product concepts. You can manage an N number of devices


connected to each other with cross-device interoperability on this platform. You can monitor your
machine in actual time by providing and configuring remote devices. Kaa enables information exchange
between linked devices, the IoT Cloud, information and visualization systems, as well as other elements
of IoT Ecosystems


Cisco IoT Cloud Connect

Cisco IoT Cloud Connect provides robust, automated, and highly secure connectivity for the
enterprise. IoT data management is done by the Cisco Kinetic IoT platform to extract, move and compute
the data. As Cisco is very famous for its security services, it protects IoT deployment against threats with
a secure IoT architecture.


ZETTA IoT


Zetta is nothing but a server-oriented platform developed based on the REST, NodeJS, and the Siren
hypermedia-API-strip flow-based reactive programming philosophy. After being abstracted as REST APIs
they are connected with cloud services. These internet services include tools for visualizing machine
analytics and support such as Splunk. It builds a gero-distributed network through connectivity with
systems like Heroku to endpoints like Arduino and Linux hackers
(educba, 2020).
2.3.

Hardware:

IoT Hardware includes a wide range of devices such as devices for routing, bridges, sensors etc. These
IoT devices manage key tasks and functions such as system activation, security, action specifications,
communication, and detection of support-specific goals and actions.
IoT Hardware components can vary from low-power boards; single-board processors like the Arduino
Uno which are basically smaller boards that are plugged into mainboards to improve and increase its
functionality by bringing out specific functions or features (such as GPS, light and heat sensors, or
interactive displays). A programmer specifies a board’s input and output, then creates a circuit design to
illustrate the interaction of these inputs and outputs.


Figure 5: Ardruino Uno.

Another well-known IoT platform is Raspberry Pi 2, which is a very affordable and tiny computer that
can incorporate an entire web server. Often called “RasPi,” it has enough processing power and memory
to run Windows 10 on it as well as IoT Core. RasPi exhibits great processing capabilities, especially when
using the Python programming language.

Figure 6: Raspberry Pi 2.

BeagleBoard is a single-board computer with a Linux-based OS that uses an ARM processor, capable

of more powerful processing than RasPi. Tech giant Intel’s Galileo and Edison boards are other options,
both great for larger scale production, and Qualcomm has manufactured an array of enterprise-level IoT
technology for cars and cameras to healthcare.


Figure 7: BeagleBoard.

(data-flair.training, 2020)
2.4.

IoT Development Tools:

You will agree with the fact that it is indeed a herculean task to build a complex application, more so
when it concerns the use of IoT hardware and software. However, you have ample opportunities that
come in the form of development kits and tools that will help you come up with the best practices to
build an IoT solution.
Certainly, IoT is the latest buzzword that is doing rounds in the internet-driven space. Going by the
numbers, in 2015, there were 15.41 billion IoT connected devices which have now grown to 26.66 billion
and it is expected to surpass 75 billion devices by 2025. Majority of these devices are used in the
healthcare industry or business/corporates and manufacturing industry.


Moreover, to fuel this progressive trend, a host of Internet of Things solution providers are busy
creating software and hardware designs that will help developers come up with novel IoT applications
and devices.


Arduino IDE:

If you are looking to build a computer that can sense and exercise a better control over the physical

world when compared to your normal stand-alone computer, then Arduino can be your intelligent
choice. Offering a perfect blend of IoT hardware and software, Arduino is an open-source prototyping
and simple-to-use IoT platform. Arduino operates through a set of hardware specifications that can be
applied to interactive electronics. The software of Arduino comes in the form of the Arduino
programming language and Integrated Development Environment (IDE).

Figure 8: Arduino IDE.



PlatformIO:

Next in the list of top IoT development tools and platforms is PlatformIO which is a cross-platform IoT
development environment. This platform comes with a build system, supported by a library manager and
IDE. You have a choice to port the IDE on top of the Atom editor or you can go ahead and install it as a
plug-in.


The best part of PlatformIO is that it is compatible with more than 200 boards. Coming with a
wonderful debugging integration, PlatformIO is conspicuous of a serial port monitor. All those who are
employing PlatformIO unanimously express one feeling and that is – “PlatformIO hastens up the
development process of an IoT application, allowing us to deliver IoT solutions in record time”.

Figure 9: PlatformIO.



Tessel 2:

This is a hardware provider that can be used to build basic IoT solutions and prototypes. Tessel 2

lends a helping hand through its numerous sensors and modules. This is a board which can hold up to a
dozen modules including the RFID, camera, GPS and the accelerometer.
All those Java developers who are proficient with Node.JS can use this device as Tessel can be
programmed using Node.JS. This way, Tessel can be used to churn out a host of server and hardware
firmware IoT solutions. Tagged as a robust IoT platform, you can leverage all the libraries of Node.JS to
unveil a host of devices; within a matter of minutes.


It comes with two processors, the Tessel hardware makes use of a 580MHz Mediatek MT7620n and
48MHz Atmel SAMD21 coprocessor. While one can be used to run your firmware applications at a rapid
speed, the other finds its use in exercising better input/output control and the efficient management of
power.

Figure 10: Tessel 2.

(blog.eduonix, 2019)
2.5.

IoT APIs:

The application program (or programming) interface, or API, is arguably what really ties together the
connected “things” of the “internet of things.” IoT APIs are the points of interaction between an IoT
device and the internet and/or other elements within the network.

Figure 11: Iot API Examples.


2.6.

IoT – Software:


IoT software addresses its key areas of networking and action through platforms, embedded systems,
partner systems, and middleware. These individual and master applications are responsible for data
collection, device integration, real-time analytics, and application and process extension within the IoT
network. They exploit integration with critical business systems (e.g., ordering systems, robotics,
scheduling, and more) in the execution of related tasks.
Data Collection
This software manages sensing, measurements, light data filtering, light data security, and
aggregation of data. It uses certain protocols to aid sensors in connecting with real-time, machine-tomachine networks. Then it collects data from multiple devices and distributes it in accordance with
settings. It also works in reverse by distributing data over devices. The system eventually transmits all
collected data to a central server.
Device Integration
Software supporting integration binds (dependent relationships) all system devices to create the body
of the IoT system. It ensures the necessary cooperation and stable networking between devices. These
applications are the defining software technology of the IoT network because without them, it is not an
IoT system. They manage the various applications, protocols, and limitations of each device to allow
communication.
Real-Time Analytics
These applications take data or input from various devices and convert it into viable actions or clear
patterns for human analysis. They analyze information based on various settings and designs in order to
perform automation-related tasks or provide the data required by industry.
Application and Process Extension
These applications extend the reach of existing systems and software to allow a wider, more effective
system. They integrate predefined devices for specific purposes such as allowing certain mobile devices
or engineering instruments access. It supports improved productivity and more accurate data collection.
(tutorialspoint, 2020)


II. Outline a plan for an appropriate IoT application using common architecture, frameworks, tools,
hardware and APIs. (LO2)

1. Investigate architecture, frameworks, tools, hardware and API techniques available to develop IoT
applications. (P3)
1.1.

Architecture:

Figure 12: Architecture of IoT.

a. The physical layer, which has sensors for detecting and collecting environmental information, is the
awareness layer. In the environment, it detects certain spatial parameters or identifies other smart
objects.
b. Connecting to other smart objects, network devices, and servers is the responsibility of the network
layer. Its features are also used for sensor data transfer and processing.
c. The application layer is in charge of supplying the customer with application-specific resources. It
describes different applications in which for example smart houses, smart cities, and smart health can be
implemented on the Internet of Things.


1.2.

Hardware:

NodeMCU ESP8266 WiFi Development Board:

Figure 13: NodeMCU ESP8266 WiFi Development Board.

INTRODUCE
This is NodeMCU module based on ESP8266 with Wifi connection, on-board CP2102 and keys. Many
open source resources, this module supports development in various ways like Lua / AT command /
MicroPython / Arduino / IOT, etc. helps you to quickly create IoT applications.

FEATURES, CHARACTERISTICS
+ Integrated module ESP-12E
+ Integrated CP2102 and USB to UART converter port
+ USB port to power and load code or debug UART


+ 2x15 GPIO pins
+ 2 x reset key

TECHNICAL SPECIFICATIONS
Wifi module: ESP-12E, Processor: ESP8266
+ Built-in Flash: 32Mbit
+ Antenna: PCB antenna
+ Peripheral connection protocol: UART / SPI / I2C / SDIO / GPIO / ADC / PWM
+ Wifi protocol: IEEE 802.11 b / g / n
+ Frequency range: 2.4G ~ 2.5G (2400M ~ 2483.5M)
+ WIFI mode: Station / SoftAP / SoftAP + Station
+ Operating voltage: 5V
+ Logic level: 3V
+ Size: 48.26mm x 25.4mm
APPLICATION
+ Smarthome
+ Intelligent building
+ Industrial automation
+ IP camera
+ Smart agriculture
PINOUTS


Figure 14: PINOUTS.


1.3.

Tools:

The Integrated Development Environment (IDE) in this project was used Arduino IDE:


Figure 15: Arduino IDE.

The IDE interface contains two IDE device connections and two motherboard connectors for two data
cables. An IDE-integrated controller sends an array of 512-byte blocks between the drive and
motherboard, which houses up to four chipset-controlled IDE devices within one system.
Most personal computers (PC) contain hard drive and CD-ROM connections. The hard drive uses one
cable and connects to the motherboard via the primary IDE connector. The CD-ROM drive and other
storage devices share one IDE cable.
The standard IDE (ATA/ATAPI) uses two different connectors. The IDE/ATA cable attaches to the data
connector, and the standardized power connector provides power.
Simple and accessible user experience
Arduino has been used in thousands of different projects and applications. Arduino software is easy
to use for beginners, but flexible enough for advanced users.
1.4.

Frameworks:

For ESP8266, there are different platforms and projects. The Sming Framework is one of them that
stands tall.
For a variety of factors, Sming is my favorite framework for ESP8266 programming. At least for me the
most important ones are:
Relatively good



×