O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Smart Internet of Things Projects

Book Description

Discover how to build your own smart Internet of Things projects and bring a new degree of interconnectivity to your world

About This Book
  • Learn how to extract and analyse data from physical devices and build smart IoT projects
  • Master the skills of building enticing projects such as a neural network autonomous car, computer vision through a camera, and cloud-based IoT applications
  • This project-based guide leverages revolutionary computing chips such as Raspberry Pi, Arduino, and so on
Who This Book Is For

If you are hobbyist who is keen on making smart IoT projects, then this book is for you. You should have a basic knowledge of Python.

What You Will Learn
  • Implement data science in your IoT projects and build a smart temperature controller
  • Create a simple machine learning application and implement decision system concepts
  • Develop a vision machine using OpenCV
  • Build a robot car with manual and automatic control
  • Implement speech modules with your own voice commands for IoT projects
  • Connect IoT to a cloud-based server
In Detail

Internet of Things (IoT) is a groundbreaking technology that involves connecting numerous physical devices to the Internet and controlling them. Creating basic IoT projects is common, but imagine building smart IoT projects that can extract data from physical devices, thereby making decisions by themselves.

Our book overcomes the challenge of analyzing data from physical devices and accomplishes all that your imagination can dream up by teaching you how to build smart IoT projects. Basic statistics and various applied algorithms in data science and machine learning are introduced to accelerate your knowledge of how to integrate a decision system into a physical device.

This book contains IoT projects such as building a smart temperature controller, creating your own vision machine project, building an autonomous mobile robot car, controlling IoT projects through voice commands, building IoT applications utilizing cloud technology and data science, and many more. We will also leverage a small yet powerful IoT chip, Raspberry Pi with Arduino, in order to integrate a smart decision-making system in the IoT projects.

Style and approach

The book follows a project-based approach to building smart IoT projects using powerful boards such as the Raspberry Pi, Arduino, and the IoT chip.

Downloading the example code for this book. You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the code file.

Table of Contents

  1. Smart Internet of Things Projects
    1. Table of Contents
    2. Smart Internet of Things Projects
    3. Credits
    4. About the Author
    5. About the Reviewer
    6. www.PacktPub.com
    7. Preface
      1. What this book covers
      2. What you need for this book
      3. Who this book is for
      4. Conventions
      5. Reader feedback
      6. Customer support
        1. Downloading the example code
        2. Errata
        3. Piracy
        4. Questions
    8. 1. Making Your IoT Project Smart
      1. Introducing basic statistics and data science
      2. Python for computational statistics and data science
        1. Python libraries for computational statistics and data science
          1. NumPy
          2. Pandas
          3. SciPy
          4. Scikit-learn
          5. Shogun
          6. SymPy
          7. Statsmodels
      3. Building a simple program for statistics
      4. IoT devices and platforms
        1. Arduino
        2. Raspberry Pi
        3. BeagleBone Black and Green
        4. IoT boards based on ESP8266 MCU?
        5. IoT boards-based TI CC3200 MCU
      5. Sensing and actuating on IoT devices
        1. Sensing and actuating on Arduino devices
        2. Sensing and actuating on Raspberry Pi devices
          1. Setting up
          2. Accessing Raspberry Pi GPIO
          3. Sensing through sensor devices
      6. Building a smart temperature controller for your room
        1. Introducing PID controller
        2. Implementing PID controller in Python
        3. Controlling room temperature using PID controller
      7. Summary
      8. References
    9. 2. Decision System for IoT Projects
      1. Introduction to decision system and machine learning
      2. Decision system-based Bayesian
      3. Decision system-based fuzzy logic
      4. Python libraries for building a decision system
        1. Bayesian
        2. Fuzzy logic
      5. Building a simple decision system-based Bayesian theory
      6. Integrating a decision system and IoT project
      7. Building your own decision system-based IoT
        1. Wiring
        2. Writing the Python program
        3. Testing
        4. Enhancement
      8. Summary
      9. References
    10. 3. Building Your Own Machine Vision
      1. Introducing machine vision
      2. Introducing the OpenCV library
      3. Deploying OpenCV on Raspberry Pi
      4. Building a simple program with OpenCV
      5. Working with camera modules
        1. Camera modules based on the CSI interface
        2. Camera modules based on USB interface
        3. Camera modules-based serial interface
        4. Camera modules with multi-interfaces
      6. Accessing camera modules from the OpenCV library
      7. Introducing pattern recognition for machine vision
      8. Building a tracking vision system for moving objects
      9. Building your own IoT machine vision
        1. Deploying Pixy CMUcam5 on Raspberry Pi
        2. Assembly
        3. Updating the Pixy CMUcam5 firmware
        4. Testing
          1. Loading streaming video
          2. Tracking an object
          3. Tracking an object with a Pan/Tilt module
          4. Running the Python application
          5. Clearing all signatures
      10. Summary
      11. References
    11. 4. Making Your Own Autonomous Car Robot
      1. Introducing autonomous systems
      2. Introducing mobile robots
      3. Building your own car robot
        1. DIY robot platforms
        2. Assembled robot platform
      4. Working with the Pololu Zumo robot for Arduino
        1. How do we get it to work?
      5. Controlling a car robot from a computer
        1. How do we get it to work?
      6. Working with a GPS module for navigation
        1. How do we get this to work?
      7. Introducing map engine platforms
        1. How do we get it to work?
      8. Building a car-based GPS
      9. Making your own autonomous car
      10. Summary
      11. References
    12. 5. Building Voice Technology on IoT Projects
      1. Introduce a speech technology
      2. Introduce sound sensors and actuators
      3. Introduce pattern recognition for speech technology
      4. Reviewing speech and sound modules for IoT devices
      5. Build your own voice commands for IoT projects
        1. Setting up EasyVR shield 3
        2. Building voice commands
        3. Wiring your voice command board
        4. Writing sketch program
        5. Testing
      6. Make your IoT board speak
        1. Setting up
        2. Wiring
        3. Writing sketch program
        4. Testing
      7. Make Raspberry Pi speak
        1. Setting up
        2. Writing Python program
        3. What's next?
      8. Summary
      9. References
    13. 6. Building Data Science-based Cloud for IoT Projects
      1. Introduce cloud technology
      2. Introducing cloud-based data science
      3. Connecting IoT boards to cloud-based server
        1. Microsoft Azure IoT
        2. Amazon AWS IoT
        3. Arduino Cloud
          1. Setting up Arduino Cloud
          2. Wiring for demo
          3. Adding Arduino Cloud library
          4. Updating Arduino Cloud web SSL certificate
          5. Writing program for Arduino Cloud
      4. Working with Microsoft Azure IoT Hub
        1. Setting up Microsoft Azure IoT Hub
        2. Registering IoT device
        3. Writing program
      5. Building data science-based cloud
        1. Deploying Azure Machine learning
        2. Publishing Azure ML as web service
      6. Make IoT application with data science-based cloud
      7. Summary
    14. Index