Index>BBC Micro:bit>Adeept Sensor Kit for BBC Micro:bit>Lesson 22 The Use of a Photoresistor to Measure Light Intensity
No related product information!

Lesson 22 The Use of a Photoresistor to Measure Light Intensity

2592

    In this lesson, we will carry out an interesting experiment to use a photoresistor to measure light intensity.

22.1 Components to be prepared

image.png


22.2 The introduction of Photoresistor 

22.2.1 Photoresistor

A photoresistor is a light-controlled variable resistor. The resistance of a photoresistor decreases with the increasing incident light intensity; in other words, it exhibits photoconductivity. A photoresistor can be applied in light-sensitive detector circuits.

image.png


     A photoresistor is made of a high resistance semiconductor. In the dark, a photoresistor can have a resistance as high as a few megohms (MΩ), while in the light, a photoresistor can have a resistance as low as a few hundred ohms. If incident light on a photoresistor exceeds a certain frequency, photons absorbed by the semiconductor give bound electrons enough energy to jump into the conduction band. The resulting free electrons (and their hole partners) conduct electricity, thereby lowering resistance. The resistance range and sensitivity of a photoresistor can substantially differ among dissimilar devices. Moreover, unique photoresistors may react substantially differently to photons within certain wavelength bands.

image.png


22.3 Low level and high level


In circuit, the form of binary (0 and 1) is presented as low level and high level.

Low level is generally equal to ground voltage (0V). High level is generally equal to the operating voltage of components.

The low level of Micro:bit is 0V and high level is 3.3V, as shown below. When IO port on Micro:bit outputs high level, low-power components can be directly driven,like LED.

image.png


22.4 Circuit

    

    You need to connect the components according to the circuit diagram below.

image.png


22.5 MakeCode programming

Next, we will use the online MakeCode Editor to complete the experiment in this lesson.


22.5.1 Start programming

(1) Log in to the website

1. You need to enter the URL in the address bar of Google Browser:

https://makecode.microbit.org/

2. After the website is successfully opened, the interface as shown below will appear:

image.png



(2) Import a project

1. In the HOME interface, click the "Import" button to import the external ".hex" file:

image.png


In the pop-up dialog box, select the "Import File", as shown in the following figure:

image.png



Click the "Choose File"

image.png


Find the code file for this lesson:

BBC_Microbit_Sensor\Code\Lesson_22\BlockCode

Select the file in ".hex" format and click the Open:

image.png


2. Notice whether the file has been loaded into the following window, and then click the "Go ahead!" button, as shown in the following figure:

image.png


3.You can see the following interface when successfully opening the file:

image.png


22.5.2 Run the program

1. After the program is written, connect micro:bit and PC with a Micro USB cable.

2. After micro:bit is connected to the computer, you need to first "Pair device". Click the image.png button on the right of image.png in the lower left corner, and then click the image.png option, as shown in the following figure:

image.png


Then click image.png in the lower right corner

image.png


Then the following dialog box will pop up, select image.png, and then click image.png

image.png


After the device is successfully paired, the image.png button changes to image.png

image.png


3. Start to download the program to Micro:bit, and click the image.png button. Generally, the program will be downloaded directly to the Micro:bit. After the download is completed, your Micro:bit will restart and run the program just downloaded. And you'll see the light intensity data measured by the photoresistor on the LED screen of the Micro:bit, as shown in the following figure:

image.png


[Note]

  

    If the LED screen of the Micro:bit doesn’t display the light intensity data after the image.pngis clicked, you need to click the image.png button on the right of the image.png, and then click the image.png , and observe the Micro:bit again, as shown in the following figure:

image.png


  If you have problems, please send us an email: support@adeept.com


22.5.3 Learn the code program

The following instruction blocks will be applied in the program. Please see the description of the function as follows:

 

 image.png

 

You can use the image.png instruction block to read the analog data of the Photoresistor, then use the image.png instruction block to convert the analog data into an integer and finally output the integer onto the LED screen of the Micro:bit.

image.png


22.6 Python programming

22.6.1 Run the program

1.Connect micro:bit and PC with a Micro USB cable.

2. Open the Mu Editor installed on the computer, and click the button [Load] in the upper left corner to open the source code program of this lesson:

image.png 


Find the code file for this lesson:

BBC_Microbit_Sensor\Code\Lesson_22\PythonCode

Select the file in ".py" format and click the Open:

image.png 


3. Click the [Flash] button to download the program to Micro:bit, as shown in the following figure:

image.png


4.After the program is downloaded, you will see the light intensity data measured by the photoresistor on the LED screen of the Micro:bit, as shown in the following figure.

image.png


    If you have problems, please send us an email: support@adeept.com


22.6.2 Learn the code program


    The method of the read_analog() can be used to read the light intensity data measured by the photoresistor. The method of the int(reading / 50) can convert the light intensity data into an integer. And the method of the display.show(str(number)) can display the integer output on the LED screen of the Micro:bit.



12

13

14

15

while True:

    reading = pin0.read_analog()

    number = int(reading / 50)

    display.show(str(number))