Book Image

Getting Started with Python for the Internet of Things

By : Tim Cox, Steven Lawrence Fernandes, Sai Yamanoor, Srihari Yamanoor, Prof. Diwakar Vaish
Book Image

Getting Started with Python for the Internet of Things

By: Tim Cox, Steven Lawrence Fernandes, Sai Yamanoor, Srihari Yamanoor, Prof. Diwakar Vaish

Overview of this book

This Learning Path takes you on a journey in the world of robotics and teaches you all that you can achieve with Raspberry Pi and Python. It teaches you to harness the power of Python with the Raspberry Pi 3 and the Raspberry Pi zero to build superlative automation systems that can transform your business. You will learn to create text classifiers, predict sentiment in words, and develop applications with the Tkinter library. Things will get more interesting when you build a human face detection and recognition system and a home automation system in Python, where different appliances are controlled using the Raspberry Pi. With such diverse robotics projects, you'll grasp the basics of robotics and its functions, and understand the integration of robotics with the IoT environment. By the end of this Learning Path, you will have covered everything from configuring a robotic controller, to creating a self-driven robotic vehicle using Python. • Raspberry Pi 3 Cookbook for Python Programmers - Third Edition by Tim Cox, Dr. Steven Lawrence Fernandes • Python Programming with Raspberry Pi by Sai Yamanoor, Srihari Yamanoor • Python Robotics Projects by Prof. Diwakar Vaish
Table of Contents (37 chapters)
Title Page
Copyright and Credits
About Packt
Contributors
Preface
Index

Reading analog data using an analog-to-digital converter


The I2C tools (used in the previous section) are very useful for debugging I2C devices in the command line, but they are not practical for use within Python, as they would be slow and require significant overhead to use. Fortunately, there are several Python libraries that provide I2C support, allowing the efficient use of I2C to communicate with connected devices and providing easy operation.

We will use such a library to create our own Python module that will allow us to quickly and easily obtain data from the ADC device and use it in our programs. The module is designed in such a way that other hardware or data sources may be put in its place without impacting the remaining examples.

Getting ready

To use the I2C bus using Python 3, we will use Gordon Henderson's WiringPi2 (see http://wiringpi.com/ for more details).

The easiest way to install wiringpi2 is by using pip for Python 3. The pip is a package manager for Python that works...