Book Image

Raspberry Pi 3 Projects for Java Programmers

By : Rajdeep Chandra, John Sirach, Pradeeka Seneviratne
Book Image

Raspberry Pi 3 Projects for Java Programmers

By: Rajdeep Chandra, John Sirach, Pradeeka Seneviratne

Overview of this book

Raspberry Pi is a small, low cost and yet very powerful development platform. It is used to interact with attached electronics by the use of it's GPIO pins for multiple use cases, mainly Home Automation and Robotics. Our book is a project-based guide that will show you how to utilize the Raspberry Pi's GPIO with Java and how you can leverage this utilization with your knowledge of Java. You will start with installing and setting up the necessary hardware to create a seamless development platform. You will then straightaway start by building a project that will utilize light for presence detection. Next, you will program the application, capable of handling real time data using MQTT and utilize RPC to publish data to Further, you will build a wireless robot on top of the zuma chassis with the Raspberry Pi as the main controller. Lastly, you will end the book with advanced projects that will help you to create a multi-purpose IoT controller along with building a security camera that will perform image capture and recognize faces with the help of notifications. By the end of the book, you will be able to build your own real world usable projects not limited to Home Automation, IoT and/or Robotics utilizing logic, user and web interfaces.
Table of Contents (8 chapters)
Integrating a Real-Time IoT Dashboard

Using digital out to switch and display a relay status

For switching a relay, we only need to use one pin on the Raspberry Pi and have its mode set to OUTPUT and turn this high or low to open or close a relay. Most relays need 5V to be able to switch, so we will be using a 2N3904 NPN transistor. With this transistor, we are able to switch a 5V lane with 3.3V so we can switch a relay.

A word of caution: Switching with mains voltages can be very dangerous. Only do this when you are absolutely sure what you are doing. Also, when beginning with relays, make sure you use a mechanical relay as these are able to switch any load up to the maximum rated on the relay.

In our schematic, we will only be switching the relay. This is done for safety reasons (please read A word of caution). When you are more experienced, loads can be added to the relay or a solid-state relay, which suits AC loads better. I would advise that you...