万本电子书0元读

万本电子书0元读

顶部广告

Mastering IOT电子书

售       价:¥

3人正在读 | 0人评论 9.8

作       者:Colin Dow

出  版  社:Packt Publishing

出版时间:2019-04-16

字       数:79.0万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Leverage the full potential of IoT with the combination of Raspberry Pi 3 and Python and architect a complete IoT system that is the best fit for your organization Key Features * Build complex Python-based applications with IoT * Explore different concepts, technologies, and tradeoffs in the IoT architectural stack * Delve deep into each element of the IoT design—from sensors to the cloud Book Description The Internet of Things (IoT) is the fastest growing technology market. Industries are embracing IoT technologies to improve operational expenses, product life, and people's well-being. We’ll begin our journey with an introduction to Raspberry Pi and quickly jump right into Python programming. We’ll learn all concepts through multiple projects, and then reinforce our learnings by creating an IoT robot car. We’ll examine modern sensor systems and focus on what their power and functionality can bring to our system. We’ll also gain insight into cloud and fog architectures, including the OpenFog standards. The Learning Path will conclude by discussing three forms of prevalent attacks and ways to improve the security of our IoT infrastructure. By the end of this Learning Path, we will have traversed the entire spectrum of technologies needed to build a successful IoT system, and will have the confidence to build, secure, and monitor our IoT infrastructure. This Learning Path includes content from the following Packt products: * Internet of Things Programming Projects by Colin Dow * Internet of Things for Architects by Perry Lea What you will learn * Build a home security dashboard using an infrared motion detector * Receive data and display it with an actuator connected to the Raspberry Pi * Build an IoT robot car that is controlled via the Internet * Use IP-based communication to easily and quickly scale your system * Explore cloud protocols, such as Message Queue Telemetry Transport (MQTT) and CoAP * Secure communication with encryption forms, such as symmetric key Who this book is for This Learning Path is designed for developers, architects, and system designers who are interested in building exciting projects with Python by understanding the IoT ecosphere, various technologies, and tradeoffs. Technologists and technology managers who want to develop a broad view of IoT architecture, will also find this Learning Path useful. Prior programming knowledge of Python is a must.
目录展开

About Packt

Why subscribe?

Packt.com

Contributors

About the authors

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

The IoT Story

History of the IoT

IoT potential

Industrial and manufacturing

Industrial and manufacturing IoT use cases and impact

Consumer

Consumer IoT use cases

Retail, financial, and marketing

Retail IoT use cases

Healthcare

Healthcare IoT use cases

Transportation and logistics

Transportation and logistics IoT use cases

Agricultural and environmental

Agricultural and environmental IoT use cases

Energy

Energy IoT use cases

Smart city

Smart city IoT use cases

Government and military

Government and military IoT use cases

Summary

IoT Architecture and Core IoT Modules

IoT ecosystem

IoT versus machine to machine

The value of a network and Metcalfe's and Beckstrom's law

IoT architecture

Role of an architect

Part 1 – Sensing and power

Part 2 – Data communication

Part 3 – Internet routing and protocols

Part 4 – Fog and edge compute, analytics, and machine learning

Part 5 – Threat and security in IoT

Summary

Sensors, Endpoints, and Power Systems

Sensing devices

Thermocouples and temperature sensing

Thermocouples

Resistance Temperature Detectors

Thermistors

Temperature sensor summary

Hall effect sensors and current sensors

Photoelectric sensors

PIR sensors

LiDAR and active sensing systems

MEMS sensors

MEMS accelerometers and gyroscopes

MEMS microphones

MEMS pressure sensors

Smart IoT endpoints

Vision system

Sensor fusion

Input devices

Output devices

Functional examples (putting it all together)

Functional example – TI SensorTag CC2650

Sensor to controller

Energy sources and power management

Power management

Energy harvesting

Solar harvesting

Piezo-mechanical harvesting

RF energy harvesting

Thermal harvesting

Energy storage

Energy and power models

Batteries

Supercapacitors

Radioactive power sources

Energy storage summary and other forms of power

Summary

Communications and Information Theory

Communication theory

RF energy and theoretical range

RF interference

Information theory

Bitrate limits and the Shannon-Hartley theorem

Bit error rate

Narrowband versus wideband communication

The radio spectrum

Governing structure

Summary

Non-IP Based WPAN

Wireless personal area network standards

802.15 standards

Bluetooth

Bluetooth history

Bluetooth 5 communication process and topologies

Bluetooth 5 stack

Bluetooth 5 PHY and interference

Bluetooth packet structure

BR/EDR operation

BLE operation

Bluetooth profiles

BR/EDR security

BLE security

Beaconing

Bluetooth 5 range and speed enhancement

Bluetooth mesh introduction

Bluetooth mesh topology

Bluetooth mesh addressing modes

Bluetooth mesh provisioning

IEEE 802.15.4

IEEE 802.15.4 architecture

IEEE 802.15.4 topology

IEEE 802.15.4 address modes and packet structure

IEEE 802.15.4 start-up sequence

IEEE 802.15.4 security

Zigbee

Zigbee history

Zigbee overview

Zigbee PHY and MAC (and difference from IEEE 802.15.4)

Zigbee protocol stack

Zigbee addressing and packet structure

Zigbee mesh routing

Zigbee association

Zigbee security

Z-Wave

Z-Wave overview

Z-Wave protocol stack

Z-Wave addressing

Z-Wave topology and routing

Summary

IP-Based WPAN and WLAN

Internet protocol and transmission control protocol

IP role in IoT

WPAN with IP – 6LoWPAN

6LoWPAN topology

6LoWPAN protocol stack

Mesh addressing and routing

Header compression and fragmentation

Neighbor discovery

6LoWPAN security

WPAN with IP – Thread

Thread architecture and topology

Thread protocol stack

Thread routing

Thread addressing

Neighbor discovery

IEEE 802.11 protocols and WLAN

IEEE 802.11 suite of protocols and comparison

IEEE 802.11 architecture

IEEE 802.11 spectrum allocation

IEEE 802.11 modulation and encoding techniques

IEEE 802.11 MIMO

IEEE 802.11 packet structure

IEEE 802.11 operation

IEEE 802.11 security

IEEE 802.11ac

IEEE 802.11p vehicle-to-vehicle

IEEE 802.11ah

Summary

Long-Range Communication Systems and Protocols (WAN)

Cellular connectivity

Governance models and standards

Cellular access technologies

3GPP user equipment categories

4G-LTE spectrum allocation and bands

4G-LTE topology and architecture

4G-LTE E-UTRAN protocol stack

4G-LTE geographical areas, dataflow, and handover procedures

4G-LTE packet structure

Cat 0, Cat 1, Cat M1, and NB-IoT

LTE Cat-0

LTE Cat-1

LTE Cat-M1 (eMTC)

LTE Cat-NB

5G

LoRa and LoRaWAN

LoRa physical layer

LoRaWAN MAC layer

LoRaWAN topology

LoRaWAN summary

Sigfox

Sigfox physical layer

Sigfox MAC layer

Sigfox protocol stack

Sigfox topology

Summary

Routers and Gateways

Routing functions

Gateway functions

Routing

Failover and out-of-band management

VLAN

VPN

Traffic shaping and QoS

Security functions

Metrics and analytics

Edge processing

Software-Defined Networking

SDN architecture

Traditional internetworking

SDN benefits

Summary

IoT Security

Cyber security vernacular

Attack and threat terms

Defense terms

Anatomy of IoT cyber attacks

Mirai

Stuxnet

Chain Reaction

Physical and hardware security

Root of Trust

Key management and trusted platform modules

Processor and memory space

Storage security

Physical security

Cryptography

Symmetric cryptography

