Book Image

Python Robotics Projects

By : Prof. Diwakar Vaish
Book Image

Python Robotics Projects

By: Prof. Diwakar Vaish

Overview of this book

Robotics is a fast-growing industry. Multiple surveys state that investment in the field has increased tenfold in the last 6 years, and is set to become a $100-billion sector by 2020. Robots are prevalent throughout all industries, and they are all set to be a part of our domestic lives. This book starts with the installation and basic steps in configuring a robotic controller. You'll then move on to setting up your environment to use Python with the robotic controller. You'll dive deep into building simple robotic projects, such as a pet-feeding robot, and more complicated projects, such as machine learning enabled home automation system (Jarvis), vision processing based robots and a self-driven robotic vehicle using Python. By the end of this book, you'll know how to build smart robots using Python.
Table of Contents (24 chapters)
Title Page
Packt Upsell
Contributors
Preface
Index

Getting it rolling


OK, that's a lot of theory, so now let's fire up one of our motors via Raspberry Pi. To do that, go ahead and connect the motor and the motor driver as shown:

Now, once you are done with it, let's upload the code and see what happens:

import RPi.GPIO as GPIO
from time import sleep
GPIO.setmode(GPIO.BCM)

Motor1R = 20
Motor1L = 21

GPIO.setup(Motor1R,GPIO.OUT)
GPIO.setup(Motor1L,GPIO.OUT)


GPIO.output(Motor1R,GPIO.HIGH)
GPIO.output(Motor1L,GPIO.LOW)

sleep(5)

GPIO.output(Motor1R,GPIO.LOW)
GPIO.output(Motor1L,GPIO.HIGH)

sleep(5)

GPIO.cleanup()

Now, let's understand the code a bit:

Motor1R = 20
Motor1L = 21

Pin number 20 is connected to IN 1 of the motor driver. For convenience, we have changed motor 1 right to Motor1R; in reality, the motor can spin in any direction but we have just written this for convenience and understanding. Similarly, we have done this for Motor1L as well. This is connected to IN 2, hence this will lead to the motor spinning in the other direction:

GPIO...