Book Image

Internet of Things with Python

By : Gaston C. Hillar
Book Image

Internet of Things with Python

By: Gaston C. Hillar

Overview of this book

Internet of Things (IoT) is revolutionizing the way devices/things interact with each other. And when you have IoT with Python on your side, you'll be able to build interactive objects and design them. This book lets you stay at the forefront of cutting-edge research on IoT. We'll open up the possibilities using tools that enable you to interact with the world, such as Intel Galileo Gen 2, sensors, and other hardware. You will learn how to read, write, and convert digital values to generate analog output by programming Pulse Width Modulation (PWM) in Python. You will get familiar with the complex communication system included in the board, so you can interact with any shield, actuator, or sensor. Later on, you will not only see how to work with data received from the sensors, but also perform actions by sending them to a specific shield. You'll be able to connect your IoT device to the entire world, by integrating WiFi, Bluetooth, and Internet settings. With everything ready, you will see how to work in real time on your IoT device using the MQTT protocol in python. By the end of the book, you will be able to develop IoT prototypes with Python, libraries, and tools.
Table of Contents (19 chapters)
Internet of Things with Python
Credits
About the Author
Acknowledgments
About the Reviewer
www.PacktPub.com
Preface
Index

Positioning a shaft to indicate a value with a servo motor


We can use the mraa.Pwm class to control PWM on the PWM capable GPIO pin labeled ~3, as we learned in Chapter 4, Working with a RESTful API and Pulse Width Modulation. However, this would require us to read the detailed specs for the servo. The upm library includes support for both the SeeedStudio Grove Servo or the EMAX 9g ES08A High Sensitive Mini Servo in the pyupm_servo module. The ES08A class declared in this module represents any of the two mentioned servors connected to our board.

The class makes it easy to set the desired angle for the servo shaft and work with angles instead of duty cycles and other PWM details. The class works with the mraa.Pwm class under the hoods to configure PWM and control the duty cycle based on the desired angle for the shaft.

We will take the code we wrote in the previous example and we will use this code as a baseline to add the new features. The code file for the sample was iot_python_chapter_08_02...