- Hands-On Robotics Programming with C++
- Dinesh Tavasalkar
- 366字
- 2021-06-24 15:30:32
The LDR sensor and the way it works
An LDR sensor is an analog input sensor that consists of a variable resistor whose resistance varies depending on the amount of light falling on its surface. When there is no light in the room, the resistance of the LDR sensor is HIGH (up to 1 M ohm) and in the presence of light, the resistance of the LDR sensor is LOW. The LDR sensor consists of two pins. These pins do not have positive and negative polarity. We can use any pin as a data or ground pin and because of this, the LDR sensor is sometimes referred to as a special type resistor. The image of the LDR sensor is shown in the following photo:

Since LDR is an analog sensor, we cannot connect it directly to the RPi as this does not contain an analog to digital converter (ADC) circuit. Because of this, RPi cannot read incoming analog data from an LDR sensor. So, instead of an LDR sensor, we will use an LDR digital sensor module, which will provide digital data to the RPi:

An LDR sensor module will read the incoming analog data from the LDR sensor and provide digital data in the form of HIGH or LOW as output. The LDR sensor module consists of 3 pins: D0 (data output), ground, and Vcc. D0 will provide digital data as output, which is further provided as input to RPi pins. The D0 pin will be HIGH in low light and will be LOW in the presence of light. The sensor module also consists of a potentiometer sensor, which can be used to vary the resistance of the LDR sensor.
Practical uses of the LDR sensor module is seen in street lamps, which automatically turn off during day time and turn on during night time. The smart light program that we are going to write is somewhat similar to this application, but instead of a street lamp, we are going to use an LED to keep things simple.
Now that we've gained an understanding of the basic way in which an LDR sensor works, next let's connect the LDR sensor module to Raspberry Pi.
- R語言經典實例(原書第2版)
- Dependency Injection in .NET Core 2.0
- 零基礎學MQL:基于EA的自動化交易編程
- Effective Python Penetration Testing
- Go并發編程實戰
- AIRIOT物聯網平臺開發框架應用與實戰
- Frank Kane's Taming Big Data with Apache Spark and Python
- 時空數據建模及其應用
- Fastdata Processing with Spark
- Java 從入門到項目實踐(超值版)
- jQuery for Designers Beginner's Guide Second Edition
- Java Hibernate Cookbook
- Getting Started with Web Components
- Joomla!Search Engine Optimization
- 青少年Python趣味編程