Difference between revisions of "Infrared Reflective Sensor"

From Waveshare Wiki
Jump to: navigation, search
m (Text replace - "|website_cn=" to "|default=display |website_cn=")
Line 1: Line 1:
 +
<div class="tabber">
 
{{Infobox item|colorscheme=blue
 
{{Infobox item|colorscheme=blue
 
|img=[[File:Infrared-Reflective-Sensor_l.jpg|300px|alt=Infrared-Reflective-Sensor|link=http://www.waveshare.com/Infrared-Reflective-Sensor.htm | Infrared Reflective Sensor]]
 
|img=[[File:Infrared-Reflective-Sensor_l.jpg|300px|alt=Infrared-Reflective-Sensor|link=http://www.waveshare.com/Infrared-Reflective-Sensor.htm | Infrared Reflective Sensor]]
Line 13: Line 14:
 
{{Product List|Modules/Sensors/Light}}
 
{{Product List|Modules/Sensors/Light}}
 
}}
 
}}
== Introduction ==
+
<div class="tabbertab" title="Introduction">
Infrared Reflective Sensor
+
{{Infrared Reflective Sensor Spec}}
 
+
</div>
{{Amazon|{{#urlget:amazon|default}}=display
+
<div class="tabbertab" title="Pico Guide">
|More = [http://www.waveshare.com/Infrared-Reflective-Sensor.htm More]}}
+
{{Infrared Reflective Sensor Pico Guide}}
 +
</div>
 +
<div class="tabbertab" title="STM32 Guide">
 +
{{Infrared Reflective Sensor STM32 Guide}}
 +
</div>
 +
<div class="tabbertab" title="Arduino Guide">
 +
{{Infrared Reflective Sensor Arduino Guide}}
 +
</div>
 +
<div class="tabbertab" title="Resources">
 
== Resources ==
 
== Resources ==
 
*[[:File:Infrared-Reflective-Sensor-UserManual.pdf|User Manual]]
 
*[[:File:Infrared-Reflective-Sensor-UserManual.pdf|User Manual]]
Line 23: Line 32:
 
*[[:File:Infrared-Reflective-Sensor-Code.7z|Code]]
 
*[[:File:Infrared-Reflective-Sensor-Code.7z|Code]]
 
*[[Infrared-Reflective-Sensor_Software|Software]]
 
*[[Infrared-Reflective-Sensor_Software|Software]]
 +
</div>
 +
<div class="tabbertab" title="FAQ">
 
==FAQ==
 
==FAQ==
 
{{FAQ
 
{{FAQ
Line 28: Line 39:
 
|The effective measurement distance of the module can be changed by adjusting the potentiometer on the board.
 
|The effective measurement distance of the module can be changed by adjusting the potentiometer on the board.
 
}}
 
}}
 +
 +
{{FAQ
 +
|What is the effective detection range of the infrared-reflective sensor?
 +
|It is about 5cm
 +
}}
 +
 
{{FAQ|collapsed=yes
 
{{FAQ|collapsed=yes
|What other choices do I have?
+
| What other choices do I have?
 
|Perhaps you'd like:
 
|Perhaps you'd like:
 
{{List of sensors pack|pageWidth=auto}}
 
{{List of sensors pack|pageWidth=auto}}
 
}}
 
}}
 +
</div>
 +
<div class="tabbertab" title="Support">
 
==Support==
 
==Support==
 
{{Service00}}
 
{{Service00}}
 +
</div>
 +
</div>

Revision as of 03:44, 9 October 2021

Infrared Reflective Sensor
Infrared-Reflective-Sensor

Infrared Reflective Sensor
{{{name2}}}

{{{name3}}}

{{{name4}}}

{{{name5}}}

Features

  • Reflective Infrared Transceiver
  • Features wide-range voltage comparator LM393
  • Adjustable sensitivity
  • Signal output indicator

Specification

  • Sensor: ST188
  • Power: 3.0V ~ 5.3V
  • Dimension: 25mm * 15.9mm
  • Mounting holes size: 2.0mm
  • Voltage comparator chip: Wide voltage LM393

Pinouts

PIN Description
DOUT Digital data output
AOUT Analog data output
GND Ground
VCC Power input (3.3V~5.3V)

Use with Pico

Configure Pico

MicroPython and C examples are provided for this sensor, to use it with Pico, you need to first flash firmware to the Pico according to the example.
Please refer to the guides of Raspberry Pi about how to flash the firmware. We recommend you use the firmware from the Demo codes archive.

Hardware connection

Hardware Connection-Pico
Hall Pico Description
VCC 3.3V Power input
GND GND Ground
AOUT GP26 Analog data output
DOUT GP22 Digital data output

Examples

Download the example

Open the terminal of Raspberry Pi and run the following command to download the example:

sudo apt-get install p7zip-full
cd ~
sudo wget  https://files.waveshare.com/upload/0/05/Infrared_Proximity_Sensor_Demo.7z
7z x Infrared_Proximity_Sensor_Demo.7z -o./Infrared_Proximity_Sensor_Demo
cd ~/Infrared_Proximity_Sensor_Demo
cd Pico/c/build/

C

Here we use the Raspberry Pi board to flash the Pico.

  • Compile the c examples.
    • Go into the directory of C examples.
cd ~/Infrared_Proximity_Sensor_Demo/Pico/c/
  • Go into the build folder and add the sdk; ../../pico-sdk is the path of the SDK, if may be different if you have saved the SDK in other paths.
cd build
export PICO_SDK_PATH=../../pico-sdk
  • Generate Makefile by cmake command.
cmake ..
  • Compile the codes by command make
make -j9
Note: If you use Pi zero, please run make only.
  • After compiling, a uf2 file is generated.
    • Hold the button of the Pico board, and connect the Pico board to Raspberry Pi by USB cable.
    • After connecting, release the button, and a portable disk (RPI_RP2) is recognized.
    • Copy the main.uf2 file generated which locates in the build folder to the portable disk (RPI-RP2).
cp main.uf2 /media/pi/RPI-RP2/

Python examples

In Windows PC
  • Hold the BOOTSET button of the PICO board, and connect the Pico board to Raspberry Pi by USB cable.
    • After connecting, release the button, and a portable disk (RPI-RP2) is recognized.
  • Copy the rp2-pico-20210418-v1.15.uf2 file to the portable disk (RPI-RP2).
  • Open the Thonny IDE (Please install the newest version which supports the Pico board or update).
  • Choose Tools -> Options ->Interpreter, and choose the Pico and the port.
Pico-lcd-0.96-img-config.png
  • Download the demo codes, unzip, and find the MicroPython example.
  • Choose File -> Open -> Infrared_Proximity_Sensor.py and run it.
Pico-lcd-0.96-img-run.png
In Raspberry Pi
  • Flash the uf2 file to the Pico board just like in the Windows PC.
  • Open the Thonny IDE of Pi, make sure that it is the newest version, or update it.
  • Choose Tools -> Options... -> Interpreter.
    • Choose Pico and the Port.
Pico-lcd-0.96-img-config2.png
  • If your Thonny IDE cannot support the Pico board, you can update it and try again.
sudo apt upgrade thonny
  • Choose File -> Open... -> python/Infrared_Proximity_Sensor.py and run it.

Expected result

  • The indicator of the sensor lights up when the sensor is close to the obstacle and goes off when it is away from the obstacle.
  • As the distance between the sensor and the obstacle changes, the output data of the serial port changes accordingly

The examples provided are based on the STM32F103RBT6 and the STM32H743, the connection provided is based on the STM32F103RB.
If you want to use other STM32 boards, please change the connection and you may need to port the codes yourself.

Use with STM32

Hardware connection

Hardware connection-STM32
Connect to STM32F103RBT6
Hall STM32 Description
VCC 3.3V Power input
GND GND Ground
AOUT PA6 Analog data output
DOUT PA4 Digital data output

Examples

The examples are based on the HAL library. Please download the demo codes, unzip them and find the STM32 examples.

  • Open the project from Infrared_Proximity_Sensor_Demo\STM32\STM32F103RB\MDK-ARM by Keil.
  • Build the project and program it to the STM32 board.
  • connect the UART1 of the STM32 board to the PC and check the serial data by SCCOM software.
Infrared Proximity STM32 3.png

Expected result

  • The indicator of the sensor lights up when the sensor is close to the obstacle and goes off when it is away from the obstacle.
  • As the distance between the sensor and the obstacle changes, the output data of the serial port changes accordingly.

The examples provided are based on the Arduino UNO, if you need to use other Arduino boards, please check if the board is compatible with the UNO.

Use with Arduino

Hardware connection

Hardware connection-Arduino
Connect to Arduino UNO
Hall Arduino Description
VCC 5V Power input
GND GND Ground
AOUT A0 Analog data output
DOUT D2 Digital data output

Examples

  • Please download and install Arduino IDE to your PC.
  • Download the demo codes, unzip them, and find the Arduino examples.
  • Open the Infrared_Proximity_Sensor.ino file by the Arduino IDE.
Flame Arduino 3.png
  • Build and upload the codes to the UNO board.
  • After uploading, you can open the Serial Monitor of IDE and check the data.

Expected result

  • The indicator of the sensor lights up when the sensor is close to the obstacle and goes off when it is away from the obstacle.
  • As the distance between the sensor and the obstacle changes, the output data of the serial port changes accordingly.

FAQ

 Answer:
The effective measurement distance of the module can be changed by adjusting the potentiometer on the board.
{{{3}}}
{{{4}}}

{{{5}}}



 Answer:
Perhaps you'd like:

Color Sensor

Color-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Flame Sensor

Flame-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Hall Sensor

Hall-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Infrared Reflective Sensor

Infrared-Reflective-Sensor-1
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Laser Sensor

Laser-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Liquid Level Sensor

Liquid-Level-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Moisture Sensor

Moisture-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

MQ5 Gas Sensor

MQ-5-Gas-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Rotation Sensor

Rotation-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Sound Sensor

Sound-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

DHT11 Temperature-Humidity Sensor

Temperature-Humidity-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

Tilt Sensor

Tilt-Sensor-1
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}

UV Sensor

UV-Sensor
{{{2}}}
{{{3}}}
{{{4}}}
{{{5}}}
{{{6}}}
{{{7}}}
{{{8}}}
{{{9}}}
{{{10}}}
{{{11}}}
{{{12}}}
{{{13}}}
{{{14}}}
{{{15}}}
{{{16}}}
{{{17}}}
{{{18}}}
{{{19}}}
{{{20}}}
{{{21}}}
{{{22}}}
{{{23}}}
{{{24}}}
{{{25}}}
{{{26}}}
{{{27}}}
{{{28}}}
{{{29}}}
{{{30}}}
{{{31}}}
{{{32}}}
{{{33}}}
{{{34}}}
{{{35}}}
{{{36}}}
{{{37}}}
{{{38}}}
{{{39}}}
{{{40}}}
{{{41}}}
{{{42}}}
{{{43}}}
{{{44}}}
{{{45}}}
{{{46}}}
{{{47}}}
{{{48}}}
{{{49}}}
{{{50}}}
{{{3}}}
{{{4}}}

{{{5}}}


Support

Support

If you require technical support, please go to the Support page and open a ticket.