Book Image

Raspberry Pi Home Automation with Arduino - Second Edition

By : Andrew K. Dennis
Book Image

Raspberry Pi Home Automation with Arduino - Second Edition

By: Andrew K. Dennis

Overview of this book

Table of Contents (16 chapters)
Raspberry Pi Home Automation with Arduino Second Edition
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
4
Temperature Storage – Setting Up a Database to Store Your Results
Index

Curtain control application


We will now write an application that leverages the photoresistor and uses it to control the motor. There are a few concepts that we will cover quickly before we write the application, in order to provide you with better understanding of how our software works.

Pulse width modulation

Pulse width modulation (PWM) is a method that leverages the digital pins to create an analog result. If a digital pin is switched on, it has a value of 5V, and if switched off, it has a value of 0V. PWM allows us to simulate a value between these two ends.

Using our software, we can create what is known as a square wave. This method involves switching a pin on and off to create a signal to the device connected to the digital pin. In our project, it's a DC motor. Therefore, varying the modulation (that is, changing the number of milliseconds that the pin is switched off versus on) will result in a change of speed of the DC motor.

In order to create PWM in our application, we will need...