Asymmetric cryptography

Cryptographic hash (authentication and signing)

Public Key Infrastructure

Network stack – Transport Layer Security

Software defined perimeter

Software-Defined Perimeter architecture

Blockchains and cryptocurrencies in IoT

Bitcoin (blockchain-based)

IOTA (directed acyclical graph-based)

Government regulations and intervention

US Congressional Bill –Internet of Things (IoT) Cybersecurity Improvement Act of 2017

Other governmental bodies

IoT security best practices

Holistic security

Security checklist

Summary

Installing Raspbian on the Raspberry Pi

A brief history of the Raspberry Pi

A look at operating systems for the Raspberry Pi

Project overview

Getting started

Installing the Raspbian OS

Formatting a microSD card for Raspbian

Copying the NOOBS files to the microSD RAM

Running the installer

A quick overview of the Raspbian OS

The Chromium web browser

The home folder

The Terminal

Mathematica

Sonic Pi

Scratch and Scratch 2.0

LibreOffice

Summary

Writing Python Programs Using Raspberry Pi

Project overview

Technical requirements

Python tools for Raspberry Pi

The Terminal

Integrated Development and Learning Environment

Thonny

Using the Python command line

Writing a simple Python program

Creating the class

Creating the object

Using the object inspector

Testing your class

Making the code flexible

Example one

Example two

Summary

Using the GPIO to Connect to the Outside World

Project overview

Technical requirements

Python libraries for the Raspberry Pi

picamera

Pillow

sense-hat and sense-emu

Accessing Raspberry Pi's GPIO

Pibrella

RPi.GPIO

GPIO zero

Setting up the circuit

Fritzing

Building our circuit

Hello LED

Blink LED using gpiozero

Morse code weather data

Summary

Subscribing to Web Services

Prerequisites

Project overview

Getting started

Cloud services for IoT

Amazon Web Services IoT

IBM Watson platform

Google Cloud platform

Microsoft Azure

Weather Underground

A basic Python program to pull data from the cloud

Accessing the web service

Using the Sense HAT Emulator

Summary

Controlling a Servo with Python

Knowledge required to complete this chapter

Project overview

Getting started

Wiring up a servo motor to the Raspberry Pi

Stepper motors

DC motors

Servo motors

Connecting the servo motor to our Raspberry Pi

Control the servo through the command line

Write a Python program to control the servo

Summary

Working with the Servo Control Code to Control an Analog Device

Knowledge required to complete this chapter

Project overview

Getting started

Accessing weather data from the cloud

Controlling the servo using weather data

Correcting for servo range

Changing the position of the servo based on weather data

Enhancing our project

Printing out the main graphic

Adding the needle and LED

Summary

Setting Up a Raspberry Pi Web Server

Knowledge required to complete this chapter

Project overview

Getting started

Introducing CherryPy – a minimalist Python web framework

What is CherryPy?

Who uses CherryPy?

Installing CherryPy

Creating a simple web page using CherryPy

Hello Raspberry Pi!

Say hello to myFriend

What about static pages?

HTML weather dashboard

Summary

Reading Raspberry Pi GPIO Sensor Data Using Python

Project overview

Getting started

Reading the state of a button

Using GPIO Zero with a button

Using the Sense HAT emulator and GPIO Zero button together

Toggling an LED with a long button press

Reading the state from an infrared motion sensor

What is a PIR sensor?

Using the GPIO Zero buzzer class

Building a basic alarm system

Modifying Hello LED using infrared sensor

Configuring a distance sensor

Taking Hello LED to another level

Summary

Building a Home Security Dashboard

Knowledge required to complete this chapter

Project overview

Getting started

Creating our dashboard using CherryPy

Using the DHT11 to find temperature and humidity

Using the Pi camera to take a photo

Creating our dashboard using CherryPy

Displaying sensory data on our dashboard

Home security dashboard with a temperature sensor

Home security dashboard with quick response

Summary

Publishing to Web Services

Project overview

Getting started

Publishing sensory data to cloud-based services

Install the MQTT library

Set up an account and create a device

Reading sensory data and publishing to ThingsBoard

Creating a dashboard in ThingsBoard

Sharing your dashboard with a friend

Setting up an account for text message transmission

Setting up a Twilio account

Installing Twilio on our Raspberry Pi

Sending a text through Twilio

Creating a new home security dashboard

Summary

Creating a Doorbell Button Using Bluetooth

Project overview

Getting started

Introducing Blue Dot

Installing the bluedot library on the Raspberry Pi

Pairing Blue Dot with your Raspberry Pi

Wiring up our circuit

What is an RGB LED?

Testing our RGB LED

Completing our doorbell circuit

Reading our button state using Bluetooth and Python

Reading button information using Python

Creating a Bluetooth doorbell

Creating a secret Bluetooth doorbell

Summary

Enhancing Our IoT Doorbell

Project overview

Getting started

Sending a text message when someone is at the door

Creating a simple doorbell application with text messaging

Creating a secret doorbell application with text messaging

Summary

Introducing the Raspberry Pi Robot Car

The parts of the robot car

Building the robot car

Step 1 – Adafruit 16-Channel PWM/Servo HAT for Raspberry Pi

Step 2 – Wiring up the motors

Step 3 – Assembling the servo camera mount

Step 4 – Attaching the head

Step 5 – Assembling the DC motor plate

Step 6 – Attaching the motors and wheels

Step 7 – Wiring up the motors

Step 8 – Attaching the camera mount, Raspberry Pi, and Adafruit servo board

Step 9 – Attaching the buzzer and voltage divider

Step 10 – Wiring up T.A.R.A.S

Learning how to control the robot car

Configuring our Raspberry Pi

Python library for Adafruit Servo HAT

Summary

Controlling the Robot Car Using Python

Knowledge required to complete this chapter

Project overview

Getting started

Taking a look at the Python code

Controlling the drive wheels of the robot car

Moving the servos on the robot car

Taking a picture

Making a beep noise

Making the LEDs blink

Modifying the robot car Python code

Move the wheels

Move the head

Make sounds

Enhancing the code

Stitching our code together

Summary

Connecting Sensory Inputs from the Robot Car to the Web

Knowledge required to complete this chapter

Project overview

Getting started

Identifying the sensor on the robot car

Taking a closer look at the HC-SR04

Reading robot car sensory data with Python

Publishing robot car sensory data to the cloud

Create a ThingsBoard device

Summary

Controlling the Robot Car with Web Service Calls

Knowledge required to complete this chapter

Project overview

Technical requirements

Reading the robot car's data from the cloud

Changing the look of the distance gauge

Changing the range on the distance gauge

Viewing the dashboard outside of your account

Using a Python program to control a robot car through the cloud

Adding a switch to our dashboard

Controlling the green LED on T.A.R.A.S

Using the internet to make T.A.R.A.S dance

Summary

Building the JavaScript Client

Project overview

Getting started

Introducing JavaScript cloud libraries

Google Cloud

AWS SDK for JavaScript

Eclipse Paho JavaScript client

Connecting to cloud services using JavaScript

Setting up a CloudMQTT account

Setting up an MQTT Broker instance

Writing the JavaScript client code

Running the code

Understanding the JavaScript code

Publishing MQTT messages from our Raspberry Pi

Summary

Putting It All Together

Project overview

Getting started

Building a JavaScript client to connect to our Raspberry Pi

Writing the HTML code

Writing the JavaScript code to communicate with our MQTT Broker

Creating a JavaScript client to access our robot car's sensory data

Writing the code for T.A.R.A.S

Livestreaming videos from T.A.R.A.S

Enhancing our JavaScript client to control our robot car

Nipple.js

HTML5 Gamepad API

Johnny-Five

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部