Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Python Robotics Projects

You're reading from   Python Robotics Projects Build smart and collaborative robots using Python

Arrow left icon
Product type Paperback
Published in May 2018
Publisher Packt
ISBN-13 9781788832922
Length 340 pages
Edition 1st Edition
Languages
Tools
Concepts
Arrow right icon
Author (1):
Arrow left icon
Prof. Diwakar Vaish Prof. Diwakar Vaish
Author Profile Icon Prof. Diwakar Vaish
Prof. Diwakar Vaish
Arrow right icon
View More author details
Toc

Table of Contents (20) Chapters Close

Preface 1. Robotics 101 2. Using GPIOs as Input FREE CHAPTER 3. Making a Gardener Robot 4. Basics of Motors 5. Making a Pet Feeding Robot 6. Bluetooth-Controlled Robotic Car 7. Sensor Interface for Obstacle Avoidance 8. Making Your Own Area Scanner 9. Vision Processing 10. Making a Guard Robot 11. Basic Switching 12. Recognizing Humans with Jarvis 13. Making Jarvis IoT Enabled 14. Giving Voice to Jarvis 15. Gesture Recognition 16. Machine Learning 17. Gesture-Controlled Robotic Vehicle 18. Making a Robotic Arm 19. Other Books You May Enjoy

Making an IoT-based intrusion detector


Now that Raspberry Pi is set up and we are ready to make it IoT enabled let's see how we are going to connect the system to the internet and make things work. Firstly, we need to connect Raspberry Pi to the devices, which we want to control using the IoT technology. So go ahead and use the following diagram to make the connection:

Once you have set up all the components, let's go ahead and upload the following code:

import time
import paho.mqtt.client as mqtt
import RPi.gpio as gpio
pir = 23
gpio.setmode(gpio.BCM)
gpio.setup(pir, gpio.IN)
client = mqtt.Client()
broker="broker.hivemq.com"
port = 1883
pub_topic = "IntruderDetector_Home"
def SendData():
  client.publish(pub_topic,"WARNING : SOMEONE DETECTED AT YOUR PLACE")

def on_connect(client, userdata, flag,rc):
  print("connection returned" + str(rc))
SendData()
while True:
  client.connect(broker,port)
  client.on_connect = on_connect
if gpio.output(pir) == gpio.HIGH :
    SendData()
  client.loop_forever...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime